cross-nvptx-newlib8-devel-8.2.1+r264010-lp152.2.126 >  A ^޸/=„Bn46%Kp-dDZEq;Q] 4DfKJgݟw(bjc;Mu.!!9M-X\BQ͊D*#Kf0W *rFc`9a%PE}SVH#uot{94}$/He8OoOc 5=4f8a60a05071c745715008ee616e524f36fecfa8558f52da6cb46d0d6ab162a670a987ed7d759a46f03b62f84d8ca006bfb3cb1aPĉ^޸/=„8%WUsDq"tXL[4G[!}mG6~LwV2h/&;ezIQo)Ro_qB)4B~4_B+K]&5N:LKI5aXnsk3l>d<\E)oojX]!O5ß{Z3t dq|.Gan=,9.룐?rZk{6̤1 .P,>p=N?Nd* 6 Z '-4ss s s s !s "@s$ s&Ks((s***+_+++(+8+ 9,( :.p F@PG@dsHB0sICsXDpYD|\Ds]Fs^JubKcKdL#fL(lL)uL<svNzNENXN\NbNCcross-nvptx-newlib8-devel8.2.1+r264010lp152.2.126newlib for the nvptx offload targetNewlib development files for the nvptx offload target compiler.^޸goat19PUlopenSUSE Leap 15.2openSUSEGPL-3.0-or-laterhttps://bugs.opensuse.orgDevelopment/Languages/C and C++http://gcc.gnu.org/linuxx86_64? 9 n  Q P,p0t !m2L'w9 "B W8@64o %2`Y~O2S+ %4Y_d34)'t k8<Rk\#YZ$qqLAA큤A큤A큤A큤A큤A큤A큤^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸^޸2266f819707eb0821fd1023c0f136b29ac1183440fe7e1a03255a360af63ab64a588085e0b013247fada5cfd2a294d79ea0fef0223b57443e0c86f529e68f5aceb4061b04c6da32c6a8e4bc4878f2b8a23ed4470ca0f25a7f4a9ae49ea81afacd7aad21a7db658f45925014ea2ffd6cb7ba3d40fad05c9a00e77bfe912577ae324aa4dd94a5b1d542ae5638cb0232ae5115e0040e029c535581fd7b0a3ebc3a457befd18364ac56807a9327cb7c0b417f79e58bedc3b586adb815a320576e01e10c5fadba74f850c41bdec8af49ee4e25f68a3d86be0479f7ffd9e1c60f8e582501a0a5b1c148e4c376bdaaf7efd2c2975f6fddbd5886359b2d7312adac252520738555e0528c5c576953abd39f397a561261831b96f5ba6b392e2997cf09fea38d425505082c984837e39a5b6cdb01edea8c194a6059dda9e27f8b9ade3e3e2de0aaab946479a0d95063cfbfcab5793487a5a0b19e051f7be3c3319c351b34753d288d669b43f2341048bf58bc5e6e46a5cfbe68c6d296a3b2e2f1378ac3ca87fb7ff119150be066f9e06ea4afa62c4fd13def8a15d3dde3968d57d7f82ba66637889253928e98bc028dbdcd58560492aed8e981eff349c43a8e7e6a45f75f536e1733938a9e33060305bea42598fd2d3344f0be48f1bda2ce966f592380c7f19d8ee8a662126649320ac42e43c96d4ea4d6b43f2ab961249614f57ce5e3c226f5f880b43e6a992ce9dc2ce475d0c903f07a24599768cd97dd010e56348e049dd2bd8ef0cf323ef82fd06663efbae18dfa480c75d09b829f33fa5781425f80cf0aff2ff51a916d0d2df2cac74387efbecad0a932db8768bf066b4f88a412cf89f529a9009c860b0e3c38ae1c78223141a58fd03cb7ca197dd01ffe2858180bc952096145261ee64869ec2383b96cc785bc8cdfb54f85d7b4dabec14adc09fd6624719f99fdd46e322a1e5f2760317122fe05ea4289e8cee695a2b9d8a91eb7dd367430094739a2460aa695a9637048383bad6aa400a86a121199ce517065584a3be44ce49285d4717af3ec7b6c153276bebb8071a767c1a7b44fcbfcb1b7dfbb986c315d8c71656a533188b8bf2c129028c5c22ad71cd57af5953ed542ad60276569c9dcd2ede45e1e2a132824af881785b17262cc805c8094149e4bab05f9b44544ecbbc10c8aa58ca2da6d0617ffeee5af847af24515ab108c8218d6d92c8b8920447822ad8f3d5698a3fd70cd0c72d28c1b4d0a57f849ce6e6ccdca2ce72e58f28d0f3ff04fdbb96ef1024328893f6091e9c8c3fdea1cd01060e82a6a99cd39269df83b76b04be79c158b737929357bbfdab2cadd9ee0aeada26bf2c6abf2f0e01aad2338ce7eddd29f386678896a115e543b0543e4a5cc86ec57a42ad1dc6e33eb2fa8cf9038cf4114d87df62468b476caffb045f33949ba97fcaf78a7904400a508514ef63937aa1067163ac8d1e56549c2fed1c518607d739d1e4ee1d4b50c451e3f13d626d70a8087a2749fdc21c24cefa63ba416d0f07da924997657b611365098f5da771939ec596b38e85b0c0e0fdb15288ce3b2a260946c373a243552e520d412993325ba62cb496839cd03fd46b0df67149a5ccbe1b95c45fddd6e16ee56b728aff179afd72ac18247320a64c124e43060a9d96261be2ea462c7e1b04f86a95889a86e276d72a5874a10e128367d39155e274feb2c22cb4f6c9b56b45443f392a3272eec0caae501fa1b568a39846a4e02fcf99e731fec7e6d001cc844ccb779bdb0920516a3efc5cd82b1e28f59a3bcfdee14e415ba4631c6338b0aa6353833a071a194db0f0075c97de48e4403509f71f6c4560efa81d413b820e4cd00a7dc133f13e641da2ad46d6da068888dbb466f45c78fdba8926a9c5d8a6145404b72ccff930347f8301720350ed3bc11febaf4a1ede636fcb5c8a0c0c95af2f27db459c6f1a59ba471c7cab9ec4943d7e3155989a79abc1171d66a05dc8e8dca77b8130f2ef55ec8c572b3271959b381ad5a02adaae59996342476911c24c0ae136abf1cf15f20071cc9f4ff111d277086e819ceb781b63909aa241e889cdb89b2b0c335eeaff98d11bd5cb455118c798d66d6239130860558197d93ee2a3455b2a2444c160c0da92e63db6116e5c23f9c6249fa91f1335d5dac32ff8d0693c7a5cc76b17753804c368305cecb40cf8b9791212810dd8fc889d446983dddcba8f3ae086761221b81f1b525bbf199d7446b9d4d853f1ba7c59d924ecf11b7d84c1f119fa51c6203058966b4afe64d8c00e1031c8bb9b05366aca540fe8a9eea5090b588213dd47adc22cbed4118652a6e206ec2eadbd36c5da32a85740578321c84b036616fd6538e0cad43181da79bba7ba02663185026e1e027aa53ceed215c277f7c5ad201531617065372787468a20a33dab84102d05f81a7e6ceaf64ea2afa78aaaac599b0b9d202053ac33361d6dec0ffce8e61d0ce077055e066d8d4ff9b703cb095929c42a7d873919310a6445fffb1f1d6d6675149f3a23d10dd4683ef111fb13e6ce0e72bb9efdf870977b5e1e639f02e91e4d9021278af5faad84ad335f753657a956a4fc73715b87290d8f45dfa8a1fe39d7846a892361bfaa0a2e754ea84715d0f2c765ef34a95cd45c0f4e0bc7e95960c8fbf50abc2127cfbe65b20c9767f8d1ad3d402b7df2b400b64a74f8339ede233f6808621f5ca220385813fb3a3d0383577be586fbd17f77d8bf743e25cc8d0023ad4a52f990980372c3ff717ef2fe1461db617c6ca307fe28c04fa7f2483591b2cfa88d8a99cd998077273ba7dcd595ac762b6e19971bf89ec46a92f9a1faefef96c4be7951e761e3dc1d81d848553a3177ec456ccde60542468110d5f05881edc7b7d19a7a8f3cc9612d591c93281dc05188d874e2dc7ebfce430f6f44e16b9b1e499bc71b4d4865531636af9f7a493bbbb662e221b6bdfa5061807fbc5a237c94c5b68dbe21c82d8ce7898426689c520d0e01fb19d2dda10988ba3dac8f19514723882cdd053de0534b62259bbb88b9abca520bdd1ce6ee362ccfcb3d1be8754a548abf471e655eee7e30a4a8c5c34a465c0891c85a0bed33a26bd555d7538a91bd6e9bfbce059aac6d52bdf44c62727165addbf7cc7d39763a975646d7e3938f490e6ac4e08fdb66f877ddc18fc704b7127aea39766f08593fa833d7f385beea0b5a35e522d0bb79777c8214a5d0843b20121eaa2e22f9897aef9b0ac6c1e9e8efe11f43587d2d60a176cf6ad5117dd9515246e207398ffdf8fc52bbc0d9435f21515280dc8aa26e163fb2db624f125be93598999da3834b807c023c639f76cfa4b04ba4d2a626fb6b2b8cc71b0d68ad725308fc87d7206ac724c611f06d41d2bfd410f99b8e56107af55bf4eb8868d3f3e91363684d5e14a7011c5f7a1bb4c497a97bda3d65d5d2fc0d03827d6c6563d10b4353f46584c279bac2c9a9fec81ece9d14980b2973cb7b4e5986b81255c626d726c238bcba42ff1b62304447ae2b73aff34a47d4b8514467d467fd15552bb3fa1ebd108e85d1491f6ed074f4c11b8e60089ae4ea5e518799d94f4c3ee46fe17a67518ead2aeb4fb5cdbec5ae53ff934ac3385274f6dab269e62eaf01958ffda157098cab7c78ecec8f73d8e801af9527f6b7164ee36ccb0a08bc27c7e381ea417c97d8c3fd3157de62b75d2a6bf7a0a58946bf581e256a121c62211ebdfcbd17feac1368c6e28052969ef81ce77472238fedab002cd499d7410ec100f4b1a6f9323e8bc25edf5c316b5cda79141f2e66da6677d664e8b729a484fed4c07e7a07d89e965cc3eda1cf1803ba4b7c4148d30efe2d608bbd162434a6c60b0c93b2fc8ab783bcc14d5d809ee4f83c12a0027617be4675944d4b545284e95a89f1f403cf95034552fdfda9c8a96148c7f03f3ee63249fba15fa98b21787642cbf222a096cbf7cbbc5a90592db9a7cbd1c673b79e2bcd7d80d018eb7ef8912394fa6c84da8a2212fba9561db9e0b03d9ee8e40d34847ba040d222956e7a2f4e4159c3457548f99a194ff75dce39f297792bdf571217b726dbcc8ffd3707487b3b5a78b2d06966045e28a49d20eea6accb34bd9aacfc13c1c649a2530491bed09e072743a931822b0faa826efb34e98bafd7373fa8dc8aed29e080758b62804ef9993b445a173917682a3d1e4336ea835d3ff7359b794934694e448eb7a91fb320089a1a8bd302136a46c5addd59d44b6b07c19efdf99d77491831a723840c4e604835cbe40f07b04aaad6f6dc66214425cd85ab4f19f31553182c4d649dd0d6301ffdbb5b4d7903b28373dd070a553798b41f524fbe672799c1b20fc35446ee2bf6b3c800677f2168983a1c99b366cf8036dbc4180cf902b1dcfa51852a3127a012ef4e77182510b0c5c89dab89d522656366e237d55962b6641065062ee32c5b446ed8c55e07570513a005a60eff027c486c0b22f5dcb8ce498433d68da69d8b0036902b2f04ecac5bbfff0dc56bc4c46dedf8dacb95592bd02595459a64ce2caab45c67564fa67b0110164aa00e38747b1448ee085fe83823e3bb1dbab98f01207610d17ba5ae88e4ad8cb5814fac831bfa9a33085fe83823e3bb1dbab98f01207610d17ba5ae88e4ad8cb5814fac831bfa9a33e4b23c3e7d66b6a79f63cbae623e931d7ea83a68852556fc1147b1a4ea3b184bc341b9c63b32034b7df1f5b7bdf319154447f5fa8f393959c9a954a00254f54ec341b9c63b32034b7df1f5b7bdf319154447f5fa8f393959c9a954a00254f54e62c3eb6afb8c88f17ee32e497a44ea04570c4e8e50d8323f96e7fe94edc5b88drootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootcross-nvptx-gcc8-8.2.1+r264010-lp152.2.126.src.rpmcross-nvptx-newlib-develcross-nvptx-newlib8-develcross-nvptx-newlib8-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.1[-[v[P}@["X[[WZ@ZZ@Z@ZmZ3@ZZUZa@ZlZZkZ%Z1@Z@ZZ}@ZqZe@Z\ZOhZKt@ZKt@Z7Z@Z }rguenther@suse.comrguenther@suse.comrguenther@suse.comrguenther@suse.comschwab@suse.derguenther@suse.comafaerber@suse.deschwab@suse.derguenther@suse.comrguenther@suse.comrguenther@suse.comrguenther@suse.comrguenther@suse.comrguenther@suse.comrguenther@suse.comrguenther@suse.comrguenther@suse.comrguenther@suse.comrguenther@suse.comschwab@suse.derguenther@suse.comrguenther@suse.comrguenther@suse.comrguenther@suse.comrguenther@suse.comrguenther@suse.comafaerber@suse.demliska@suse.czrguenther@suse.comrguenther@suse.comrguenther@suse.commliska@suse.cz- Update to gcc-8-branch head (r264010). * GCC 8 Toolchain Module state. [bnc#1102564] [fate#326486]- Update to gcc-8-branch head (r263610). * Includes GCC 8.2 release. * Includes fix for build with ISL 0.20.- Update to gcc-8-branch head (r262873). * Includes fix to no longer try linking -lieee with -mieee-fp. [bnc#1084842] * Includes changes up to GCC 8.2 RC1.- Update to gcc-8-branch head (r261583). * Includes fix for C++ ABI issue with passing a class with a trivial move constructor and deleted copy constructor. [GCC#86094]- riscv-builtin-eh-return.patch: Don't clobber retval when __builtin_eh_return called- Update to gcc-8-branch head (r260570). * Adds fix for qtscript miscompile. * Avoids bogus strict-overflow warnings. [bnc#1094222]- Add riscv64-elf cross target. Suffix has become necessary to distinguish from openSUSE target.- libffi-riscv.patch: Backport of RISC-V support for libffi- Update to GCC 8.1 release.- Update to gcc-8-branch head (r259752). * GCC 8.1 second release candidate.- Update to gcc-8-branch head (r259636). * GCC 8.1 first release candidate. * package x86_64 movdirintrin.h- Update to SVN trunk head (r259467).- Update to SVN trunk head (r259308). * contains fix for ios_base::failure ABI breakage. [bnc#1087550] - Remove now obsolete gcc7-bnc1087550.diff.- Set SUSE_ASNEEDED to zero during %install so libasan keeps its NEEDED entry for libstdc++.so. [GCC#84428]- Update to SVN trunk head (r259162). - Enable --enable-fix-cortex-a53-835769 for aarch64. - Add gcc7-bnc1087550.diff to revert the ios_base::failure ABI back to compatible behavior with the default ABI. [bnc#1087550]- Update to SVN trunk head (r259024). * Includes gcc8-pr84990.patch. - Enable --enable-fix-cortex-a53-843419 for aarch64. [bnc#1084812]- Update to SVN trunk head (r258674). * Add gcc8-pr84990.patch to fix bootstrap with Ada. - Switch to release-checking builds.- Update to SVN trunk head (r258445).- Update to SVN trunk head (r258365). * adds pconfigintrin.h and wbnoinvdintrin.h intrinsic headers for x86- Add riscv64 cross compiler- Fix nvptx offload target compiler install so GCC can pick up required files. Split out the newlib part into cross-nvptx-newlib8-devel and avoid conflicts with GCC 7 variant via Provides/Conflicts of cross-nvptx-newlib-devel.- Update to SVN trunk head (r257983). - Add conflicts to non-bootstrap variant for cross packages to silence repo-checker. - Amend gcc48-remove-mpfr-2.4.0-requirement.patch to fix build on SLE11.- Update to SVN trunk head (r257516). - Use %{?_smp_mflags} everywhere. - Update _constraints to bump physicalmemory and general simplification.- Update to SVN trunk head (r257232). - Merge cross compiler packaging changes from GCC 7 again.- Move misplaced %endif- Update to SVN trunk head (r256686). - Merge cross compiler changes from GCC 7. - Bump libgo SO version again.- Prepare for disabling C++ for cross-compilers- Remove not used todo.patch.- Update to SVN trunk head (r256068). - Fix lsan_preinit packaging on ppc. - More x86_64 intrinsic headers.- Update to SVN trunk head (r255776). - Merge cross changes from gcc7 package, adding gcc7-avoid-fixinc-error.diff. - Remove Cilk+ packaging stuff since the feature has been removed. - Add gcc8-testresults-rpmlintrc to fix build.- Disable Intel CET for building target libraries.- New package, inherits from gcc7 * gcc-dir-version.patch, drop patchlevel from install directory names * 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 - Drops * gcc7-stack-probe.diff in favor of upstream implementation * gcc7-pr81481.diff which is now upstreamgoat19 1591654556  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmmopqqs8.2.1+r264010-lp152.2.1268.2.1+r264010-lp152.2.1268.2.1+r264010-lp152.2.126nvptx-noneinclude_ansi.h_syslist.halloca.har.hargz.hassert.hbitscomplex.hctype.hdirent.henvlock.henvz.herrno.hfastmath.hfcntl.hfnmatch.hgetopt.hglob.hgrp.hiconv.hieeefp.hinttypes.hlanginfo.hlibgen.hlimits.hlocale.hmachine_default_types.h_types.hansi.hendian.hfastmath.hieeefp.hmalloc.hparam.hsetjmp-dj.hsetjmp.hstdlib.htermios.htime.htypes.hmalloc.hmath.hnewlib.hpaths.hpthread.hpwd.hreent.hregdef.hregex.hrpcsched.hsearch.hsetjmp.hsignal.hspawn.hstdatomic.hstdint.hstdio.hstdio_ext.hstdlib.hstring.hstrings.hsys_default_fcntl.h_types.hcdefs.hconfig.hcustom_file.hdir.hdirent.herrno.hfcntl.hfeatures.hfile.hiconvnls.hlock.hparam.hqueue.hreent.hresource.hsched.hsignal.hstat.hstdio.hstring.hsyslimits.htime.htimeb.htimes.htypes.hunistd.hutime.hwait.htar.htermios.htgmath.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/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.opensuse.org/openSUSE:Leap:15.2/standard/1354e6e4233a7972503045f7eadf302c-cross-nvptx-gcc8cpiox86_64-suse-linuxdirectoryC source, ASCII textASCII textcurrent ar archiveV _L0Xފutf-821e121c08ae56361f6e51490bfd52bb0c9d3166893d119b374339d6ac0709404?007070100000001000041ed0000000000000000000000015edeb89900000000000000000000000000000000000000000000001100000000./usr/nvptx-none07070100000002000041ed0000000000000000000000015edeb89a00000000000000000000000000000000000000000000001900000000./usr/nvptx-none/include07070100000003000081a40000000000000000000000015edeb8990000113f000000000000000000000000000000000000002100000000./usr/nvptx-none/include/_ansi.h/* Provide support for both ANSI and non-ANSI environments. */ /* Some ANSI environments are "broken" in the sense that __STDC__ cannot be relied upon to have it's intended meaning. Therefore we must use our own concoction: _HAVE_STDC. Always use _HAVE_STDC instead of __STDC__ in newlib sources! 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 /* First try to figure out whether we really are in an ANSI C environment. */ /* FIXME: This probably needs some work. Perhaps sys/config.h can be prevailed upon to give us a clue. */ #ifdef __STDC__ #define _HAVE_STDC #endif /* 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 #ifdef _HAVE_STDC #define _PTR void * #define _AND , #define _NOARGS void #define _CONST const #define _VOLATILE volatile #define _SIGNED signed #define _DOTS , ... #define _VOID void #ifdef __CYGWIN__ #define _EXFUN_NOTHROW(name, proto) __cdecl name proto _NOTHROW #define _EXFUN(name, proto) __cdecl name proto #define _EXPARM(name, proto) (* __cdecl name) proto #define _EXFNPTR(name, proto) (__cdecl * name) proto #else #define _EXFUN_NOTHROW(name, proto) name proto _NOTHROW #define _EXFUN(name, proto) name proto #define _EXPARM(name, proto) (* name) proto #define _EXFNPTR(name, proto) (* name) proto #endif #define _DEFUN(name, arglist, args) name(args) #define _DEFUN_VOID(name) name(_NOARGS) #define _CAST_VOID (void) #ifndef _LONG_DOUBLE #define _LONG_DOUBLE long double #endif #ifndef _LONG_LONG_TYPE #define _LONG_LONG_TYPE long long #endif #ifndef _PARAMS #define _PARAMS(paramlist) paramlist #endif #else #define _PTR char * #define _AND ; #define _NOARGS #define _CONST #define _VOLATILE #define _SIGNED #define _DOTS #define _VOID void #define _EXFUN(name, proto) name() #define _EXFUN_NOTHROW(name, proto) name() #define _DEFUN(name, arglist, args) name arglist args; #define _DEFUN_VOID(name) name() #define _CAST_VOID #define _LONG_DOUBLE double #define _LONG_LONG_TYPE long #ifndef _PARAMS #define _PARAMS(paramlist) () #endif #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_ */ 07070100000004000081a40000000000000000000000015edeb89900000492000000000000000000000000000000000000002400000000./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_ */ 07070100000005000081a40000000000000000000000015edeb899000001a4000000000000000000000000000000000000002200000000./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 * _EXFUN(alloca,(size_t)); #endif #endif 07070100000006000081a40000000000000000000000015edeb89900000b8e000000000000000000000000000000000000001e00000000./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. All advertising materials mentioning features or use of this software * must display the following acknowledgement: * This product includes software developed by the University of * California, Berkeley and its contributors. * 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. * * @(#)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_ */ 07070100000007000081a40000000000000000000000015edeb89900000539000000000000000000000000000000000000002000000000./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_ */ 07070100000008000081a40000000000000000000000015edeb899000004a6000000000000000000000000000000000000002200000000./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 _EXFUN(__assert, (const char *, int, const char *) _ATTRIBUTE ((__noreturn__))); void _EXFUN(__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 07070100000009000041ed0000000000000000000000015edeb89a00000000000000000000000000000000000000000000001e00000000./usr/nvptx-none/include/bits0707010000000a000081a40000000000000000000000015edeb89900000cde000000000000000000000000000000000000002300000000./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); /* 7.3.5.1 The catan functions */ double complex catan(double complex); float complex catanf(float 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); /* 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 */ 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); /* 7.3.9 Manipulation functions */ /* 7.3.9.1 The carg functions */ double carg(double complex); float cargf(float 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); /*long double complex conjl(long double complex); */ /* 7.3.9.4 The cproj functions */ double complex cproj(double complex); float complex cprojf(float complex); /*long double complex cprojl(long double complex); */ /* 7.3.9.5 The creal functions */ double creal(double complex); float crealf(float complex); /*long double creall(long double complex); */ __END_DECLS #endif /* ! _COMPLEX_H */ 0707010000000b000081a40000000000000000000000015edeb89900000eeb000000000000000000000000000000000000002100000000./usr/nvptx-none/include/ctype.h#ifndef _CTYPE_H_ #define _CTYPE_H_ #include "_ansi.h" _BEGIN_STD_C int _EXFUN(isalnum, (int __c)); int _EXFUN(isalpha, (int __c)); int _EXFUN(iscntrl, (int __c)); int _EXFUN(isdigit, (int __c)); int _EXFUN(isgraph, (int __c)); int _EXFUN(islower, (int __c)); int _EXFUN(isprint, (int __c)); int _EXFUN(ispunct, (int __c)); int _EXFUN(isspace, (int __c)); int _EXFUN(isupper, (int __c)); int _EXFUN(isxdigit,(int __c)); int _EXFUN(tolower, (int __c)); int _EXFUN(toupper, (int __c)); #if !defined(__STRICT_ANSI__) || defined(__cplusplus) || __STDC_VERSION__ >= 199901L int _EXFUN(isblank, (int __c)); #endif #ifndef __STRICT_ANSI__ int _EXFUN(isascii, (int __c)); int _EXFUN(toascii, (int __c)); #define _tolower(__c) ((unsigned char)(__c) - 'A' + 'a') #define _toupper(__c) ((unsigned char)(__c) - 'a' + 'A') #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 #ifndef _MB_CAPABLE _CONST #endif extern __IMPORT char *__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__) && \ (!defined(__STRICT_ANSI__) || __STDC_VERSION__ >= 199901L) #define isblank(__c) \ __extension__ ({ __typeof__ (__c) __x = (__c); \ (__ctype_lookup(__x)&_B) || (int) (__x) == '\t';}) #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__ */ #endif /* !__cplusplus */ #ifndef __STRICT_ANSI__ #define isascii(__c) ((unsigned)(__c)<=0177) #define toascii(__c) ((__c)&0177) #endif /* For C++ backward-compatibility only. */ extern __IMPORT _CONST char _ctype_[]; _END_STD_C #endif /* _CTYPE_H_ */ 0707010000000c000081a40000000000000000000000015edeb899000000ea000000000000000000000000000000000000002200000000./usr/nvptx-none/include/dirent.h#ifndef _DIRENT_H_ #define _DIRENT_H_ #ifdef __cplusplus extern "C" { #endif #include #if !defined(MAXNAMLEN) && !defined(_POSIX_SOURCE) #define MAXNAMLEN 1024 #endif #ifdef __cplusplus } #endif #endif /*_DIRENT_H_*/ 0707010000000d000081a40000000000000000000000015edeb8990000016e000000000000000000000000000000000000002300000000./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 _EXFUN(__env_lock,(struct _reent *reent)); void _EXFUN(__env_unlock,(struct _reent *reent)); #endif /* _INCLUDE_ENVLOCK_H_ */ 0707010000000e000081a40000000000000000000000015edeb8990000030d000000000000000000000000000000000000002000000000./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); 0707010000000f000081a40000000000000000000000015edeb899000000ae000000000000000000000000000000000000002100000000./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__ */ 07070100000010000081a40000000000000000000000015edeb899000000b9000000000000000000000000000000000000002400000000./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_ */ 07070100000011000081a40000000000000000000000015edeb89900000017000000000000000000000000000000000000002100000000./usr/nvptx-none/include/fcntl.h#include 07070100000012000081a40000000000000000000000015edeb89900000951000000000000000000000000000000000000002300000000./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_ #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 defined(_GNU_SOURCE) || !defined(_ANSI_SOURCE) && !defined(_POSIX_SOURCE) #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 #include __BEGIN_DECLS int fnmatch(const char *, const char *, int); __END_DECLS #endif /* !_FNMATCH_H_ */ 07070100000013000081a40000000000000000000000015edeb899000019e3000000000000000000000000000000000000002200000000./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} /* 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; } getopt_data; #endif /* __need_getopt_newlib */ /* externally-defined variables */ extern char *optarg; extern int optind; extern int opterr; extern int optopt; /* function prototypes */ int _EXFUN (getopt, (int __argc, char *const __argv[], const char *__optstring)); int _EXFUN (getopt_long, (int __argc, char *const __argv[], const char *__shortopts, const struct option * __longopts, int *__longind)); int _EXFUN (getopt_long_only, (int __argc, char *const __argv[], const char *__shortopts, const struct option * __longopts, int *__longind)); #ifdef __need_getopt_newlib int _EXFUN (__getopt_r, (int __argc, char *const __argv[], const char *__optstring, struct getopt_data * __data)); int _EXFUN (__getopt_long_r, (int __argc, char *const __argv[], const char *__shortopts, const struct option * __longopts, int *__longind, struct getopt_data * __data)); int _EXFUN (__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 */ 07070100000014000081a40000000000000000000000015edeb89900000ecb000000000000000000000000000000000000002000000000./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_ */ 07070100000015000081a40000000000000000000000015edeb89900000d50000000000000000000000000000000000000001f00000000./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. All advertising materials mentioning features or use of this software * must display the following acknowledgement: * This product includes software developed by the University of * California, Berkeley and its contributors. * 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. * * @(#)grp.h 8.2 (Berkeley) 1/21/94 */ #ifndef _GRP_H_ #define _GRP_H_ #include #include #ifdef __CYGWIN__ #include #endif #if !defined(_POSIX_SOURCE) && !defined(_XOPEN_SOURCE) #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 *); int getgrnam_r (const char *, struct group *, char *, size_t, struct group **); int getgrgid_r (gid_t, struct group *, char *, size_t, struct group **); #ifndef _POSIX_SOURCE struct group *getgrent (void); void setgrent (void); void endgrent (void); #ifndef __CYGWIN__ void setgrfile (const char *); #endif /* !__CYGWIN__ */ #ifndef _XOPEN_SOURCE #ifndef __CYGWIN__ char *group_from_gid (gid_t, int); int setgroupent (int); #endif /* !__CYGWIN__ */ int initgroups (const char *, gid_t); #endif /* !_XOPEN_SOURCE */ #endif /* !_POSIX_SOURCE */ #endif /* !__INSIDE_CYGWIN__ */ #ifdef __cplusplus } #endif #endif /* !_GRP_H_ */ 07070100000016000081a40000000000000000000000015edeb8990000088a000000000000000000000000000000000000002100000000./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 _EXFUN(iconv_open, (_CONST char *, _CONST char *)); size_t _EXFUN(iconv, (iconv_t, char **__restrict, size_t *__restrict, char **__restrict, size_t *__restrict)); int _EXFUN(iconv_close, (iconv_t)); #endif iconv_t _EXFUN(_iconv_open_r, (struct _reent *, _CONST char *, _CONST char *)); size_t _EXFUN(_iconv_r, (struct _reent *, iconv_t, _CONST char **, size_t *, char **, size_t *)); int _EXFUN(_iconv_close_r, (struct _reent *, iconv_t)); _END_STD_C #endif /* #ifndef _ICONV_H_ */ 07070100000017000081a40000000000000000000000015edeb899000014ef000000000000000000000000000000000000002200000000./usr/nvptx-none/include/ieeefp.h#ifndef _IEEE_FP_H_ #define _IEEE_FP_H_ #include "_ansi.h" #include _BEGIN_STD_C /* FIXME FIXME FIXME: Neither of __ieee_{float,double}_shape_tape 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; #endif #ifdef __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 #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; #endif #ifdef __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 /* 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 _EXFUN(fpgetround,(void)); fp_rnd _EXFUN(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 _EXFUN(fpgetmask,(void)); fp_except _EXFUN(fpsetmask,(fp_except)); fp_except _EXFUN(fpgetsticky,(void)); fp_except _EXFUN(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 _EXFUN(fpgetroundtoi,(void)); fp_rdi _EXFUN(fpsetroundtoi,(fp_rdi)); #undef isnan #undef isinf int _EXFUN(isnan, (double)); int _EXFUN(isinf, (double)); int _EXFUN(finite, (double)); int _EXFUN(isnanf, (float)); int _EXFUN(isinff, (float)); int _EXFUN(finitef, (float)); #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 #ifndef __ieeefp_isnanf #define __ieeefp_isnanf(x) (((*(long *)&(x) & 0x7f800000L)==0x7f800000L) && \ ((*(long *)&(x) & 0x007fffffL)!=0000000000L)) #endif #define isnanf(x) __ieeefp_isnanf(x) #ifndef __ieeefp_isinff #define __ieeefp_isinff(x) (((*(long *)&(x) & 0x7f800000L)==0x7f800000L) && \ ((*(long *)&(x) & 0x007fffffL)==0000000000L)) #endif #define isinff(x) __ieeefp_isinff(x) #ifndef __ieeefp_finitef #define __ieeefp_finitef(x) (((*(long *)&(x) & 0x7f800000L)!=0x7f800000L)) #endif #define finitef(x) __ieeefp_finitef(x) #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_ */ 07070100000018000081a40000000000000000000000015edeb89900001b94000000000000000000000000000000000000002400000000./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 #define __need_wchar_t #include /* Don't use __STDINT_EXP test since GCC's stdint.h provides different macros than newlib's stdint.h. */ #if __GNUC_PREREQ(3, 2) #define __INTTYPES_EXP(x) __##x##__ #else #define __INTTYPES_EXP(x) x #include #endif #define __STRINGIFY(a) #a /* 8-bit types */ #define __PRI8(x) __STRINGIFY(x) #define __SCN8(x) __STRINGIFY(hh##x) #define PRId8 __PRI8(d) #define PRIi8 __PRI8(i) #define PRIo8 __PRI8(o) #define PRIu8 __PRI8(u) #define PRIx8 __PRI8(x) #define PRIX8 __PRI8(X) #define SCNd8 __SCN8(d) #define SCNi8 __SCN8(i) #define SCNo8 __SCN8(o) #define SCNu8 __SCN8(u) #define SCNx8 __SCN8(x) #define PRIdLEAST8 __PRI8(d) #define PRIiLEAST8 __PRI8(i) #define PRIoLEAST8 __PRI8(o) #define PRIuLEAST8 __PRI8(u) #define PRIxLEAST8 __PRI8(x) #define PRIXLEAST8 __PRI8(X) #define SCNdLEAST8 __SCN8(d) #define SCNiLEAST8 __SCN8(i) #define SCNoLEAST8 __SCN8(o) #define SCNuLEAST8 __SCN8(u) #define SCNxLEAST8 __SCN8(x) #define PRIdFAST8 __PRI8(d) #define PRIiFAST8 __PRI8(i) #define PRIoFAST8 __PRI8(o) #define PRIuFAST8 __PRI8(u) #define PRIxFAST8 __PRI8(x) #define PRIXFAST8 __PRI8(X) #define SCNdFAST8 __SCN8(d) #define SCNiFAST8 __SCN8(i) #define SCNoFAST8 __SCN8(o) #define SCNuFAST8 __SCN8(u) #define SCNxFAST8 __SCN8(x) /* 16-bit types */ #define __PRI16(x) __STRINGIFY(x) #define __SCN16(x) __STRINGIFY(h##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 __PRI16(d) #define PRIiLEAST16 __PRI16(i) #define PRIoLEAST16 __PRI16(o) #define PRIuLEAST16 __PRI16(u) #define PRIxLEAST16 __PRI16(x) #define PRIXLEAST16 __PRI16(X) #define SCNdLEAST16 __SCN16(d) #define SCNiLEAST16 __SCN16(i) #define SCNoLEAST16 __SCN16(o) #define SCNuLEAST16 __SCN16(u) #define SCNxLEAST16 __SCN16(x) #define PRIdFAST16 __PRI16(d) #define PRIiFAST16 __PRI16(i) #define PRIoFAST16 __PRI16(o) #define PRIuFAST16 __PRI16(u) #define PRIxFAST16 __PRI16(x) #define PRIXFAST16 __PRI16(X) #define SCNdFAST16 __SCN16(d) #define SCNiFAST16 __SCN16(i) #define SCNoFAST16 __SCN16(o) #define SCNuFAST16 __SCN16(u) #define SCNxFAST16 __SCN16(x) /* 32-bit types */ #if __have_long32 #define __PRI32(x) __STRINGIFY(l##x) #define __SCN32(x) __STRINGIFY(l##x) #else #define __PRI32(x) __STRINGIFY(x) #define __SCN32(x) __STRINGIFY(x) #endif #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 __PRI32(d) #define PRIiLEAST32 __PRI32(i) #define PRIoLEAST32 __PRI32(o) #define PRIuLEAST32 __PRI32(u) #define PRIxLEAST32 __PRI32(x) #define PRIXLEAST32 __PRI32(X) #define SCNdLEAST32 __SCN32(d) #define SCNiLEAST32 __SCN32(i) #define SCNoLEAST32 __SCN32(o) #define SCNuLEAST32 __SCN32(u) #define SCNxLEAST32 __SCN32(x) #define PRIdFAST32 __PRI32(d) #define PRIiFAST32 __PRI32(i) #define PRIoFAST32 __PRI32(o) #define PRIuFAST32 __PRI32(u) #define PRIxFAST32 __PRI32(x) #define PRIXFAST32 __PRI32(X) #define SCNdFAST32 __SCN32(d) #define SCNiFAST32 __SCN32(i) #define SCNoFAST32 __SCN32(o) #define SCNuFAST32 __SCN32(u) #define SCNxFAST32 __SCN32(x) /* 64-bit types */ #if __have_long64 #define __PRI64(x) __STRINGIFY(l##x) #define __SCN64(x) __STRINGIFY(l##x) #elif __have_longlong64 #define __PRI64(x) __STRINGIFY(ll##x) #define __SCN64(x) __STRINGIFY(ll##x) #else #define __PRI64(x) __STRINGIFY(x) #define __SCN64(x) __STRINGIFY(x) #endif #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) #if __int64_t_defined #define PRIdLEAST64 __PRI64(d) #define PRIiLEAST64 __PRI64(i) #define PRIoLEAST64 __PRI64(o) #define PRIuLEAST64 __PRI64(u) #define PRIxLEAST64 __PRI64(x) #define PRIXLEAST64 __PRI64(X) #define SCNdLEAST64 __SCN64(d) #define SCNiLEAST64 __SCN64(i) #define SCNoLEAST64 __SCN64(o) #define SCNuLEAST64 __SCN64(u) #define SCNxLEAST64 __SCN64(x) #define PRIdFAST64 __PRI64(d) #define PRIiFAST64 __PRI64(i) #define PRIoFAST64 __PRI64(o) #define PRIuFAST64 __PRI64(u) #define PRIxFAST64 __PRI64(x) #define PRIXFAST64 __PRI64(X) #define SCNdFAST64 __SCN64(d) #define SCNiFAST64 __SCN64(i) #define SCNoFAST64 __SCN64(o) #define SCNuFAST64 __SCN64(u) #define SCNxFAST64 __SCN64(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 PTRDIFF_MAX <= __INTTYPES_EXP(INT_MAX) # define __PRIPTR(x) __STRINGIFY(x) # define __SCNPTR(x) __STRINGIFY(x) #elif PTRDIFF_MAX <= __INTTYPES_EXP(LONG_MAX) || !defined(__have_longlong64) # define __PRIPTR(x) __STRINGIFY(l##x) # define __SCNPTR(x) __STRINGIFY(l##x) #else # define __PRIPTR(x) __STRINGIFY(ll##x) # define __SCNPTR(x) __STRINGIFY(ll##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; #ifdef __cplusplus extern "C" { #endif extern intmax_t imaxabs(intmax_t j); extern imaxdiv_t imaxdiv(intmax_t numer, intmax_t denomer); extern intmax_t strtoimax(const char *__restrict, char **__restrict, int); extern uintmax_t strtoumax(const char *__restrict, char **__restrict, int); extern intmax_t wcstoimax(const wchar_t *__restrict, wchar_t **__restrict, int); extern uintmax_t wcstoumax(const wchar_t *__restrict, wchar_t **__restrict, int); #ifdef __cplusplus } #endif #endif 07070100000019000081a40000000000000000000000015edeb89900001f1e000000000000000000000000000000000000002400000000./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 #include typedef int nl_item; enum __nl_item { /* 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(). */ _NL_LOCALE_EXTENDED_LAST_ENTRY #endif /* __HAVE_LOCALE_INFO_EXTENDED__ */ #endif /* __HAVE_LOCALE_INFO__ */ }; __BEGIN_DECLS char *nl_langinfo(nl_item); __END_DECLS #endif /* !_LANGINFO_H_ */ 0707010000001a000081a40000000000000000000000015edeb8990000012c000000000000000000000000000000000000002200000000./usr/nvptx-none/include/libgen.h/* * libgen.h - defined by XPG4 */ #ifndef _LIBGEN_H_ #define _LIBGEN_H_ #include "_ansi.h" #include #ifdef __cplusplus extern "C" { #endif char *_EXFUN(basename, (char *)); char *_EXFUN(dirname, (char *)); #ifdef __cplusplus } #endif #endif /* _LIBGEN_H_ */ 0707010000001b000081a40000000000000000000000015edeb89900000f9b000000000000000000000000000000000000002200000000./usr/nvptx-none/include/limits.h#ifndef _LIBC_LIMITS_H_ # define _LIBC_LIMITS_H_ 1 #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 (defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L) || \ (defined(__cplusplus) && __cplusplus >= 201103L) /* 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 defined (__GNU_LIBRARY__) ? defined (__USE_GNU) : !defined (__STRICT_ANSI__) /* 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 0707010000001c000081a40000000000000000000000015edeb899000004f3000000000000000000000000000000000000002200000000./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" #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 _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; }; #ifndef _REENT_ONLY char *_EXFUN(setlocale,(int category, const char *locale)); struct lconv *_EXFUN(localeconv,(void)); #endif struct _reent; char *_EXFUN(_setlocale_r,(struct _reent *, int category, const char *locale)); struct lconv *_EXFUN(_localeconv_r,(struct _reent *)); _END_STD_C #endif /* _LOCALE_H_ */ 0707010000001d000041ed0000000000000000000000015edeb89a00000000000000000000000000000000000000000000002100000000./usr/nvptx-none/include/machine0707010000001e000081a40000000000000000000000015edeb89a000016c9000000000000000000000000000000000000003200000000./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 #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 #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 */ 0707010000001f000081a40000000000000000000000015edeb89a00000070000000000000000000000000000000000000002a00000000./usr/nvptx-none/include/machine/_types.h/* * $Id$ */ #ifndef _MACHINE__TYPES_H #define _MACHINE__TYPES_H #include #endif 07070100000020000081a40000000000000000000000015edeb89a00000030000000000000000000000000000000000000002800000000./usr/nvptx-none/include/machine/ansi.h/* dummy header file to support BSD compiler */ 07070100000021000081a40000000000000000000000015edeb89a00000174000000000000000000000000000000000000002a00000000./usr/nvptx-none/include/machine/endian.h#ifndef __MACHINE_ENDIAN_H__ #include #ifndef BIG_ENDIAN #define BIG_ENDIAN 4321 #endif #ifndef LITTLE_ENDIAN #define LITTLE_ENDIAN 1234 #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 #endif /* __MACHINE_ENDIAN_H__ */ 07070100000022000081a40000000000000000000000015edeb89a00000b0d000000000000000000000000000000000000002c00000000./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) #ifdef _HAVE_STDC /* 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) #endif /* Override the functions defined in math.h */ #endif /* __sysvnecv70_target */ 07070100000023000081a40000000000000000000000015edeb89a0000216d000000000000000000000000000000000000002a00000000./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. */ #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 #else # define __IEEE_BIG_ENDIAN # ifdef __ARMEL__ # define __IEEE_BYTES_LITTLE_ENDIAN # endif #endif #endif #if defined (__aarch64__) #if defined (__AARCH64EL__) #define __IEEE_LITTLE_ENDIAN #else #define __IEEE_BIG_ENDIAN #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 #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 __fr30__ #define __IEEE_BIG_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(__or32__) || defined(__or1k__) || defined(__or16__) #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 #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 __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 #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 */ 07070100000024000081a40000000000000000000000015edeb89a0000008a000000000000000000000000000000000000002a00000000./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_ */ 07070100000025000081a40000000000000000000000015edeb89a00000032000000000000000000000000000000000000002900000000./usr/nvptx-none/include/machine/param.h/* Place holder for machine-specific param.h. */ 07070100000026000081a40000000000000000000000015edeb89a000003b3000000000000000000000000000000000000002d00000000./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 07070100000027000081a40000000000000000000000015edeb89a00001f7f000000000000000000000000000000000000002a00000000./usr/nvptx-none/include/machine/setjmp.h _BEGIN_STD_C #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__ /* Only 17 words are currently needed. Preserve one word slot if we need to expand. Check newlib/libc/machine/nds32/setjmp.S for more information. */ #define _JBLEN 18 #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 # 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) || (__mips_fpr == 64) # 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 16 #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 __iq2000__ #define _JBLEN 32 #endif #ifdef __mcore__ #define _JBLEN 16 #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 __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 __RX__ #define _JBLEN 0x44 #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__) #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 #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); 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__ */ 07070100000028000081a40000000000000000000000015edeb89a0000008a000000000000000000000000000000000000002a00000000./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_ */ 07070100000029000081a40000000000000000000000015edeb89a0000001d000000000000000000000000000000000000002b00000000./usr/nvptx-none/include/machine/termios.h#define __MAX_BAUD B4000000 0707010000002a000081a40000000000000000000000015edeb89a0000018f000000000000000000000000000000000000002800000000./usr/nvptx-none/include/machine/time.h#ifndef _MACHTIME_H_ #define _MACHTIME_H_ #if defined(__rtems__) #define _CLOCKS_PER_SEC_ sysconf(_SC_CLK_TCK) #else /* !__rtems__ */ #if defined(__aarch64__) || defined(__arm__) || defined(__thumb__) #define _CLOCKS_PER_SEC_ 100 #endif #endif /* !__rtems__ */ #ifdef __SPU__ #include int nanosleep (const struct timespec *, struct timespec *); #endif #endif /* _MACHTIME_H_ */ 0707010000002b000081a40000000000000000000000015edeb89a0000029b000000000000000000000000000000000000002900000000./usr/nvptx-none/include/machine/types.h#ifndef _MACHTYPES_H_ #define _MACHTYPES_H_ /* * The following section is RTEMS specific and is needed to more * closely match the types defined in the BSD machine/types.h. * This is needed to let the RTEMS/BSD TCP/IP stack compile. */ #if defined(__rtems__) #include #endif #define _CLOCK_T_ unsigned long /* clock() */ #define _TIME_T_ long /* time() */ #define _CLOCKID_T_ unsigned long #define _TIMER_T_ unsigned long #ifndef _HAVE_SYSTYPES typedef long int __off_t; typedef int __pid_t; #ifdef __GNUC__ __extension__ typedef long long int __loff_t; #else typedef long int __loff_t; #endif #endif #endif /* _MACHTYPES_H_ */ 0707010000002c000081a40000000000000000000000015edeb899000010e2000000000000000000000000000000000000002200000000./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 _PTR malloc _PARAMS ((size_t)); #ifdef __CYGWIN__ #undef _malloc_r #define _malloc_r(r, s) malloc (s) #else extern _PTR _malloc_r _PARAMS ((struct _reent *, size_t)); #endif extern _VOID free _PARAMS ((_PTR)); #ifdef __CYGWIN__ #undef _free_r #define _free_r(r, p) free (p) #else extern _VOID _free_r _PARAMS ((struct _reent *, _PTR)); #endif extern _PTR realloc _PARAMS ((_PTR, size_t)); #ifdef __CYGWIN__ #undef _realloc_r #define _realloc_r(r, p, s) realloc (p, s) #else extern _PTR _realloc_r _PARAMS ((struct _reent *, _PTR, size_t)); #endif extern _PTR calloc _PARAMS ((size_t, size_t)); #ifdef __CYGWIN__ #undef _calloc_r #define _calloc_r(r, s1, s2) calloc (s1, s2); #else extern _PTR _calloc_r _PARAMS ((struct _reent *, size_t, size_t)); #endif extern _PTR memalign _PARAMS ((size_t, size_t)); #ifdef __CYGWIN__ #undef _memalign_r #define _memalign_r(r, s1, s2) memalign (s1, s2); #else extern _PTR _memalign_r _PARAMS ((struct _reent *, size_t, size_t)); #endif extern struct mallinfo mallinfo _PARAMS ((void)); #ifdef __CYGWIN__ #undef _mallinfo_r #define _mallinfo_r(r) mallinfo () #else extern struct mallinfo _mallinfo_r _PARAMS ((struct _reent *)); #endif extern void malloc_stats _PARAMS ((void)); #ifdef __CYGWIN__ #undef _malloc_stats_r #define _malloc_stats_r(r) malloc_stats () #else extern void _malloc_stats_r _PARAMS ((struct _reent *)); #endif extern int mallopt _PARAMS ((int, int)); #ifdef __CYGWIN__ #undef _mallopt_r #define _mallopt_r(i1, i2) mallopt (i1, i2) #else extern int _mallopt_r _PARAMS ((struct _reent *, int, int)); #endif extern size_t malloc_usable_size _PARAMS ((_PTR)); #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 _PARAMS ((struct _reent *, _PTR)); #endif /* These aren't too useful on an embedded system, but we define them anyhow. */ extern _PTR valloc _PARAMS ((size_t)); #ifdef __CYGWIN__ #undef _valloc_r #define _valloc_r(r, s) valloc (s) #else extern _PTR _valloc_r _PARAMS ((struct _reent *, size_t)); #endif extern _PTR pvalloc _PARAMS ((size_t)); #ifdef __CYGWIN__ #undef _pvalloc_r #define _pvalloc_r(r, s) pvalloc (s) #else extern _PTR _pvalloc_r _PARAMS ((struct _reent *, size_t)); #endif extern int malloc_trim _PARAMS ((size_t)); #ifdef __CYGWIN__ #undef _malloc_trim_r #define _malloc_trim_r(r, s) malloc_trim (s) #else extern int _malloc_trim_r _PARAMS ((struct _reent *, size_t)); #endif /* A compatibility routine for an earlier version of the allocator. */ extern _VOID mstats _PARAMS ((char *)); #ifdef __CYGWIN__ #undef _mstats_r #define _mstats_r(r, p) mstats (p) #else extern _VOID _mstats_r _PARAMS ((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 _PARAMS ((_PTR)); #endif /* __CYGWIN__ */ #ifdef __cplusplus } #endif #endif /* _INCLUDE_MALLOC_H_ */ 0707010000002d000081a40000000000000000000000015edeb89900004c27000000000000000000000000000000000000002000000000./usr/nvptx-none/include/math.h#ifndef _MATH_H_ #define _MATH_H_ #include #include #include "_ansi.h" _BEGIN_STD_C /* __dmath, __fmath, and __ldmath are only here for backwards compatibility * in case any code used them. They are no longer used by Newlib, itself, * other than legacy. */ union __dmath { double d; __ULong i[2]; }; union __fmath { float f; __ULong i[1]; }; #if defined(_HAVE_LONG_DOUBLE) union __ldmath { long double ld; __ULong i[4]; }; #endif /* 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 _PARAMS((double)); extern double cos _PARAMS((double)); extern double sin _PARAMS((double)); extern double tan _PARAMS((double)); extern double tanh _PARAMS((double)); extern double frexp _PARAMS((double, int *)); extern double modf _PARAMS((double, double *)); extern double ceil _PARAMS((double)); extern double fabs _PARAMS((double)); extern double floor _PARAMS((double)); #endif /* ! defined (__math_68881) */ /* Non reentrant ANSI C functions. */ #ifndef _REENT_ONLY #ifndef __math_68881 extern double acos _PARAMS((double)); extern double asin _PARAMS((double)); extern double atan2 _PARAMS((double, double)); extern double cosh _PARAMS((double)); extern double sinh _PARAMS((double)); extern double exp _PARAMS((double)); extern double ldexp _PARAMS((double, int)); extern double log _PARAMS((double)); extern double log10 _PARAMS((double)); extern double pow _PARAMS((double, double)); extern double sqrt _PARAMS((double)); extern double fmod _PARAMS((double, double)); #endif /* ! defined (__math_68881) */ #endif /* ! defined (_REENT_ONLY) */ #if !defined(__STRICT_ANSI__) || defined(__cplusplus) || __STDC_VERSION__ >= 199901L /* 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 # define math_errhandling MATH_ERRNO #endif extern int __isinff (float x); extern int __isinfd (double x); extern int __isnanf (float x); extern int __isnand (double x); extern int __fpclassifyf (float x); extern int __fpclassifyd (double x); extern int __signbitf (float x); extern int __signbitd (double x); #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 /* 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 in ). */ #ifndef isinf #define isinf(y) (fpclassify(y) == FP_INFINITE) #endif #ifndef isnan #define isnan(y) (fpclassify(y) == FP_NAN) #endif #define isnormal(y) (fpclassify(y) == FP_NORMAL) #define signbit(__x) \ ((sizeof(__x) == sizeof(float)) ? __signbitf(__x) : \ __signbitd(__x)) #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;})) /* Non ANSI double precision functions. */ extern double infinity _PARAMS((void)); extern double nan _PARAMS((const char *)); extern int finite _PARAMS((double)); extern double copysign _PARAMS((double, double)); extern double logb _PARAMS((double)); extern int ilogb _PARAMS((double)); extern double asinh _PARAMS((double)); extern double cbrt _PARAMS((double)); extern double nextafter _PARAMS((double, double)); extern double rint _PARAMS((double)); extern double scalbn _PARAMS((double, int)); extern double exp2 _PARAMS((double)); extern double scalbln _PARAMS((double, long int)); extern double tgamma _PARAMS((double)); extern double nearbyint _PARAMS((double)); extern long int lrint _PARAMS((double)); extern _LONG_LONG_TYPE int llrint _PARAMS((double)); extern double round _PARAMS((double)); extern long int lround _PARAMS((double)); extern long long int llround _PARAMS((double)); extern double trunc _PARAMS((double)); extern double remquo _PARAMS((double, double, int *)); extern double fdim _PARAMS((double, double)); extern double fmax _PARAMS((double, double)); extern double fmin _PARAMS((double, double)); extern double fma _PARAMS((double, double, double)); #ifndef __math_68881 extern double log1p _PARAMS((double)); extern double expm1 _PARAMS((double)); #endif /* ! defined (__math_68881) */ #ifndef _REENT_ONLY extern double acosh _PARAMS((double)); extern double atanh _PARAMS((double)); extern double remainder _PARAMS((double, double)); extern double gamma _PARAMS((double)); extern double lgamma _PARAMS((double)); extern double erf _PARAMS((double)); extern double erfc _PARAMS((double)); extern double log2 _PARAMS((double)); #if !defined(__cplusplus) #define log2(x) (log (x) / _M_LN2) #endif #ifndef __math_68881 extern double hypot _PARAMS((double, double)); #endif #endif /* ! defined (_REENT_ONLY) */ /* Single precision versions of ANSI functions. */ extern float atanf _PARAMS((float)); extern float cosf _PARAMS((float)); extern float sinf _PARAMS((float)); extern float tanf _PARAMS((float)); extern float tanhf _PARAMS((float)); extern float frexpf _PARAMS((float, int *)); extern float modff _PARAMS((float, float *)); extern float ceilf _PARAMS((float)); extern float fabsf _PARAMS((float)); extern float floorf _PARAMS((float)); #ifndef _REENT_ONLY extern float acosf _PARAMS((float)); extern float asinf _PARAMS((float)); extern float atan2f _PARAMS((float, float)); extern float coshf _PARAMS((float)); extern float sinhf _PARAMS((float)); extern float expf _PARAMS((float)); extern float ldexpf _PARAMS((float, int)); extern float logf _PARAMS((float)); extern float log10f _PARAMS((float)); extern float powf _PARAMS((float, float)); extern float sqrtf _PARAMS((float)); extern float fmodf _PARAMS((float, float)); #endif /* ! defined (_REENT_ONLY) */ /* Other single precision functions. */ extern float exp2f _PARAMS((float)); extern float scalblnf _PARAMS((float, long int)); extern float tgammaf _PARAMS((float)); extern float nearbyintf _PARAMS((float)); extern long int lrintf _PARAMS((float)); extern _LONG_LONG_TYPE llrintf _PARAMS((float)); extern float roundf _PARAMS((float)); extern long int lroundf _PARAMS((float)); extern long long int llroundf _PARAMS((float)); extern float truncf _PARAMS((float)); extern float remquof _PARAMS((float, float, int *)); extern float fdimf _PARAMS((float, float)); extern float fmaxf _PARAMS((float, float)); extern float fminf _PARAMS((float, float)); extern float fmaf _PARAMS((float, float, float)); extern float infinityf _PARAMS((void)); extern float nanf _PARAMS((const char *)); extern int finitef _PARAMS((float)); extern float copysignf _PARAMS((float, float)); extern float logbf _PARAMS((float)); extern int ilogbf _PARAMS((float)); extern float asinhf _PARAMS((float)); extern float cbrtf _PARAMS((float)); extern float nextafterf _PARAMS((float, float)); extern float rintf _PARAMS((float)); extern float scalbnf _PARAMS((float, int)); extern float log1pf _PARAMS((float)); extern float expm1f _PARAMS((float)); #ifndef _REENT_ONLY extern float acoshf _PARAMS((float)); extern float atanhf _PARAMS((float)); extern float remainderf _PARAMS((float, float)); extern float gammaf _PARAMS((float)); extern float lgammaf _PARAMS((float)); extern float erff _PARAMS((float)); extern float erfcf _PARAMS((float)); extern float log2f _PARAMS((float)); extern float hypotf _PARAMS((float, float)); #endif /* ! defined (_REENT_ONLY) */ /* On platforms where long double equals double. */ #ifdef _LDBL_EQ_DBL /* Reentrant ANSI C functions. */ #ifndef __math_68881 extern long double atanl _PARAMS((long double)); extern long double cosl _PARAMS((long double)); extern long double sinl _PARAMS((long double)); extern long double tanl _PARAMS((long double)); extern long double tanhl _PARAMS((long double)); extern long double frexpl _PARAMS((long double value, int *)); extern long double modfl _PARAMS((long double, long double *)); extern long double ceill _PARAMS((long double)); extern long double fabsl _PARAMS((long double)); extern long double floorl _PARAMS((long double)); extern long double log1pl _PARAMS((long double)); extern long double expm1l _PARAMS((long double)); #endif /* ! defined (__math_68881) */ /* Non reentrant ANSI C functions. */ #ifndef _REENT_ONLY #ifndef __math_68881 extern long double acosl _PARAMS((long double)); extern long double asinl _PARAMS((long double)); extern long double atan2l _PARAMS((long double, long double)); extern long double coshl _PARAMS((long double)); extern long double sinhl _PARAMS((long double)); extern long double expl _PARAMS((long double)); extern long double ldexpl _PARAMS((long double, int)); extern long double logl _PARAMS((long double)); extern long double log10l _PARAMS((long double)); extern long double powl _PARAMS((long double, long double)); extern long double sqrtl _PARAMS((long double)); extern long double fmodl _PARAMS((long double, long double)); extern long double hypotl _PARAMS((long double, long double)); #endif /* ! defined (__math_68881) */ #endif /* ! defined (_REENT_ONLY) */ extern long double copysignl _PARAMS((long double, long double)); extern long double nanl _PARAMS((const char *)); extern int ilogbl _PARAMS((long double)); extern long double asinhl _PARAMS((long double)); extern long double cbrtl _PARAMS((long double)); extern long double nextafterl _PARAMS((long double, long double)); extern long double rintl _PARAMS((long double)); extern long double scalbnl _PARAMS((long double, int)); extern long double exp2l _PARAMS((long double)); extern long double scalblnl _PARAMS((long double, long)); extern long double tgammal _PARAMS((long double)); extern long double nearbyintl _PARAMS((long double)); extern long int lrintl _PARAMS((long double)); extern long long int llrintl _PARAMS((long double)); extern long double roundl _PARAMS((long double)); extern long lroundl _PARAMS((long double)); extern _LONG_LONG_TYPE int llroundl _PARAMS((long double)); extern long double truncl _PARAMS((long double)); extern long double remquol _PARAMS((long double, long double, int *)); extern long double fdiml _PARAMS((long double, long double)); extern long double fmaxl _PARAMS((long double, long double)); extern long double fminl _PARAMS((long double, long double)); extern long double fmal _PARAMS((long double, long double, long double)); #ifndef _REENT_ONLY extern long double acoshl _PARAMS((long double)); extern long double atanhl _PARAMS((long double)); extern long double remainderl _PARAMS((long double, long double)); extern long double lgammal _PARAMS((long double)); extern long double erfl _PARAMS((long double)); extern long double erfcl _PARAMS((long double)); #endif /* ! defined (_REENT_ONLY) */ #else /* !_LDBL_EQ_DBL */ #ifdef __i386__ /* Other long double precision functions. */ extern _LONG_DOUBLE rintl _PARAMS((_LONG_DOUBLE)); extern long int lrintl _PARAMS((_LONG_DOUBLE)); extern _LONG_LONG_TYPE llrintl _PARAMS((_LONG_DOUBLE)); #endif /* __i386__ */ #endif /* !_LDBL_EQ_DBL */ #endif /* !defined (__STRICT_ANSI__) || defined(__cplusplus) || __STDC_VERSION__ >= 199901L */ #if !defined (__STRICT_ANSI__) || defined(__cplusplus) extern double drem _PARAMS((double, double)); extern void sincos _PARAMS((double, double *, double *)); extern double gamma_r _PARAMS((double, int *)); extern double lgamma_r _PARAMS((double, int *)); extern double y0 _PARAMS((double)); extern double y1 _PARAMS((double)); extern double yn _PARAMS((int, double)); extern double j0 _PARAMS((double)); extern double j1 _PARAMS((double)); extern double jn _PARAMS((int, double)); extern float dremf _PARAMS((float, float)); extern void sincosf _PARAMS((float, float *, float *)); extern float gammaf_r _PARAMS((float, int *)); extern float lgammaf_r _PARAMS((float, int *)); extern float y0f _PARAMS((float)); extern float y1f _PARAMS((float)); extern float ynf _PARAMS((int, float)); extern float j0f _PARAMS((float)); extern float j1f _PARAMS((float)); extern float jnf _PARAMS((int, float)); /* GNU extensions */ # ifndef exp10 extern double exp10 _PARAMS((double)); # endif # ifndef pow10 extern double pow10 _PARAMS((double)); # endif # ifndef exp10f extern float exp10f _PARAMS((float)); # endif # ifndef pow10f extern float pow10f _PARAMS((float)); # endif #endif /* !defined (__STRICT_ANSI__) || defined(__cplusplus) */ #ifndef __STRICT_ANSI__ /* The gamma functions use a global variable, signgam. */ #ifndef _REENT_ONLY #define signgam (*__signgam()) extern int *__signgam _PARAMS((void)); #endif /* ! defined (_REENT_ONLY) */ #define __signgam_r(ptr) _REENT_SIGNGAM(ptr) /* The exception structure passed to the matherr routine. */ /* We have a problem when using C++ since `exception' is a reserved name in C++. */ #ifdef __cplusplus struct __exception #else struct exception #endif { int type; char *name; double arg1; double arg2; double retval; int err; }; #ifdef __cplusplus extern int matherr _PARAMS((struct __exception *e)); #else extern int matherr _PARAMS((struct exception *e)); #endif /* Values for the type field of struct exception. */ #define DOMAIN 1 #define SING 2 #define OVERFLOW 3 #define UNDERFLOW 4 #define TLOSS 5 #define PLOSS 6 /* Useful constants. */ #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_TWOPI (M_PI * 2.0) #define M_PI_2 1.57079632679489661923 #define M_PI_4 0.78539816339744830962 #define M_3PI_4 2.3561944901923448370E0 #define M_SQRTPI 1.77245385090551602792981 #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 #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) */ /* Global control over fdlibm error handling. */ enum __fdlibm_version { __fdlibm_ieee = -1, __fdlibm_svid, __fdlibm_xopen, __fdlibm_posix }; #define _LIB_VERSION_TYPE enum __fdlibm_version #define _LIB_VERSION __fdlib_version extern __IMPORT _LIB_VERSION_TYPE _LIB_VERSION; #define _IEEE_ __fdlibm_ieee #define _SVID_ __fdlibm_svid #define _XOPEN_ __fdlibm_xopen #define _POSIX_ __fdlibm_posix #endif /* ! defined (__STRICT_ANSI__) */ _END_STD_C #ifdef __FAST_MATH__ #include #endif #endif /* _MATH_H_ */ 0707010000002e000081a40000000000000000000000015edeb89a00001a77000000000000000000000000000000000000002200000000./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 */ /* #undef _ELIX_LEVEL */ /* Newlib version */ #define _NEWLIB_VERSION "2.1.0" /* 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 */ /* 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 if small footprint nano-formatted-IO implementation used. */ /* #undef _NANO_FORMATTED_IO */ /* * 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__ */ 0707010000002f000081a40000000000000000000000015edeb89a000000c1000000000000000000000000000000000000002100000000./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_ */ 07070100000030000081a40000000000000000000000015edeb89a00003900000000000000000000000000000000000000002300000000./usr/nvptx-none/include/pthread.h/* pthread.h * * Written by Joel Sherrill . * * COPYRIGHT (c) 1989-2013. * 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 __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 _EXFUN(pthread_atfork,(void (*prepare)(void), void (*parent)(void), void (*child)(void))); /* Mutex Initialization Attributes, P1003.1c/Draft 10, p. 81 */ int _EXFUN(pthread_mutexattr_init, (pthread_mutexattr_t *__attr)); int _EXFUN(pthread_mutexattr_destroy, (pthread_mutexattr_t *__attr)); int _EXFUN(pthread_mutexattr_getpshared, (_CONST pthread_mutexattr_t *__attr, int *__pshared)); int _EXFUN(pthread_mutexattr_setpshared, (pthread_mutexattr_t *__attr, int __pshared)); #if defined(_UNIX98_THREAD_MUTEX_ATTRIBUTES) /* Single UNIX Specification 2 Mutex Attributes types */ int _EXFUN(pthread_mutexattr_gettype, (_CONST pthread_mutexattr_t *__attr, int *__kind)); int _EXFUN(pthread_mutexattr_settype, (pthread_mutexattr_t *__attr, int __kind)); #endif /* Initializing and Destroying a Mutex, P1003.1c/Draft 10, p. 87 */ int _EXFUN(pthread_mutex_init, (pthread_mutex_t *__mutex, _CONST pthread_mutexattr_t *__attr)); int _EXFUN(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_t) 0xFFFFFFFF) /* Locking and Unlocking a Mutex, P1003.1c/Draft 10, p. 93 NOTE: P1003.4b/D8 adds pthread_mutex_timedlock(), p. 29 */ int _EXFUN(pthread_mutex_lock, (pthread_mutex_t *__mutex)); int _EXFUN(pthread_mutex_trylock, (pthread_mutex_t *__mutex)); int _EXFUN(pthread_mutex_unlock, (pthread_mutex_t *__mutex)); #if defined(_POSIX_TIMEOUTS) int _EXFUN(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 _EXFUN(pthread_condattr_init, (pthread_condattr_t *__attr)); int _EXFUN(pthread_condattr_destroy, (pthread_condattr_t *__attr)); int _EXFUN(pthread_condattr_getpshared, (_CONST pthread_condattr_t *__attr, int *__pshared)); int _EXFUN(pthread_condattr_setpshared, (pthread_condattr_t *__attr, int __pshared)); /* Initializing and Destroying a Condition Variable, P1003.1c/Draft 10, p. 87 */ int _EXFUN(pthread_cond_init, (pthread_cond_t *__cond, _CONST pthread_condattr_t *__attr)); int _EXFUN(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_t) 0xFFFFFFFF) /* Broadcasting and Signaling a Condition, P1003.1c/Draft 10, p. 101 */ int _EXFUN(pthread_cond_signal, (pthread_cond_t *__cond)); int _EXFUN(pthread_cond_broadcast, (pthread_cond_t *__cond)); /* Waiting on a Condition, P1003.1c/Draft 10, p. 105 */ int _EXFUN(pthread_cond_wait, (pthread_cond_t *__cond, pthread_mutex_t *__mutex)); int _EXFUN(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 _EXFUN(pthread_attr_setscope, (pthread_attr_t *__attr, int __contentionscope)); int _EXFUN(pthread_attr_getscope, (_CONST pthread_attr_t *__attr, int *__contentionscope)); int _EXFUN(pthread_attr_setinheritsched, (pthread_attr_t *__attr, int __inheritsched)); int _EXFUN(pthread_attr_getinheritsched, (_CONST pthread_attr_t *__attr, int *__inheritsched)); int _EXFUN(pthread_attr_setschedpolicy, (pthread_attr_t *__attr, int __policy)); int _EXFUN(pthread_attr_getschedpolicy, (_CONST pthread_attr_t *__attr, int *__policy)); #endif /* defined(_POSIX_THREAD_PRIORITY_SCHEDULING) */ int _EXFUN(pthread_attr_setschedparam, (pthread_attr_t *__attr, _CONST struct sched_param *__param)); int _EXFUN(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 _EXFUN(pthread_getschedparam, (pthread_t __pthread, int *__policy, struct sched_param *__param)); int _EXFUN(pthread_setschedparam, (pthread_t __pthread, int __policy, struct sched_param *__param)); #endif /* defined(_POSIX_THREAD_PRIORITY_SCHEDULING) */ #if defined(_POSIX_THREAD_PRIO_INHERIT) || defined(_POSIX_THREAD_PRIO_PROTECT) /* Mutex Initialization Scheduling Attributes, P1003.1c/Draft 10, p. 128 */ int _EXFUN(pthread_mutexattr_setprotocol, (pthread_mutexattr_t *__attr, int __protocol)); int _EXFUN(pthread_mutexattr_getprotocol, (_CONST pthread_mutexattr_t *__attr, int *__protocol)); int _EXFUN(pthread_mutexattr_setprioceiling, (pthread_mutexattr_t *__attr, int __prioceiling)); int _EXFUN(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 _EXFUN(pthread_mutex_setprioceiling, (pthread_mutex_t *__mutex, int __prioceiling, int *__old_ceiling)); int _EXFUN(pthread_mutex_getprioceiling, (pthread_mutex_t *__mutex, int *__prioceiling)); #endif /* _POSIX_THREAD_PRIO_PROTECT */ /* Thread Creation Attributes, P1003.1c/Draft 10, p, 140 */ int _EXFUN(pthread_attr_init, (pthread_attr_t *__attr)); int _EXFUN(pthread_attr_destroy, (pthread_attr_t *__attr)); int _EXFUN(pthread_attr_setstack, (pthread_attr_t *attr, void *__stackaddr, size_t __stacksize)); int _EXFUN(pthread_attr_getstack, (_CONST pthread_attr_t *attr, void **__stackaddr, size_t *__stacksize)); int _EXFUN(pthread_attr_getstacksize, (_CONST pthread_attr_t *__attr, size_t *__stacksize)); int _EXFUN(pthread_attr_setstacksize, (pthread_attr_t *__attr, size_t __stacksize)); int _EXFUN(pthread_attr_getstackaddr, (_CONST pthread_attr_t *__attr, void **__stackaddr)); int _EXFUN(pthread_attr_setstackaddr, (pthread_attr_t *__attr, void *__stackaddr)); int _EXFUN(pthread_attr_getdetachstate, (_CONST pthread_attr_t *__attr, int *__detachstate)); int _EXFUN(pthread_attr_setdetachstate, (pthread_attr_t *__attr, int __detachstate)); int _EXFUN(pthread_attr_getguardsize, (_CONST pthread_attr_t *__attr, size_t *__guardsize)); int _EXFUN(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 defined(__GNU_VISIBLE) #if defined(__rtems__) int _EXFUN(pthread_attr_setaffinity_np, (pthread_attr_t *__attr, size_t __cpusetsize, const cpu_set_t *__cpuset)); int _EXFUN(pthread_attr_getaffinity_np, (const pthread_attr_t *__attr, size_t __cpusetsize, cpu_set_t *__cpuset)); int _EXFUN(pthread_setaffinity_np, (pthread_t __id, size_t __cpusetsize, const cpu_set_t *__cpuset)); int _EXFUN(pthread_getaffinity_np, (const pthread_t __id, size_t __cpusetsize, cpu_set_t *__cpuset)); int _EXFUN(pthread_getattr_np, (pthread_t __id, pthread_attr_t *__attr)); #endif /* defined(__rtems__) */ #endif /* defined(__GNU_VISIBLE) */ /* Thread Creation, P1003.1c/Draft 10, p. 144 */ int _EXFUN(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 _EXFUN(pthread_join, (pthread_t __pthread, void **__value_ptr)); /* Detaching a Thread, P1003.1c/Draft 10, p. 149 */ int _EXFUN(pthread_detach, (pthread_t __pthread)); /* Thread Termination, p1003.1c/Draft 10, p. 150 */ void _EXFUN(pthread_exit, (void *__value_ptr)); /* Get Calling Thread's ID, p1003.1c/Draft 10, p. XXX */ pthread_t _EXFUN(pthread_self, (void)); /* Compare Thread IDs, p1003.1c/Draft 10, p. 153 */ int _EXFUN(pthread_equal, (pthread_t __t1, pthread_t __t2)); /* 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 { 1, 0 } /* is initialized and not run */ int _EXFUN(pthread_once, (pthread_once_t *__once_control, void (*__init_routine)(void))); /* Thread-Specific Data Key Create, P1003.1c/Draft 10, p. 163 */ int _EXFUN(pthread_key_create, (pthread_key_t *__key, void (*__destructor)( void * ))); /* Thread-Specific Data Management, P1003.1c/Draft 10, p. 165 */ int _EXFUN(pthread_setspecific, (pthread_key_t __key, _CONST void *__value)); void * _EXFUN(pthread_getspecific, (pthread_key_t __key)); /* Thread-Specific Data Key Deletion, P1003.1c/Draft 10, p. 167 */ int _EXFUN(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 _EXFUN(pthread_cancel, (pthread_t __pthread)); /* Setting Cancelability State, P1003.1c/Draft 10, p. 183 */ int _EXFUN(pthread_setcancelstate, (int __state, int *__oldstate)); int _EXFUN(pthread_setcanceltype, (int __type, int *__oldtype)); void _EXFUN(pthread_testcancel, (void)); /* Establishing Cancellation Handlers, P1003.1c/Draft 10, p. 184 */ void _EXFUN(_pthread_cleanup_push, (struct _pthread_cleanup_context *_context, void (*_routine)(void *), void *_arg)); void _EXFUN(_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 defined(_GNU_SOURCE) void _EXFUN(_pthread_cleanup_push_defer, (struct _pthread_cleanup_context *_context, void (*_routine)(void *), void *_arg)); void _EXFUN(_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 /* defined(_GNU_SOURCE) */ #if defined(_POSIX_THREAD_CPUTIME) /* Accessing a Thread CPU-time Clock, P1003.4b/D8, p. 58 */ int _EXFUN(pthread_getcpuclockid, (pthread_t __pthread_id, clockid_t *__clock_id)); #endif /* defined(_POSIX_THREAD_CPUTIME) */ #endif /* defined(_POSIX_THREADS) */ #if defined(_POSIX_BARRIERS) int _EXFUN(pthread_barrierattr_init, (pthread_barrierattr_t *__attr)); int _EXFUN(pthread_barrierattr_destroy, (pthread_barrierattr_t *__attr)); int _EXFUN(pthread_barrierattr_getpshared, (_CONST pthread_barrierattr_t *__attr, int *__pshared)); int _EXFUN(pthread_barrierattr_setpshared, (pthread_barrierattr_t *__attr, int __pshared)); #define PTHREAD_BARRIER_SERIAL_THREAD -1 int _EXFUN(pthread_barrier_init, (pthread_barrier_t *__barrier, _CONST pthread_barrierattr_t *__attr, unsigned __count)); int _EXFUN(pthread_barrier_destroy, (pthread_barrier_t *__barrier)); int _EXFUN(pthread_barrier_wait,(pthread_barrier_t *__barrier)); #endif /* defined(_POSIX_BARRIERS) */ #if defined(_POSIX_SPIN_LOCKS) int _EXFUN(pthread_spin_init, (pthread_spinlock_t *__spinlock, int __pshared)); int _EXFUN(pthread_spin_destroy, (pthread_spinlock_t *__spinlock)); int _EXFUN(pthread_spin_lock, (pthread_spinlock_t *__spinlock)); int _EXFUN(pthread_spin_trylock, (pthread_spinlock_t *__spinlock)); int _EXFUN(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_t) 0xFFFFFFFF) int _EXFUN(pthread_rwlockattr_init, (pthread_rwlockattr_t *__attr)); int _EXFUN(pthread_rwlockattr_destroy, (pthread_rwlockattr_t *__attr)); int _EXFUN(pthread_rwlockattr_getpshared, (_CONST pthread_rwlockattr_t *__attr, int *__pshared)); int _EXFUN(pthread_rwlockattr_setpshared, (pthread_rwlockattr_t *__attr, int __pshared)); int _EXFUN(pthread_rwlock_init, (pthread_rwlock_t *__rwlock, _CONST pthread_rwlockattr_t *__attr)); int _EXFUN(pthread_rwlock_destroy, (pthread_rwlock_t *__rwlock)); int _EXFUN(pthread_rwlock_rdlock,(pthread_rwlock_t *__rwlock)); int _EXFUN(pthread_rwlock_tryrdlock,(pthread_rwlock_t *__rwlock)); int _EXFUN(pthread_rwlock_timedrdlock, (pthread_rwlock_t *__rwlock, _CONST struct timespec *__abstime)); int _EXFUN(pthread_rwlock_unlock,(pthread_rwlock_t *__rwlock)); int _EXFUN(pthread_rwlock_wrlock,(pthread_rwlock_t *__rwlock)); int _EXFUN(pthread_rwlock_trywrlock,(pthread_rwlock_t *__rwlock)); int _EXFUN(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 */ 07070100000031000081a40000000000000000000000015edeb89a00000bb7000000000000000000000000000000000000001f00000000./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. All advertising materials mentioning features or use of this software * must display the following acknowledgement: * This product includes software developed by the University of * California, Berkeley and its contributors. * 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. * * @(#)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 __POSIX_VISIBLE >= 200112 || __XSI_VISIBLE >= 500 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 __XSI_VISIBLE >= 500 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_ */ 07070100000032000081a40000000000000000000000015edeb89a00002242000000000000000000000000000000000000002100000000./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 #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 _PARAMS ((struct _reent *, int)); extern int _execve_r _PARAMS ((struct _reent *, const char *, char *const *, char *const *)); extern int _fcntl_r _PARAMS ((struct _reent *, int, int, int)); extern int _fork_r _PARAMS ((struct _reent *)); extern int _fstat_r _PARAMS ((struct _reent *, int, struct stat *)); extern int _getpid_r _PARAMS ((struct _reent *)); extern int _isatty_r _PARAMS ((struct _reent *, int)); extern int _kill_r _PARAMS ((struct _reent *, int, int)); extern int _link_r _PARAMS ((struct _reent *, const char *, const char *)); extern _off_t _lseek_r _PARAMS ((struct _reent *, int, _off_t, int)); extern int _mkdir_r _PARAMS ((struct _reent *, const char *, int)); extern int _open_r _PARAMS ((struct _reent *, const char *, int, int)); extern _ssize_t _read_r _PARAMS ((struct _reent *, int, void *, size_t)); extern int _rename_r _PARAMS ((struct _reent *, const char *, const char *)); extern void *_sbrk_r _PARAMS ((struct _reent *, ptrdiff_t)); extern int _stat_r _PARAMS ((struct _reent *, const char *, struct stat *)); extern _CLOCK_T_ _times_r _PARAMS ((struct _reent *, struct tms *)); extern int _unlink_r _PARAMS ((struct _reent *, const char *)); extern int _wait_r _PARAMS ((struct _reent *, int *)); extern _ssize_t _write_r _PARAMS ((struct _reent *, int, const void *, size_t)); /* This one is not guaranteed to be available on all targets. */ extern int _gettimeofday_r _PARAMS ((struct _reent *, struct timeval *__tp, void *__tzp)); #ifdef __LARGE64_FILES #if defined(__CYGWIN__) #define stat64 stat #endif struct stat64; extern _off64_t _lseek64_r _PARAMS ((struct _reent *, int, _off64_t, int)); extern int _fstat64_r _PARAMS ((struct _reent *, int, struct stat64 *)); extern int _open64_r _PARAMS ((struct _reent *, const char *, int, int)); extern int _stat64_r _PARAMS ((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_ */ 07070100000033000081a40000000000000000000000015edeb89a000000dc000000000000000000000000000000000000002200000000./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 07070100000034000081a40000000000000000000000015edeb89a00000dea000000000000000000000000000000000000002100000000./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_ */ 07070100000035000041ed0000000000000000000000015edeb89a00000000000000000000000000000000000000000000001d00000000./usr/nvptx-none/include/rpc07070100000036000081a40000000000000000000000015edeb89a0000088e000000000000000000000000000000000000002100000000./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 */ #ifdef __cplusplus } #endif #endif /* _SCHED_H_ */ 07070100000037000081a40000000000000000000000015edeb89a00000557000000000000000000000000000000000000002200000000./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_ */ 07070100000038000081a40000000000000000000000015edeb89a00000181000000000000000000000000000000000000002200000000./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 _EXFUN(longjmp,(jmp_buf __jmpb, int __retval)) __attribute__ ((__noreturn__)); #else void _EXFUN(longjmp,(jmp_buf __jmpb, int __retval)); #endif int _EXFUN(setjmp,(jmp_buf __jmpb)); _END_STD_C #endif /* _SETJMP_H_ */ 07070100000039000081a40000000000000000000000015edeb89a0000031c000000000000000000000000000000000000002200000000./usr/nvptx-none/include/signal.h#ifndef _SIGNAL_H_ #define _SIGNAL_H_ #include "_ansi.h" #include _BEGIN_STD_C typedef int sig_atomic_t; /* Atomic entity type (ANSI) */ #ifndef _POSIX_SOURCE typedef _sig_func_ptr sig_t; /* BSD naming */ typedef _sig_func_ptr sighandler_t; /* glibc naming */ #endif /* !_POSIX_SOURCE */ #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 _EXFUN(_signal_r, (struct _reent *, int, _sig_func_ptr)); int _EXFUN(_raise_r, (struct _reent *, int)); #ifndef _REENT_ONLY _sig_func_ptr _EXFUN(signal, (int, _sig_func_ptr)); int _EXFUN(raise, (int)); void _EXFUN(psignal, (int, const char *)); #endif _END_STD_C #endif /* _SIGNAL_H_ */ 0707010000003a000081a40000000000000000000000015edeb89a000010b7000000000000000000000000000000000000002100000000./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 _EXFUN(posix_spawn, (pid_t * __restrict, const char * __restrict, const posix_spawn_file_actions_t *, const posix_spawnattr_t * __restrict, char * const [], char * const []) ); int _EXFUN(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 _EXFUN(posix_spawn_file_actions_init, (posix_spawn_file_actions_t *)); int _EXFUN(posix_spawn_file_actions_destroy, (posix_spawn_file_actions_t *)); int _EXFUN(posix_spawn_file_actions_addopen, (posix_spawn_file_actions_t * __restrict, int, const char * __restrict, int, mode_t) ); int _EXFUN(posix_spawn_file_actions_adddup2, (posix_spawn_file_actions_t *, int, int) ); int _EXFUN(posix_spawn_file_actions_addclose, (posix_spawn_file_actions_t *, int) ); /* * Spawn attributes */ int _EXFUN(posix_spawnattr_init, (posix_spawnattr_t *)); int _EXFUN(posix_spawnattr_destroy, (posix_spawnattr_t *)); int _EXFUN(posix_spawnattr_getflags, (const posix_spawnattr_t * __restrict, short * __restrict) ); int _EXFUN(posix_spawnattr_getpgroup, (const posix_spawnattr_t * __restrict, pid_t * __restrict)); int _EXFUN(posix_spawnattr_getschedparam, (const posix_spawnattr_t * __restrict, struct sched_param * __restrict) ); int _EXFUN(posix_spawnattr_getschedpolicy, (const posix_spawnattr_t * __restrict, int * __restrict) ); int _EXFUN(posix_spawnattr_getsigdefault, (const posix_spawnattr_t * __restrict, sigset_t * __restrict) ); int _EXFUN(posix_spawnattr_getsigmask, (const posix_spawnattr_t * __restrict, sigset_t * __restrict) ); int _EXFUN(posix_spawnattr_setflags, (posix_spawnattr_t *, short)); int _EXFUN(posix_spawnattr_setpgroup, (posix_spawnattr_t *, pid_t)); int _EXFUN(posix_spawnattr_setschedparam, (posix_spawnattr_t * __restrict, const struct sched_param * __restrict) ); int _EXFUN(posix_spawnattr_setschedpolicy, (posix_spawnattr_t *, int)); int _EXFUN(posix_spawnattr_setsigdefault, (posix_spawnattr_t * __restrict, const sigset_t * __restrict) ); int _EXFUN(posix_spawnattr_setsigmask, (posix_spawnattr_t * __restrict, const sigset_t * __restrict) ); _END_STD_C #endif /* !_SPAWN_H_ */ 0707010000003b000081a40000000000000000000000015edeb89a00003840000000000000000000000000000000000000002500000000./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) #define atomic_is_lock_free(obj) \ __atomic_is_lock_free(sizeof(*(obj)), obj) #elif defined(__GNUC_ATOMICS) #define atomic_is_lock_free(obj) \ __atomic_is_lock_free(sizeof((obj)->__val), &(obj)->__val) #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)->__val, expected, \ desired, 0, success, failure) #define atomic_compare_exchange_weak_explicit(object, expected, \ desired, success, failure) \ __atomic_compare_exchange_n(&(object)->__val, expected, \ desired, 1, success, failure) #define atomic_exchange_explicit(object, desired, order) \ __atomic_exchange_n(&(object)->__val, desired, order) #define atomic_fetch_add_explicit(object, operand, order) \ __atomic_fetch_add(&(object)->__val, operand, order) #define atomic_fetch_and_explicit(object, operand, order) \ __atomic_fetch_and(&(object)->__val, operand, order) #define atomic_fetch_or_explicit(object, operand, order) \ __atomic_fetch_or(&(object)->__val, operand, order) #define atomic_fetch_sub_explicit(object, operand, order) \ __atomic_fetch_sub(&(object)->__val, operand, order) #define atomic_fetch_xor_explicit(object, operand, order) \ __atomic_fetch_xor(&(object)->__val, operand, order) #define atomic_load_explicit(object, order) \ __atomic_load_n(&(object)->__val, order) #define atomic_store_explicit(object, desired, order) \ __atomic_store_n(&(object)->__val, 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_ */ 0707010000003c000081a40000000000000000000000015edeb89a00003634000000000000000000000000000000000000002200000000./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 #ifdef __cplusplus extern "C" { #endif #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 /* 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 __STDINT_EXP(LONG_MAX) > 0x7fffffff #define __have_long64 1 #elif __STDINT_EXP(LONG_MAX) == 0x7fffffff && !defined(__SPU__) #define __have_long32 1 #endif #ifdef ___int8_t_defined typedef __int8_t int8_t ; typedef __uint8_t uint8_t ; #define __int8_t_defined 1 #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 ___int16_t_defined typedef __int16_t int16_t ; typedef __uint16_t uint16_t ; #define __int16_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 ___int32_t_defined typedef __int32_t int32_t ; typedef __uint32_t uint32_t ; #define __int32_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 ___int64_t_defined typedef __int64_t int64_t ; typedef __uint64_t uint64_t ; #define __int64_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 /* Greatest-width integer types */ /* Modern GCCs provide __INTMAX_TYPE__ */ #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 /* Modern GCCs provide __UINTMAX_TYPE__ */ #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 typedef __intptr_t intptr_t; typedef __uintptr_t uintptr_t; #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 __have_long32 #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 __have_long32 #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 __have_long32 #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 */ 0707010000003d000081a40000000000000000000000015edeb89a00006f99000000000000000000000000000000000000002100000000./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, * advertising materials, and 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 #define __need___va_list #include /* * 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 typedef __FILE FILE; #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 __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 #ifndef __STRICT_ANSI__ #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 FILE * _EXFUN(tmpfile, (void)); char * _EXFUN(tmpnam, (char *)); #if __BSD_VISIBLE || __XSI_VISIBLE || __POSIX_VISIBLE >= 200112 char * _EXFUN(tempnam, (const char *, const char *)); #endif int _EXFUN(fclose, (FILE *)); int _EXFUN(fflush, (FILE *)); FILE * _EXFUN(freopen, (const char *__restrict, const char *__restrict, FILE *__restrict)); void _EXFUN(setbuf, (FILE *__restrict, char *__restrict)); int _EXFUN(setvbuf, (FILE *__restrict, char *__restrict, int, size_t)); int _EXFUN(fprintf, (FILE *__restrict, const char *__restrict, ...) _ATTRIBUTE ((__format__ (__printf__, 2, 3)))); int _EXFUN(fscanf, (FILE *__restrict, const char *__restrict, ...) _ATTRIBUTE ((__format__ (__scanf__, 2, 3)))); int _EXFUN(printf, (const char *__restrict, ...) _ATTRIBUTE ((__format__ (__printf__, 1, 2)))); int _EXFUN(scanf, (const char *__restrict, ...) _ATTRIBUTE ((__format__ (__scanf__, 1, 2)))); int _EXFUN(sscanf, (const char *__restrict, const char *__restrict, ...) _ATTRIBUTE ((__format__ (__scanf__, 2, 3)))); int _EXFUN(vfprintf, (FILE *__restrict, const char *__restrict, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 2, 0)))); int _EXFUN(vprintf, (const char *, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 1, 0)))); int _EXFUN(vsprintf, (char *__restrict, const char *__restrict, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 2, 0)))); int _EXFUN(fgetc, (FILE *)); char * _EXFUN(fgets, (char *__restrict, int, FILE *__restrict)); int _EXFUN(fputc, (int, FILE *)); int _EXFUN(fputs, (const char *__restrict, FILE *__restrict)); int _EXFUN(getc, (FILE *)); int _EXFUN(getchar, (void)); char * _EXFUN(gets, (char *)); int _EXFUN(putc, (int, FILE *)); int _EXFUN(putchar, (int)); int _EXFUN(puts, (const char *)); int _EXFUN(ungetc, (int, FILE *)); size_t _EXFUN(fread, (_PTR __restrict, size_t _size, size_t _n, FILE *__restrict)); size_t _EXFUN(fwrite, (const _PTR __restrict , size_t _size, size_t _n, FILE *)); #ifdef _COMPILING_NEWLIB int _EXFUN(fgetpos, (FILE *, _fpos_t *)); #else int _EXFUN(fgetpos, (FILE *__restrict, fpos_t *__restrict)); #endif int _EXFUN(fseek, (FILE *, long, int)); #ifdef _COMPILING_NEWLIB int _EXFUN(fsetpos, (FILE *, const _fpos_t *)); #else int _EXFUN(fsetpos, (FILE *, const fpos_t *)); #endif long _EXFUN(ftell, ( FILE *)); void _EXFUN(rewind, (FILE *)); void _EXFUN(clearerr, (FILE *)); int _EXFUN(feof, (FILE *)); int _EXFUN(ferror, (FILE *)); void _EXFUN(perror, (const char *)); #ifndef _REENT_ONLY FILE * _EXFUN(fopen, (const char *__restrict _name, const char *__restrict _type)); int _EXFUN(sprintf, (char *__restrict, const char *__restrict, ...) _ATTRIBUTE ((__format__ (__printf__, 2, 3)))); int _EXFUN(remove, (const char *)); int _EXFUN(rename, (const char *, const char *)); #ifdef _COMPILING_NEWLIB int _EXFUN(_rename, (const char *, const char *)); #endif #endif #if !defined(__STRICT_ANSI__) || defined(__USE_XOPEN2K) #ifdef _COMPILING_NEWLIB int _EXFUN(fseeko, (FILE *, _off_t, int)); _off_t _EXFUN(ftello, ( FILE *)); #else int _EXFUN(fseeko, (FILE *, off_t, int)); off_t _EXFUN(ftello, ( FILE *)); #endif #endif #if __GNU_VISIBLE int _EXFUN(fcloseall, (_VOID)); #endif #if !defined(__STRICT_ANSI__) || (__STDC_VERSION__ >= 199901L) || (__cplusplus >= 201103L) #ifndef _REENT_ONLY int _EXFUN(asiprintf, (char **, const char *, ...) _ATTRIBUTE ((__format__ (__printf__, 2, 3)))); char * _EXFUN(asniprintf, (char *, size_t *, const char *, ...) _ATTRIBUTE ((__format__ (__printf__, 3, 4)))); char * _EXFUN(asnprintf, (char *__restrict, size_t *__restrict, const char *__restrict, ...) _ATTRIBUTE ((__format__ (__printf__, 3, 4)))); int _EXFUN(asprintf, (char **__restrict, const char *__restrict, ...) _ATTRIBUTE ((__format__ (__printf__, 2, 3)))); #ifndef diprintf int _EXFUN(diprintf, (int, const char *, ...) _ATTRIBUTE ((__format__ (__printf__, 2, 3)))); #endif int _EXFUN(fiprintf, (FILE *, const char *, ...) _ATTRIBUTE ((__format__ (__printf__, 2, 3)))); int _EXFUN(fiscanf, (FILE *, const char *, ...) _ATTRIBUTE ((__format__ (__scanf__, 2, 3)))); int _EXFUN(iprintf, (const char *, ...) _ATTRIBUTE ((__format__ (__printf__, 1, 2)))); int _EXFUN(iscanf, (const char *, ...) _ATTRIBUTE ((__format__ (__scanf__, 1, 2)))); int _EXFUN(siprintf, (char *, const char *, ...) _ATTRIBUTE ((__format__ (__printf__, 2, 3)))); int _EXFUN(siscanf, (const char *, const char *, ...) _ATTRIBUTE ((__format__ (__scanf__, 2, 3)))); int _EXFUN(snprintf, (char *__restrict, size_t, const char *__restrict, ...) _ATTRIBUTE ((__format__ (__printf__, 3, 4)))); int _EXFUN(sniprintf, (char *, size_t, const char *, ...) _ATTRIBUTE ((__format__ (__printf__, 3, 4)))); int _EXFUN(vasiprintf, (char **, const char *, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 2, 0)))); char * _EXFUN(vasniprintf, (char *, size_t *, const char *, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 3, 0)))); char * _EXFUN(vasnprintf, (char *, size_t *, const char *, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 3, 0)))); int _EXFUN(vasprintf, (char **, const char *, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 2, 0)))); int _EXFUN(vdiprintf, (int, const char *, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 2, 0)))); int _EXFUN(vfiprintf, (FILE *, const char *, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 2, 0)))); int _EXFUN(vfiscanf, (FILE *, const char *, __VALIST) _ATTRIBUTE ((__format__ (__scanf__, 2, 0)))); int _EXFUN(vfscanf, (FILE *__restrict, const char *__restrict, __VALIST) _ATTRIBUTE ((__format__ (__scanf__, 2, 0)))); int _EXFUN(viprintf, (const char *, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 1, 0)))); int _EXFUN(viscanf, (const char *, __VALIST) _ATTRIBUTE ((__format__ (__scanf__, 1, 0)))); int _EXFUN(vscanf, (const char *, __VALIST) _ATTRIBUTE ((__format__ (__scanf__, 1, 0)))); int _EXFUN(vsiprintf, (char *, const char *, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 2, 0)))); int _EXFUN(vsiscanf, (const char *, const char *, __VALIST) _ATTRIBUTE ((__format__ (__scanf__, 2, 0)))); int _EXFUN(vsniprintf, (char *, size_t, const char *, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 3, 0)))); int _EXFUN(vsnprintf, (char *__restrict, size_t, const char *__restrict, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 3, 0)))); int _EXFUN(vsscanf, (const char *__restrict, const char *__restrict, __VALIST) _ATTRIBUTE ((__format__ (__scanf__, 2, 0)))); #endif /* !_REENT_ONLY */ #endif /* !__STRICT_ANSI__ */ /* * Routines in POSIX 1003.1:2001. */ #ifndef __STRICT_ANSI__ #ifndef _REENT_ONLY FILE * _EXFUN(fdopen, (int, const char *)); #endif int _EXFUN(fileno, (FILE *)); int _EXFUN(getw, (FILE *)); int _EXFUN(pclose, (FILE *)); FILE * _EXFUN(popen, (const char *, const char *)); int _EXFUN(putw, (int, FILE *)); void _EXFUN(setbuffer, (FILE *, char *, int)); int _EXFUN(setlinebuf, (FILE *)); int _EXFUN(getc_unlocked, (FILE *)); int _EXFUN(getchar_unlocked, (void)); void _EXFUN(flockfile, (FILE *)); int _EXFUN(ftrylockfile, (FILE *)); void _EXFUN(funlockfile, (FILE *)); int _EXFUN(putc_unlocked, (int, FILE *)); int _EXFUN(putchar_unlocked, (int)); #endif /* ! __STRICT_ANSI__ */ /* * Routines in POSIX 1003.1:200x. */ #ifndef __STRICT_ANSI__ # ifndef _REENT_ONLY # ifndef dprintf int _EXFUN(dprintf, (int, const char *__restrict, ...) _ATTRIBUTE ((__format__ (__printf__, 2, 3)))); # endif FILE * _EXFUN(fmemopen, (void *__restrict, size_t, const char *__restrict)); /* getdelim - see __getdelim for now */ /* getline - see __getline for now */ FILE * _EXFUN(open_memstream, (char **, size_t *)); #if __BSD_VISIBLE || __POSIX_VISIBLE >= 200809 int _EXFUN(renameat, (int, const char *, int, const char *)); #endif int _EXFUN(vdprintf, (int, const char *__restrict, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 2, 0)))); # endif #endif /* * Recursive versions of the above. */ int _EXFUN(_asiprintf_r, (struct _reent *, char **, const char *, ...) _ATTRIBUTE ((__format__ (__printf__, 3, 4)))); char * _EXFUN(_asniprintf_r, (struct _reent *, char *, size_t *, const char *, ...) _ATTRIBUTE ((__format__ (__printf__, 4, 5)))); char * _EXFUN(_asnprintf_r, (struct _reent *, char *__restrict, size_t *__restrict, const char *__restrict, ...) _ATTRIBUTE ((__format__ (__printf__, 4, 5)))); int _EXFUN(_asprintf_r, (struct _reent *, char **__restrict, const char *__restrict, ...) _ATTRIBUTE ((__format__ (__printf__, 3, 4)))); int _EXFUN(_diprintf_r, (struct _reent *, int, const char *, ...) _ATTRIBUTE ((__format__ (__printf__, 3, 4)))); int _EXFUN(_dprintf_r, (struct _reent *, int, const char *__restrict, ...) _ATTRIBUTE ((__format__ (__printf__, 3, 4)))); int _EXFUN(_fclose_r, (struct _reent *, FILE *)); int _EXFUN(_fcloseall_r, (struct _reent *)); FILE * _EXFUN(_fdopen_r, (struct _reent *, int, const char *)); int _EXFUN(_fflush_r, (struct _reent *, FILE *)); int _EXFUN(_fgetc_r, (struct _reent *, FILE *)); char * _EXFUN(_fgets_r, (struct _reent *, char *__restrict, int, FILE *__restrict)); #ifdef _COMPILING_NEWLIB int _EXFUN(_fgetpos_r, (struct _reent *, FILE *__restrict, _fpos_t *__restrict)); int _EXFUN(_fsetpos_r, (struct _reent *, FILE *, const _fpos_t *)); #else int _EXFUN(_fgetpos_r, (struct _reent *, FILE *, fpos_t *)); int _EXFUN(_fsetpos_r, (struct _reent *, FILE *, const fpos_t *)); #endif int _EXFUN(_fiprintf_r, (struct _reent *, FILE *, const char *, ...) _ATTRIBUTE ((__format__ (__printf__, 3, 4)))); int _EXFUN(_fiscanf_r, (struct _reent *, FILE *, const char *, ...) _ATTRIBUTE ((__format__ (__scanf__, 3, 4)))); FILE * _EXFUN(_fmemopen_r, (struct _reent *, void *__restrict, size_t, const char *__restrict)); FILE * _EXFUN(_fopen_r, (struct _reent *, const char *__restrict, const char *__restrict)); FILE * _EXFUN(_freopen_r, (struct _reent *, const char *__restrict, const char *__restrict, FILE *__restrict)); int _EXFUN(_fprintf_r, (struct _reent *, FILE *__restrict, const char *__restrict, ...) _ATTRIBUTE ((__format__ (__printf__, 3, 4)))); int _EXFUN(_fpurge_r, (struct _reent *, FILE *)); int _EXFUN(_fputc_r, (struct _reent *, int, FILE *)); int _EXFUN(_fputs_r, (struct _reent *, const char *__restrict, FILE *__restrict)); size_t _EXFUN(_fread_r, (struct _reent *, _PTR __restrict, size_t _size, size_t _n, FILE *__restrict)); int _EXFUN(_fscanf_r, (struct _reent *, FILE *__restrict, const char *__restrict, ...) _ATTRIBUTE ((__format__ (__scanf__, 3, 4)))); int _EXFUN(_fseek_r, (struct _reent *, FILE *, long, int)); int _EXFUN(_fseeko_r,(struct _reent *, FILE *, _off_t, int)); long _EXFUN(_ftell_r, (struct _reent *, FILE *)); _off_t _EXFUN(_ftello_r,(struct _reent *, FILE *)); void _EXFUN(_rewind_r, (struct _reent *, FILE *)); size_t _EXFUN(_fwrite_r, (struct _reent *, const _PTR __restrict, size_t _size, size_t _n, FILE *__restrict)); int _EXFUN(_getc_r, (struct _reent *, FILE *)); int _EXFUN(_getc_unlocked_r, (struct _reent *, FILE *)); int _EXFUN(_getchar_r, (struct _reent *)); int _EXFUN(_getchar_unlocked_r, (struct _reent *)); char * _EXFUN(_gets_r, (struct _reent *, char *)); int _EXFUN(_iprintf_r, (struct _reent *, const char *, ...) _ATTRIBUTE ((__format__ (__printf__, 2, 3)))); int _EXFUN(_iscanf_r, (struct _reent *, const char *, ...) _ATTRIBUTE ((__format__ (__scanf__, 2, 3)))); FILE * _EXFUN(_open_memstream_r, (struct _reent *, char **, size_t *)); void _EXFUN(_perror_r, (struct _reent *, const char *)); int _EXFUN(_printf_r, (struct _reent *, const char *__restrict, ...) _ATTRIBUTE ((__format__ (__printf__, 2, 3)))); int _EXFUN(_putc_r, (struct _reent *, int, FILE *)); int _EXFUN(_putc_unlocked_r, (struct _reent *, int, FILE *)); int _EXFUN(_putchar_unlocked_r, (struct _reent *, int)); int _EXFUN(_putchar_r, (struct _reent *, int)); int _EXFUN(_puts_r, (struct _reent *, const char *)); int _EXFUN(_remove_r, (struct _reent *, const char *)); int _EXFUN(_rename_r, (struct _reent *, const char *_old, const char *_new)); int _EXFUN(_scanf_r, (struct _reent *, const char *__restrict, ...) _ATTRIBUTE ((__format__ (__scanf__, 2, 3)))); int _EXFUN(_siprintf_r, (struct _reent *, char *, const char *, ...) _ATTRIBUTE ((__format__ (__printf__, 3, 4)))); int _EXFUN(_siscanf_r, (struct _reent *, const char *, const char *, ...) _ATTRIBUTE ((__format__ (__scanf__, 3, 4)))); int _EXFUN(_sniprintf_r, (struct _reent *, char *, size_t, const char *, ...) _ATTRIBUTE ((__format__ (__printf__, 4, 5)))); int _EXFUN(_snprintf_r, (struct _reent *, char *__restrict, size_t, const char *__restrict, ...) _ATTRIBUTE ((__format__ (__printf__, 4, 5)))); int _EXFUN(_sprintf_r, (struct _reent *, char *__restrict, const char *__restrict, ...) _ATTRIBUTE ((__format__ (__printf__, 3, 4)))); int _EXFUN(_sscanf_r, (struct _reent *, const char *__restrict, const char *__restrict, ...) _ATTRIBUTE ((__format__ (__scanf__, 3, 4)))); char * _EXFUN(_tempnam_r, (struct _reent *, const char *, const char *)); FILE * _EXFUN(_tmpfile_r, (struct _reent *)); char * _EXFUN(_tmpnam_r, (struct _reent *, char *)); int _EXFUN(_ungetc_r, (struct _reent *, int, FILE *)); int _EXFUN(_vasiprintf_r, (struct _reent *, char **, const char *, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 3, 0)))); char * _EXFUN(_vasniprintf_r, (struct _reent*, char *, size_t *, const char *, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 4, 0)))); char * _EXFUN(_vasnprintf_r, (struct _reent*, char *, size_t *, const char *, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 4, 0)))); int _EXFUN(_vasprintf_r, (struct _reent *, char **, const char *, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 3, 0)))); int _EXFUN(_vdiprintf_r, (struct _reent *, int, const char *, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 3, 0)))); int _EXFUN(_vdprintf_r, (struct _reent *, int, const char *__restrict, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 3, 0)))); int _EXFUN(_vfiprintf_r, (struct _reent *, FILE *, const char *, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 3, 0)))); int _EXFUN(_vfiscanf_r, (struct _reent *, FILE *, const char *, __VALIST) _ATTRIBUTE ((__format__ (__scanf__, 3, 0)))); int _EXFUN(_vfprintf_r, (struct _reent *, FILE *__restrict, const char *__restrict, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 3, 0)))); int _EXFUN(_vfscanf_r, (struct _reent *, FILE *__restrict, const char *__restrict, __VALIST) _ATTRIBUTE ((__format__ (__scanf__, 3, 0)))); int _EXFUN(_viprintf_r, (struct _reent *, const char *, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 2, 0)))); int _EXFUN(_viscanf_r, (struct _reent *, const char *, __VALIST) _ATTRIBUTE ((__format__ (__scanf__, 2, 0)))); int _EXFUN(_vprintf_r, (struct _reent *, const char *__restrict, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 2, 0)))); int _EXFUN(_vscanf_r, (struct _reent *, const char *__restrict, __VALIST) _ATTRIBUTE ((__format__ (__scanf__, 2, 0)))); int _EXFUN(_vsiprintf_r, (struct _reent *, char *, const char *, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 3, 0)))); int _EXFUN(_vsiscanf_r, (struct _reent *, const char *, const char *, __VALIST) _ATTRIBUTE ((__format__ (__scanf__, 3, 0)))); int _EXFUN(_vsniprintf_r, (struct _reent *, char *, size_t, const char *, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 4, 0)))); int _EXFUN(_vsnprintf_r, (struct _reent *, char *__restrict, size_t, const char *__restrict, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 4, 0)))); int _EXFUN(_vsprintf_r, (struct _reent *, char *__restrict, const char *__restrict, __VALIST) _ATTRIBUTE ((__format__ (__printf__, 3, 0)))); int _EXFUN(_vsscanf_r, (struct _reent *, const char *__restrict, const char *__restrict, __VALIST) _ATTRIBUTE ((__format__ (__scanf__, 3, 0)))); /* Other extensions. */ int _EXFUN(fpurge, (FILE *)); ssize_t _EXFUN(__getdelim, (char **, size_t *, int, FILE *)); ssize_t _EXFUN(__getline, (char **, size_t *, FILE *)); #ifdef __LARGE64_FILES #if !defined(__CYGWIN__) || defined(_COMPILING_NEWLIB) FILE * _EXFUN(fdopen64, (int, const char *)); FILE * _EXFUN(fopen64, (const char *, const char *)); FILE * _EXFUN(freopen64, (_CONST char *, _CONST char *, FILE *)); _off64_t _EXFUN(ftello64, (FILE *)); _off64_t _EXFUN(fseeko64, (FILE *, _off64_t, int)); int _EXFUN(fgetpos64, (FILE *, _fpos64_t *)); int _EXFUN(fsetpos64, (FILE *, const _fpos64_t *)); FILE * _EXFUN(tmpfile64, (void)); FILE * _EXFUN(_fdopen64_r, (struct _reent *, int, const char *)); FILE * _EXFUN(_fopen64_r, (struct _reent *,const char *, const char *)); FILE * _EXFUN(_freopen64_r, (struct _reent *, _CONST char *, _CONST char *, FILE *)); _off64_t _EXFUN(_ftello64_r, (struct _reent *, FILE *)); _off64_t _EXFUN(_fseeko64_r, (struct _reent *, FILE *, _off64_t, int)); int _EXFUN(_fgetpos64_r, (struct _reent *, FILE *, _fpos64_t *)); int _EXFUN(_fsetpos64_r, (struct _reent *, FILE *, const _fpos64_t *)); FILE * _EXFUN(_tmpfile64_r, (struct _reent *)); #endif /* !__CYGWIN__ */ #endif /* __LARGE64_FILES */ /* * Routines internal to the implementation. */ int _EXFUN(__srget_r, (struct _reent *, FILE *)); int _EXFUN(__swbuf_r, (struct _reent *, int, FILE *)); /* * Stdio function-access interface. */ #ifndef __STRICT_ANSI__ # ifdef __LARGE64_FILES FILE *_EXFUN(funopen,(const _PTR __cookie, int (*__readfn)(_PTR __c, char *__buf, _READ_WRITE_BUFSIZE_TYPE __n), int (*__writefn)(_PTR __c, const char *__buf, _READ_WRITE_BUFSIZE_TYPE __n), _fpos64_t (*__seekfn)(_PTR __c, _fpos64_t __off, int __whence), int (*__closefn)(_PTR __c))); FILE *_EXFUN(_funopen_r,(struct _reent *, const _PTR __cookie, int (*__readfn)(_PTR __c, char *__buf, _READ_WRITE_BUFSIZE_TYPE __n), int (*__writefn)(_PTR __c, const char *__buf, _READ_WRITE_BUFSIZE_TYPE __n), _fpos64_t (*__seekfn)(_PTR __c, _fpos64_t __off, int __whence), int (*__closefn)(_PTR __c))); # else FILE *_EXFUN(funopen,(const _PTR __cookie, int (*__readfn)(_PTR __cookie, char *__buf, _READ_WRITE_BUFSIZE_TYPE __n), int (*__writefn)(_PTR __cookie, const char *__buf, _READ_WRITE_BUFSIZE_TYPE __n), fpos_t (*__seekfn)(_PTR __cookie, fpos_t __off, int __whence), int (*__closefn)(_PTR __cookie))); FILE *_EXFUN(_funopen_r,(struct _reent *, const _PTR __cookie, int (*__readfn)(_PTR __cookie, char *__buf, _READ_WRITE_BUFSIZE_TYPE __n), int (*__writefn)(_PTR __cookie, const char *__buf, _READ_WRITE_BUFSIZE_TYPE __n), fpos_t (*__seekfn)(_PTR __cookie, fpos_t __off, int __whence), int (*__closefn)(_PTR __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) 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 *_EXFUN(fopencookie,(void *__cookie, const char *__mode, cookie_io_functions_t __functions)); FILE *_EXFUN(_fopencookie_r,(struct _reent *, void *__cookie, const char *__mode, cookie_io_functions_t __functions)); #endif /* ! __STRICT_ANSI__ */ #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 _never /* __GNUC__ */ /* If this inline is actually used, then systems using coff debugging info get hopelessly confused. 21sept93 rich@cygnus.com. */ _ELIDABLE_INLINE int __sputc_r(struct _reent *_ptr, int _c, FILE *_p) { 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) (((p)->_flags & __SEOF) != 0) #define __sferror(p) (((p)->_flags & __SERR) != 0) #define __sclearerr(p) ((void)((p)->_flags &= ~(__SERR|__SEOF))) #define __sfileno(p) ((p)->_file) #ifndef _REENT_SMALL #define feof(p) __sfeof(p) #define ferror(p) __sferror(p) #define clearerr(p) __sclearerr(p) #endif #if 0 /*ndef __STRICT_ANSI__ - FIXME: must initialize stdio first, use fn */ #define fileno(p) __sfileno(p) #endif #ifndef __CYGWIN__ #ifndef lint #define getc(fp) __sgetc_r(_REENT, fp) #define putc(x, fp) __sputc_r(_REENT, x, fp) #endif /* lint */ #endif /* __CYGWIN__ */ #ifndef __STRICT_ANSI__ /* 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)) #define L_cuserid 9 /* posix says it goes in stdio.h :( */ #ifdef __CYGWIN__ #define L_ctermid 16 #endif #endif #endif /* !__CUSTOM_FILE_IO__ */ #define getchar() getc(stdin) #define putchar(x) putc(x, stdout) _END_STD_C #endif /* _STDIO_H_ */ 0707010000003e000081a40000000000000000000000015edeb89a0000060a000000000000000000000000000000000000002500000000./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 _BEGIN_STD_C void _EXFUN(__fpurge,(FILE *)); /* TODO: void _flushlbf (void); int __fsetlocking (FILE *__fp, int __type); */ #ifdef __GNUC__ _ELIDABLE_INLINE inline size_t __fbufsize (FILE *__fp) { return (size_t) __fp->_bf._size; } _ELIDABLE_INLINE inline int __freading (FILE *__fp) { return (__fp->_flags & __SRD) != 0; } _ELIDABLE_INLINE inline int __fwriting (FILE *__fp) { return (__fp->_flags & __SWR) != 0; } _ELIDABLE_INLINE inline int __freadable (FILE *__fp) { return (__fp->_flags & (__SRD | __SRW)) != 0; } _ELIDABLE_INLINE inline int __fwriteable (FILE *__fp) { return (__fp->_flags & (__SWR | __SRW)) != 0; } _ELIDABLE_INLINE inline int __flbf (FILE *__fp) { return (__fp->_flags & __SLBF) != 0; } _ELIDABLE_INLINE inline size_t __fpending (FILE *__fp) { return __fp->_p - __fp->_bf._base; } #else #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 __fwriteable(__fp) (((__fp)->_flags & (__SWR | __SRW)) != 0) #define __flbf(__fp) (((__fp)->_flags & __SLBF) != 0) #define __fpending(__fp) ((size_t) ((__fp)->_p - (__fp)->_bf._base)) #endif /* __GNUC__ */ _END_STD_C #endif /* _STDIO_EXT_H_ */ 0707010000003f000081a40000000000000000000000015edeb89a00002532000000000000000000000000000000000000002200000000./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 #ifndef __STRICT_ANSI__ #include #endif #ifdef __CYGWIN__ #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 !defined(__STRICT_ANSI__) || \ (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L) || \ (defined(__cplusplus) && __cplusplus >= 201103L) 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 _PTR, const _PTR); #endif #define EXIT_FAILURE 1 #define EXIT_SUCCESS 0 #define RAND_MAX __RAND_MAX int _EXFUN(__locale_mb_cur_max,(_VOID)); #define MB_CUR_MAX __locale_mb_cur_max() _VOID _EXFUN(abort,(_VOID) _ATTRIBUTE ((noreturn))); int _EXFUN(abs,(int)); int _EXFUN(atexit,(_VOID (*__func)(_VOID))); double _EXFUN(atof,(const char *__nptr)); #ifndef __STRICT_ANSI__ float _EXFUN(atoff,(const char *__nptr)); #endif int _EXFUN(atoi,(const char *__nptr)); int _EXFUN(_atoi_r,(struct _reent *, const char *__nptr)); long _EXFUN(atol,(const char *__nptr)); long _EXFUN(_atol_r,(struct _reent *, const char *__nptr)); _PTR _EXFUN(bsearch,(const _PTR __key, const _PTR __base, size_t __nmemb, size_t __size, __compar_fn_t _compar)); _PTR _EXFUN_NOTHROW(calloc,(size_t __nmemb, size_t __size)); div_t _EXFUN(div,(int __numer, int __denom)); _VOID _EXFUN(exit,(int __status) _ATTRIBUTE ((noreturn))); _VOID _EXFUN_NOTHROW(free,(_PTR)); char * _EXFUN(getenv,(const char *__string)); char * _EXFUN(_getenv_r,(struct _reent *, const char *__string)); char * _EXFUN(_findenv,(_CONST char *, int *)); char * _EXFUN(_findenv_r,(struct _reent *, _CONST char *, int *)); #ifndef __STRICT_ANSI__ extern char *suboptarg; /* getsubopt(3) external variable */ int _EXFUN(getsubopt,(char **, char * const *, char **)); #endif long _EXFUN(labs,(long)); ldiv_t _EXFUN(ldiv,(long __numer, long __denom)); _PTR _EXFUN_NOTHROW(malloc,(size_t __size)); int _EXFUN(mblen,(const char *, size_t)); int _EXFUN(_mblen_r,(struct _reent *, const char *, size_t, _mbstate_t *)); int _EXFUN(mbtowc,(wchar_t *__restrict, const char *__restrict, size_t)); int _EXFUN(_mbtowc_r,(struct _reent *, wchar_t *__restrict, const char *__restrict, size_t, _mbstate_t *)); int _EXFUN(wctomb,(char *, wchar_t)); int _EXFUN(_wctomb_r,(struct _reent *, char *, wchar_t, _mbstate_t *)); size_t _EXFUN(mbstowcs,(wchar_t *__restrict, const char *__restrict, size_t)); size_t _EXFUN(_mbstowcs_r,(struct _reent *, wchar_t *__restrict, const char *__restrict, size_t, _mbstate_t *)); size_t _EXFUN(wcstombs,(char *__restrict, const wchar_t *__restrict, size_t)); size_t _EXFUN(_wcstombs_r,(struct _reent *, char *__restrict, const wchar_t *__restrict, size_t, _mbstate_t *)); #ifndef __STRICT_ANSI__ #ifndef _REENT_ONLY char * _EXFUN(mkdtemp,(char *)); int _EXFUN(mkostemp,(char *, int)); int _EXFUN(mkostemps,(char *, int, int)); int _EXFUN(mkstemp,(char *)); int _EXFUN(mkstemps,(char *, int)); char * _EXFUN(mktemp,(char *) _ATTRIBUTE ((__warning__ ("the use of `mktemp' is dangerous; use `mkstemp' instead")))); #endif char * _EXFUN(_mkdtemp_r, (struct _reent *, char *)); int _EXFUN(_mkostemp_r, (struct _reent *, char *, int)); int _EXFUN(_mkostemps_r, (struct _reent *, char *, int, int)); int _EXFUN(_mkstemp_r, (struct _reent *, char *)); int _EXFUN(_mkstemps_r, (struct _reent *, char *, int)); char * _EXFUN(_mktemp_r, (struct _reent *, char *) _ATTRIBUTE ((__warning__ ("the use of `mktemp' is dangerous; use `mkstemp' instead")))); #endif _VOID _EXFUN(qsort,(_PTR __base, size_t __nmemb, size_t __size, __compar_fn_t _compar)); int _EXFUN(rand,(_VOID)); _PTR _EXFUN_NOTHROW(realloc,(_PTR __r, size_t __size)); #ifndef __STRICT_ANSI__ _PTR _EXFUN(reallocf,(_PTR __r, size_t __size)); char * _EXFUN(realpath, (const char *__restrict path, char *__restrict resolved_path)); #endif _VOID _EXFUN(srand,(unsigned __seed)); double _EXFUN(strtod,(const char *__restrict __n, char **__restrict __end_PTR)); double _EXFUN(_strtod_r,(struct _reent *,const char *__restrict __n, char **__restrict __end_PTR)); #if !defined(__STRICT_ANSI__) || (__STDC_VERSION__ >= 199901L) || (__cplusplus >= 201103L) float _EXFUN(strtof,(const char *__restrict __n, char **__restrict __end_PTR)); #endif #ifndef __STRICT_ANSI__ /* the following strtodf interface is deprecated...use strtof instead */ # ifndef strtodf # define strtodf strtof # endif #endif long _EXFUN(strtol,(const char *__restrict __n, char **__restrict __end_PTR, int __base)); long _EXFUN(_strtol_r,(struct _reent *,const char *__restrict __n, char **__restrict __end_PTR, int __base)); unsigned long _EXFUN(strtoul,(const char *__restrict __n, char **__restrict __end_PTR, int __base)); unsigned long _EXFUN(_strtoul_r,(struct _reent *,const char *__restrict __n, char **__restrict __end_PTR, int __base)); int _EXFUN(system,(const char *__string)); #ifndef __STRICT_ANSI__ long _EXFUN(a64l,(const char *__input)); char * _EXFUN(l64a,(long __input)); char * _EXFUN(_l64a_r,(struct _reent *,long __input)); int _EXFUN(on_exit,(_VOID (*__func)(int, _PTR),_PTR __arg)); _VOID _EXFUN(_Exit,(int __status) _ATTRIBUTE ((noreturn))); int _EXFUN(putenv,(char *__string)); int _EXFUN(_putenv_r,(struct _reent *, char *__string)); _PTR _EXFUN(_reallocf_r,(struct _reent *, _PTR, size_t)); int _EXFUN(setenv,(const char *__string, const char *__value, int __overwrite)); int _EXFUN(_setenv_r,(struct _reent *, const char *__string, const char *__value, int __overwrite)); char * _EXFUN(gcvt,(double,int,char *)); char * _EXFUN(gcvtf,(float,int,char *)); char * _EXFUN(fcvt,(double,int,int *,int *)); char * _EXFUN(fcvtf,(float,int,int *,int *)); char * _EXFUN(ecvt,(double,int,int *,int *)); char * _EXFUN(ecvtbuf,(double, int, int*, int*, char *)); char * _EXFUN(fcvtbuf,(double, int, int*, int*, char *)); char * _EXFUN(ecvtf,(float,int,int *,int *)); char * _EXFUN(dtoa,(double, int, int, int *, int*, char**)); int _EXFUN(rand_r,(unsigned *__seed)); double _EXFUN(drand48,(_VOID)); double _EXFUN(_drand48_r,(struct _reent *)); double _EXFUN(erand48,(unsigned short [3])); double _EXFUN(_erand48_r,(struct _reent *, unsigned short [3])); long _EXFUN(jrand48,(unsigned short [3])); long _EXFUN(_jrand48_r,(struct _reent *, unsigned short [3])); _VOID _EXFUN(lcong48,(unsigned short [7])); _VOID _EXFUN(_lcong48_r,(struct _reent *, unsigned short [7])); long _EXFUN(lrand48,(_VOID)); long _EXFUN(_lrand48_r,(struct _reent *)); long _EXFUN(mrand48,(_VOID)); long _EXFUN(_mrand48_r,(struct _reent *)); long _EXFUN(nrand48,(unsigned short [3])); long _EXFUN(_nrand48_r,(struct _reent *, unsigned short [3])); unsigned short * _EXFUN(seed48,(unsigned short [3])); unsigned short * _EXFUN(_seed48_r,(struct _reent *, unsigned short [3])); _VOID _EXFUN(srand48,(long)); _VOID _EXFUN(_srand48_r,(struct _reent *, long)); long long _EXFUN(atoll,(const char *__nptr)); long long _EXFUN(_atoll_r,(struct _reent *, const char *__nptr)); long long _EXFUN(llabs,(long long)); lldiv_t _EXFUN(lldiv,(long long __numer, long long __denom)); #endif /* ! __STRICT_ANSI__ */ #if !defined(__STRICT_ANSI__) || (__STDC_VERSION__ >= 199901L) || (__cplusplus >= 201103L) long long _EXFUN(strtoll,(const char *__restrict __n, char **__restrict __end_PTR, int __base)); #endif #ifndef __STRICT_ANSI__ long long _EXFUN(_strtoll_r,(struct _reent *, const char *__restrict __n, char **__restrict __end_PTR, int __base)); #endif /* ! __STRICT_ANSI__ */ #if !defined(__STRICT_ANSI__) || (__STDC_VERSION__ >= 199901L) || (__cplusplus >= 201103L) unsigned long long _EXFUN(strtoull,(const char *__restrict __n, char **__restrict __end_PTR, int __base)); #endif #ifndef __STRICT_ANSI__ unsigned long long _EXFUN(_strtoull_r,(struct _reent *, const char *__restrict __n, char **__restrict __end_PTR, int __base)); #ifndef __CYGWIN__ _VOID _EXFUN(cfree,(_PTR)); int _EXFUN(unsetenv,(const char *__string)); int _EXFUN(_unsetenv_r,(struct _reent *, const char *__string)); #endif #ifdef __rtems__ int _EXFUN(posix_memalign,(void **, size_t, size_t)); #endif #endif /* ! __STRICT_ANSI__ */ char * _EXFUN(_dtoa_r,(struct _reent *, double, int, int, int *, int*, char**)); #ifndef __CYGWIN__ _PTR _EXFUN_NOTHROW(_malloc_r,(struct _reent *, size_t)); _PTR _EXFUN_NOTHROW(_calloc_r,(struct _reent *, size_t, size_t)); _VOID _EXFUN_NOTHROW(_free_r,(struct _reent *, _PTR)); _PTR _EXFUN_NOTHROW(_realloc_r,(struct _reent *, _PTR, size_t)); _PTR _EXFUN_NOTHROW(_realloc_os_r,(struct _reent *, _PTR, size_t, size_t)); _VOID _EXFUN(_mstats_r,(struct _reent *, char *)); #endif int _EXFUN(_system_r,(struct _reent *, const char *)); _VOID _EXFUN(__eprintf,(const char *, const char *, unsigned int, const char *)); /* On platforms where long double equals double. */ #ifdef _HAVE_LONG_DOUBLE #if !defined(__STRICT_ANSI__) || (__STDC_VERSION__ >= 199901L) || (__cplusplus >= 201103L) extern long double strtold (const char *__restrict, char **__restrict); #endif #endif /* _HAVE_LONG_DOUBLE */ _END_STD_C #endif /* _STDLIB_H_ */ 07070100000040000081a40000000000000000000000015edeb89a0000138c000000000000000000000000000000000000002200000000./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 _BEGIN_STD_C _PTR _EXFUN(memchr,(const _PTR, int, size_t)); int _EXFUN(memcmp,(const _PTR, const _PTR, size_t)); _PTR _EXFUN(memcpy,(_PTR __restrict, const _PTR __restrict, size_t)); _PTR _EXFUN(memmove,(_PTR, const _PTR, size_t)); _PTR _EXFUN(memset,(_PTR, int, size_t)); char *_EXFUN(strcat,(char *__restrict, const char *__restrict)); char *_EXFUN(strchr,(const char *, int)); int _EXFUN(strcmp,(const char *, const char *)); int _EXFUN(strcoll,(const char *, const char *)); char *_EXFUN(strcpy,(char *__restrict, const char *__restrict)); size_t _EXFUN(strcspn,(const char *, const char *)); char *_EXFUN(strerror,(int)); size_t _EXFUN(strlen,(const char *)); char *_EXFUN(strncat,(char *__restrict, const char *__restrict, size_t)); int _EXFUN(strncmp,(const char *, const char *, size_t)); char *_EXFUN(strncpy,(char *__restrict, const char *__restrict, size_t)); char *_EXFUN(strpbrk,(const char *, const char *)); char *_EXFUN(strrchr,(const char *, int)); size_t _EXFUN(strspn,(const char *, const char *)); char *_EXFUN(strstr,(const char *, const char *)); #ifndef _REENT_ONLY char *_EXFUN(strtok,(char *__restrict, const char *__restrict)); #endif size_t _EXFUN(strxfrm,(char *__restrict, const char *__restrict, size_t)); #ifndef __STRICT_ANSI__ char *_EXFUN(strtok_r,(char *__restrict, const char *__restrict, char **__restrict)); int _EXFUN(bcmp,(const void *, const void *, size_t)); void _EXFUN(bcopy,(const void *, void *, size_t)); void _EXFUN(bzero,(void *, size_t)); int _EXFUN(ffs,(int)); char *_EXFUN(index,(const char *, int)); _PTR _EXFUN(memccpy,(_PTR __restrict, const _PTR __restrict, int, size_t)); _PTR _EXFUN(mempcpy,(_PTR, const _PTR, size_t)); _PTR _EXFUN(memmem, (const _PTR, size_t, const _PTR, size_t)); _PTR _EXFUN(memrchr,(const _PTR, int, size_t)); _PTR _EXFUN(rawmemchr,(const _PTR, int)); char *_EXFUN(rindex,(const char *, int)); char *_EXFUN(stpcpy,(char *__restrict, const char *__restrict)); char *_EXFUN(stpncpy,(char *__restrict, const char *__restrict, size_t)); int _EXFUN(strcasecmp,(const char *, const char *)); char *_EXFUN(strcasestr,(const char *, const char *)); char *_EXFUN(strchrnul,(const char *, int)); #endif #if !defined(__STRICT_ANSI__) || (_XOPEN_SOURCE - 0) >= 500 char *_EXFUN(strdup,(const char *)); #endif #ifndef __STRICT_ANSI__ char *_EXFUN(_strdup_r,(struct _reent *, const char *)); #endif #if !defined(__STRICT_ANSI__) || (_XOPEN_SOURCE - 0) >= 700 char *_EXFUN(strndup,(const char *, size_t)); #endif #ifndef __STRICT_ANSI__ char *_EXFUN(_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. */ #ifdef _GNU_SOURCE char *_EXFUN(strerror_r,(int, char *, size_t)); #else # ifdef __GNUC__ int _EXFUN(strerror_r,(int, char *, size_t)) __asm__ (__ASMNAME ("__xpg_strerror_r")); # else int _EXFUN(__xpg_strerror_r,(int, char *, size_t)); # define strerror_r __xpg_strerror_r # endif #endif size_t _EXFUN(strlcat,(char *, const char *, size_t)); size_t _EXFUN(strlcpy,(char *, const char *, size_t)); int _EXFUN(strncasecmp,(const char *, const char *, size_t)); size_t _EXFUN(strnlen,(const char *, size_t)); char *_EXFUN(strsep,(char **, const char *)); char *_EXFUN(strlwr,(char *)); char *_EXFUN(strupr,(char *)); #ifndef DEFS_H /* Kludge to work around problem compiling in gdb */ char *_EXFUN(strsignal, (int __signo)); #endif #ifdef __CYGWIN__ int _EXFUN(strtosigno, (const char *__name)); #endif /* Recursive version of strerror. */ char * _EXFUN(_strerror_r, (struct _reent *, int, int, int *)); #if defined _GNU_SOURCE && defined __GNUC__ #define strdupa(__s) \ (__extension__ ({const char *__in = (__s); \ size_t __len = strlen (__in) + 1; \ char * __out = (char *) __builtin_alloca (__len); \ (char *) memcpy (__out, __in, __len);})) #define strndupa(__s, __n) \ (__extension__ ({const char *__in = (__s); \ size_t __len = strnlen (__in, (__n)) + 1; \ char *__out = (char *) __builtin_alloca (__len); \ __out[__len-1] = '\0'; \ (char *) memcpy (__out, __in, __len-1);})) #endif /* _GNU_SOURCE && __GNUC__ */ /* These function names are used on Windows and perhaps other systems. */ #ifndef strcmpi #define strcmpi strcasecmp #endif #ifndef stricmp #define stricmp strcasecmp #endif #ifndef strncmpi #define strncmpi strncasecmp #endif #ifndef strnicmp #define strnicmp strncasecmp #endif #endif /* ! __STRICT_ANSI__ */ #include _END_STD_C #endif /* _STRING_H_ */ 07070100000041000081a40000000000000000000000015edeb89a00000360000000000000000000000000000000000000002300000000./usr/nvptx-none/include/strings.h/* * strings.h * * Definitions for string operations. */ #ifndef _STRINGS_H_ #define _STRINGS_H_ #include "_ansi.h" #include #include /* for size_t */ _BEGIN_STD_C #if !defined __STRICT_ANSI__ && _POSIX_VERSION < 200809L /* * Marked LEGACY in Open Group Base Specifications Issue 6/IEEE Std 1003.1-2004 * Removed from Open Group Base Specifications Issue 7/IEEE Std 1003.1-2008 */ int _EXFUN(bcmp,(const void *, const void *, size_t)); void _EXFUN(bcopy,(const void *, void *, size_t)); void _EXFUN(bzero,(void *, size_t)); char *_EXFUN(index,(const char *, int)); char *_EXFUN(rindex,(const char *, int)); #endif /* ! __STRICT_ANSI__ */ int _EXFUN(ffs,(int)); int _EXFUN(strcasecmp,(const char *, const char *)); int _EXFUN(strncasecmp,(const char *, const char *, size_t)); _END_STD_C #endif /* _STRINGS_H_ */ 07070100000042000041ed0000000000000000000000015edeb89a00000000000000000000000000000000000000000000001d00000000./usr/nvptx-none/include/sys07070100000043000081a40000000000000000000000015edeb89a00001b98000000000000000000000000000000000000002e00000000./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 */ #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 /* For machines which care - */ #if defined (_WIN32) || defined (__CYGWIN__) #define _FBINARY 0x10000 #define _FTEXT 0x20000 #define _FNOINHERIT 0x40000 #define O_BINARY _FBINARY #define O_TEXT _FTEXT #define O_NOINHERIT _FNOINHERIT /* O_CLOEXEC is the Linux equivalent to O_NOINHERIT */ #define O_CLOEXEC _FNOINHERIT /* The windows header files define versions with a leading underscore. */ #define _O_RDONLY O_RDONLY #define _O_WRONLY O_WRONLY #define _O_RDWR O_RDWR #define _O_APPEND O_APPEND #define _O_CREAT O_CREAT #define _O_TRUNC O_TRUNC #define _O_EXCL O_EXCL #define _O_TEXT O_TEXT #define _O_BINARY O_BINARY #define _O_RAW O_BINARY #define _O_NOINHERIT O_NOINHERIT #endif #ifndef _POSIX_SOURCE /* * 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 /* !_POSIX_SOURCE */ /* 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 */ #ifndef _POSIX_SOURCE #define F_GETOWN 5 /* Get owner - for ASYNC */ #define F_SETOWN 6 /* Set owner - for ASYNC */ #endif /* !_POSIX_SOURCE */ #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) */ #ifndef _POSIX_SOURCE #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 /* !_POSIX_SOURCE */ #ifdef __CYGWIN__ #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) */ #ifndef _POSIX_SOURCE #define F_UNLKSYS 4 /* remove remote locks for a given system */ #endif /* !_POSIX_SOURCE */ #if __BSD_VISIBLE || __POSIX_VISIBLE >= 200809 || defined(__CYGWIN__) /* 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 #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__ */ #ifndef _POSIX_SOURCE /* 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 /* !_POSIX_SOURCE */ #include #include /* sigh. for the mode bits for open/creat */ extern int open _PARAMS ((const char *, int, ...)); #if __BSD_VISIBLE || __POSIX_VISIBLE >= 200809 || defined(__CYGWIN__) extern int openat _PARAMS ((int, const char *, int, ...)); #endif extern int creat _PARAMS ((const char *, mode_t)); extern int fcntl _PARAMS ((int, int, ...)); #if __BSD_VISIBLE extern int flock _PARAMS ((int, int)); #endif #ifdef __CYGWIN__ #include extern int futimesat _PARAMS ((int, const char *, const struct timeval *)); #endif /* Provide _ prototypes for functions provided by some versions of newlib. */ #ifdef _COMPILING_NEWLIB extern int _open _PARAMS ((const char *, int, ...)); extern int _fcntl _PARAMS ((int, int, ...)); #ifdef __LARGE64_FILES extern int _open64 _PARAMS ((const char *, int, ...)); #endif #endif #ifdef __cplusplus } #endif #endif /* !_SYS__DEFAULT_FCNTL_H_ */ 07070100000044000081a40000000000000000000000015edeb89a000007da000000000000000000000000000000000000002600000000./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. This file lives in the `sys' directory so targets can provide their own if desired (or they can put target dependant conditionals here). */ #ifndef _SYS__TYPES_H #define _SYS__TYPES_H #include #include #ifndef __off_t_defined typedef long _off_t; #endif #ifndef __dev_t_defined typedef short __dev_t; #endif #ifndef __uid_t_defined typedef unsigned short __uid_t; #endif #ifndef __gid_t_defined typedef unsigned short __gid_t; #endif #ifndef __off64_t_defined __extension__ typedef long long _off64_t; #endif /* * We need fpos_t for the following, but it doesn't have a leading "_", * so we use _fpos_t instead. */ #ifndef __fpos_t_defined typedef long _fpos_t; /* XXX must match off_t in */ /* (and must be `long' for now) */ #endif #ifdef __LARGE64_FILES #ifndef __fpos64_t_defined typedef _off64_t _fpos64_t; #endif #endif #ifndef __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 #define __need_wint_t #include #ifndef __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 __flock_t_defined typedef _LOCK_RECURSIVE_T _flock_t; #endif #ifndef __iconv_t_defined /* Iconv descriptor type */ typedef void *_iconv_t; #endif #endif /* _SYS__TYPES_H */ 07070100000045000081a40000000000000000000000015edeb89a0000597e000000000000000000000000000000000000002500000000./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 */ /*- * 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. * 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. * * @(#)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_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) && !defined(__INTEL_COMPILER) # 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. */ #ifdef lint #define __dead2 #define __pure2 #define __unused #define __packed #define __aligned(x) #define __section(x) #else #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) #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 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 #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 !__has_extension(c_atomic) && !__has_extension(cxx_atomic) /* * 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 __GNUC_PREREQ__(4, 6) && !defined(__cplusplus) /* Do nothing: _Static_assert() works as per C11 */ #elif !__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 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] #else #define _Static_assert(x, y) struct __hack #endif #endif #if !__has_extension(c_thread_local) /* XXX: Change this to test against C++11 when clang in base supports it. */ #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 #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 #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 __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))) #else #define __nonnull(x) #endif #if __GNUC_PREREQ__(3, 4) #define __fastcall __attribute__((__fastcall__)) #else #define __fastcall #endif #if __GNUC_PREREQ__(4, 1) #define __returns_twice __attribute__((__returns_twice__)) #else #define __returns_twice #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 || defined(lint) #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, 2) #define __hidden __attribute__((__visibility__("hidden"))) #define __exported __attribute__((__visibility__("default"))) #else #define __hidden #define __exported #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 /*- * The following definitions are an extension of the behavior originally * implemented in , but with a different level of granularity. * POSIX.1 requires that the macros we test be defined before any standard * header file is included. * * Here's a quick run-down of the versions: * defined(_POSIX_SOURCE) 1003.1-1988 * _POSIX_C_SOURCE == 1 1003.1-1990 * _POSIX_C_SOURCE == 2 1003.2-1992 C Language Binding Option * _POSIX_C_SOURCE == 199309 1003.1b-1993 * _POSIX_C_SOURCE == 199506 1003.1c-1995, 1003.1i-1995, * and the omnibus ISO/IEC 9945-1: 1996 * _POSIX_C_SOURCE == 200112 1003.1-2001 * _POSIX_C_SOURCE == 200809 1003.1-2008 * * In addition, the X/Open Portability Guide, which is now the Single UNIX * Specification, defines a feature-test macro which indicates the version of * that specification, and which subsumes _POSIX_C_SOURCE. * * Our macros begin with two underscores to avoid namespace screwage. */ /* Deal with IEEE Std. 1003.1-1990, in which _POSIX_C_SOURCE == 1. */ #if defined(_POSIX_C_SOURCE) && _POSIX_C_SOURCE == 1 #undef _POSIX_C_SOURCE /* Probably illegal, but beyond caring now. */ #define _POSIX_C_SOURCE 199009 #endif /* Deal with IEEE Std. 1003.2-1992, in which _POSIX_C_SOURCE == 2. */ #if defined(_POSIX_C_SOURCE) && _POSIX_C_SOURCE == 2 #undef _POSIX_C_SOURCE #define _POSIX_C_SOURCE 199209 #endif /* Deal with various X/Open Portability Guides and Single UNIX Spec. */ #ifdef _XOPEN_SOURCE #if _XOPEN_SOURCE - 0 >= 700 #define __XSI_VISIBLE 700 #undef _POSIX_C_SOURCE #define _POSIX_C_SOURCE 200809 #elif _XOPEN_SOURCE - 0 >= 600 #define __XSI_VISIBLE 600 #undef _POSIX_C_SOURCE #define _POSIX_C_SOURCE 200112 #elif _XOPEN_SOURCE - 0 >= 500 #define __XSI_VISIBLE 500 #undef _POSIX_C_SOURCE #define _POSIX_C_SOURCE 199506 #endif #endif /* * Deal with all versions of POSIX. The ordering relative to the tests above is * important. */ #if defined(_POSIX_SOURCE) && !defined(_POSIX_C_SOURCE) #define _POSIX_C_SOURCE 198808 #endif #ifdef _POSIX_C_SOURCE #if _POSIX_C_SOURCE >= 200809 #define __POSIX_VISIBLE 200809 #define __ISO_C_VISIBLE 1999 #elif _POSIX_C_SOURCE >= 200112 #define __POSIX_VISIBLE 200112 #define __ISO_C_VISIBLE 1999 #elif _POSIX_C_SOURCE >= 199506 #define __POSIX_VISIBLE 199506 #define __ISO_C_VISIBLE 1990 #elif _POSIX_C_SOURCE >= 199309 #define __POSIX_VISIBLE 199309 #define __ISO_C_VISIBLE 1990 #elif _POSIX_C_SOURCE >= 199209 #define __POSIX_VISIBLE 199209 #define __ISO_C_VISIBLE 1990 #elif _POSIX_C_SOURCE >= 199009 #define __POSIX_VISIBLE 199009 #define __ISO_C_VISIBLE 1990 #else #define __POSIX_VISIBLE 198808 #define __ISO_C_VISIBLE 0 #endif /* _POSIX_C_SOURCE */ #else /*- * Deal with _ANSI_SOURCE: * If it is defined, and no other compilation environment is explicitly * requested, then define our internal feature-test macros to zero. This * makes no difference to the preprocessor (undefined symbols in preprocessing * expressions are defined to have value zero), but makes it more convenient for * a test program to print out the values. * * If a program mistakenly defines _ANSI_SOURCE and some other macro such as * _POSIX_C_SOURCE, we will assume that it wants the broader compilation * environment (and in fact we will never get here). */ #if defined(_ANSI_SOURCE) /* Hide almost everything. */ #define __POSIX_VISIBLE 0 #define __XSI_VISIBLE 0 #define __BSD_VISIBLE 0 #define __ISO_C_VISIBLE 1990 #elif defined(_C99_SOURCE) /* Localism to specify strict C99 env. */ #define __POSIX_VISIBLE 0 #define __XSI_VISIBLE 0 #define __BSD_VISIBLE 0 #define __ISO_C_VISIBLE 1999 #elif defined(_C11_SOURCE) /* Localism to specify strict C11 env. */ #define __POSIX_VISIBLE 0 #define __XSI_VISIBLE 0 #define __BSD_VISIBLE 0 #define __ISO_C_VISIBLE 2011 #elif defined(_GNU_SOURCE) /* Everything and the kitchen sink. */ #define __POSIX_VISIBLE 200809 #define __XSI_VISIBLE 700 #define __BSD_VISIBLE 1 #define __ISO_C_VISIBLE 2011 #define __GNU_VISIBLE 1 #else /* Default: everything except __GNU_VISIBLE. */ #define __POSIX_VISIBLE 200809 #define __XSI_VISIBLE 700 #define __BSD_VISIBLE 1 #define __ISO_C_VISIBLE 2011 #endif #endif #endif /* !_SYS_CDEFS_H_ */ 07070100000046000081a40000000000000000000000015edeb89a00001a4f000000000000000000000000000000000000002600000000./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 /* 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__) #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 #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 _HAVE_SYSTYPES #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 #ifdef __v850 #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 __SMALL_BITFIELDS #ifdef __MSP430X_LARGE__ #define _POINTER_INT long #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 /* 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 #if !defined (__STRICT_ANSI__) || (__STDC_VERSION__ >= 199901L) #define __USE_XOPEN2K 1 #endif #endif #if defined(__rtems__) #define __FILENAME_MAX__ 255 #define _READ_WRITE_RETURN_TYPE _ssize_t #define __DYNAMIC_REENT__ #define _REENT_GLOBAL_ATEXIT #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 /* 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__ */ 07070100000047000081a40000000000000000000000015edeb89a00000032000000000000000000000000000000000000002b00000000./usr/nvptx-none/include/sys/custom_file.h#error System-specific custom_file.h is missing. 07070100000048000081a40000000000000000000000015edeb89a000000ab000000000000000000000000000000000000002300000000./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_*/ 07070100000049000081a40000000000000000000000015edeb89a0000018b000000000000000000000000000000000000002600000000./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 0707010000004a000081a40000000000000000000000015edeb89a00001cf9000000000000000000000000000000000000002500000000./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 _PARAMS ((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 super-user */ #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 core */ #define EACCES 13 /* Permission denied */ #define EFAULT 14 /* Bad address */ #ifdef __LINUX_ERRNO_EXTENSIONS__ #define ENOTBLK 15 /* Block device required */ #endif #define EBUSY 16 /* Mount device 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 /* Too many open files */ #define ENOTTY 25 /* Not a typewriter */ #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 /* Math arg out of domain of func */ #define ERANGE 34 /* Math result not representable */ #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 condition */ #define ENOLCK 46 /* No record locks available */ #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 /* Device not a stream */ #define ENODATA 61 /* No data (for no delay io) */ #define ETIME 62 /* Timer expired */ #define ENOSR 63 /* Out of streams 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 /* The link has been severed */ #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 /* Trying to read unreadable 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 transport endpoint */ #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 /* Connection aborted */ #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 #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 #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 */ 0707010000004b000081a40000000000000000000000015edeb89a00000053000000000000000000000000000000000000002500000000./usr/nvptx-none/include/sys/fcntl.h#ifndef _SYS_FCNTL_H_ #define _SYS_FCNTL_H_ #include #endif 0707010000004c000081a40000000000000000000000015edeb89a00001f2b000000000000000000000000000000000000002800000000./usr/nvptx-none/include/sys/features.h/* * Written by Joel Sherrill . * * COPYRIGHT (c) 1989-2000. * * 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 /* 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) /* 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_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 #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 !defined(__STRICT_ANSI__) || defined(__cplusplus) || __STDC_VERSION__ >= 199901L #define _POSIX_VERSION 200112L #define _POSIX2_VERSION 200112L #define _XOPEN_VERSION 600 #define _POSIX_ADVISORY_INFO 200112L /* #define _POSIX_ASYNCHRONOUS_IO -1 */ /* #define _POSIX_BARRIERS -1 */ #define _POSIX_CHOWN_RESTRICTED 1 #define _POSIX_CLOCK_SELECTION 200112L #define _POSIX_CPUTIME 200112L #define _POSIX_FSYNC 200112L #define _POSIX_IPV6 200112L #define _POSIX_JOB_CONTROL 1 #define _POSIX_MAPPED_FILES 200112L /* #define _POSIX_MEMLOCK -1 */ #define _POSIX_MEMLOCK_RANGE 200112L #define _POSIX_MEMORY_PROTECTION 200112L #define _POSIX_MESSAGE_PASSING 200112L #define _POSIX_MONOTONIC_CLOCK 200112L #define _POSIX_NO_TRUNC 1 /* #define _POSIX_PRIORITIZED_IO -1 */ #define _POSIX_PRIORITY_SCHEDULING 200112L #define _POSIX_RAW_SOCKETS 200112L #define _POSIX_READER_WRITER_LOCKS 200112L #define _POSIX_REALTIME_SIGNALS 200112L #define _POSIX_REGEXP 1 #define _POSIX_SAVED_IDS 1 #define _POSIX_SEMAPHORES 200112L #define _POSIX_SHARED_MEMORY_OBJECTS 200112L #define _POSIX_SHELL 1 /* #define _POSIX_SPAWN -1 */ #define _POSIX_SPIN_LOCKS 200112L /* #define _POSIX_SPORADIC_SERVER -1 */ #define _POSIX_SYNCHRONIZED_IO 200112L #define _POSIX_THREAD_ATTR_STACKADDR 200112L #define _POSIX_THREAD_ATTR_STACKSIZE 200112L #define _POSIX_THREAD_CPUTIME 200112L /* #define _POSIX_THREAD_PRIO_INHERIT -1 */ /* #define _POSIX_THREAD_PRIO_PROTECT -1 */ #define _POSIX_THREAD_PRIORITY_SCHEDULING 200112L #define _POSIX_THREAD_PROCESS_SHARED 200112L #define _POSIX_THREAD_SAFE_FUNCTIONS 200112L /* #define _POSIX_THREAD_SPORADIC_SERVER -1 */ #define _POSIX_THREADS 200112L /* #define _POSIX_TIMEOUTS -1 */ #define _POSIX_TIMERS 1 /* #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' #define _POSIX2_C_BIND 200112L #define _POSIX2_C_DEV 200112L #define _POSIX2_CHAR_TERM 200112L /* #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 200112L #define _POSIX2_UPE 200112L #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 _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 #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 /* !__STRICT_ANSI__ || __cplusplus || __STDC_VERSION__ >= 199901L */ /* The value corresponds to UNICODE version 4.0, which is the version supported by XP. Newlib supports 5.2 (2011) but so far Cygwin needs the MS conversions for double-byte charsets. */ #define __STDC_ISO_10646__ 200305L #endif /* __CYGWIN__ */ /* Per the permission given in POSIX.1-2008 section 2.2.1, define * _POSIX_C_SOURCE if _XOPEN_SOURCE is defined and _POSIX_C_SOURCE is not. * (_XOPEN_SOURCE indicates that XSI extensions are desired by an application.) * This permission is first granted in 2008, but use it for older ones, also. * Allow for _XOPEN_SOURCE to be empty (from the earliest form of it, before it * was required to have specific values). */ #if !defined(_POSIX_C_SOURCE) && defined(_XOPEN_SOURCE) #if (_XOPEN_SOURCE - 0) == 700 /* POSIX.1-2008 */ #define _POSIX_C_SOURCE 200809L #elif (_XOPEN_SOURCE - 0) == 600 /* POSIX.1-2001 or 2004 */ #define _POSIX_C_SOURCE 200112L #elif (_XOPEN_SOURCE - 0) == 500 /* POSIX.1-1995 */ #define _POSIX_C_SOURCE 199506L #elif (_XOPEN_SOURCE - 0) < 500 /* really old */ #define _POSIX_C_SOURCE 2 #endif #endif #ifdef __cplusplus } #endif #endif /* _SYS_FEATURES_H */ 0707010000004d000081a40000000000000000000000015edeb89a00000018000000000000000000000000000000000000002400000000./usr/nvptx-none/include/sys/file.h #include 0707010000004e000081a40000000000000000000000015edeb89a00000aea000000000000000000000000000000000000002800000000./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 _EXFUN(_iconv_nls_get_state, (iconv_t cd, mbstate_t *ps, int direction)); int _EXFUN(_iconv_nls_set_state, (iconv_t cd, mbstate_t *ps, int direction)); int _EXFUN(_iconv_nls_is_stateful, (iconv_t cd, int direction)); int _EXFUN(_iconv_nls_get_mb_cur_max, (iconv_t cd, int direction)); size_t _EXFUN(_iconv_nls_conv, (struct _reent *rptr, iconv_t cd, _CONST char **inbuf, size_t *inbytesleft, char **outbuf, size_t *outbytesleft)); _CONST char * _EXFUN(_iconv_nls_construct_filename, (struct _reent *rptr, _CONST char *file, _CONST char *dir, _CONST char *ext)); int _EXFUN(_iconv_nls_open, (struct _reent *rptr, _CONST char *encoding, iconv_t *towc, iconv_t *fromwc, int flag)); char * _EXFUN(_iconv_resolve_encoding_name, (struct _reent *rptr, _CONST char *ca)); #endif /* __SYS_ICONVNLS_H__ */ 0707010000004f000081a40000000000000000000000015edeb89a00000325000000000000000000000000000000000000002400000000./usr/nvptx-none/include/sys/lock.h#ifndef __SYS_LOCK_H__ #define __SYS_LOCK_H__ /* dummy lock routines for single-threaded aps */ typedef int _LOCK_T; typedef int _LOCK_RECURSIVE_T; #include <_ansi.h> #define __LOCK_INIT(class,lock) static int lock = 0; #define __LOCK_INIT_RECURSIVE(class,lock) static int lock = 0; #define __lock_init(lock) (_CAST_VOID 0) #define __lock_init_recursive(lock) (_CAST_VOID 0) #define __lock_close(lock) (_CAST_VOID 0) #define __lock_close_recursive(lock) (_CAST_VOID 0) #define __lock_acquire(lock) (_CAST_VOID 0) #define __lock_acquire_recursive(lock) (_CAST_VOID 0) #define __lock_try_acquire(lock) (_CAST_VOID 0) #define __lock_try_acquire_recursive(lock) (_CAST_VOID 0) #define __lock_release(lock) (_CAST_VOID 0) #define __lock_release_recursive(lock) (_CAST_VOID 0) #endif /* __SYS_LOCK_H__ */ 07070100000050000081a40000000000000000000000015edeb89a00000234000000000000000000000000000000000000002500000000./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 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)) #endif 07070100000051000081a40000000000000000000000015edeb89a0000591a000000000000000000000000000000000000002500000000./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. * 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. * * @(#)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. * * * SLIST LIST STAILQ TAILQ * _HEAD + + + + * _HEAD_INITIALIZER + + + + * _ENTRY + + + + * _INIT + + + + * _EMPTY + + + + * _FIRST + + + + * _NEXT + + + + * _PREV - + - + * _LAST - - + + * _FOREACH + + + + * _FOREACH_SAFE + + + + * _FOREACH_REVERSE - - - + * _FOREACH_REVERSE_SAFE - - - + * _INSERT_HEAD + + + + * _INSERT_BEFORE - + - + * _INSERT_AFTER + + + + * _INSERT_TAIL - - + + * _CONCAT - - + + * _REMOVE_AFTER + - + - * _REMOVE_HEAD + - + - * _REMOVE + + + + * _SWAP + + + + * */ #ifdef QUEUE_MACRO_DEBUG /* 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 { __FILE__, __LINE__, NULL, 0 } , #define TRASHIT(x) do {(x) = (void *)-1;} while (0) #define QMD_SAVELINK(name, link) void **name = (void *)&(link) #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 #define QMD_TRACE_ELEM(elem) #define QMD_TRACE_HEAD(head) #define QMD_SAVELINK(name, link) #define TRACEBUF #define TRACEBUF_INITIALIZER #define TRASHIT(x) #endif /* QUEUE_MACRO_DEBUG */ /* * Singly-linked List declarations. */ #define SLIST_HEAD(name, type) \ struct name { \ struct type *slh_first; /* first element */ \ } #define SLIST_HEAD_INITIALIZER(head) \ { NULL } #define SLIST_ENTRY(type) \ struct { \ struct type *sle_next; /* next element */ \ } /* * Singly-linked List functions. */ #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_SAFE(var, head, field, tvar) \ for ((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 { \ struct 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_SWAP(head1, head2, type) do { \ struct 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_HEAD_INITIALIZER(head) \ { NULL, &(head).stqh_first } #define STAILQ_ENTRY(type) \ struct { \ struct 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_SAFE(var, head, field, tvar) \ for ((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, struct 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 { \ struct 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 { \ struct type *swap_first = STAILQ_FIRST(head1); \ struct 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_HEAD_INITIALIZER(head) \ { NULL } #define LIST_ENTRY(type) \ struct { \ struct type *le_next; /* next element */ \ struct type **le_prev; /* address of previous next element */ \ } /* * List functions. */ #if (defined(_KERNEL) && defined(INVARIANTS)) #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) #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) #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_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_SAFE(var, head, field, tvar) \ for ((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, struct 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 { \ struct 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_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 \ } /* * Tail queue functions. */ #if (defined(_KERNEL) && defined(INVARIANTS)) #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) #define QMD_TAILQ_CHECK_TAIL(head, field) do { \ if (*(head)->tqh_last != NULL) \ panic("Bad tailq NEXT(%p->tqh_last) != NULL", (head)); \ } while (0) #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) #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_SAFE(var, head, field, tvar) \ for ((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_SAFE(var, head, headname, field, tvar) \ for ((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)) #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 { \ struct type *swap_first = (head1)->tqh_first; \ struct 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_ */ 07070100000052000081a40000000000000000000000015edeb89a00005f64000000000000000000000000000000000000002500000000./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 __Long #define __Long __int32_t typedef __uint32_t __ULong; #endif struct _reent; /* * 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. */ #ifdef _REENT_SMALL /* * 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 _EXFUN(__sinit,(struct _reent *)); # define _REENT_SMALL_CHECK_INIT(ptr) \ do \ { \ if ((ptr) && !(ptr)->__sdidinit) \ __sinit (ptr); \ } \ while (0) #else # define _REENT_SMALL_CHECK_INIT(ptr) /* nothing */ #endif 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 */ _PTR _cookie; /* cookie passed to io functions */ _READ_WRITE_RETURN_TYPE _EXFNPTR(_read, (struct _reent *, _PTR, char *, _READ_WRITE_BUFSIZE_TYPE)); _READ_WRITE_RETURN_TYPE _EXFNPTR(_write, (struct _reent *, _PTR, const char *, _READ_WRITE_BUFSIZE_TYPE)); _fpos_t _EXFNPTR(_seek, (struct _reent *, _PTR, _fpos_t, int)); int _EXFNPTR(_close, (struct _reent *, _PTR)); /* 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 */ _PTR _cookie; /* cookie passed to io functions */ _READ_WRITE_RETURN_TYPE _EXFNPTR(_read, (struct _reent *, _PTR, char *, _READ_WRITE_BUFSIZE_TYPE)); _READ_WRITE_RETURN_TYPE _EXFNPTR(_write, (struct _reent *, _PTR, const char *, _READ_WRITE_BUFSIZE_TYPE)); _fpos_t _EXFNPTR(_seek, (struct _reent *, _PTR, _fpos_t, int)); int _EXFNPTR(_close, (struct _reent *, _PTR)); /* 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 _EXFNPTR(_seek64, (struct _reent *, _PTR, _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 _current_category; /* unused */ _CONST char *_current_locale; /* unused */ struct _mprec *_mp; void _EXFNPTR(__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 */ }; 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, \ "C", \ _NULL, \ _NULL, \ 0, \ 0, \ _NULL, \ _NULL, \ _NULL, \ _NULL, \ _NULL, \ _REENT_INIT_ATEXIT \ {_NULL, 0, _NULL}, \ _NULL, \ _NULL, \ _NULL \ } #define _REENT_INIT_PTR(var) \ { memset((var), 0, sizeof(*(var))); \ (var)->_stdin = (__FILE *)&__sf_fake_stdin; \ (var)->_stdout = (__FILE *)&__sf_fake_stdout; \ (var)->_stderr = (__FILE *)&__sf_fake_stderr; \ (var)->_current_locale = "C"; \ } /* Only built the assert() calls if we are built with debugging. */ #if DEBUG #include #define __reent_assert(x) assert(x) #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]; int _current_category; /* used by setlocale */ _CONST char *_current_locale; int __sdidinit; /* 1 means stdio has been init'd */ void _EXFNPTR(__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 */ __FILE __sf[3]; /* first three file descriptors */ }; #define _REENT_INIT(var) \ { 0, \ _NULL, \ _NULL, \ _NULL, \ 0, \ "", \ 0, \ "C", \ 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(var) \ { memset((var), 0, sizeof(*(var))); \ (var)->_stdin = &(var)->__sf[0]; \ (var)->_stdout = &(var)->__sf[1]; \ (var)->_stderr = &(var)->__sf[2]; \ (var)->_current_locale = "C"; \ (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 */ /* 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 _PARAMS ((struct _reent *)); /* #define _REENT_ONLY define this to get only reentrant routines */ #if defined(__DYNAMIC_REENT__) && !defined(__SINGLE_THREAD__) #ifndef __getreent struct _reent * _EXFUN(__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_ */ 07070100000053000081a40000000000000000000000015edeb89a00000133000000000000000000000000000000000000002800000000./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 */ }; #endif 07070100000054000081a40000000000000000000000015edeb89a00000734000000000000000000000000000000000000002500000000./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_ #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 */ 07070100000055000081a40000000000000000000000015edeb89a000029c3000000000000000000000000000000000000002600000000./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 /* #ifndef __STRICT_ANSI__*/ /* Cygwin defines it's own sigset_t in include/cygwin/signal.h */ #ifndef __CYGWIN__ typedef unsigned long sigset_t; #endif #if defined(__rtems__) #if defined(_POSIX_REALTIME_SIGNALS) /* 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 /* 3.3.8 Synchronously Accept a Signal, P1003.1b-1993, p. 76 */ #define SA_NOCLDSTOP 1 /* Do not generate SIGCHLD when children stop */ #define SA_SIGINFO 2 /* Invoke the signal catching function with */ /* three arguments instead of one. */ /* 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 #elif defined(__CYGWIN__) #include #else #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__) */ #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 */ /* 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) int _EXFUN(sigprocmask, (int how, const sigset_t *set, sigset_t *oset)); #if defined(_POSIX_THREADS) int _EXFUN(pthread_sigmask, (int how, const sigset_t *set, sigset_t *oset)); #endif /* protos for functions found in winsup sources for CYGWIN */ #if defined(__CYGWIN__) || defined(__rtems__) #undef sigaddset #undef sigdelset #undef sigemptyset #undef sigfillset #undef sigismember #ifdef _COMPILING_NEWLIB int _EXFUN(_kill, (pid_t, int)); #endif int _EXFUN(kill, (pid_t, int)); int _EXFUN(killpg, (pid_t, int)); int _EXFUN(sigaction, (int, const struct sigaction *, struct sigaction *)); int _EXFUN(sigaddset, (sigset_t *, const int)); int _EXFUN(sigdelset, (sigset_t *, const int)); int _EXFUN(sigismember, (const sigset_t *, int)); int _EXFUN(sigfillset, (sigset_t *)); int _EXFUN(sigemptyset, (sigset_t *)); int _EXFUN(sigpending, (sigset_t *)); int _EXFUN(sigsuspend, (const sigset_t *)); int _EXFUN(sigpause, (int)); #if defined(_POSIX_THREADS) #ifdef __CYGWIN__ # ifndef _CYGWIN_TYPES_H # error You need the winsup sources or a cygwin installation to compile the cygwin version of newlib. # endif #endif int _EXFUN(pthread_kill, (pthread_t thread, int sig)); #endif #if defined(_POSIX_REALTIME_SIGNALS) /* 3.3.8 Synchronously Accept a Signal, P1003.1b-1993, p. 76 NOTE: P1003.1c/D10, p. 39 adds sigwait(). */ int _EXFUN(sigwaitinfo, (const sigset_t *set, siginfo_t *info)); int _EXFUN(sigtimedwait, (const sigset_t *set, siginfo_t *info, const struct timespec *timeout) ); int _EXFUN(sigwait, (const sigset_t *set, int *sig)); /* 3.3.9 Queue a Signal to a Process, P1003.1b-1993, p. 78 */ int _EXFUN(sigqueue, (pid_t pid, int signo, const union sigval value)); #endif /* defined(_POSIX_REALTIME_SIGNALS) */ #endif /* defined(__CYGWIN__) || defined(__rtems__) */ /* #endif __STRICT_ANSI__ */ #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 #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 */ 07070100000056000081a40000000000000000000000015edeb89a00001814000000000000000000000000000000000000002400000000./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 /* 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(__rtems__) struct timespec st_atim; struct timespec st_mtim; struct timespec st_ctim; blksize_t st_blksize; blkcnt_t st_blocks; #else /* SysV/sco doesn't have the rest... But Solaris, eabi does. */ #if defined(__svr4__) && !defined(__PPC__) && !defined(__sun__) time_t st_atime; time_t st_mtime; time_t st_ctime; #else time_t st_atime; long st_spare1; time_t st_mtime; long st_spare2; time_t st_ctime; long st_spare3; long st_blksize; long st_blocks; long st_spare4[2]; #endif #endif }; #if defined(__rtems__) #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 */ #ifndef _POSIX_SOURCE #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 /* !_POSIX_SOURCE */ #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 */ #ifndef _POSIX_SOURCE #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 _EXFUN(chmod,( const char *__path, mode_t __mode )); int _EXFUN(fchmod,(int __fd, mode_t __mode)); int _EXFUN(fstat,( int __fd, struct stat *__sbuf )); int _EXFUN(mkdir,( const char *_path, mode_t __mode )); int _EXFUN(mkfifo,( const char *__path, mode_t __mode )); int _EXFUN(stat,( const char *__restrict __path, struct stat *__restrict __sbuf )); mode_t _EXFUN(umask,( mode_t __mask )); #if defined (__SPU__) || defined(__rtems__) || defined(__CYGWIN__) && !defined(__INSIDE_CYGWIN__) int _EXFUN(lstat,( const char *__restrict __path, struct stat *__restrict __buf )); int _EXFUN(mknod,( const char *__path, mode_t __mode, dev_t __dev )); #endif #if (__POSIX_VISIBLE >= 200809 || defined (__CYGWIN__)) && !defined(__INSIDE_CYGWIN__) int _EXFUN(fchmodat, (int, const char *, mode_t, int)); #endif #if (__BSD_VISIBLE || __POSIX_VISIBLE >= 200809 || defined (__CYGWIN__)) && !defined(__INSIDE_CYGWIN__) int _EXFUN(fstatat, (int, const char *__restrict , struct stat *__restrict, int)); int _EXFUN(mkdirat, (int, const char *, mode_t)); int _EXFUN(mkfifoat, (int, const char *, mode_t)); #endif #if (__BSD_VISIBLE || __XSI_VISIBLE >= 700 || defined (__CYGWIN__)) && !defined(__INSIDE_CYGWIN__) int _EXFUN(mknodat, (int, const char *, mode_t, dev_t)); #endif #if (__BSD_VISIBLE || __POSIX_VISIBLE >= 200809 || defined (__CYGWIN__)) && !defined(__INSIDE_CYGWIN__) int _EXFUN(utimensat, (int, const char *, const struct timespec *, int)); int _EXFUN(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 _EXFUN(_fstat,( int __fd, struct stat *__sbuf )); int _EXFUN(_stat,( const char *__restrict __path, struct stat *__restrict __sbuf )); int _EXFUN(_mkdir,( const char *_path, mode_t __mode )); #ifdef __LARGE64_FILES struct stat64; int _EXFUN(_stat64,( const char *__restrict __path, struct stat64 *__restrict __sbuf )); int _EXFUN(_fstat64,( int __fd, struct stat64 *__sbuf )); #endif #endif #endif /* !_STAT_H_ */ #ifdef __cplusplus } #endif #endif /* _SYS_STAT_H */ 07070100000057000081a40000000000000000000000015edeb89a00000327000000000000000000000000000000000000002500000000./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) (_CAST_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) (_CAST_VOID 0) #endif #endif #endif /* _NEWLIB_STDIO_H */ 07070100000058000081a40000000000000000000000015edeb89a00000074000000000000000000000000000000000000002600000000./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. */ 07070100000059000081a40000000000000000000000015edeb89a00000c8b000000000000000000000000000000000000002900000000./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. All advertising materials mentioning features or use of this software * must display the following acknowledgement: * This product includes software developed by the University of * California, Berkeley and its contributors. * 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. * * @(#)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 0707010000005a000081a40000000000000000000000015edeb89a00000a1a000000000000000000000000000000000000002400000000./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. */ #ifndef _SYS_TIME_H_ #define _SYS_TIME_H_ #include <_ansi.h> #include #ifdef __cplusplus extern "C" { #endif #ifndef _TIMEVAL_DEFINED #define _TIMEVAL_DEFINED struct timeval { time_t tv_sec; suseconds_t tv_usec; }; /* BSD time macros used by RTEMS code */ #if defined (__rtems__) || defined (__CYGWIN__) /* Convenience macros for operations on timevals. NOTE: `timercmp' does not work for >= or <=. */ #define timerisset(tvp) ((tvp)->tv_sec || (tvp)->tv_usec) #define timerclear(tvp) ((tvp)->tv_sec = (tvp)->tv_usec = 0) #define timercmp(a, b, CMP) \ (((a)->tv_sec == (b)->tv_sec) ? \ ((a)->tv_usec CMP (b)->tv_usec) : \ ((a)->tv_sec CMP (b)->tv_sec)) #define timeradd(a, b, result) \ do { \ (result)->tv_sec = (a)->tv_sec + (b)->tv_sec; \ (result)->tv_usec = (a)->tv_usec + (b)->tv_usec; \ if ((result)->tv_usec >= 1000000) \ { \ ++(result)->tv_sec; \ (result)->tv_usec -= 1000000; \ } \ } while (0) #define timersub(a, b, result) \ do { \ (result)->tv_sec = (a)->tv_sec - (b)->tv_sec; \ (result)->tv_usec = (a)->tv_usec - (b)->tv_usec; \ if ((result)->tv_usec < 0) { \ --(result)->tv_sec; \ (result)->tv_usec += 1000000; \ } \ } while (0) #endif /* defined (__rtems__) || defined (__CYGWIN__) */ #endif /* !_TIMEVAL_DEFINED */ struct timezone { int tz_minuteswest; int tz_dsttime; }; #ifdef __CYGWIN__ #include #endif /* __CYGWIN__ */ #define ITIMER_REAL 0 #define ITIMER_VIRTUAL 1 #define ITIMER_PROF 2 struct itimerval { struct timeval it_interval; struct timeval it_value; }; #ifdef _COMPILING_NEWLIB int _EXFUN(_gettimeofday, (struct timeval *__p, void *__tz)); #endif int _EXFUN(gettimeofday, (struct timeval *__restrict __p, void *__restrict __tz)); int _EXFUN(settimeofday, (const struct timeval *, const struct timezone *)); int _EXFUN(utimes, (const char *__path, const struct timeval *__tvp)); int _EXFUN(getitimer, (int __which, struct itimerval *__value)); int _EXFUN(setitimer, (int __which, const struct itimerval *__restrict __value, struct itimerval *__restrict __ovalue)); #ifdef __cplusplus } #endif #endif /* _SYS_TIME_H_ */ 0707010000005b000081a40000000000000000000000015edeb89a000002f0000000000000000000000000000000000000002500000000./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 #ifndef __time_t_defined typedef _TIME_T_ time_t; #define __time_t_defined #endif struct timeb { time_t time; unsigned short millitm; short timezone; short dstflag; }; extern int ftime _PARAMS ((struct timeb *)); #ifdef __cplusplus } #endif #endif /* ! defined (_SYS_TIMEB_H) */ 0707010000005c000081a40000000000000000000000015edeb89a0000026b000000000000000000000000000000000000002500000000./usr/nvptx-none/include/sys/times.h#ifndef _SYS_TIMES_H #ifdef __cplusplus extern "C" { #endif #define _SYS_TIMES_H #include <_ansi.h> #include #ifndef __clock_t_defined typedef _CLOCK_T_ clock_t; #define __clock_t_defined #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 _EXFUN(times,(struct tms *)); #ifdef _COMPILING_NEWLIB clock_t _EXFUN(_times,(struct tms *)); #endif #ifdef __cplusplus } #endif #endif /* !_SYS_TIMES_H */ 0707010000005d000081a40000000000000000000000015edeb89a0000383c000000000000000000000000000000000000002500000000./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> #ifndef __INTTYPES_DEFINED__ #define __INTTYPES_DEFINED__ #include #if defined(__rtems__) || defined(__XMK__) /* * The following section is RTEMS specific and is needed to more * closely match the types defined in the BSD sys/types.h. * This is needed to let the RTEMS/BSD TCP/IP stack compile. */ /* deprecated */ #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; /* deprecated */ typedef __uint64_t u_quad_t; typedef __int64_t quad_t; typedef quad_t * qaddr_t; #endif #endif #endif /* ! __INTTYPES_DEFINED */ #ifndef __need_inttypes #define _SYS_TYPES_H #include #ifdef __i386__ #if defined (GO32) || defined (__MSDOS__) #define __MS_types__ #endif #endif # include # include /* To ensure the stat struct's layout doesn't change when sizeof(int), etc. changes, we assume sizeof short and long never change and have all types used to define struct stat use them and not int where possible. Where not possible, _ST_INTxx are used. It would be preferable to not have such assumptions, but until the extra fluff is necessary, it's avoided. No 64 bit targets use stat yet. What to do about them is postponed until necessary. */ #ifdef __GNUC__ #define _ST_INT32 __attribute__ ((__mode__ (__SI__))) #else #define _ST_INT32 #endif # ifndef _POSIX_SOURCE # define physadr physadr_t # define quad quad_t #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 typedef unsigned short ushort; /* System V compatibility */ typedef unsigned int uint; /* System V compatibility */ typedef unsigned long ulong; /* System V compatibility */ # endif /*!_POSIX_SOURCE */ #ifndef __clock_t_defined typedef _CLOCK_T_ clock_t; #define __clock_t_defined #endif #ifndef __time_t_defined typedef _TIME_T_ time_t; #define __time_t_defined #endif #ifndef __timespec_defined #define __timespec_defined /* Time Value Specification Structures, P1003.1b-1993, p. 261 */ struct timespec { time_t tv_sec; /* Seconds */ long tv_nsec; /* Nanoseconds */ }; #endif struct itimerspec { struct timespec it_interval; /* Timer period */ struct timespec it_value; /* Timer expiration */ }; #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 __CYGWIN__ #if defined(__MS_types__) || defined(__rtems__) || \ defined(__sparc__) || defined(__SPU__) typedef unsigned long ino_t; #else typedef unsigned short ino_t; #endif #endif /*__CYGWIN__*/ #ifdef __MS_types__ typedef unsigned long vm_offset_t; typedef unsigned long vm_size_t; #define __BIT_TYPES_DEFINED__ typedef signed char int8_t; typedef unsigned char u_int8_t; typedef short int16_t; typedef unsigned short u_int16_t; typedef int int32_t; typedef unsigned int u_int32_t; typedef long long int64_t; typedef unsigned long long u_int64_t; typedef int32_t register_t; #endif /* __MS_types__ */ /* * 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 __CYGWIN__ /* which defines these types in it's own types.h. */ typedef _off_t off_t; typedef __dev_t dev_t; typedef __uid_t uid_t; typedef __gid_t gid_t; #endif #if defined(__XMK__) typedef signed char pid_t; #else typedef int pid_t; #endif #if defined(__rtems__) typedef _mode_t mode_t; #endif #ifndef __CYGWIN__ typedef long key_t; #endif typedef _ssize_t ssize_t; #if !defined(__CYGWIN__) && !defined(__rtems__) #ifdef __MS_types__ typedef char * addr_t; 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 unsigned int mode_t _ST_INT32; #endif #endif /* ! __MS_types__ */ #endif /*__CYGWIN__*/ typedef unsigned short nlink_t; /* 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 cygwin32 select function. */ # if !(defined (_POSIX_SOURCE) || defined (_WINSOCK_H) || defined (_WINSOCKAPI_) || defined (__USE_W32_SOCKETS)) # define _SYS_TYPES_FD_SET # define NBBY 8 /* number of bits in a byte */ /* * 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 long fd_mask; # define NFDBITS (sizeof (fd_mask) * NBBY) /* bits per mask */ # ifndef howmany # define howmany(x,y) (((x)+((y)-1))/(y)) # endif /* We use a macro for fd_set so that including Sockets.h afterwards can work. */ typedef struct _types_fd_set { fd_mask fds_bits[howmany(FD_SETSIZE, NFDBITS)]; } _types_fd_set; #define fd_set _types_fd_set # define FD_SET(n, p) ((p)->fds_bits[(n)/NFDBITS] |= (1L << ((n) % NFDBITS))) # define FD_CLR(n, p) ((p)->fds_bits[(n)/NFDBITS] &= ~(1L << ((n) % NFDBITS))) # define FD_ISSET(n, p) ((p)->fds_bits[(n)/NFDBITS] & (1L << ((n) % NFDBITS))) # define FD_ZERO(p) (__extension__ (void)({ \ size_t __i; \ char *__tmp = (char *)p; \ for (__i = 0; __i < sizeof (*(p)); ++__i) \ *__tmp++ = 0; \ })) # endif /* !(defined (_POSIX_SOURCE) || defined (_WINSOCK_H) || defined (_WINSOCKAPI_) || defined (__USE_W32_SOCKETS)) */ #undef __MS_types__ #undef _ST_INT32 #ifndef __clockid_t_defined typedef _CLOCKID_T_ clockid_t; #define __clockid_t_defined #endif #ifndef __timer_t_defined typedef _TIMER_T_ timer_t; #define __timer_t_defined #endif typedef unsigned long useconds_t; typedef long suseconds_t; #include /* Cygwin will probably never have full posix compliance due to little things * like an inability to set the stackaddress. Cygwin is also using void * * pointers rather than structs to ensure maximum binary compatability with * previous releases. * This means that we don't use the types defined here, but rather in * */ #if defined(_POSIX_THREADS) && !defined(__CYGWIN__) #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(__rtems__) #include #endif #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; #if defined(__rtems__) size_t guardsize; #endif /* 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; #if defined(__rtems__) size_t affinitysetsize; cpu_set_t *affinityset; cpu_set_t affinitysetpreallocated; #endif } 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__) */ /* Condition Variables */ typedef __uint32_t pthread_cond_t; /* identify a condition variable */ typedef struct { int is_initialized; #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 */ #else #if defined (__CYGWIN__) #include #endif #endif /* defined(_POSIX_THREADS) */ /* 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 (__CYGWIN__) #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 */ 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 /* __CYGWIN__ */ #endif /* !__need_inttypes */ #undef __need_inttypes #endif /* _SYS_TYPES_H */ 0707010000005e000081a40000000000000000000000015edeb89a000052ec000000000000000000000000000000000000002600000000./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 _EXFUN(_exit, (int __status ) _ATTRIBUTE ((noreturn))); int _EXFUN(access,(const char *__path, int __amode )); unsigned _EXFUN(alarm, (unsigned __secs )); int _EXFUN(chdir, (const char *__path )); int _EXFUN(chmod, (const char *__path, mode_t __mode )); #if !defined(__INSIDE_CYGWIN__) int _EXFUN(chown, (const char *__path, uid_t __owner, gid_t __group )); #endif #if defined(__CYGWIN__) || defined(__rtems__) int _EXFUN(chroot, (const char *__path )); #endif int _EXFUN(close, (int __fildes )); #if defined(__CYGWIN__) size_t _EXFUN(confstr, (int __name, char *__buf, size_t __len)); #endif char * _EXFUN(ctermid, (char *__s )); char * _EXFUN(cuserid, (char *__s )); #if defined(__CYGWIN__) int _EXFUN(daemon, (int nochdir, int noclose)); #endif int _EXFUN(dup, (int __fildes )); int _EXFUN(dup2, (int __fildes, int __fildes2 )); #if defined(__CYGWIN__) int _EXFUN(dup3, (int __fildes, int __fildes2, int flags)); int _EXFUN(eaccess, (const char *__path, int __mode)); void _EXFUN(endusershell, (void)); int _EXFUN(euidaccess, (const char *__path, int __mode)); #endif int _EXFUN(execl, (const char *__path, const char *, ... )); int _EXFUN(execle, (const char *__path, const char *, ... )); int _EXFUN(execlp, (const char *__file, const char *, ... )); #if defined(__CYGWIN__) int _EXFUN(execlpe, (const char *__file, const char *, ... )); #endif int _EXFUN(execv, (const char *__path, char * const __argv[] )); int _EXFUN(execve, (const char *__path, char * const __argv[], char * const __envp[] )); int _EXFUN(execvp, (const char *__file, char * const __argv[] )); #if defined(__CYGWIN__) int _EXFUN(execvpe, (const char *__file, char * const __argv[], char * const __envp[] )); #endif #if __POSIX_VISIBLE >= 200809 || __BSD_VISIBLE || defined(__CYGWIN__) int _EXFUN(faccessat, (int __dirfd, const char *__path, int __mode, int __flags)); #endif #if defined(__CYGWIN__) || defined(__rtems__) || defined(__SPU__) int _EXFUN(fchdir, (int __fildes)); #endif int _EXFUN(fchmod, (int __fildes, mode_t __mode )); #if !defined(__INSIDE_CYGWIN__) int _EXFUN(fchown, (int __fildes, uid_t __owner, gid_t __group )); #endif #if __POSIX_VISIBLE >= 200809 || __BSD_VISIBLE || defined(__CYGWIN__) int _EXFUN(fchownat, (int __dirfd, const char *__path, uid_t __owner, gid_t __group, int __flags)); #endif #if defined(__CYGWIN__) int _EXFUN(fexecve, (int __fd, char * const __argv[], char * const __envp[] )); #endif pid_t _EXFUN(fork, (void )); long _EXFUN(fpathconf, (int __fd, int __name )); int _EXFUN(fsync, (int __fd)); int _EXFUN(fdatasync, (int __fd)); #if defined(__CYGWIN__) char * _EXFUN(get_current_dir_name, (void)); #endif char * _EXFUN(getcwd, (char *__buf, size_t __size )); #if defined(__CYGWIN__) int _EXFUN(getdomainname ,(char *__name, size_t __len)); #endif #if !defined(__INSIDE_CYGWIN__) gid_t _EXFUN(getegid, (void )); uid_t _EXFUN(geteuid, (void )); gid_t _EXFUN(getgid, (void )); #endif int _EXFUN(getgroups, (int __gidsetsize, gid_t __grouplist[] )); #if defined(__CYGWIN__) long _EXFUN(gethostid, (void)); #endif char * _EXFUN(getlogin, (void )); #if defined(_POSIX_THREAD_SAFE_FUNCTIONS) int _EXFUN(getlogin_r, (char *name, size_t namesize) ); #endif char * _EXFUN(getpass, (const char *__prompt)); int _EXFUN(getpagesize, (void)); #if defined(__CYGWIN__) int _EXFUN(getpeereid, (int, uid_t *, gid_t *)); #endif pid_t _EXFUN(getpgid, (pid_t)); pid_t _EXFUN(getpgrp, (void )); pid_t _EXFUN(getpid, (void )); pid_t _EXFUN(getppid, (void )); #if defined(__CYGWIN__) || defined(__rtems__) pid_t _EXFUN(getsid, (pid_t)); #endif #if !defined(__INSIDE_CYGWIN__) uid_t _EXFUN(getuid, (void )); #endif #ifdef __CYGWIN__ char * _EXFUN(getusershell, (void)); char * _EXFUN(getwd, (char *__buf )); int _EXFUN(iruserok, (unsigned long raddr, int superuser, const char *ruser, const char *luser)); #endif int _EXFUN(isatty, (int __fildes )); #if !defined(__INSIDE_CYGWIN__) int _EXFUN(lchown, (const char *__path, uid_t __owner, gid_t __group )); #endif int _EXFUN(link, (const char *__path1, const char *__path2 )); #if __POSIX_VISIBLE >= 200809 || __BSD_VISIBLE || defined(__CYGWIN__) int _EXFUN(linkat, (int __dirfd1, const char *__path1, int __dirfd2, const char *__path2, int __flags )); #endif int _EXFUN(nice, (int __nice_value )); #if !defined(__INSIDE_CYGWIN__) off_t _EXFUN(lseek, (int __fildes, off_t __offset, int __whence )); #endif #if defined(__SPU__) || defined(__CYGWIN__) #define F_ULOCK 0 #define F_LOCK 1 #define F_TLOCK 2 #define F_TEST 3 int _EXFUN(lockf, (int __fd, int __cmd, off_t __len)); #endif long _EXFUN(pathconf, (const char *__path, int __name )); int _EXFUN(pause, (void )); #ifdef __CYGWIN__ int _EXFUN(pthread_atfork, (void (*)(void), void (*)(void), void (*)(void))); #endif int _EXFUN(pipe, (int __fildes[2] )); #ifdef __CYGWIN__ int _EXFUN(pipe2, (int __fildes[2], int flags)); #endif ssize_t _EXFUN(pread, (int __fd, void *__buf, size_t __nbytes, off_t __offset)); ssize_t _EXFUN(pwrite, (int __fd, const void *__buf, size_t __nbytes, off_t __offset)); _READ_WRITE_RETURN_TYPE _EXFUN(read, (int __fd, void *__buf, size_t __nbyte )); #if defined(__CYGWIN__) int _EXFUN(rresvport, (int *__alport)); int _EXFUN(revoke, (char *__path)); #endif int _EXFUN(rmdir, (const char *__path )); #if defined(__CYGWIN__) int _EXFUN(ruserok, (const char *rhost, int superuser, const char *ruser, const char *luser)); #endif void * _EXFUN(sbrk, (ptrdiff_t __incr)); #if !defined(__INSIDE_CYGWIN__) #if defined(__CYGWIN__) || defined(__rtems__) int _EXFUN(setegid, (gid_t __gid )); int _EXFUN(seteuid, (uid_t __uid )); #endif int _EXFUN(setgid, (gid_t __gid )); #endif #if defined(__CYGWIN__) int _EXFUN(setgroups, (int ngroups, const gid_t *grouplist )); #endif int _EXFUN(setpgid, (pid_t __pid, pid_t __pgid )); int _EXFUN(setpgrp, (void )); #if defined(__CYGWIN__) && !defined(__INSIDE_CYGWIN__) int _EXFUN(setregid, (gid_t __rgid, gid_t __egid)); int _EXFUN(setreuid, (uid_t __ruid, uid_t __euid)); #endif pid_t _EXFUN(setsid, (void )); #if !defined(__INSIDE_CYGWIN__) int _EXFUN(setuid, (uid_t __uid )); #endif #if defined(__CYGWIN__) void _EXFUN(setusershell, (void)); #endif unsigned _EXFUN(sleep, (unsigned int __seconds )); void _EXFUN(swab, (const void *__restrict, void *__restrict, ssize_t)); long _EXFUN(sysconf, (int __name )); pid_t _EXFUN(tcgetpgrp, (int __fildes )); int _EXFUN(tcsetpgrp, (int __fildes, pid_t __pgrp_id )); char * _EXFUN(ttyname, (int __fildes )); #if defined(__CYGWIN__) || defined(__rtems__) int _EXFUN(ttyname_r, (int, char *, size_t)); #endif int _EXFUN(unlink, (const char *__path )); int _EXFUN(usleep, (useconds_t __useconds)); int _EXFUN(vhangup, (void )); _READ_WRITE_RETURN_TYPE _EXFUN(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 #ifndef _POSIX_SOURCE pid_t _EXFUN(vfork, (void )); #endif /* _POSIX_SOURCE */ #ifdef _COMPILING_NEWLIB /* Provide prototypes for most of the _ names that are provided in newlib for some compilers. */ int _EXFUN(_close, (int __fildes )); pid_t _EXFUN(_fork, (void )); pid_t _EXFUN(_getpid, (void )); int _EXFUN(_isatty, (int __fildes )); int _EXFUN(_link, (const char *__path1, const char *__path2 )); _off_t _EXFUN(_lseek, (int __fildes, _off_t __offset, int __whence )); #ifdef __LARGE64_FILES _off64_t _EXFUN(_lseek64, (int __filedes, _off64_t __offset, int __whence )); #endif _READ_WRITE_RETURN_TYPE _EXFUN(_read, (int __fd, void *__buf, size_t __nbyte )); void * _EXFUN(_sbrk, (ptrdiff_t __incr)); int _EXFUN(_unlink, (const char *__path )); _READ_WRITE_RETURN_TYPE _EXFUN(_write, (int __fd, const void *__buf, size_t __nbyte )); int _EXFUN(_execve, (const char *__path, char * const __argv[], char * const __envp[] )); #endif #if defined(__CYGWIN__) || defined(__rtems__) || defined(__aarch64__) || defined (__arm__) || defined(__sh__) || defined(__SPU__) #if !defined(__INSIDE_CYGWIN__) int _EXFUN(ftruncate, (int __fd, off_t __length)); int _EXFUN(truncate, (const char *, off_t __length)); #endif #endif #if defined(__CYGWIN__) || defined(__rtems__) int _EXFUN(getdtablesize, (void)); int _EXFUN(setdtablesize, (int)); useconds_t _EXFUN(ualarm, (useconds_t __useconds, useconds_t __interval)); #if !(defined (_WINSOCK_H) || defined (_WINSOCKAPI_) || defined (__USE_W32_SOCKETS)) /* winsock[2].h defines as __stdcall, and with int as 2nd arg */ int _EXFUN(gethostname, (char *__name, size_t __len)); #endif char * _EXFUN(mktemp, (char *)); #endif #if defined(__CYGWIN__) || defined(__SPU__) || defined(__rtems__) void _EXFUN(sync, (void)); #endif ssize_t _EXFUN(readlink, (const char *__restrict __path, char *__restrict __buf, size_t __buflen)); #if __POSIX_VISIBLE >= 200809 || __BSD_VISIBLE || defined(__CYGWIN__) ssize_t _EXFUN(readlinkat, (int __dirfd1, const char *__restrict __path, char *__restrict __buf, size_t __buflen)); #endif int _EXFUN(symlink, (const char *__name1, const char *__name2)); #if __POSIX_VISIBLE >= 200809 || __BSD_VISIBLE || defined(__CYGWIN__) int _EXFUN(symlinkat, (const char *, int, const char *)); int _EXFUN(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 /* * 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 #endif /* * confstr values per IEEE Std 1003.1, 2004 Edition */ #ifdef __CYGWIN__ /* Only defined on Cygwin for now. */ #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 #endif #ifdef __cplusplus } #endif #endif /* _SYS_UNISTD_H */ 0707010000005f000081a40000000000000000000000015edeb89a0000016b000000000000000000000000000000000000002500000000./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 */ 07070100000060000081a40000000000000000000000015edeb89a000003df000000000000000000000000000000000000002400000000./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: <2 bytes info> <2 bytes 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 07070100000061000081a40000000000000000000000015edeb89a0000051d000000000000000000000000000000000000001f00000000./usr/nvptx-none/include/tar.h/* * tar.h */ #ifndef _TAR_H #define _TAR_H /* 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. */ #define TSVTX 01000 /* On directories, restricted deletion flag. */ #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 07070100000062000081a40000000000000000000000015edeb89a0000005c000000000000000000000000000000000000002300000000./usr/nvptx-none/include/termios.h#ifdef __cplusplus extern "C" { #endif #include #ifdef __cplusplus } #endif 07070100000063000081a40000000000000000000000015edeb89a00001fa4000000000000000000000000000000000000002200000000./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))) #ifdef _LDBL_EQ_DBL #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 #define nexttoward(__x, __y) __tg_simplev(__x, nexttoward, __x, __y) */ #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_ */ 07070100000064000081a40000000000000000000000015edeb89a00001c23000000000000000000000000000000000000002000000000./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 #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 _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 _EXFUN(clock, (void)); double _EXFUN(difftime, (time_t _time2, time_t _time1)); time_t _EXFUN(mktime, (struct tm *_timeptr)); time_t _EXFUN(time, (time_t *_timer)); #ifndef _REENT_ONLY char *_EXFUN(asctime, (const struct tm *_tblock)); char *_EXFUN(ctime, (const time_t *_time)); struct tm *_EXFUN(gmtime, (const time_t *_timer)); struct tm *_EXFUN(localtime,(const time_t *_timer)); #endif size_t _EXFUN(strftime, (char *__restrict _s, size_t _maxsize, const char *__restrict _fmt, const struct tm *__restrict _t)); char *_EXFUN(asctime_r, (const struct tm *__restrict, char *__restrict)); char *_EXFUN(ctime_r, (const time_t *, char *)); struct tm *_EXFUN(gmtime_r, (const time_t *__restrict, struct tm *__restrict)); struct tm *_EXFUN(localtime_r, (const time_t *__restrict, struct tm *__restrict)); _END_STD_C #ifdef __cplusplus extern "C" { #endif #ifndef __STRICT_ANSI__ char *_EXFUN(strptime, (const char *__restrict, const char *__restrict, struct tm *__restrict)); _VOID _EXFUN(tzset, (_VOID)); _VOID _EXFUN(_tzset_r, (struct _reent *)); typedef struct __tzrule_struct { char ch; int m; int n; int d; int s; 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 *_EXFUN (__gettzinfo, (_VOID)); /* getdate functions */ #ifdef HAVE_GETDATE #ifndef _REENT_ONLY #define getdate_err (*__getdate_err()) int *_EXFUN(__getdate_err,(_VOID)); struct tm * _EXFUN(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 */ /* getdate_r returns the error code as above */ int _EXFUN(getdate_r, (const char *, struct tm *)); #endif /* HAVE_GETDATE */ /* defines for the opengroup specifications Derived from Issue 1 of the SVID. */ extern __IMPORT long _timezone; extern __IMPORT int _daylight; extern __IMPORT char *_tzname[2]; /* POSIX defines the external tzname being defined in time.h */ #ifndef tzname #define tzname _tzname #endif #endif /* !__STRICT_ANSI__ */ #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 _EXFUN(clock_settime, (clockid_t clock_id, const struct timespec *tp)); int _EXFUN(clock_gettime, (clockid_t clock_id, struct timespec *tp)); int _EXFUN(clock_getres, (clockid_t clock_id, struct timespec *res)); /* Create a Per-Process Timer, P1003.1b-1993, p. 264 */ int _EXFUN(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 _EXFUN(timer_delete, (timer_t timerid)); /* Per-Process Timers, P1003.1b-1993, p. 267 */ int _EXFUN(timer_settime, (timer_t timerid, int flags, const struct itimerspec *__restrict value, struct itimerspec *__restrict ovalue)); int _EXFUN(timer_gettime, (timer_t timerid, struct itimerspec *value)); int _EXFUN(timer_getoverrun, (timer_t timerid)); /* High Resolution Sleep, P1003.1b-1993, p. 269 */ int _EXFUN(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 _EXFUN(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. */ /* Manifest Constants, P1003.1b-1993, p. 262 */ #define CLOCK_REALTIME (clockid_t)1 /* Flag indicating time is "absolute" with respect to the clock associated with a time. */ #define TIMER_ABSTIME 4 /* 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 defined(_POSIX_CPUTIME) /* Accessing a Process CPU-time CLock, P1003.4b/D8, p. 55 */ int _EXFUN(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 _EXFUN(clock_setenable_attr, (clockid_t clock_id, int attr)); int _EXFUN(clock_getenable_attr, (clockid_t clock_id, int *attr)); #endif /* _POSIX_CPUTIME or _POSIX_THREAD_CPUTIME */ #ifdef __cplusplus } #endif #endif /* _TIME_H_ */ 07070100000065000081a40000000000000000000000015edeb89a00000882000000000000000000000000000000000000002200000000./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. All advertising materials mentioning features or use of this software * must display the following acknowledgement: * This product includes software developed by the University of * California, Berkeley and its contributors. * 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. */ #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_ */ 07070100000066000081a40000000000000000000000015edeb89a00000059000000000000000000000000000000000000002200000000./usr/nvptx-none/include/unistd.h#ifndef _UNISTD_H_ #define _UNISTD_H_ # include #endif /* _UNISTD_H_ */ 07070100000067000081a40000000000000000000000015edeb89a000000b9000000000000000000000000000000000000002100000000./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 07070100000068000081a40000000000000000000000015edeb89a0000005a000000000000000000000000000000000000002000000000./usr/nvptx-none/include/utmp.h#ifdef __cplusplus extern "C" { #endif #include #ifdef __cplusplus } #endif 07070100000069000081a40000000000000000000000015edeb89a000024ae000000000000000000000000000000000000002100000000./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 #define __need___va_list #include /* For _mbstate_t definition. */ #include /* For __STDC_ISO_10646__ */ #include #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 _BEGIN_STD_C /* As in stdio.h, defines __FILE. */ typedef __FILE FILE; /* 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 _EXFUN(btowc, (int)); int _EXFUN(wctob, (wint_t)); size_t _EXFUN(mbrlen, (const char *__restrict, size_t, mbstate_t *__restrict)); size_t _EXFUN(mbrtowc, (wchar_t *__restrict, const char *__restrict, size_t, mbstate_t *__restrict)); size_t _EXFUN(_mbrtowc_r, (struct _reent *, wchar_t * , const char * , size_t, mbstate_t *)); int _EXFUN(mbsinit, (const mbstate_t *)); size_t _EXFUN(mbsnrtowcs, (wchar_t *__restrict, const char **__restrict, size_t, size_t, mbstate_t *__restrict)); size_t _EXFUN(_mbsnrtowcs_r, (struct _reent *, wchar_t * , const char ** , size_t, size_t, mbstate_t *)); size_t _EXFUN(mbsrtowcs, (wchar_t *__restrict, const char **__restrict, size_t, mbstate_t *__restrict)); size_t _EXFUN(_mbsrtowcs_r, (struct _reent *, wchar_t * , const char ** , size_t, mbstate_t *)); size_t _EXFUN(wcrtomb, (char *__restrict, wchar_t, mbstate_t *__restrict)); size_t _EXFUN(_wcrtomb_r, (struct _reent *, char * , wchar_t, mbstate_t *)); size_t _EXFUN(wcsnrtombs, (char *__restrict, const wchar_t **__restrict, size_t, size_t, mbstate_t *__restrict)); size_t _EXFUN(_wcsnrtombs_r, (struct _reent *, char * , const wchar_t ** , size_t, size_t, mbstate_t *)); size_t _EXFUN(wcsrtombs, (char *__restrict, const wchar_t **__restrict, size_t, mbstate_t *__restrict)); size_t _EXFUN(_wcsrtombs_r, (struct _reent *, char * , const wchar_t ** , size_t, mbstate_t *)); int _EXFUN(wcscasecmp, (const wchar_t *, const wchar_t *)); wchar_t *_EXFUN(wcscat, (wchar_t *__restrict, const wchar_t *__restrict)); wchar_t *_EXFUN(wcschr, (const wchar_t *, wchar_t)); int _EXFUN(wcscmp, (const wchar_t *, const wchar_t *)); int _EXFUN(wcscoll, (const wchar_t *, const wchar_t *)); wchar_t *_EXFUN(wcscpy, (wchar_t *__restrict, const wchar_t *__restrict)); wchar_t *_EXFUN(wcpcpy, (wchar_t *__restrict, const wchar_t *__restrict)); wchar_t *_EXFUN(wcsdup, (const wchar_t *)); wchar_t *_EXFUN(_wcsdup_r, (struct _reent *, const wchar_t * )); size_t _EXFUN(wcscspn, (const wchar_t *, const wchar_t *)); size_t _EXFUN(wcsftime, (wchar_t *__restrict, size_t, const wchar_t *__restrict, const struct tm *__restrict)); size_t _EXFUN(wcslcat, (wchar_t *, const wchar_t *, size_t)); size_t _EXFUN(wcslcpy, (wchar_t *, const wchar_t *, size_t)); size_t _EXFUN(wcslen, (const wchar_t *)); int _EXFUN(wcsncasecmp, (const wchar_t *, const wchar_t *, size_t)); wchar_t *_EXFUN(wcsncat, (wchar_t *__restrict, const wchar_t *__restrict, size_t)); int _EXFUN(wcsncmp, (const wchar_t *, const wchar_t *, size_t)); wchar_t *_EXFUN(wcsncpy, (wchar_t *__restrict, const wchar_t *__restrict, size_t)); wchar_t *_EXFUN(wcpncpy, (wchar_t *__restrict, const wchar_t *__restrict, size_t)); size_t _EXFUN(wcsnlen, (const wchar_t *, size_t)); wchar_t *_EXFUN(wcspbrk, (const wchar_t *, const wchar_t *)); wchar_t *_EXFUN(wcsrchr, (const wchar_t *, wchar_t)); size_t _EXFUN(wcsspn, (const wchar_t *, const wchar_t *)); wchar_t *_EXFUN(wcsstr, (const wchar_t *__restrict, const wchar_t *__restrict)); wchar_t *_EXFUN(wcstok, (wchar_t *__restrict, const wchar_t *__restrict, wchar_t **__restrict)); double _EXFUN(wcstod, (const wchar_t *__restrict, wchar_t **__restrict)); double _EXFUN(_wcstod_r, (struct _reent *, const wchar_t *, wchar_t **)); float _EXFUN(wcstof, (const wchar_t *__restrict, wchar_t **__restrict)); float _EXFUN(_wcstof_r, (struct _reent *, const wchar_t *, wchar_t **)); int _EXFUN(wcswidth, (const wchar_t *, size_t)); size_t _EXFUN(wcsxfrm, (wchar_t *__restrict, const wchar_t *__restrict, size_t)); int _EXFUN(wcwidth, (const wchar_t)); wchar_t *_EXFUN(wmemchr, (const wchar_t *, wchar_t, size_t)); int _EXFUN(wmemcmp, (const wchar_t *, const wchar_t *, size_t)); wchar_t *_EXFUN(wmemcpy, (wchar_t *__restrict, const wchar_t *__restrict, size_t)); wchar_t *_EXFUN(wmemmove, (wchar_t *, const wchar_t *, size_t)); wchar_t *_EXFUN(wmemset, (wchar_t *, wchar_t, size_t)); long _EXFUN(wcstol, (const wchar_t *__restrict, wchar_t **__restrict, int)); long long _EXFUN(wcstoll, (const wchar_t *__restrict, wchar_t **__restrict, int)); unsigned long _EXFUN(wcstoul, (const wchar_t *__restrict, wchar_t **__restrict, int)); unsigned long long _EXFUN(wcstoull, (const wchar_t *__restrict, wchar_t **__restrict, int)); long _EXFUN(_wcstol_r, (struct _reent *, const wchar_t *, wchar_t **, int)); long long _EXFUN(_wcstoll_r, (struct _reent *, const wchar_t *, wchar_t **, int)); unsigned long _EXFUN(_wcstoul_r, (struct _reent *, const wchar_t *, wchar_t **, int)); unsigned long long _EXFUN(_wcstoull_r, (struct _reent *, const wchar_t *, wchar_t **, int)); /* On platforms where long double equals double. */ #ifdef _LDBL_EQ_DBL long double _EXFUN(wcstold, (const wchar_t *, wchar_t **)); #endif /* _LDBL_EQ_DBL */ wint_t _EXFUN(fgetwc, (__FILE *)); wchar_t *_EXFUN(fgetws, (wchar_t *__restrict, int, __FILE *__restrict)); wint_t _EXFUN(fputwc, (wchar_t, __FILE *)); int _EXFUN(fputws, (const wchar_t *__restrict, __FILE *__restrict)); int _EXFUN (fwide, (__FILE *, int)); wint_t _EXFUN (getwc, (__FILE *)); wint_t _EXFUN (getwchar, (void)); wint_t _EXFUN(putwc, (wchar_t, __FILE *)); wint_t _EXFUN(putwchar, (wchar_t)); wint_t _EXFUN (ungetwc, (wint_t wc, __FILE *)); wint_t _EXFUN(_fgetwc_r, (struct _reent *, __FILE *)); wchar_t *_EXFUN(_fgetws_r, (struct _reent *, wchar_t *, int, __FILE *)); wint_t _EXFUN(_fputwc_r, (struct _reent *, wchar_t, __FILE *)); int _EXFUN(_fputws_r, (struct _reent *, const wchar_t *, __FILE *)); int _EXFUN (_fwide_r, (struct _reent *, __FILE *, int)); wint_t _EXFUN (_getwc_r, (struct _reent *, __FILE *)); wint_t _EXFUN (_getwchar_r, (struct _reent *ptr)); wint_t _EXFUN(_putwc_r, (struct _reent *, wchar_t, __FILE *)); wint_t _EXFUN(_putwchar_r, (struct _reent *, wchar_t)); wint_t _EXFUN (_ungetwc_r, (struct _reent *, wint_t wc, __FILE *)); __FILE *_EXFUN (open_wmemstream, (wchar_t **, size_t *)); __FILE *_EXFUN (_open_wmemstream_r, (struct _reent *, wchar_t **, size_t *)); #ifndef __VALIST #ifdef __GNUC__ #define __VALIST __gnuc_va_list #else #define __VALIST char* #endif #endif int _EXFUN(fwprintf, (__FILE *__restrict, const wchar_t *__restrict, ...)); int _EXFUN(swprintf, (wchar_t *__restrict, size_t, const wchar_t *__restrict, ...)); int _EXFUN(vfwprintf, (__FILE *__restrict, const wchar_t *__restrict, __VALIST)); int _EXFUN(vswprintf, (wchar_t *__restrict, size_t, const wchar_t *__restrict, __VALIST)); int _EXFUN(vwprintf, (const wchar_t *__restrict, __VALIST)); int _EXFUN(wprintf, (const wchar_t *__restrict, ...)); int _EXFUN(_fwprintf_r, (struct _reent *, __FILE *, const wchar_t *, ...)); int _EXFUN(_swprintf_r, (struct _reent *, wchar_t *, size_t, const wchar_t *, ...)); int _EXFUN(_vfwprintf_r, (struct _reent *, __FILE *, const wchar_t *, __VALIST)); int _EXFUN(_vswprintf_r, (struct _reent *, wchar_t *, size_t, const wchar_t *, __VALIST)); int _EXFUN(_vwprintf_r, (struct _reent *, const wchar_t *, __VALIST)); int _EXFUN(_wprintf_r, (struct _reent *, const wchar_t *, ...)); int _EXFUN(fwscanf, (__FILE *__restrict, const wchar_t *__restrict, ...)); int _EXFUN(swscanf, (const wchar_t *__restrict, const wchar_t *__restrict, ...)); int _EXFUN(vfwscanf, (__FILE *__restrict, const wchar_t *__restrict, __VALIST)); int _EXFUN(vswscanf, (const wchar_t *__restrict, const wchar_t *__restrict, __VALIST)); int _EXFUN(vwscanf, (const wchar_t *__restrict, __VALIST)); int _EXFUN(wscanf, (const wchar_t *__restrict, ...)); int _EXFUN(_fwscanf_r, (struct _reent *, __FILE *, const wchar_t *, ...)); int _EXFUN(_swscanf_r, (struct _reent *, const wchar_t *, const wchar_t *, ...)); int _EXFUN(_vfwscanf_r, (struct _reent *, __FILE *, const wchar_t *, __VALIST)); int _EXFUN(_vswscanf_r, (struct _reent *, const wchar_t *, const wchar_t *, __VALIST)); int _EXFUN(_vwscanf_r, (struct _reent *, const wchar_t *, __VALIST)); int _EXFUN(_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) _END_STD_C #endif /* _WCHAR_H_ */ 0707010000006a000081a40000000000000000000000015edeb89a000003dc000000000000000000000000000000000000002200000000./usr/nvptx-none/include/wctype.h#ifndef _WCTYPE_H_ #define _WCTYPE_H_ #include <_ansi.h> #include #define __need_wint_t #include #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 _EXFUN(iswalpha, (wint_t)); int _EXFUN(iswalnum, (wint_t)); int _EXFUN(iswblank, (wint_t)); int _EXFUN(iswcntrl, (wint_t)); int _EXFUN(iswctype, (wint_t, wctype_t)); int _EXFUN(iswdigit, (wint_t)); int _EXFUN(iswgraph, (wint_t)); int _EXFUN(iswlower, (wint_t)); int _EXFUN(iswprint, (wint_t)); int _EXFUN(iswpunct, (wint_t)); int _EXFUN(iswspace, (wint_t)); int _EXFUN(iswupper, (wint_t)); int _EXFUN(iswxdigit, (wint_t)); wint_t _EXFUN(towctrans, (wint_t, wctrans_t)); wint_t _EXFUN(towupper, (wint_t)); wint_t _EXFUN(towlower, (wint_t)); wctrans_t _EXFUN(wctrans, (const char *)); wctype_t _EXFUN(wctype, (const char *)); _END_STD_C #endif /* _WCTYPE_H_ */ 0707010000006b000081a40000000000000000000000015edeb89a000005f6000000000000000000000000000000000000002300000000./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_ */ 0707010000006c000041ed0000000000000000000000015edeb89900000000000000000000000000000000000000000000001500000000./usr/nvptx-none/lib0707010000006f000081a40000000000000000000000015edeb8990012f486000000000000000000000000000000000000001c00000000./usr/nvptx-none/lib/libm.a! // 1760 ` lib_a-cephes_subr.o/ lib_a-cephes_subrf.o/ lib_a-copysignl.o/ lib_a-e_rem_pio2.o/ lib_a-e_remainder.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-er_gamma.o/ lib_a-er_lgamma.o/ lib_a-erf_gamma.o/ lib_a-erf_lgamma.o/ lib_a-k_rem_pio2.o/ lib_a-k_standard.o/ lib_a-kf_rem_pio2.o/ lib_a-llroundl.o/ lib_a-nearbyintl.o/ lib_a-nextafterl.o/ lib_a-remainderl.o/ lib_a-s_copysign.o/ lib_a-s_finite.o/ lib_a-s_fpclassify.o/ lib_a-s_infconst.o/ lib_a-s_infinity.o/ lib_a-s_isinfd.o/ lib_a-s_isnand.o/ lib_a-s_lib_ver.o/ lib_a-s_llrint.o/ lib_a-s_llround.o/ lib_a-s_lround.o/ lib_a-s_matherr.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_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_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_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-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/ 1591654539 399 399 100644 801 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654539 399 399 100644 793 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654539 399 399 100644 801 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654539 399 399 100644 793 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654539 399 399 100644 1008 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654539 399 399 100644 801 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654539 399 399 100644 793 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654539 399 399 100644 1706 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 52 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 53 1 mov.f64 %value,%r35; st.param.f64 [%value_out],%value; ret; } lib_a-cabsf.o/ 1591654539 399 399 100644 1720 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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-cacos.o/ 1591654539 399 399 100644 2224 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .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; .reg .f64 %r47; 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 %r45,%r41,0d8000000000000000,%r43; .loc 1 98 9 st.f64 [%r30],%r45; .loc 1 96 4 mov.f64 %r47,0d0000000000000000; sub.f64 %r46,%r47,%r41; .loc 1 98 9 st.f64 [%r30+8],%r46; .loc 1 99 1 ret; } lib_a-cacosf.o/ 1591654539 399 399 100644 2157 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %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; .reg .f32 %r45; 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 %r45,%r42,0f00000000,%r43; .loc 1 45 9 st.f32 [%r30],%r45; st.f32 [%r30+4],%r42; .loc 1 46 1 ret; } lib_a-cacosh.o/ 1591654539 399 399 100644 2758 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r32; .reg .f64 %r33; .reg .f64 %r36; .reg .f64 %r37; .reg .u64 %r50; .reg .f64 %r51; .reg .f64 %r52; .reg .f64 %r59; .reg .f64 %r69; .reg .f64 %r70; .reg .f64 %r82; .reg .f64 %r85; mov.u64 %r50,%ar0; mov.f64 %r51,%ar1; mov.f64 %r52,%ar2; .loc 1 90 15 add.f64 %r59,%r51,0d3ff0000000000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r59; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r52; call csqrt,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r25,[%frame]; ld.f64 %r26,[%frame+8]; .loc 1 90 30 mov.f64 %r70,0d3ff0000000000000; sub.f64 %r69,%r51,%r70; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r69; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r52; call csqrt,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r30,[%frame]; ld.f64 %r31,[%frame+8]; .loc 1 90 28 { .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 %r32,[%frame]; ld.f64 %r33,[%frame+8]; .loc 1 90 6 add.f64 %r82,%r33,%r52; add.f64 %r85,%r32,%r51; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r85; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r82; call clog,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r36,[%frame]; ld.f64 %r37,[%frame+8]; .loc 1 92 9 st.f64 [%r50],%r36; st.f64 [%r50+8],%r37; .loc 1 93 1 ret; } lib_a-cacoshf.o/1591654539 399 399 100644 2753 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r32; .reg .f32 %r33; .reg .f32 %r36; .reg .f32 %r37; .reg .u64 %r50; .reg .f32 %r51; .reg .f32 %r52; .reg .f32 %r59; .reg .f32 %r69; .reg .f32 %r70; .reg .f32 %r82; .reg .f32 %r85; mov.u64 %r50,%ar0; mov.f32 %r51,%ar1; mov.f32 %r52,%ar2; .loc 1 45 16 add.f32 %r59,%r51,0f3f800000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r59; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r52; call csqrtf,(%out_arg1,%out_arg2,%out_arg3); } ld.f32 %r25,[%frame]; ld.f32 %r26,[%frame+4]; .loc 1 45 32 mov.f32 %r70,0f3f800000; sub.f32 %r69,%r51,%r70; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r69; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r52; call csqrtf,(%out_arg1,%out_arg2,%out_arg3); } ld.f32 %r30,[%frame]; ld.f32 %r31,[%frame+4]; .loc 1 45 30 { .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 %r32,[%frame]; ld.f32 %r33,[%frame+4]; .loc 1 45 6 add.f32 %r82,%r33,%r52; add.f32 %r85,%r32,%r51; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r85; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r82; call clogf,(%out_arg1,%out_arg2,%out_arg3); } ld.f32 %r36,[%frame]; ld.f32 %r37,[%frame+4]; .loc 1 47 9 st.f32 [%r50],%r36; st.f32 [%r50+4],%r37; .loc 1 48 1 ret; } lib_a-carg.o/ 1591654539 399 399 100644 1706 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654539 399 399 100644 1720 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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-casin.o/ 1591654539 399 399 100644 4784 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r34; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r42; .reg .f64 %r43; .reg .f64 %r46; .reg .f64 %r47; .reg .f64 %r48; .reg .f64 %r49; .reg .u64 %r61; .reg .f64 %r62; .reg .f64 %r63; .reg .f64 %r66; .reg .f64 %r69; .reg .f64 %r73; .reg .f64 %r74; .reg .f64 %r75; .reg .f64 %r76; .reg .f64 %r77; .reg .f64 %r78; .reg .f64 %r79; .reg .f64 %r80; .reg .f64 %r83; .reg .f64 %r86; .reg .f64 %r94; .reg .f64 %r98; .reg .f64 %r100; .reg .f64 %r104; .reg .f64 %r105; .reg .f64 %r112; .reg .f64 %r113; mov.u64 %r61,%ar0; mov.f64 %r62,%ar1; mov.f64 %r63,%ar2; .loc 1 92 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r62; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r63; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r66,[%value_in]; } .loc 1 93 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r62; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r63; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r69,[%value_in]; } .loc 1 150 9 fma.rn.f64 %r75,%r69,0d0000000000000000,%r66; .loc 1 151 5 mov.f64 %r74,0d3ff0000000000000; mov.f64 %r73,0d0000000000000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r75; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r69; .param .f64 %out_arg4; st.param.f64 [%out_arg4],%r73; .param .f64 %out_arg5; st.param.f64 [%out_arg5],%r74; call __muldc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f64 %r34,[%frame]; ld.f64 %r35,[%frame+8]; .loc 1 155 32 add.f64 %r76,%r66,%r66; .loc 1 155 36 mul.f64 %r36,%r76,%r69; .loc 1 155 10 sub.f64 %r77,%r66,%r69; .loc 1 155 25 mul.f64 %r78,%r36,0d0000000000000000; .loc 1 155 20 add.f64 %r79,%r66,%r69; .loc 1 155 25 fma.rn.f64 %r80,%r77,%r79,%r78; .loc 1 157 25 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r80; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r36; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r83,[%value_in]; } .loc 1 157 13 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r80; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r36; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r86,[%value_in]; } .loc 1 157 23 neg.f64 %r94,%r83; .loc 1 157 11 sub.f64 %r98,%r74,%r86; .loc 1 157 23 fma.rn.f64 %r100,%r94,0d0000000000000000,%r98; .loc 1 158 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r100; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r94; call csqrt,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r42,[%frame]; ld.f64 %r43,[%frame+8]; .loc 1 160 5 add.f64 %r104,%r34,%r42; add.f64 %r105,%r35,%r43; .loc 1 161 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r104; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r105; call clog,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r46,[%frame]; ld.f64 %r47,[%frame+8]; .loc 1 163 4 mov.f64 %r113,0dbff0000000000000; mov.f64 %r112,0d8000000000000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r46; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r47; .param .f64 %out_arg4; st.param.f64 [%out_arg4],%r112; .param .f64 %out_arg5; st.param.f64 [%out_arg5],%r113; call __muldc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f64 %r48,[%frame]; ld.f64 %r49,[%frame+8]; .loc 1 164 9 st.f64 [%r61],%r48; st.f64 [%r61+8],%r49; .loc 1 165 1 ret; } lib_a-casinf.o/ 1591654539 399 399 100644 4746 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r34; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r42; .reg .f32 %r43; .reg .f32 %r46; .reg .f32 %r47; .reg .f32 %r48; .reg .f32 %r49; .reg .u64 %r61; .reg .f32 %r62; .reg .f32 %r63; .reg .f32 %r66; .reg .f32 %r69; .reg .f32 %r73; .reg .f32 %r74; .reg .f32 %r75; .reg .f32 %r76; .reg .f32 %r77; .reg .f32 %r78; .reg .f32 %r79; .reg .f32 %r80; .reg .f32 %r83; .reg .f32 %r86; .reg .f32 %r94; .reg .f32 %r98; .reg .f32 %r100; .reg .f32 %r104; .reg .f32 %r105; .reg .f32 %r112; .reg .f32 %r113; mov.u64 %r61,%ar0; mov.f32 %r62,%ar1; mov.f32 %r63,%ar2; .loc 1 49 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r62; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r63; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r66,[%value_in]; } .loc 1 50 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r62; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r63; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r69,[%value_in]; } .loc 1 107 9 fma.rn.f32 %r75,%r69,0f00000000,%r66; .loc 1 108 5 mov.f32 %r74,0f3f800000; mov.f32 %r73,0f00000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r75; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r69; .param .f32 %out_arg4; st.param.f32 [%out_arg4],%r73; .param .f32 %out_arg5; st.param.f32 [%out_arg5],%r74; call __mulsc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f32 %r34,[%frame]; ld.f32 %r35,[%frame+4]; .loc 1 112 33 add.f32 %r76,%r66,%r66; .loc 1 112 37 mul.f32 %r36,%r76,%r69; .loc 1 112 10 sub.f32 %r77,%r66,%r69; .loc 1 112 25 mul.f32 %r78,%r36,0f00000000; .loc 1 112 20 add.f32 %r79,%r66,%r69; .loc 1 112 25 fma.rn.f32 %r80,%r77,%r79,%r78; .loc 1 114 27 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r80; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r36; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r83,[%value_in]; } .loc 1 114 14 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r80; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r36; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r86,[%value_in]; } .loc 1 114 25 neg.f32 %r94,%r83; .loc 1 114 12 sub.f32 %r98,%r74,%r86; .loc 1 114 25 fma.rn.f32 %r100,%r94,0f00000000,%r98; .loc 1 115 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r100; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r94; call csqrtf,(%out_arg1,%out_arg2,%out_arg3); } ld.f32 %r42,[%frame]; ld.f32 %r43,[%frame+4]; .loc 1 117 5 add.f32 %r104,%r34,%r42; add.f32 %r105,%r35,%r43; .loc 1 118 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r104; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r105; call clogf,(%out_arg1,%out_arg2,%out_arg3); } ld.f32 %r46,[%frame]; ld.f32 %r47,[%frame+4]; .loc 1 120 4 mov.f32 %r113,0fbf800000; mov.f32 %r112,0f80000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r46; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r47; .param .f32 %out_arg4; st.param.f32 [%out_arg4],%r112; .param .f32 %out_arg5; st.param.f32 [%out_arg5],%r113; call __mulsc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f32 %r48,[%frame]; ld.f32 %r49,[%frame+4]; .loc 1 121 9 st.f32 [%r61],%r48; st.f32 [%r61+4],%r49; .loc 1 122 1 ret; } lib_a-casinh.o/ 1591654539 399 399 100644 2427 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r22; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r27; .reg .u64 %r34; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r40; .reg .f64 %r41; .reg .f64 %r48; .reg .f64 %r49; mov.u64 %r34,%ar0; mov.f64 %r35,%ar1; mov.f64 %r36,%ar2; .loc 1 95 17 mov.f64 %r41,0d3ff0000000000000; mov.f64 %r40,0d0000000000000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r35; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r36; .param .f64 %out_arg4; st.param.f64 [%out_arg4],%r40; .param .f64 %out_arg5; st.param.f64 [%out_arg5],%r41; call __muldc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f64 %r22,[%frame]; ld.f64 %r23,[%frame+8]; { .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],%r23; call casin,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r24,[%frame]; ld.f64 %r25,[%frame+8]; .loc 1 95 4 mov.f64 %r49,0dbff0000000000000; mov.f64 %r48,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],%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 %r26,[%frame]; ld.f64 %r27,[%frame+8]; .loc 1 96 9 st.f64 [%r34],%r26; st.f64 [%r34+8],%r27; .loc 1 97 1 ret; } lib_a-casinhf.o/1591654539 399 399 100644 2402 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r22; .reg .f32 %r23; .reg .f32 %r24; .reg .f32 %r25; .reg .f32 %r26; .reg .f32 %r27; .reg .u64 %r34; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r40; .reg .f32 %r41; .reg .f32 %r48; .reg .f32 %r49; mov.u64 %r34,%ar0; mov.f32 %r35,%ar1; mov.f32 %r36,%ar2; .loc 1 42 18 mov.f32 %r41,0f3f800000; mov.f32 %r40,0f00000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r35; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r36; .param .f32 %out_arg4; st.param.f32 [%out_arg4],%r40; .param .f32 %out_arg5; st.param.f32 [%out_arg5],%r41; call __mulsc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f32 %r22,[%frame]; ld.f32 %r23,[%frame+4]; { .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],%r23; call casinf,(%out_arg1,%out_arg2,%out_arg3); } ld.f32 %r24,[%frame]; ld.f32 %r25,[%frame+4]; .loc 1 42 4 mov.f32 %r49,0fbf800000; mov.f32 %r48,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],%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 %r26,[%frame]; ld.f32 %r27,[%frame+4]; .loc 1 43 9 st.f32 [%r34],%r26; st.f32 [%r34+4],%r27; .loc 1 44 1 ret; } lib_a-catan.o/ 1591654539 399 399 100644 3870 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 8 .u64 $LC0[2] = {9221120237041090560,9218868437227405312 }; // 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 %r31; .reg .f64 %r32; .reg .f64 %r34; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r38; .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; .reg .f64 %r69; .reg .f64 %r70; .reg .f64 %r71; .reg .f64 %r72; 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 %r31,%r46,%r46; .loc 1 107 4 neg.f64 %r52,%r49; .loc 1 107 10 mov.f64 %r54,0d3ff0000000000000; sub.f64 %r53,%r54,%r31; .loc 1 107 4 fma.rn.f64 %r32,%r52,%r49,%r53; .loc 1 108 5 setp.eq.f64 %r55,%r32,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],%r32; 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 %r34,%r49,%r54; .loc 1 115 4 fma.rn.f64 %r35,%r34,%r34,%r31; .loc 1 116 5 setp.eq.f64 %r64,%r35,0d0000000000000000; @ %r64 bra $L3; .loc 1 119 4 add.f64 %r36,%r49,0d3ff0000000000000; .loc 1 120 10 fma.rn.f64 %r66,%r36,%r36,%r31; .loc 1 120 4 div.rn.f64 %r67,%r66,%r35; .loc 1 121 18 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r67; call (%value_in),log,(%out_arg1); ld.param.f64 %r68,[%value_in]; } .loc 1 121 16 mul.f64 %r38,%r68,0d3fd0000000000000; .loc 1 121 4 fma.rn.f64 %r69,%r38,0d0000000000000000,%r62; .loc 1 122 9 st.f64 [%r41],%r69; .loc 1 121 4 add.f64 %r70,%r38,0d0000000000000000; .loc 1 122 9 st.f64 [%r41+8],%r70; bra $L1; $L3: .loc 1 129 9 ld.const.f64 %r71,[$LC0]; st.f64 [%r41],%r71; ld.const.f64 %r72,[$LC0+8]; st.f64 [%r41+8],%r72; $L1: .loc 1 130 1 ret; } lib_a-catanf.o/ 1591654539 399 399 100644 3766 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 4 .u32 $LC0[2] = {2143289344,2139095040 }; // 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 %r31; .reg .f32 %r32; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r38; .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; .reg .f32 %r69; .reg .f32 %r70; .reg .f32 %r71; .reg .f32 %r72; 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 %r31,%r46,%r46; .loc 1 56 4 neg.f32 %r52,%r49; .loc 1 56 11 mov.f32 %r54,0f3f800000; sub.f32 %r53,%r54,%r31; .loc 1 56 4 fma.rn.f32 %r32,%r52,%r49,%r53; .loc 1 57 5 setp.eq.f32 %r55,%r32,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],%r32; 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 %r34,%r49,%r54; .loc 1 64 4 fma.rn.f32 %r35,%r34,%r34,%r31; .loc 1 65 5 setp.eq.f32 %r64,%r35,0f00000000; @ %r64 bra $L3; .loc 1 68 4 add.f32 %r36,%r49,0f3f800000; .loc 1 69 10 fma.rn.f32 %r66,%r36,%r36,%r31; .loc 1 69 4 div.rn.f32 %r67,%r66,%r35; .loc 1 70 19 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r67; call (%value_in),logf,(%out_arg1); ld.param.f32 %r68,[%value_in]; } .loc 1 70 17 mul.f32 %r38,%r68,0f3e800000; .loc 1 70 4 fma.rn.f32 %r69,%r38,0f00000000,%r62; .loc 1 71 9 st.f32 [%r41],%r69; .loc 1 70 4 add.f32 %r70,%r38,0f00000000; .loc 1 71 9 st.f32 [%r41+4],%r70; bra $L1; $L3: .loc 1 78 9 ld.const.f32 %r71,[$LC0]; st.f32 [%r41],%r71; ld.const.f32 %r72,[$LC0+4]; st.f32 [%r41+4],%r72; $L1: .loc 1 79 1 ret; } lib_a-catanh.o/ 1591654539 399 399 100644 2427 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r22; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r27; .reg .u64 %r34; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r40; .reg .f64 %r41; .reg .f64 %r48; .reg .f64 %r49; mov.u64 %r34,%ar0; mov.f64 %r35,%ar1; mov.f64 %r36,%ar2; .loc 1 88 17 mov.f64 %r41,0d3ff0000000000000; mov.f64 %r40,0d0000000000000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r35; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r36; .param .f64 %out_arg4; st.param.f64 [%out_arg4],%r40; .param .f64 %out_arg5; st.param.f64 [%out_arg5],%r41; call __muldc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f64 %r22,[%frame]; ld.f64 %r23,[%frame+8]; { .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],%r23; call catan,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r24,[%frame]; ld.f64 %r25,[%frame+8]; .loc 1 88 4 mov.f64 %r49,0dbff0000000000000; mov.f64 %r48,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],%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 %r26,[%frame]; ld.f64 %r27,[%frame+8]; .loc 1 89 9 st.f64 [%r34],%r26; st.f64 [%r34+8],%r27; .loc 1 90 1 ret; } lib_a-catanhf.o/1591654539 399 399 100644 2402 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r22; .reg .f32 %r23; .reg .f32 %r24; .reg .f32 %r25; .reg .f32 %r26; .reg .f32 %r27; .reg .u64 %r34; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r40; .reg .f32 %r41; .reg .f32 %r48; .reg .f32 %r49; mov.u64 %r34,%ar0; mov.f32 %r35,%ar1; mov.f32 %r36,%ar2; .loc 1 42 18 mov.f32 %r41,0f3f800000; mov.f32 %r40,0f00000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r35; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r36; .param .f32 %out_arg4; st.param.f32 [%out_arg4],%r40; .param .f32 %out_arg5; st.param.f32 [%out_arg5],%r41; call __mulsc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f32 %r22,[%frame]; ld.f32 %r23,[%frame+4]; { .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],%r23; call catanf,(%out_arg1,%out_arg2,%out_arg3); } ld.f32 %r24,[%frame]; ld.f32 %r25,[%frame+4]; .loc 1 42 4 mov.f32 %r49,0fbf800000; mov.f32 %r48,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],%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 %r26,[%frame]; ld.f32 %r27,[%frame+4]; .loc 1 43 9 st.f32 [%r34],%r26; st.f32 [%r34+4],%r27; .loc 1 44 1 ret; } lib_a-cbrtl.o/ 1591654539 399 399 100644 793 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654539 399 399 100644 2953 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %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; .reg .f64 %r59; 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 %r58,[%frame+8]; fma.rn.f64 %r57,%r54,%r58,%r56; .loc 1 80 9 st.f64 [%r34],%r57; .loc 1 79 25 neg.f64 %r59,%r32; .loc 1 80 9 st.f64 [%r34+8],%r59; .loc 1 81 1 ret; } lib_a-ccosf.o/ 1591654539 399 399 100644 2966 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %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; .reg .f32 %r59; 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 %r58,[%frame+4]; fma.rn.f32 %r57,%r54,%r58,%r56; .loc 1 47 9 st.f32 [%r34],%r57; .loc 1 46 27 neg.f32 %r59,%r32; .loc 1 47 9 st.f32 [%r34+4],%r59; .loc 1 48 1 ret; } lib_a-ccosh.o/ 1591654539 399 399 100644 2699 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %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; .reg .f64 %r49; 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 %r49,%r45,%r47,%r48; .loc 1 80 9 st.f64 [%r31],%r49; st.f64 [%r31+8],%r30; .loc 1 81 1 ret; } lib_a-ccoshf.o/ 1591654539 399 399 100644 2714 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %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; .reg .f32 %r49; 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 %r49,%r45,%r47,%r48; .loc 1 47 9 st.f32 [%r31],%r49; st.f32 [%r31+4],%r30; .loc 1 48 1 ret; } lib_a-ceill.o/ 1591654539 399 399 100644 793 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 DECL: ceil .extern .func (.param .f64 %value_out) ceil (.param .f64 %in_ar0); // 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; .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),ceil,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } /0 1591654539 399 399 100644 7360 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %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; .reg .f64 %r44; .reg .f64 %r45; 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 %r44,%r41,0d3fe0000000000000,%r43; .loc 1 53 6 st.f64 [%r32],%r44; .loc 1 54 10 fma.rn.f64 %r45,%r41,0d3fe0000000000000,%r28; .loc 1 54 6 st.f64 [%r31],%r45; $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 %r23; .reg .f64 %r24; .reg .f64 %r25; .reg .u64 %r26; .reg .f64 %r27; .reg .f64 %r32; .reg .pred %r33; .reg .f64 %r34; .reg .f64 %r35; .reg .f64 %r37; 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 21 neg.f64 %r35,%r27; .loc 1 80 10 fma.rn.f64 %r37,%r35,0d400921fb54000000,%r32; .loc 1 80 21 fma.rn.f64 %r23,%r35,0d3e210b4610000000,%r37; .loc 1 80 4 fma.rn.f64 %value,%r35,0d3c6a62633145c06e,%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 %r43; .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 %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 %r76; .reg .f64 %r78; .reg .f64 %r79; .reg .f64 %r81; .reg .f64 %r82; .reg .pred %r83; 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 %r34,%r67,0d400921fb54442d18; .loc 1 73 5 setp.ge.f64 %r74,%r34,0d0000000000000000; @ ! %r74 bra $L20; .loc 1 74 5 add.f64 %r50,%r34,0d3fe0000000000000; bra $L16; $L20: .loc 1 76 5 mov.f64 %r75,0d3fe0000000000000; sub.f64 %r50,%r34,%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 21 neg.f64 %r76,%r52; .loc 1 80 10 fma.rn.f64 %r78,%r76,0d400921fb54000000,%r67; .loc 1 80 21 fma.rn.f64 %r54,%r76,0d3e210b4610000000,%r78; .loc 1 80 4 fma.rn.f64 %r55,%r76,0d3c6a62633145c06e,%r54; .loc 1 97 4 mul.f64 %r35,%r55,%r55; .loc 1 98 4 mul.f64 %r36,%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 %r37,%r31,0d3ff0000000000000; .loc 1 106 5 mul.f64 %r38,%r28,%r37; .loc 1 107 6 add.f64 %r39,%r37,0d3ff0000000000000; .loc 1 108 5 mul.f64 %r40,%r38,%r39; .loc 1 109 6 mul.f64 %r41,%r29,%r35; .loc 1 110 6 mul.f64 %r42,%r30,%r36; .loc 1 111 5 add.f64 %r43,%r41,%r42; .loc 1 112 5 div.rn.f64 %r79,%r43,%r40; .loc 1 113 5 add.f64 %r45,%r79,%r59; .loc 1 115 6 add.f64 %r46,%r39,0d3ff0000000000000; .loc 1 116 5 mul.f64 %r47,%r40,%r46; .loc 1 117 6 add.f64 %r31,%r46,0d3ff0000000000000; .loc 1 118 5 mul.f64 %r28,%r47,%r31; .loc 1 119 6 mul.f64 %r29,%r35,%r41; .loc 1 120 6 mul.f64 %r30,%r36,%r42; .loc 1 121 5 sub.f64 %r48,%r30,%r29; .loc 1 122 5 div.rn.f64 %r49,%r48,%r28; .loc 1 123 5 add.f64 %r59,%r45,%r49; .loc 1 124 11 div.rn.f64 %r81,%r49,%r59; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r81; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r82,[%value_in]; } .loc 1 124 2 setp.gt.f64 %r83,%r82,0d3c9fb49140a1644f; @ %r83 bra $L17; .loc 1 126 1 mov.f64 %value,%r59; st.param.f64 [%value_out],%value; ret; } /21 1591654539 399 399 100644 7580 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %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; .reg .f32 %r44; .reg .f32 %r45; 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 %r44,%r41,0f3f000000,%r43; .loc 1 53 6 st.f32 [%r32],%r44; .loc 1 54 10 fma.rn.f32 %r45,%r41,0f3f000000,%r28; .loc 1 54 6 st.f32 [%r31],%r45; $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 .f32 %r27; .reg .f32 %r28; .reg .u64 %r29; .reg .f32 %r35; .reg .pred %r36; .reg .f32 %r37; .reg .f32 %r38; .reg .f64 %r40; .reg .f64 %r43; .reg .f64 %r44; .reg .f64 %r45; .reg .f64 %r46; 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 32 neg.f64 %r40,%r23; .loc 1 80 10 cvt.f64.f32 %r43,%r35; fma.rn.f64 %r44,%r40,0d4009200000000000,%r43; .loc 1 80 21 fma.rn.f64 %r45,%r40,0d3f4fb40000000000,%r44; .loc 1 80 32 fma.rn.f64 %r46,%r40,0d3e84442d18469899,%r45; .loc 1 80 4 cvt.rn.f32.f64 %value,%r46; .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 %r44; .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 .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 %r81; .reg .f64 %r84; .reg .f64 %r85; .reg .f64 %r86; .reg .f64 %r87; .reg .f32 %r88; .reg .f32 %r90; .reg .f32 %r91; .reg .f64 %r92; .reg .pred %r93; 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 %r35,%r71,0f40490fdb; .loc 1 73 5 setp.ge.f32 %r78,%r35,0f00000000; @ ! %r78 bra $L20; .loc 1 74 5 add.f32 %r51,%r35,0f3f000000; bra $L16; $L20: .loc 1 76 5 mov.f32 %r79,0f3f000000; sub.f32 %r51,%r35,%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 32 neg.f64 %r81,%r55; .loc 1 80 10 cvt.f64.f32 %r84,%r71; fma.rn.f64 %r85,%r81,0d4009200000000000,%r84; .loc 1 80 21 fma.rn.f64 %r86,%r81,0d3f4fb40000000000,%r85; .loc 1 80 32 fma.rn.f64 %r87,%r81,0d3e84442d18469899,%r86; .loc 1 80 4 cvt.rn.f32.f64 %r59,%r87; .loc 1 96 4 mul.f32 %r36,%r59,%r59; .loc 1 97 4 mul.f32 %r37,%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 %r38,%r32,0f3f800000; .loc 1 105 5 mul.f32 %r39,%r29,%r38; .loc 1 106 6 add.f32 %r40,%r38,0f3f800000; .loc 1 107 5 mul.f32 %r41,%r39,%r40; .loc 1 108 6 mul.f32 %r42,%r30,%r36; .loc 1 109 6 mul.f32 %r43,%r31,%r37; .loc 1 110 5 add.f32 %r44,%r42,%r43; .loc 1 111 5 div.rn.f32 %r88,%r44,%r41; .loc 1 112 5 add.f32 %r46,%r88,%r63; .loc 1 114 6 add.f32 %r47,%r40,0f3f800000; .loc 1 115 5 mul.f32 %r48,%r41,%r47; .loc 1 116 6 add.f32 %r32,%r47,0f3f800000; .loc 1 117 5 mul.f32 %r29,%r48,%r32; .loc 1 118 6 mul.f32 %r30,%r36,%r42; .loc 1 119 6 mul.f32 %r31,%r37,%r43; .loc 1 120 5 sub.f32 %r49,%r31,%r30; .loc 1 121 5 div.rn.f32 %r50,%r49,%r29; .loc 1 122 5 add.f32 %r63,%r46,%r50; .loc 1 123 11 div.rn.f32 %r90,%r50,%r63; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r90; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r91,[%value_in]; } cvt.f64.f32 %r92,%r91; .loc 1 123 2 setp.gt.f64 %r93,%r92,0d3e601b2b29a4692b; @ %r93 bra $L17; .loc 1 125 1 mov.f32 %value,%r63; st.param.f32 [%value_out],%value; ret; } lib_a-cexp.o/ 1591654539 399 399 100644 2412 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %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; .reg .f64 %r46; 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 %r46,%r44,%r40,%r45; .loc 1 81 9 st.f64 [%r30],%r46; st.f64 [%r30+8],%r29; .loc 1 82 1 ret; } lib_a-cexpf.o/ 1591654539 399 399 100644 2424 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %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; .reg .f32 %r46; 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 %r46,%r44,%r40,%r45; .loc 1 48 9 st.f32 [%r30],%r46; st.f32 [%r30+4],%r29; .loc 1 49 1 ret; } lib_a-cimag.o/ 1591654539 399 399 100644 567 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 53 1 st.param.f64 [%value_out],%value; ret; } lib_a-cimagf.o/ 1591654539 399 399 100644 572 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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-clog.o/ 1591654539 399 399 100644 2471 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u64 %r28; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r33; .reg .f64 %r35; .reg .f64 %r38; .reg .f64 %r41; .reg .f64 %r44; .reg .f64 %r45; 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 %r45,%r44,0d0000000000000000,%r35; .loc 1 90 9 st.f64 [%r28],%r45; st.f64 [%r28+8],%r44; .loc 1 91 1 ret; } lib_a-clogf.o/ 1591654539 399 399 100644 2483 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u64 %r28; .reg .f32 %r29; .reg .f32 %r30; .reg .f32 %r33; .reg .f32 %r35; .reg .f32 %r38; .reg .f32 %r41; .reg .f32 %r44; .reg .f32 %r45; 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 %r45,%r44,0f00000000,%r35; .loc 1 48 9 st.f32 [%r28],%r45; st.f32 [%r28+4],%r44; .loc 1 49 1 ret; } lib_a-conj.o/ 1591654539 399 399 100644 821 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654539 399 399 100644 826 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } /43 1591654539 399 399 100644 1032 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 DECL: copysign .extern .func (.param .f64 %value_out) copysign (.param .f64 %in_ar0, .param .f64 %in_ar1); // 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; .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),copysign,(%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-coshl.o/ 1591654539 399 399 100644 793 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654539 399 399 100644 785 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654539 399 399 100644 4678 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %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; .reg .f64 %r72; 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 %r72,%r70,%r30,%r71; .loc 1 100 9 st.f64 [%r37],%r72; st.f64 [%r37+8],%r36; $L1: .loc 1 101 1 ret; } lib_a-cpowf.o/ 1591654539 399 399 100644 4684 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %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; .reg .f32 %r72; 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 %r72,%r70,%r30,%r71; .loc 1 58 9 st.f32 [%r37],%r72; st.f32 [%r37+4],%r36; $L1: .loc 1 59 1 ret; } lib_a-cproj.o/ 1591654539 399 399 100644 2923 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.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: 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 .u32 %r35; .reg .pred %r36; .reg .f64 %r37; .reg .f64 %r40; .reg .f64 %r41; .reg .f64 %r43; .reg .f64 %r46; .reg .u32 %r48; .reg .pred %r49; 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]; } { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r35,[%value_in]; } .loc 1 96 5 setp.ne.u32 %r36,%r35,1; @ %r36 bra $L2; $L4: .loc 1 100 16 mov.f64 %r37,0d7ff0000000000000; st.f64 [%frame],%r37; .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 %r40,[%value_in]; } mov.f64 %r41,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r41; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r40; call (%value_in),copysign,(%out_arg1,%out_arg2); ld.param.f64 %r43,[%value_in]; } ld.f64 %r29,[%frame]; mov.f64 %r30,%r43; 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 %r46,[%value_in]; } { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r46; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r48,[%value_in]; } .loc 1 96 22 setp.eq.u32 %r49,%r48,1; @ %r49 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/ 1591654539 399 399 100644 2918 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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: __fpclassifyf .extern .func (.param .u32 %value_out) __fpclassifyf (.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: 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 .u32 %r35; .reg .pred %r36; .reg .f32 %r37; .reg .f32 %r40; .reg .f32 %r41; .reg .f32 %r43; .reg .f32 %r46; .reg .u32 %r48; .reg .pred %r49; 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]; } { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r33; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r35,[%value_in]; } .loc 1 58 5 setp.ne.u32 %r36,%r35,1; @ %r36 bra $L2; $L4: .loc 1 62 16 mov.f32 %r37,0f7f800000; st.f32 [%frame],%r37; .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 %r40,[%value_in]; } mov.f32 %r41,0f00000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r41; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r40; call (%value_in),copysignf,(%out_arg1,%out_arg2); ld.param.f32 %r43,[%value_in]; } ld.f32 %r29,[%frame]; mov.f32 %r30,%r43; 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 %r46,[%value_in]; } { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r46; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r48,[%value_in]; } .loc 1 58 23 setp.eq.u32 %r49,%r48,1; @ %r49 bra $L4; $L3: .loc 1 67 11 st.f32 [%r28],%r29; st.f32 [%r28+4],%r30; .loc 1 68 1 ret; } lib_a-creal.o/ 1591654539 399 399 100644 567 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 53 1 st.param.f64 [%value_out],%value; ret; } lib_a-crealf.o/ 1591654539 399 399 100644 572 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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-csin.o/ 1591654539 399 399 100644 2893 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %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; .reg .f64 %r55; 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 %r55,[%frame+8]; fma.rn.f64 %r54,%r52,%r55,%r53; .loc 1 80 9 st.f64 [%r32],%r54; st.f64 [%r32+8],%r31; .loc 1 81 1 ret; } lib_a-csinf.o/ 1591654539 399 399 100644 2906 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %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; .reg .f32 %r55; 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 %r55,[%frame+4]; fma.rn.f32 %r54,%r52,%r55,%r53; .loc 1 47 9 st.f32 [%r32],%r54; st.f32 [%r32+4],%r31; .loc 1 48 1 ret; } lib_a-csinh.o/ 1591654539 399 399 100644 2699 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %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; .reg .f64 %r49; 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 %r49,%r45,%r47,%r48; .loc 1 79 9 st.f64 [%r31],%r49; st.f64 [%r31+8],%r30; .loc 1 80 1 ret; } lib_a-csinhf.o/ 1591654539 399 399 100644 2714 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %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; .reg .f32 %r49; 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 %r49,%r45,%r47,%r48; .loc 1 47 9 st.f32 [%r31],%r49; st.f32 [%r31+4],%r30; .loc 1 48 1 ret; } lib_a-csqrt.o/ 1591654539 399 399 100644 6805 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r38; .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 .f64 %r54; .reg .f64 %r55; .reg .f64 %r69; .reg .u64 %r70; .reg .f64 %r71; .reg .f64 %r72; .reg .f64 %r75; .reg .f64 %r78; .reg .pred %r79; .reg .pred %r80; .reg .f64 %r83; .reg .f64 %r85; .reg .pred %r86; .reg .pred %r89; .reg .f64 %r91; .reg .f64 %r93; .reg .pred %r94; .reg .f64 %r96; .reg .f64 %r100; .reg .pred %r101; .reg .f64 %r103; .reg .pred %r104; .reg .f64 %r110; .reg .f64 %r113; .reg .pred %r114; .reg .f64 %r116; .reg .f64 %r117; .reg .f64 %r118; .reg .f64 %r120; .reg .f64 %r121; .reg .f64 %r122; .reg .f64 %r124; .reg .f64 %r126; .reg .f64 %r128; .reg .f64 %r129; .reg .f64 %r130; .reg .pred %r131; mov.u64 %r70,%ar0; mov.f64 %r71,%ar1; mov.f64 %r72,%ar2; .loc 1 79 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r71; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r72; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r75,[%value_in]; } .loc 1 80 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r71; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r72; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r78,[%value_in]; } .loc 1 82 5 setp.neu.f64 %r79,%r78,0d0000000000000000; @ %r79 bra $L2; .loc 1 83 6 setp.neu.f64 %r80,%r75,0d0000000000000000; @ %r80 bra $L3; .loc 1 84 12 fma.rn.f64 %r45,%r78,0d0000000000000000,0d0000000000000000; .loc 1 84 6 mov.f64 %r46,%r78; bra $L4; $L3: .loc 1 86 8 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r75; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r83,[%value_in]; } .loc 1 87 8 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r83; call (%value_in),sqrt,(%out_arg1); ld.param.f64 %r85,[%value_in]; } .loc 1 88 7 setp.lt.f64 %r86,%r75,0d0000000000000000; @ ! %r86 bra $L26; .loc 1 89 13 fma.rn.f64 %r45,%r85,0d0000000000000000,0d0000000000000000; .loc 1 89 7 mov.f64 %r46,%r85; bra $L4; $L26: .loc 1 91 11 fma.rn.f64 %r45,%r78,0d0000000000000000,%r85; .loc 1 91 7 mov.f64 %r46,%r78; $L4: .loc 1 94 10 st.f64 [%r70],%r45; st.f64 [%r70+8],%r46; bra $L1; $L2: .loc 1 96 5 setp.neu.f64 %r89,%r75,0d0000000000000000; @ %r89 bra $L8; .loc 1 97 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r78; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r91,[%value_in]; } .loc 1 98 7 mul.f64 %r25,%r91,0d3fe0000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; call (%value_in),sqrt,(%out_arg1); ld.param.f64 %r93,[%value_in]; } .loc 1 99 6 setp.gt.f64 %r94,%r78,0d0000000000000000; @ ! %r94 bra $L27; .loc 1 100 10 fma.rn.f64 %r47,%r93,0d0000000000000000,%r93; .loc 1 100 6 mov.f64 %r48,%r93; bra $L11; $L27: .loc 1 102 10 neg.f64 %r96,%r93; fma.rn.f64 %r47,%r96,0d0000000000000000,%r93; .loc 1 102 6 mov.f64 %r48,%r96; $L11: .loc 1 103 10 st.f64 [%r70],%r47; st.f64 [%r70+8],%r48; bra $L1; $L8: .loc 1 106 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r75; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r100,[%value_in]; } .loc 1 106 5 setp.gt.f64 %r101,%r100,0d4010000000000000; @ ! %r101 bra $L28; $L15: .loc 1 107 5 mul.f64 %r51,%r75,0d3fd0000000000000; .loc 1 108 5 mul.f64 %r52,%r78,0d3fd0000000000000; .loc 1 109 9 mov.f64 %r55,0d4000000000000000; bra $L14; $L28: .loc 1 106 26 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r78; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r103,[%value_in]; } .loc 1 106 22 setp.gt.f64 %r104,%r103,0d4010000000000000; @ %r104 bra $L15; .loc 1 112 5 mul.f64 %r51,%r75,0d4350000000000000; .loc 1 113 5 mul.f64 %r52,%r78,0d4350000000000000; .loc 1 114 9 mov.f64 %r55,0d3e40000000000000; $L14: .loc 1 121 8 fma.rn.f64 %r110,%r52,0d0000000000000000,%r51; .loc 1 122 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r110; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r52; call (%value_in),cabs,(%out_arg1,%out_arg2); ld.param.f64 %r113,[%value_in]; } .loc 1 123 5 setp.gt.f64 %r114,%r51,0d0000000000000000; @ ! %r114 bra $L29; .loc 1 124 26 mul.f64 %r116,%r51,0d3fe0000000000000; .loc 1 124 7 fma.rn.f64 %r117,%r113,0d3fe0000000000000,%r116; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r117; call (%value_in),sqrt,(%out_arg1); ld.param.f64 %r118,[%value_in]; } .loc 1 125 25 mul.f64 %r120,%r52,0d3fe0000000000000; .loc 1 125 15 div.rn.f64 %r121,%r120,%r118; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r121; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r122,[%value_in]; } .loc 1 125 5 mul.f64 %r53,%r122,%r55; .loc 1 126 5 mul.f64 %r54,%r55,%r118; bra $L18; $L29: .loc 1 128 7 mul.f64 %r124,%r51,0dbfe0000000000000; fma.rn.f64 %r38,%r113,0d3fe0000000000000,%r124; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; call (%value_in),sqrt,(%out_arg1); ld.param.f64 %r126,[%value_in]; } .loc 1 129 25 mul.f64 %r128,%r52,0d3fe0000000000000; .loc 1 129 15 div.rn.f64 %r129,%r128,%r126; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r129; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r130,[%value_in]; } .loc 1 129 5 mul.f64 %r54,%r130,%r55; .loc 1 130 5 mul.f64 %r53,%r55,%r126; $L18: mul.f64 %r69,%r53,0d0000000000000000; .loc 1 132 5 setp.lt.f64 %r131,%r52,0d0000000000000000; @ ! %r131 bra $L30; .loc 1 133 5 sub.f64 %r49,%r54,%r69; neg.f64 %r50,%r53; bra $L21; $L30: .loc 1 135 9 add.f64 %r49,%r54,%r69; .loc 1 135 5 mov.f64 %r50,%r53; $L21: .loc 1 136 9 st.f64 [%r70],%r49; st.f64 [%r70+8],%r50; $L1: .loc 1 137 1 ret; } lib_a-csqrtf.o/ 1591654539 399 399 100644 6606 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r27; .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 .f32 %r83; .reg .pred %r84; .reg .f32 %r85; .reg .f32 %r87; .reg .f32 %r88; .reg .pred %r89; .reg .f32 %r91; .reg .f32 %r93; .reg .pred %r94; .reg .f32 %r96; .reg .f32 %r100; .reg .pred %r101; .reg .f32 %r103; .reg .pred %r104; .reg .f32 %r110; .reg .f32 %r113; .reg .pred %r114; .reg .f32 %r116; .reg .f32 %r117; .reg .f32 %r118; .reg .f32 %r120; .reg .f32 %r121; .reg .f32 %r122; .reg .f32 %r124; .reg .f32 %r126; .reg .f32 %r128; .reg .f32 %r129; .reg .f32 %r130; .reg .pred %r131; 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 %r83,%r82,0f00000000,0f00000000; .loc 1 50 11 st.f32 [%r69],%r83; st.f32 [%r69+4],%r82; bra $L1; $L25: .loc 1 51 13 setp.neu.f32 %r84,%r74,0f00000000; @ %r84 bra $L6; .loc 1 52 17 fma.rn.f32 %r85,%r77,0f00000000,0f00000000; st.f32 [%r69],%r85; 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 %r87,[%value_in]; } .loc 1 54 17 fma.rn.f32 %r88,%r77,0f00000000,%r87; .loc 1 55 11 st.f32 [%r69],%r88; st.f32 [%r69+4],%r77; bra $L1; $L2: .loc 1 59 5 setp.neu.f32 %r89,%r74,0f00000000; @ %r89 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 %r91,[%value_in]; } .loc 1 61 7 mul.f32 %r27,%r91,0f3f000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r27; call (%value_in),sqrtf,(%out_arg1); ld.param.f32 %r93,[%value_in]; } .loc 1 62 6 setp.gt.f32 %r94,%r77,0f00000000; @ ! %r94 bra $L26; .loc 1 63 10 fma.rn.f32 %r47,%r93,0f00000000,%r93; .loc 1 63 6 mov.f32 %r48,%r93; bra $L10; $L26: .loc 1 65 10 neg.f32 %r96,%r93; fma.rn.f32 %r47,%r96,0f00000000,%r93; .loc 1 65 6 mov.f32 %r48,%r96; $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 %r100,[%value_in]; } .loc 1 70 5 setp.gt.f32 %r101,%r100,0f40800000; @ ! %r101 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 %r103,[%value_in]; } .loc 1 70 24 setp.gt.f32 %r104,%r103,0f40800000; @ %r104 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 %r110,%r52,0f00000000,%r51; .loc 1 86 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r110; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r52; call (%value_in),cabsf,(%out_arg1,%out_arg2); ld.param.f32 %r113,[%value_in]; } .loc 1 87 4 setp.gt.f32 %r114,%r51,0f00000000; @ ! %r114 bra $L28; .loc 1 88 29 mul.f32 %r116,%r51,0f3f000000; .loc 1 88 7 fma.rn.f32 %r117,%r113,0f3f000000,%r116; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r117; call (%value_in),sqrtf,(%out_arg1); ld.param.f32 %r118,[%value_in]; } .loc 1 89 27 mul.f32 %r120,%r52,0f3f000000; .loc 1 89 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 89 5 mul.f32 %r53,%r122,%r55; .loc 1 90 5 mul.f32 %r54,%r55,%r118; bra $L17; $L28: .loc 1 92 7 mul.f32 %r124,%r51,0fbf000000; fma.rn.f32 %r40,%r113,0f3f000000,%r124; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r40; call (%value_in),sqrtf,(%out_arg1); ld.param.f32 %r126,[%value_in]; } .loc 1 93 27 mul.f32 %r128,%r52,0f3f000000; .loc 1 93 15 div.rn.f32 %r129,%r128,%r126; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r129; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r130,[%value_in]; } .loc 1 93 5 mul.f32 %r54,%r130,%r55; .loc 1 94 5 mul.f32 %r53,%r55,%r126; $L17: mul.f32 %r68,%r53,0f00000000; .loc 1 97 5 setp.lt.f32 %r131,%r52,0f00000000; @ ! %r131 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-ctan.o/ 1591654539 399 399 100644 4514 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 8 .u64 $LC0[2] = {9221120237041090560,9218868437227405312 }; // 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 %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 %r62; .reg .f64 %r65; .reg .f64 %r67; .reg .f64 %r68; .reg .f64 %r71; .reg .f64 %r73; .reg .f64 %r74; .reg .f64 %r75; .reg .f64 %r76; 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 86 10 ld.const.f64 %r61,[$LC0]; st.f64 [%r39],%r61; ld.const.f64 %r62,[$LC0+8]; st.f64 [%r39+8],%r62; bra $L1; $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 %r65,[%value_in]; } .loc 1 89 33 add.f64 %r67,%r65,%r65; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r67; call (%value_in),sinh,(%out_arg1); ld.param.f64 %r68,[%value_in]; } .loc 1 89 54 div.rn.f64 %r38,%r68,%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 %r71,[%value_in]; } .loc 1 89 6 add.f64 %r73,%r71,%r71; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r73; call (%value_in),sin,(%out_arg1); ld.param.f64 %r74,[%value_in]; } .loc 1 89 26 div.rn.f64 %r75,%r74,%r37; .loc 1 89 30 fma.rn.f64 %r76,%r38,0d0000000000000000,%r75; .loc 1 90 9 st.f64 [%r39],%r76; st.f64 [%r39+8],%r38; $L1: .loc 1 91 1 ret; } lib_a-ctanf.o/ 1591654539 399 399 100644 4503 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 4 .u32 $LC0[2] = {2143289344,2139095040 }; // 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 %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 %r62; .reg .f32 %r65; .reg .f32 %r67; .reg .f32 %r68; .reg .f32 %r71; .reg .f32 %r73; .reg .f32 %r74; .reg .f32 %r75; .reg .f32 %r76; 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 53 10 ld.const.f32 %r61,[$LC0]; st.f32 [%r39],%r61; ld.const.f32 %r62,[$LC0+4]; st.f32 [%r39+4],%r62; bra $L1; $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 %r65,[%value_in]; } .loc 1 56 36 add.f32 %r67,%r65,%r65; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r67; call (%value_in),sinhf,(%out_arg1); ld.param.f32 %r68,[%value_in]; } .loc 1 56 60 div.rn.f32 %r38,%r68,%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 %r71,[%value_in]; } .loc 1 56 6 add.f32 %r73,%r71,%r71; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r73; call (%value_in),sinf,(%out_arg1); ld.param.f32 %r74,[%value_in]; } .loc 1 56 29 div.rn.f32 %r75,%r74,%r37; .loc 1 56 33 fma.rn.f32 %r76,%r38,0f00000000,%r75; .loc 1 57 9 st.f32 [%r39],%r76; st.f32 [%r39+4],%r38; $L1: .loc 1 58 1 ret; } lib_a-ctanh.o/ 1591654539 399 399 100644 2849 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %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; .reg .f64 %r52; 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 %r52,%r33,0d0000000000000000,%r51; .loc 1 82 9 st.f64 [%r34],%r52; st.f64 [%r34+8],%r33; .loc 1 83 1 ret; } lib_a-ctanhf.o/ 1591654539 399 399 100644 2864 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %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; .reg .f32 %r52; 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 %r52,%r33,0f00000000,%r51; .loc 1 49 9 st.f32 [%r34],%r52; st.f32 [%r34+4],%r33; .loc 1 50 1 ret; } lib_a-e_acos.o/ 1591654539 399 399 100644 6035 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r58; .reg .u32 %r59; .reg .f64 %r61; .reg .f64 %r65; .reg .f64 %r66; .reg .f64 %r67; .reg .f64 %r71; .reg .f64 %r73; .reg .u64 %r96; .reg .f64 %r97; .reg .f64 %r98; .reg .u64 %r99; .reg .u64 %r100; .reg .pred %r101; .reg .u32 %r102; .reg .u32 %r104; .reg .u32 %r105; .reg .pred %r106; .reg .pred %r107; .reg .pred %r108; .reg .pred %r109; .reg .f64 %r110; .reg .f64 %r111; .reg .f64 %r112; .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 .pred %r125; .reg .f64 %r126; .reg .f64 %r127; .reg .f64 %r128; .reg .f64 %r129; .reg .f64 %r130; .reg .f64 %r131; .reg .f64 %r132; .reg .f64 %r133; .reg .f64 %r134; .reg .f64 %r136; .reg .f64 %r137; .reg .f64 %r138; .reg .f64 %r139; .reg .f64 %r141; .reg .f64 %r142; .reg .f64 %r144; .reg .u64 %r145; .reg .f64 %r146; .reg .f64 %r147; .reg .f64 %r148; .reg .f64 %r149; .reg .f64 %r150; .reg .f64 %r151; .reg .f64 %r152; .reg .f64 %r153; .reg .f64 %r154; .reg .f64 %r155; .reg .f64 %r156; .reg .f64 %r157; .reg .f64 %r158; .reg .f64 %r159; .reg .f64 %r160; .reg .f64 %r161; .reg .f64 %r162; mov.f64 %r98,%ar0; .loc 1 71 2 mov.b64 %r99,%r98; shr.u64 %r100,%r99,32; cvt.u32.u64 %r58,%r100; .loc 1 72 5 and.b32 %r59,%r58,2147483647; .loc 1 73 4 setp.le.s32 %r101,%r59,1072693247; @ %r101 bra $L2; .loc 1 76 13 add.u32 %r102,%r59,-1072693248; .loc 1 76 25 cvt.u32.u64 %r105,%r99; or.b32 %r104,%r102,%r105; .loc 1 76 8 setp.ne.u32 %r106,%r104,0; @ %r106 bra $L3; .loc 1 77 5 setp.gt.s32 %r107,%r58,0; .loc 1 78 17 selp.f64 %r97,0d0000000000000000,0d400921fb54442d18,%r107; bra $L1; $L3: .loc 1 80 15 sub.f64 %r25,%r98,%r98; .loc 1 80 18 div.rn.f64 %r97,%r25,%r25; bra $L1; $L2: .loc 1 82 4 setp.gt.s32 %r108,%r59,1071644671; @ %r108 bra $L5; .loc 1 83 8 setp.le.s32 %r109,%r59,1012924416; @ %r109 bra $L8; .loc 1 84 8 mul.f64 %r61,%r98,%r98; .loc 1 88 36 neg.f64 %r110,%r98; .loc 1 85 44 fma.rn.f64 %r111,%r61,0d3f023de10dfdf709,0d3f49efe07501b288; .loc 1 85 37 fma.rn.f64 %r112,%r111,%r61,0dbfa48228b5688f3b; .loc 1 85 30 fma.rn.f64 %r113,%r112,%r61,0d3fc9c1550e884455; .loc 1 85 23 fma.rn.f64 %r114,%r113,%r61,0dbfd4d61203eb6f7d; .loc 1 85 16 fma.rn.f64 %r115,%r114,%r61,0d3fc5555555555555; .loc 1 85 8 mul.f64 %r116,%r115,%r61; .loc 1 86 34 fma.rn.f64 %r117,%r61,0d3fb3b8c5b12e9282,0dbfe6066c1b8d0159; .loc 1 86 27 fma.rn.f64 %r118,%r117,%r61,0d40002ae59c598ac8; .loc 1 86 20 fma.rn.f64 %r119,%r118,%r61,0dc0033a271c8a2d4b; .loc 1 86 8 fma.rn.f64 %r120,%r119,%r61,0d3ff0000000000000; .loc 1 87 8 div.rn.f64 %r121,%r116,%r120; .loc 1 88 36 fma.rn.f64 %r122,%r110,%r121,0d3c91a62633145c07; .loc 1 88 26 sub.f64 %r123,%r98,%r122; .loc 1 88 21 mov.f64 %r124,0d3ff921fb54442d18; sub.f64 %r97,%r124,%r123; bra $L1; $L5: .loc 1 89 13 setp.ge.s32 %r125,%r58,0; @ %r125 bra $L6; .loc 1 90 14 add.f64 %r126,%r98,0d3ff0000000000000; .loc 1 90 8 mul.f64 %r65,%r126,0d3fe0000000000000; .loc 1 91 44 fma.rn.f64 %r127,%r65,0d3f023de10dfdf709,0d3f49efe07501b288; .loc 1 91 37 fma.rn.f64 %r128,%r127,%r65,0dbfa48228b5688f3b; .loc 1 91 30 fma.rn.f64 %r129,%r128,%r65,0d3fc9c1550e884455; .loc 1 91 23 fma.rn.f64 %r130,%r129,%r65,0dbfd4d61203eb6f7d; .loc 1 91 16 fma.rn.f64 %r131,%r130,%r65,0d3fc5555555555555; .loc 1 91 8 mul.f64 %r66,%r131,%r65; .loc 1 92 34 fma.rn.f64 %r132,%r65,0d3fb3b8c5b12e9282,0dbfe6066c1b8d0159; .loc 1 92 27 fma.rn.f64 %r133,%r132,%r65,0d40002ae59c598ac8; .loc 1 92 20 fma.rn.f64 %r134,%r133,%r65,0dc0033a271c8a2d4b; .loc 1 92 8 fma.rn.f64 %r67,%r134,%r65,0d3ff0000000000000; .loc 1 93 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r65; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r136,[%value_in]; } .loc 1 94 8 div.rn.f64 %r137,%r66,%r67; .loc 1 95 8 fma.rn.f64 %r138,%r136,%r137,0dbc91a62633145c07; .loc 1 96 24 add.f64 %r139,%r138,%r136; .loc 1 96 16 fma.rn.f64 %r97,%r139,0dc000000000000000,0d400921fb54442d18; bra $L1; $L6: .loc 1 98 14 mov.f64 %r142,0d3ff0000000000000; sub.f64 %r141,%r142,%r98; .loc 1 98 8 mul.f64 %r71,%r141,0d3fe0000000000000; .loc 1 99 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r71; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r144,[%value_in]; } .loc 1 101 6 mov.b64 %r96,%r144; and.b64 %r145,%r96,-4294967296; mov.b64 %r73,%r145; .loc 1 102 13 neg.f64 %r146,%r73; fma.rn.f64 %r147,%r146,%r73,%r71; .loc 1 102 23 add.f64 %r148,%r144,%r73; .loc 1 102 9 div.rn.f64 %r149,%r147,%r148; .loc 1 103 44 fma.rn.f64 %r150,%r71,0d3f023de10dfdf709,0d3f49efe07501b288; .loc 1 103 37 fma.rn.f64 %r151,%r150,%r71,0dbfa48228b5688f3b; .loc 1 103 30 fma.rn.f64 %r152,%r151,%r71,0d3fc9c1550e884455; .loc 1 103 23 fma.rn.f64 %r153,%r152,%r71,0dbfd4d61203eb6f7d; .loc 1 103 16 fma.rn.f64 %r154,%r153,%r71,0d3fc5555555555555; .loc 1 103 8 mul.f64 %r155,%r154,%r71; .loc 1 104 34 fma.rn.f64 %r156,%r71,0d3fb3b8c5b12e9282,0dbfe6066c1b8d0159; .loc 1 104 27 fma.rn.f64 %r157,%r156,%r71,0d40002ae59c598ac8; .loc 1 104 20 fma.rn.f64 %r158,%r157,%r71,0dc0033a271c8a2d4b; .loc 1 104 8 fma.rn.f64 %r159,%r158,%r71,0d3ff0000000000000; .loc 1 105 8 div.rn.f64 %r160,%r155,%r159; .loc 1 106 8 fma.rn.f64 %r161,%r144,%r160,%r149; .loc 1 107 20 add.f64 %r162,%r161,%r73; .loc 1 107 16 add.f64 %r97,%r162,%r162; bra $L1; $L8: .loc 1 83 39 mov.f64 %r97,0d3ff921fb54442d18; $L1: .loc 1 109 1 mov.f64 %value,%r97; st.param.f64 [%value_out],%value; ret; } lib_a-e_acosh.o/1591654539 399 399 100644 3415 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r36; .reg .f64 %r37; .reg .f64 %r42; .reg .f64 %r43; .reg .u64 %r44; .reg .u64 %r45; .reg .pred %r46; .reg .pred %r47; .reg .pred %r48; .reg .f64 %r50; .reg .u32 %r51; .reg .u32 %r53; .reg .u32 %r54; .reg .pred %r55; .reg .pred %r56; .reg .f64 %r58; .reg .f64 %r59; .reg .f64 %r61; .reg .f64 %r62; .reg .f64 %r63; .reg .f64 %r64; .reg .f64 %r65; .reg .f64 %r66; .reg .f64 %r67; .reg .f64 %r69; .reg .f64 %r70; .reg .f64 %r71; .reg .f64 %r73; .reg .f64 %r74; mov.f64 %r43,%ar0; .loc 1 51 2 mov.b64 %r44,%r43; shr.u64 %r45,%r44,32; cvt.u32.u64 %r36,%r45; .loc 1 52 4 setp.gt.s32 %r46,%r36,1072693247; @ %r46 bra $L2; .loc 1 53 15 sub.f64 %r22,%r43,%r43; .loc 1 53 18 div.rn.f64 %r42,%r22,%r22; bra $L1; $L2: .loc 1 54 11 setp.le.s32 %r47,%r36,1102053375; @ %r47 bra $L4; .loc 1 55 8 setp.le.s32 %r48,%r36,2146435071; @ %r48 bra $L5; .loc 1 56 18 add.f64 %r42,%r43,%r43; bra $L1; $L5: .loc 1 58 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r43; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r50,[%value_in]; } .loc 1 58 26 add.f64 %r42,%r50,0d3fe62e42fefa39ef; bra $L1; $L4: .loc 1 59 16 add.u32 %r51,%r36,-1072693248; .loc 1 59 28 cvt.u32.u64 %r54,%r44; or.b32 %r53,%r51,%r54; .loc 1 59 11 setp.eq.u32 %r55,%r53,0; @ %r55 bra $L7; .loc 1 61 12 setp.le.s32 %r56,%r36,1073741824; @ %r56 bra $L6; .loc 1 63 40 fma.rn.f64 %r58,%r43,%r43,0dbff0000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r58; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r59,[%value_in]; } .loc 1 63 39 add.f64 %r61,%r59,%r43; .loc 1 63 36 mov.f64 %r63,0d3ff0000000000000; div.rn.f64 %r62,%r63,%r61; .loc 1 63 13 neg.f64 %r64,%r62; fma.rn.f64 %r65,%r43,0d4000000000000000,%r64; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r65; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r66,[%value_in]; } mov.f64 %r42,%r66; bra $L1; $L6: .loc 1 65 8 mov.f64 %r67,0d3ff0000000000000; sub.f64 %r37,%r43,%r67; .loc 1 66 43 mul.f64 %r69,%r37,%r37; .loc 1 66 21 fma.rn.f64 %r70,%r37,0d4000000000000000,%r69; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r70; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r71,[%value_in]; } .loc 1 66 13 add.f64 %r73,%r71,%r37; { .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 %r42,%r74; bra $L1; $L7: .loc 1 60 13 mov.f64 %r42,0d0000000000000000; $L1: .loc 1 68 1 mov.f64 %value,%r42; st.param.f64 [%value_out],%value; ret; } lib_a-e_asin.o/ 1591654539 399 399 100644 5602 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .f64 %r54; .reg .f64 %r59; .reg .f64 %r60; .reg .f64 %r61; .reg .f64 %r64; .reg .f64 %r66; .reg .u64 %r84; .reg .f64 %r85; .reg .f64 %r86; .reg .u64 %r87; .reg .u64 %r88; .reg .pred %r89; .reg .u32 %r90; .reg .u32 %r92; .reg .u32 %r93; .reg .pred %r94; .reg .f64 %r95; .reg .pred %r96; .reg .pred %r97; .reg .f64 %r98; .reg .pred %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 .f64 %r109; .reg .f64 %r110; .reg .f64 %r112; .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 %r124; .reg .pred %r125; .reg .f64 %r126; .reg .f64 %r127; .reg .f64 %r128; .reg .f64 %r129; .reg .u64 %r130; .reg .f64 %r131; .reg .f64 %r132; .reg .f64 %r133; .reg .f64 %r134; .reg .f64 %r135; .reg .f64 %r137; .reg .f64 %r138; .reg .f64 %r139; .reg .f64 %r141; .reg .f64 %r142; .reg .pred %r143; mov.f64 %r86,%ar0; .loc 1 80 2 mov.b64 %r87,%r86; shr.u64 %r88,%r87,32; cvt.u32.u64 %r52,%r88; .loc 1 81 5 and.b32 %r53,%r52,2147483647; .loc 1 82 4 setp.le.s32 %r89,%r53,1072693247; @ %r89 bra $L2; .loc 1 85 13 add.u32 %r90,%r53,-1072693248; .loc 1 85 25 cvt.u32.u64 %r93,%r87; or.b32 %r92,%r90,%r93; .loc 1 85 8 setp.ne.u32 %r94,%r92,0; @ %r94 bra $L3; .loc 1 87 21 mul.f64 %r95,%r86,0d3c91a62633145c07; .loc 1 87 19 fma.rn.f64 %r85,%r86,0d3ff921fb54442d18,%r95; bra $L1; $L3: .loc 1 88 15 sub.f64 %r26,%r86,%r86; .loc 1 88 18 div.rn.f64 %r85,%r26,%r26; bra $L1; $L2: .loc 1 89 12 setp.gt.s32 %r96,%r53,1071644671; @ %r96 bra $L5; .loc 1 90 8 setp.gt.s32 %r97,%r53,1044381695; @ %r97 bra $L6; .loc 1 91 10 add.f64 %r98,%r86,0d7e37e43c8800759c; .loc 1 91 5 setp.gt.f64 %r99,%r98,0d3ff0000000000000; @ ! %r99 bra $L5; bra $L9; $L6: .loc 1 93 5 mul.f64 %r54,%r86,%r86; .loc 1 94 41 fma.rn.f64 %r100,%r54,0d3f023de10dfdf709,0d3f49efe07501b288; .loc 1 94 34 fma.rn.f64 %r101,%r100,%r54,0dbfa48228b5688f3b; .loc 1 94 27 fma.rn.f64 %r102,%r101,%r54,0d3fc9c1550e884455; .loc 1 94 20 fma.rn.f64 %r103,%r102,%r54,0dbfd4d61203eb6f7d; .loc 1 94 13 fma.rn.f64 %r104,%r103,%r54,0d3fc5555555555555; .loc 1 94 5 mul.f64 %r105,%r104,%r54; .loc 1 95 31 fma.rn.f64 %r106,%r54,0d3fb3b8c5b12e9282,0dbfe6066c1b8d0159; .loc 1 95 24 fma.rn.f64 %r107,%r106,%r54,0d40002ae59c598ac8; .loc 1 95 17 fma.rn.f64 %r108,%r107,%r54,0dc0033a271c8a2d4b; .loc 1 95 5 fma.rn.f64 %r109,%r108,%r54,0d3ff0000000000000; .loc 1 96 5 div.rn.f64 %r110,%r105,%r109; .loc 1 97 11 fma.rn.f64 %r85,%r86,%r110,%r86; bra $L1; $L5: .loc 1 101 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r86; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r112,[%value_in]; } .loc 1 101 4 mov.f64 %r114,0d3ff0000000000000; sub.f64 %r113,%r114,%r112; .loc 1 102 4 mul.f64 %r59,%r113,0d3fe0000000000000; .loc 1 103 40 fma.rn.f64 %r115,%r59,0d3f023de10dfdf709,0d3f49efe07501b288; .loc 1 103 33 fma.rn.f64 %r116,%r115,%r59,0dbfa48228b5688f3b; .loc 1 103 26 fma.rn.f64 %r117,%r116,%r59,0d3fc9c1550e884455; .loc 1 103 19 fma.rn.f64 %r118,%r117,%r59,0dbfd4d61203eb6f7d; .loc 1 103 12 fma.rn.f64 %r119,%r118,%r59,0d3fc5555555555555; .loc 1 103 4 mul.f64 %r60,%r119,%r59; .loc 1 104 30 fma.rn.f64 %r120,%r59,0d3fb3b8c5b12e9282,0dbfe6066c1b8d0159; .loc 1 104 23 fma.rn.f64 %r121,%r120,%r59,0d40002ae59c598ac8; .loc 1 104 16 fma.rn.f64 %r122,%r121,%r59,0dc0033a271c8a2d4b; .loc 1 104 4 fma.rn.f64 %r61,%r122,%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 %r124,[%value_in]; } .loc 1 106 4 setp.le.s32 %r125,%r53,1072640818; @ %r125 bra $L7; .loc 1 107 8 div.rn.f64 %r126,%r60,%r61; .loc 1 108 25 fma.rn.f64 %r127,%r124,%r126,%r124; .loc 1 108 30 fma.rn.f64 %r128,%r127,0d4000000000000000,0dbc91a62633145c07; .loc 1 108 8 mov.f64 %r129,0d3ff921fb54442d18; sub.f64 %r85,%r129,%r128; bra $L8; $L7: .loc 1 111 6 mov.b64 %r84,%r124; and.b64 %r130,%r84,-4294967296; mov.b64 %r64,%r130; .loc 1 113 9 div.rn.f64 %r66,%r60,%r61; .loc 1 114 14 add.f64 %r131,%r124,%r124; .loc 1 112 13 neg.f64 %r132,%r64; fma.rn.f64 %r133,%r132,%r64,%r59; .loc 1 112 21 add.f64 %r134,%r124,%r64; .loc 1 112 9 div.rn.f64 %r135,%r133,%r134; .loc 1 114 27 fma.rn.f64 %r137,%r135,0dc000000000000000,0d3c91a62633145c07; .loc 1 114 9 neg.f64 %r138,%r137; fma.rn.f64 %r139,%r131,%r66,%r138; .loc 1 115 9 fma.rn.f64 %r141,%r132,0d4000000000000000,0d3fe921fb54442d18; .loc 1 116 21 sub.f64 %r51,%r139,%r141; .loc 1 116 9 mov.f64 %r142,0d3fe921fb54442d18; sub.f64 %r85,%r142,%r51; $L8: .loc 1 118 4 setp.gt.s32 %r143,%r52,0; @ %r143 bra $L1; .loc 1 118 33 neg.f64 %r85,%r85; bra $L1; $L9: .loc 1 91 25 mov.f64 %r85,%r86; $L1: .loc 1 119 1 mov.f64 %value,%r85; st.param.f64 [%value_out],%value; ret; } lib_a-e_atan2.o/1591654539 399 399 100644 6481 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 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 %r50; .reg .u32 %r51; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .u32 %r60; .reg .u64 %r61; .reg .f64 %r62; .reg .f64 %r63; .reg .f64 %r64; .reg .u64 %r65; .reg .u64 %r66; .reg .u32 %r68; .reg .u32 %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .pred %r72; .reg .u64 %r73; .reg .u64 %r74; .reg .u32 %r76; .reg .u32 %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .pred %r80; .reg .u32 %r81; .reg .u32 %r82; .reg .pred %r83; .reg .f64 %r85; .reg .u32 %r86; .reg .u32 %r87; .reg .u32 %r88; .reg .u32 %r89; .reg .pred %r90; .reg .pred %r91; .reg .pred %r92; .reg .u32 %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 .u32 %r106; .reg .pred %r107; .reg .u32 %r109; .reg .u32 %r111; .reg .u32 %r112; .reg .u16 %r114; .reg .u16 %r115; .reg .u16 %r116; .reg .u32 %r117; .reg .u16 %r118; .reg .pred %r119; .reg .f64 %r121; .reg .f64 %r122; .reg .f64 %r124; .reg .pred %r125; .reg .pred %r126; .reg .pred %r127; .reg .u64 %r129; .reg .u32 %r130; .reg .u32 %r131; .reg .u64 %r132; .reg .u64 %r133; .reg .u64 %r134; .reg .u64 %r135; .reg .f64 %r136; .reg .f64 %r137; .reg .f64 %r138; .reg .f64 %r139; .reg .f64 %r140; .reg .f64 %r141; mov.f64 %r63,%ar0; mov.f64 %r64,%ar1; .loc 1 69 2 mov.b64 %r65,%r64; shr.u64 %r66,%r65,32; cvt.u32.u64 %r50,%r66; cvt.u32.u64 %r58,%r65; .loc 1 70 5 and.b32 %r51,%r50,2147483647; .loc 1 73 15 neg.s32 %r68,%r58; .loc 1 73 14 or.b32 %r69,%r68,%r58; .loc 1 73 19 shr.u32 %r70,%r69,31; .loc 1 73 9 or.b32 %r71,%r70,%r51; .loc 1 73 4 setp.gt.u32 %r72,%r71,2146435072; @ %r72 bra $L2; mov.b64 %r73,%r63; shr.u64 %r74,%r73,32; cvt.u32.u64 %r57,%r74; cvt.u32.u64 %r56,%r73; .loc 1 72 5 and.b32 %r53,%r57,2147483647; .loc 1 74 15 neg.s32 %r76,%r56; .loc 1 74 14 or.b32 %r77,%r76,%r56; .loc 1 74 19 shr.u32 %r78,%r77,31; .loc 1 74 9 or.b32 %r79,%r78,%r53; .loc 1 73 37 setp.le.u32 %r80,%r79,2146435072; @ %r80 bra $L3; $L2: .loc 1 75 13 add.f64 %r62,%r64,%r63; bra $L1; $L3: .loc 1 76 9 add.u32 %r81,%r50,-1072693248; .loc 1 76 21 or.b32 %r82,%r81,%r58; .loc 1 76 4 setp.ne.u32 %r83,%r82,0; @ %r83 bra $L5; .loc 1 76 37 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r63; call (%value_in),atan,(%out_arg1); ld.param.f64 %r85,[%value_in]; } mov.f64 %r62,%r85; bra $L1; $L5: .loc 1 77 23 shr.s32 %r86,%r50,30; .loc 1 77 28 and.b32 %r87,%r86,2; .loc 1 77 15 shr.u32 %r88,%r57,31; .loc 1 77 4 or.b32 %r54,%r87,%r88; .loc 1 80 8 or.b32 %r89,%r53,%r56; .loc 1 80 4 setp.ne.u32 %r90,%r89,0; @ %r90 bra $L6; setp.eq.u32 %r91,%r54,2; @ %r91 bra $L15; setp.eq.u32 %r92,%r54,3; .loc 1 83 18 selp.f64 %r62,0dc00921fb54442d18,%r63,%r92; bra $L1; $L6: .loc 1 89 8 or.b32 %r93,%r51,%r58; .loc 1 89 4 setp.ne.u32 %r94,%r93,0; @ %r94 bra $L7; .loc 1 89 45 setp.ge.s32 %r95,%r57,0; selp.f64 %r62,0d3ff921fb54442d18,0dbff921fb54442d18,%r95; bra $L1; $L7: .loc 1 92 4 setp.ne.u32 %r96,%r51,2146435072; @ %r96 bra $L8; .loc 1 93 8 setp.ne.u32 %r97,%r53,2146435072; @ %r97 bra $L9; setp.eq.u32 %r98,%r54,2; @ %r98 bra $L18; setp.eq.u32 %r99,%r54,3; @ %r99 bra $L19; setp.eq.u32 %r100,%r54,1; .loc 1 95 29 selp.f64 %r62,0dbfe921fb54442d18,0d3fe921fb54442d18,%r100; bra $L1; $L9: setp.eq.u32 %r101,%r54,2; @ %r101 bra $L21; setp.eq.u32 %r102,%r54,3; @ %r102 bra $L22; setp.eq.u32 %r103,%r54,1; .loc 1 102 23 selp.f64 %r62,0d8000000000000000,0d0000000000000000,%r103; bra $L1; $L8: .loc 1 110 4 setp.ne.u32 %r104,%r53,2146435072; @ %r104 bra $L10; .loc 1 110 48 setp.ge.s32 %r105,%r57,0; .loc 1 89 45 selp.f64 %r62,0d3ff921fb54442d18,0dbff921fb54442d18,%r105; bra $L1; $L10: .loc 1 113 9 sub.u32 %r106,%r53,%r51; .loc 1 113 4 shr.s32 %r60,%r106,20; .loc 1 114 4 setp.gt.s32 %r107,%r60,60; @ %r107 bra $L25; .loc 1 115 12 shr.u32 %r109,%r50,31; .loc 1 115 17 set.u32.lt.s32 %r111,%r60,-60; neg.s32 %r112,%r111; .loc 1 115 14 cvt.u16.u32 %r115,%r109; cvt.u16.u32 %r116,%r112; and.b16 %r114,%r115,%r116; .loc 1 115 9 cvt.u32.u16 %r117,%r114; cvt.u16.u8 %r118,%r117; setp.ne.u16 %r119,%r118,0; @ %r119 bra $L26; .loc 1 116 9 div.rn.f64 %r121,%r63,%r64; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r121; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r122,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r122; call (%value_in),atan,(%out_arg1); ld.param.f64 %r124,[%value_in]; } mov.f64 %r62,%r124; bra $L11; $L25: .loc 1 114 14 mov.f64 %r62,0d3ff921fb54442d18; bra $L11; $L26: .loc 1 115 24 mov.f64 %r62,0d0000000000000000; $L11: setp.eq.u32 %r125,%r54,1; @ %r125 bra $L12; setp.eq.u32 %r126,%r54,2; @ %r126 bra $L13; setp.eq.u32 %r127,%r54,0; @ ! %r127 bra $L30; bra $L1; $L12: .loc 1 122 9 mov.b64 %r61,%r62; shr.u64 %r129,%r61,32; cvt.u32.u64 %r131,%r129; add.u32 %r130,%r131,-2147483648; cvt.u64.u32 %r132,%r130; shl.b64 %r133,%r132,32; and.b64 %r134,%r61,4294967295; or.b64 %r135,%r134,%r133; mov.b64 %r62,%r135; .loc 1 124 20 bra $L1; $L13: .loc 1 125 27 mov.f64 %r137,0d3ca1a62633145c07; sub.f64 %r136,%r62,%r137; .loc 1 125 24 mov.f64 %r138,0d400921fb54442d18; sub.f64 %r62,%r138,%r136; bra $L1; $L30: .loc 1 127 21 mov.f64 %r140,0d3ca1a62633145c07; sub.f64 %r139,%r62,%r140; .loc 1 127 28 mov.f64 %r141,0d400921fb54442d18; sub.f64 %r62,%r139,%r141; bra $L1; $L15: .loc 1 84 21 mov.f64 %r62,0d400921fb54442d18; bra $L1; $L18: .loc 1 97 33 mov.f64 %r62,0d4002d97c7f3321d2; bra $L1; $L19: .loc 1 98 33 mov.f64 %r62,0dc002d97c7f3321d2; bra $L1; $L21: .loc 1 84 21 mov.f64 %r62,0d400921fb54442d18; bra $L1; $L22: .loc 1 85 21 mov.f64 %r62,0dc00921fb54442d18; $L1: .loc 1 129 1 mov.f64 %value,%r62; st.param.f64 [%value_out],%value; ret; } lib_a-e_atanh.o/1591654539 399 399 100644 3321 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r42; .reg .f64 %r43; .reg .f64 %r45; .reg .f64 %r46; .reg .u64 %r47; .reg .u64 %r48; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .pred %r54; .reg .pred %r55; .reg .pred %r56; .reg .f64 %r57; .reg .pred %r58; .reg .u64 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u64 %r62; .reg .pred %r63; .reg .f64 %r65; .reg .f64 %r66; .reg .f64 %r67; .reg .f64 %r68; .reg .f64 %r69; .reg .f64 %r70; .reg .f64 %r72; .reg .f64 %r73; .reg .f64 %r74; .reg .f64 %r75; .reg .f64 %r76; .reg .pred %r77; .reg .u64 %r79; .reg .u64 %r80; .reg .u64 %r81; .reg .u64 %r82; 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 %r42,%r47; .loc 1 60 5 and.b32 %r39,%r38,2147483647; .loc 1 61 16 neg.s32 %r50,%r42; .loc 1 61 14 or.b32 %r51,%r50,%r42; .loc 1 61 21 shr.u32 %r52,%r51,31; .loc 1 61 9 or.b32 %r53,%r52,%r39; .loc 1 61 5 setp.le.u32 %r54,%r53,1072693248; @ %r54 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 %r55,%r39,1072693248; @ %r55 bra $L4; .loc 1 64 14 div.rn.f64 %r45,%r46,0d0000000000000000; bra $L1; $L4: .loc 1 65 4 setp.gt.s32 %r56,%r39,1043333119; @ %r56 bra $L5; .loc 1 65 25 add.f64 %r57,%r46,0d7e37e43c8800759c; .loc 1 65 18 setp.gt.f64 %r58,%r57,0d0000000000000000; @ ! %r58 bra $L11; bra $L10; $L5: .loc 1 66 2 cvt.u64.u32 %r59,%r39; shl.b64 %r60,%r59,32; and.b64 %r61,%r47,4294967295; or.b64 %r62,%r61,%r60; mov.b64 %r43,%r62; .loc 1 67 4 setp.gt.s32 %r63,%r39,1071644671; @ %r63 bra $L7; $L9: .loc 1 68 8 add.f64 %r40,%r43,%r43; .loc 1 69 23 mul.f64 %r65,%r40,%r43; .loc 1 69 30 mov.f64 %r67,0d3ff0000000000000; sub.f64 %r66,%r67,%r43; .loc 1 69 25 div.rn.f64 %r68,%r65,%r66; .loc 1 69 14 add.f64 %r69,%r68,%r40; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r69; call (%value_in),log1p,(%out_arg1); ld.param.f64 %r70,[%value_in]; } .loc 1 69 8 mul.f64 %r45,%r70,0d3fe0000000000000; bra $L8; $L7: .loc 1 71 22 add.f64 %r72,%r43,%r43; .loc 1 71 30 mov.f64 %r74,0d3ff0000000000000; sub.f64 %r73,%r74,%r43; .loc 1 71 14 div.rn.f64 %r75,%r72,%r73; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r75; call (%value_in),log1p,(%out_arg1); ld.param.f64 %r76,[%value_in]; } .loc 1 71 8 mul.f64 %r45,%r76,0d3fe0000000000000; $L8: .loc 1 72 4 setp.ge.s32 %r77,%r38,0; @ %r77 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 %r79,%r39; shl.b64 %r80,%r79,32; and.b64 %r81,%r47,4294967295; or.b64 %r82,%r81,%r80; mov.b64 %r43,%r82; bra $L9; $L1: .loc 1 73 1 mov.f64 %value,%r45; st.param.f64 [%value_out],%value; ret; } lib_a-e_cosh.o/ 1591654539 399 399 100644 4319 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 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 %r35; .reg .u32 %r36; .reg .u32 %r42; .reg .f64 %r43; .reg .f64 %r44; .reg .u64 %r45; .reg .u64 %r46; .reg .pred %r47; .reg .pred %r48; .reg .f64 %r50; .reg .f64 %r52; .reg .pred %r53; .reg .f64 %r54; .reg .f64 %r55; .reg .f64 %r56; .reg .pred %r57; .reg .f64 %r59; .reg .f64 %r61; .reg .f64 %r62; .reg .f64 %r63; .reg .pred %r64; .reg .f64 %r66; .reg .f64 %r68; .reg .pred %r70; .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 .f64 %r84; .reg .f64 %r86; .reg .f64 %r87; .reg .f64 %r88; .reg .f64 %r89; mov.f64 %r44,%ar0; .loc 1 57 2 mov.b64 %r45,%r44; shr.u64 %r46,%r45,32; cvt.u32.u64 %r35,%r46; .loc 1 58 5 and.b32 %r36,%r35,2147483647; .loc 1 61 4 setp.le.s32 %r47,%r36,2146435071; @ %r47 bra $L2; .loc 1 61 29 mul.f64 %r43,%r44,%r44; bra $L1; $L2: .loc 1 64 4 setp.gt.s32 %r48,%r36,1071001154; @ %r48 bra $L4; .loc 1 65 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r44; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r50,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r50; call (%value_in),expm1,(%out_arg1); ld.param.f64 %r52,[%value_in]; } .loc 1 66 8 add.f64 %r43,%r52,0d3ff0000000000000; .loc 1 67 9 setp.le.s32 %r53,%r36,1015021567; @ %r53 bra $L1; .loc 1 68 19 mul.f64 %r54,%r52,%r52; .loc 1 68 25 add.f64 %r55,%r43,%r43; .loc 1 68 22 div.rn.f64 %r56,%r54,%r55; .loc 1 68 16 add.f64 %r43,%r56,0d3ff0000000000000; bra $L1; $L4: .loc 1 72 5 setp.gt.s32 %r57,%r36,1077280767; @ %r57 bra $L5; .loc 1 73 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r44; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r59,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r59; call (%value_in),__ieee754_exp,(%out_arg1); ld.param.f64 %r61,[%value_in]; } .loc 1 74 21 mov.f64 %r63,0d3fe0000000000000; div.rn.f64 %r62,%r63,%r61; .loc 1 74 16 fma.rn.f64 %r43,%r61,0d3fe0000000000000,%r62; bra $L1; $L5: .loc 1 78 5 setp.gt.s32 %r64,%r36,1082535489; @ %r64 bra $L6; .loc 1 78 36 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r44; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r66,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r66; call (%value_in),__ieee754_exp,(%out_arg1); ld.param.f64 %r68,[%value_in]; } .loc 1 78 35 mul.f64 %r43,%r68,0d3fe0000000000000; bra $L1; $L6: cvt.u32.u64 %r42,%r45; .loc 1 82 5 setp.le.s32 %r70,%r36,1082536909; @ %r70 bra $L7; .loc 1 83 17 set.u32.eq.u32 %r72,%r36,1082536910; neg.s32 %r73,%r72; .loc 1 83 35 set.u32.le.u32 %r75,%r42,-1883637635; neg.s32 %r76,%r75; .loc 1 83 30 cvt.u16.u32 %r78,%r73; cvt.u16.u32 %r79,%r76; and.b16 %r77,%r78,%r79; .loc 1 82 20 cvt.u32.u16 %r80,%r77; cvt.u16.u8 %r81,%r80; setp.eq.u16 %r82,%r81,0; @ %r82 bra $L8; $L7: .loc 1 84 29 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r44; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r84,[%value_in]; } .loc 1 84 10 mul.f64 %r86,%r84,0d3fe0000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r86; call (%value_in),__ieee754_exp,(%out_arg1); ld.param.f64 %r87,[%value_in]; } .loc 1 85 8 mul.f64 %r88,%r87,0d3fe0000000000000; .loc 1 86 14 mul.f64 %r43,%r88,%r87; bra $L1; $L8: .loc 1 90 13 mov.f64 %r89,0d7e37e43c8800759c; mul.f64 %r43,%r89,0d7e37e43c8800759c; $L1: .loc 1 91 1 mov.f64 %value,%r43; st.param.f64 [%value_out],%value; ret; } lib_a-e_exp.o/ 1591654539 399 399 100644 6382 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 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 %r49; .reg .f64 %r50; .reg .u32 %r51; .reg .u32 %r53; .reg .u32 %r54; .reg .f64 %r56; .reg .f64 %r57; .reg .f64 %r58; .reg .f64 %r59; .reg .f64 %r60; .reg .f64 %r65; .reg .u32 %r74; .reg .f64 %r77; .reg .f64 %r78; .reg .u64 %r79; .reg .u64 %r80; .reg .pred %r81; .reg .pred %r82; .reg .u32 %r83; .reg .u32 %r85; .reg .u32 %r86; .reg .pred %r87; .reg .pred %r88; .reg .pred %r89; .reg .f64 %r90; .reg .pred %r91; .reg .pred %r92; .reg .pred %r93; .reg .u64 %r94; .reg .u64 %r95; .reg .u64 %r96; .reg .u64 %r97; .reg .f64 %r98; .reg .u64 %r99; .reg .u64 %r102; .reg .u32 %r103; .reg .u32 %r104; .reg .u64 %r105; .reg .u64 %r106; .reg .u64 %r107; .reg .u64 %r108; .reg .f64 %r109; .reg .f64 %r110; .reg .f64 %r112; .reg .f64 %r113; .reg .f64 %r114; .reg .f64 %r115; .reg .f64 %r116; .reg .pred %r117; .reg .pred %r118; .reg .f64 %r119; .reg .pred %r120; .reg .f64 %r122; .reg .f64 %r123; .reg .f64 %r124; .reg .f64 %r125; .reg .f64 %r126; .reg .f64 %r127; .reg .f64 %r128; .reg .f64 %r129; .reg .f64 %r130; .reg .f64 %r131; .reg .f64 %r132; .reg .u64 %r133; .reg .u64 %r134; .reg .pred %r135; .reg .u32 %r136; .reg .u32 %r137; .reg .u64 %r138; .reg .u64 %r139; .reg .u64 %r140; .reg .u64 %r141; .reg .u32 %r142; .reg .u32 %r143; .reg .u32 %r144; .reg .u64 %r145; .reg .u64 %r146; .reg .u64 %r147; .reg .u64 %r148; .reg .f64 %r150; .reg .f64 %r151; .reg .f64 %r152; .reg .f64 %r153; .reg .f64 %r154; .reg .f64 %r155; mov.f64 %r78,%ar0; mov.b64 %r79,%r78; shr.u64 %r80,%r79,32; cvt.u32.u64 %r54,%r80; .loc 1 116 16 shr.u32 %r22,%r54,31; .loc 1 117 5 and.b32 %r53,%r54,2147483647; .loc 1 120 4 setp.le.u32 %r81,%r53,1082535489; @ %r81 bra $L2; .loc 1 121 15 setp.le.u32 %r82,%r53,2146435071; @ %r82 bra $L3; .loc 1 124 10 and.b32 %r83,%r54,1048575; .loc 1 124 19 cvt.u32.u64 %r86,%r79; or.b32 %r85,%r83,%r86; .loc 1 124 5 setp.eq.u32 %r87,%r85,0; @ %r87 bra $L4; .loc 1 125 16 add.f64 %r77,%r78,%r78; bra $L1; $L4: .loc 1 126 26 setp.ne.u32 %r88,%r22,0; selp.f64 %r77,0d0000000000000000,%r78,%r88; bra $L1; $L3: .loc 1 128 8 setp.gt.f64 %r89,%r78,0d40862e42fefa39ef; @ ! %r89 bra $L23; .loc 1 128 37 mov.f64 %r90,0d7e37e43c8800759c; mul.f64 %r77,%r90,0d7e37e43c8800759c; bra $L1; $L23: .loc 1 129 8 setp.lt.f64 %r91,%r78,0dc0874910d52d3051; @ ! %r91 bra $L8; bra $L17; $L2: .loc 1 133 4 setp.le.u32 %r92,%r53,1071001154; @ %r92 bra $L9; .loc 1 134 8 setp.gt.u32 %r93,%r53,1072734897; @ %r93 bra $L8; .loc 1 135 15 cvta.const.u64 %r94,ln2HI; cvt.s64.s32 %r95,%r22; shl.b64 %r96,%r95,3; add.u64 %r97,%r94,%r96; .loc 1 135 6 ld.f64 %r98,[%r97]; sub.f64 %r49,%r78,%r98; .loc 1 135 24 cvta.const.u64 %r99,ln2LO; add.u64 %r102,%r99,%r96; ld.f64 %r50,[%r102]; .loc 1 135 42 mov.u32 %r104,1; sub.u32 %r103,%r104,%r22; .loc 1 135 39 sub.u32 %r51,%r103,%r22; bra $L10; $L8: .loc 1 137 21 cvta.const.u64 %r105,halF; cvt.s64.s32 %r106,%r22; shl.b64 %r107,%r106,3; add.u64 %r108,%r105,%r107; .loc 1 137 16 ld.f64 %r110,[%r108]; fma.rn.f64 %r109,%r78,0d3ff71547652b82fe,%r110; .loc 1 137 6 cvt.rzi.s32.f64 %r51,%r109; .loc 1 138 6 cvt.rn.f64.s32 %r56,%r51; .loc 1 139 6 fma.rn.f64 %r49,%r56,0dbfe62e42fee00000,%r78; .loc 1 140 6 mul.f64 %r50,%r56,0d3dea39ef35793c76; $L10: .loc 1 142 9 sub.f64 %r78,%r49,%r50; .loc 1 149 5 mul.f64 %r57,%r78,%r78; .loc 1 150 34 fma.rn.f64 %r112,%r57,0d3e66376972bea4d0,0dbebbbd41c5d26bf1; .loc 1 150 28 fma.rn.f64 %r113,%r112,%r57,0d3f11566aaf25de2c; .loc 1 150 22 fma.rn.f64 %r114,%r113,%r57,0dbf66c16c16bebd93; .loc 1 150 16 fma.rn.f64 %r115,%r114,%r57,0d3fc555555555553e; .loc 1 150 5 neg.f64 %r116,%r115; fma.rn.f64 %r65,%r116,%r57,%r78; mul.f64 %r155,%r78,%r65; .loc 1 151 4 setp.eq.u32 %r117,%r51,0; @ ! %r117 bra $L24; bra $L11; $L9: .loc 1 144 9 setp.gt.u32 %r118,%r53,1043333119; @ %r118 bra $L13; .loc 1 145 13 add.f64 %r119,%r78,0d7e37e43c8800759c; .loc 1 145 8 setp.gt.f64 %r120,%r119,0d3ff0000000000000; @ ! %r120 bra $L13; .loc 1 145 31 add.f64 %r77,%r78,0d3ff0000000000000; bra $L1; $L11: .loc 1 151 32 mov.f64 %r123,0d4000000000000000; sub.f64 %r122,%r65,%r123; .loc 1 151 29 div.rn.f64 %r124,%r155,%r122; .loc 1 151 37 sub.f64 %r125,%r124,%r78; .loc 1 151 22 mov.f64 %r126,0d3ff0000000000000; sub.f64 %r77,%r126,%r125; bra $L1; $L24: .loc 1 152 32 mov.f64 %r128,0d4000000000000000; sub.f64 %r127,%r128,%r65; .loc 1 152 27 div.rn.f64 %r129,%r155,%r127; .loc 1 152 21 sub.f64 %r130,%r50,%r129; .loc 1 152 36 sub.f64 %r131,%r130,%r49; .loc 1 152 11 mov.f64 %r132,0d3ff0000000000000; sub.f64 %r58,%r132,%r131; mov.b64 %r133,%r58; shr.u64 %r134,%r133,32; cvt.u32.u64 %r74,%r134; .loc 1 153 4 setp.lt.s32 %r135,%r51,-1021; @ %r135 bra $L15; .loc 1 156 6 shl.b32 %r136,%r51,20; add.u32 %r137,%r136,%r74; cvt.u64.u32 %r138,%r137; shl.b64 %r139,%r138,32; and.b64 %r140,%r133,4294967295; or.b64 %r141,%r140,%r139; mov.b64 %r77,%r141; .loc 1 157 13 bra $L1; $L15: .loc 1 161 6 add.u32 %r142,%r51,1000; shl.b32 %r143,%r142,20; add.u32 %r144,%r143,%r74; cvt.u64.u32 %r145,%r144; shl.b64 %r146,%r145,32; and.b64 %r147,%r133,4294967295; or.b64 %r148,%r147,%r146; mov.b64 %r59,%r148; .loc 1 162 14 mul.f64 %r77,%r59,0d0170000000000000; bra $L1; $L17: .loc 1 126 26 mov.f64 %r77,0d0000000000000000; bra $L1; $L13: .loc 1 149 5 mul.f64 %r60,%r78,%r78; .loc 1 150 5 neg.f64 %r150,%r60; .loc 1 150 34 fma.rn.f64 %r151,%r60,0d3e66376972bea4d0,0dbebbbd41c5d26bf1; .loc 1 150 28 fma.rn.f64 %r152,%r60,%r151,0d3f11566aaf25de2c; .loc 1 150 22 fma.rn.f64 %r153,%r60,%r152,0dbf66c16c16bebd93; .loc 1 150 16 fma.rn.f64 %r154,%r60,%r153,0d3fc555555555553e; .loc 1 150 5 fma.rn.f64 %r65,%r150,%r154,%r78; mul.f64 %r155,%r78,%r65; bra $L11; $L1: .loc 1 164 1 mov.f64 %value,%r77; st.param.f64 [%value_out],%value; ret; } lib_a-e_fmod.o/ 1591654539 399 399 100644 11016 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r46; .reg .u32 %r79; .reg .u32 %r86; .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 %r100; .reg .u32 %r101; .reg .u32 %r104; .reg .u32 %r106; .reg .u32 %r107; .reg .u32 %r108; .reg .u32 %r109; .reg .u32 %r110; .reg .u32 %r114; .reg .u32 %r115; .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 .u64 %r127; .reg .u64 %r128; .reg .u32 %r130; .reg .u32 %r132; .reg .u32 %r133; .reg .u32 %r135; .reg .u32 %r136; .reg .u16 %r137; .reg .u16 %r138; .reg .u16 %r139; .reg .u32 %r140; .reg .u16 %r141; .reg .pred %r142; .reg .u32 %r143; .reg .u32 %r144; .reg .u32 %r145; .reg .u32 %r146; .reg .pred %r147; .reg .pred %r149; .reg .u32 %r151; .reg .u32 %r152; .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 .u64 %r163; .reg .u32 %r164; .reg .u64 %r165; .reg .u64 %r166; .reg .u64 %r167; .reg .u32 %r168; .reg .pred %r169; .reg .pred %r170; .reg .pred %r171; .reg .pred %r173; .reg .pred %r174; .reg .pred %r176; .reg .u32 %r177; .reg .u32 %r178; .reg .pred %r179; .reg .pred %r180; .reg .pred %r181; .reg .pred %r183; .reg .pred %r184; .reg .pred %r186; .reg .u32 %r187; .reg .pred %r188; .reg .u32 %r189; .reg .pred %r190; .reg .u32 %r191; .reg .u32 %r192; .reg .u32 %r193; .reg .u32 %r194; .reg .u32 %r195; .reg .u32 %r197; .reg .pred %r198; .reg .u32 %r199; .reg .u32 %r200; .reg .u32 %r201; .reg .u32 %r202; .reg .u32 %r203; .reg .pred %r204; .reg .pred %r205; .reg .u32 %r206; .reg .u32 %r207; .reg .u32 %r209; .reg .pred %r210; .reg .u64 %r211; .reg .u32 %r212; .reg .u64 %r213; .reg .u64 %r214; .reg .u64 %r215; .reg .u32 %r216; .reg .u32 %r217; .reg .pred %r219; .reg .pred %r220; .reg .pred %r221; .reg .u32 %r222; .reg .pred %r223; .reg .pred %r224; .reg .u64 %r225; .reg .u32 %r226; .reg .u64 %r227; .reg .u64 %r228; .reg .u64 %r229; .reg .u32 %r230; .reg .u32 %r231; .reg .pred %r233; .reg .u32 %r235; .reg .u32 %r236; .reg .u32 %r237; .reg .u32 %r238; .reg .u32 %r239; .reg .u64 %r240; .reg .u64 %r244; .reg .u64 %r245; .reg .u64 %r246; .reg .u32 %r247; .reg .pred %r248; .reg .u32 %r249; .reg .u32 %r250; .reg .u32 %r251; .reg .pred %r252; .reg .u32 %r253; .reg .u32 %r254; .reg .u32 %r255; .reg .u32 %r256; .reg .u64 %r257; .reg .u64 %r261; .reg .u64 %r262; .reg .u64 %r263; .reg .pred %r265; mov.f64 %r123,%ar0; mov.f64 %r124,%ar1; .loc 1 40 2 mov.b64 %r125,%r123; shr.u64 %r126,%r125,32; cvt.u32.u64 %r97,%r126; .loc 1 41 2 mov.b64 %r127,%r124; shr.u64 %r128,%r127,32; cvt.u32.u64 %r98,%r128; cvt.u32.u64 %r96,%r127; .loc 1 43 5 and.b32 %r100,%r97,2147483647; .loc 1 44 5 and.b32 %r101,%r98,2147483647; .loc 1 47 8 or.b32 %r130,%r101,%r96; .loc 1 47 4 set.u32.eq.u32 %r132,%r130,0; neg.s32 %r133,%r132; .loc 1 47 15 set.u32.gt.s32 %r135,%r100,2146435071; neg.s32 %r136,%r135; cvt.u16.u32 %r138,%r133; cvt.u16.u32 %r139,%r136; or.b16 %r137,%r138,%r139; cvt.u32.u16 %r140,%r137; cvt.u16.u8 %r141,%r140; setp.ne.u16 %r142,%r141,0; @ %r142 bra $L2; .loc 1 48 14 neg.s32 %r143,%r96; .loc 1 48 13 or.b32 %r144,%r143,%r96; .loc 1 48 18 shr.u32 %r145,%r144,31; .loc 1 48 8 or.b32 %r146,%r145,%r101; .loc 1 47 33 setp.le.u32 %r147,%r146,2146435072; @ %r147 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 %r94,%r125; .loc 1 42 5 and.b32 %r119,%r97,-2147483648; .loc 1 50 4 setp.gt.s32 %r149,%r100,%r101; @ %r149 bra $L5; .loc 1 51 12 set.u32.lt.s32 %r151,%r100,%r101; neg.s32 %r152,%r151; .loc 1 51 21 set.u32.lt.u32 %r154,%r94,%r96; neg.s32 %r155,%r154; .loc 1 51 16 cvt.u16.u32 %r157,%r152; cvt.u16.u32 %r158,%r155; or.b16 %r156,%r157,%r158; .loc 1 51 8 cvt.u32.u16 %r159,%r156; cvt.u16.u8 %r160,%r159; setp.ne.u16 %r161,%r160,0; @ %r161 bra $L37; .loc 1 52 8 setp.ne.u32 %r162,%r94,%r96; @ %r162 bra $L5; .loc 1 53 14 cvta.const.u64 %r163,Zero; .loc 1 53 29 shr.u32 %r164,%r119,31; .loc 1 53 14 cvt.u64.u32 %r165,%r164; shl.b64 %r166,%r165,3; add.u64 %r167,%r163,%r166; ld.f64 %r122,[%r167]; bra $L1; $L5: .loc 1 57 4 and.b32 %r168,%r97,2146435072; setp.ne.u32 %r169,%r168,0; @ %r169 bra $L6; .loc 1 58 8 setp.ne.u32 %r170,%r100,0; @ %r170 bra $L7; .loc 1 59 21 mov.u32 %r104,%r94; .loc 1 59 3 setp.le.s32 %r171,%r94,0; @ %r171 bra $L38; .loc 1 59 11 mov.u32 %r93,-1043; $L9: .loc 1 59 41 add.u32 %r93,%r93,-1; .loc 1 59 32 add.u32 %r104,%r104,%r104; .loc 1 59 3 setp.gt.s32 %r173,%r104,0; @ %r173 bra $L9; bra $L8; $L7: .loc 1 61 20 shl.b32 %r106,%r100,11; .loc 1 61 3 setp.le.s32 %r174,%r106,0; @ %r174 bra $L39; .loc 1 61 11 mov.u32 %r93,-1022; $L10: .loc 1 61 46 add.u32 %r93,%r93,-1; .loc 1 61 37 add.u32 %r106,%r106,%r106; .loc 1 61 3 setp.gt.s32 %r176,%r106,0; @ %r176 bra $L10; bra $L8; $L6: .loc 1 63 17 shr.s32 %r177,%r100,20; .loc 1 63 12 add.u32 %r93,%r177,-1023; bra $L8; $L38: .loc 1 59 11 mov.u32 %r93,-1043; bra $L8; $L39: .loc 1 61 11 mov.u32 %r93,-1022; $L8: .loc 1 66 4 and.b32 %r178,%r98,2146435072; setp.ne.u32 %r179,%r178,0; @ %r179 bra $L11; .loc 1 67 8 setp.ne.u32 %r180,%r101,0; @ %r180 bra $L12; .loc 1 68 21 mov.u32 %r107,%r96; .loc 1 68 3 setp.le.s32 %r181,%r96,0; @ %r181 bra $L40; .loc 1 68 11 mov.u32 %r114,-1043; $L14: .loc 1 68 41 add.u32 %r114,%r114,-1; .loc 1 68 32 add.u32 %r107,%r107,%r107; .loc 1 68 3 setp.gt.s32 %r183,%r107,0; @ %r183 bra $L14; bra $L13; $L12: .loc 1 70 20 shl.b32 %r108,%r101,11; .loc 1 70 3 setp.le.s32 %r184,%r108,0; @ %r184 bra $L41; .loc 1 70 11 mov.u32 %r114,-1022; $L15: .loc 1 70 46 add.u32 %r114,%r114,-1; .loc 1 70 37 add.u32 %r108,%r108,%r108; .loc 1 70 3 setp.gt.s32 %r186,%r108,0; @ %r186 bra $L15; bra $L13; $L11: .loc 1 72 17 shr.s32 %r187,%r101,20; .loc 1 72 12 add.u32 %r114,%r187,-1023; bra $L13; $L40: .loc 1 68 11 mov.u32 %r114,-1043; bra $L13; $L41: .loc 1 70 11 mov.u32 %r114,-1022; $L13: .loc 1 75 4 setp.lt.s32 %r188,%r93,-1022; @ %r188 bra $L16; .loc 1 76 33 and.b32 %r38,%r97,1048575; .loc 1 76 9 or.b32 %r90,%r38,1048576; bra $L17; $L16: .loc 1 78 8 mov.u32 %r189,-1022; sub.u32 %r109,%r189,%r93; .loc 1 79 8 setp.gt.s32 %r190,%r109,31; @ %r190 bra $L18; .loc 1 80 31 add.u32 %r191,%r93,1054; .loc 1 80 26 shr.u32 %r192,%r94,%r191; .loc 1 80 18 shl.b32 %r193,%r100,%r109; .loc 1 80 22 or.b32 %r90,%r192,%r193; .loc 1 81 13 shl.b32 %r94,%r94,%r109; bra $L17; $L18: .loc 1 83 14 mov.u32 %r195,-1054; sub.u32 %r194,%r195,%r93; .loc 1 83 10 shl.b32 %r90,%r94,%r194; .loc 1 84 6 mov.u32 %r94,0; $L17: .loc 1 87 4 setp.lt.s32 %r265,%r114,-1022; @ %r265 bra $L19; .loc 1 88 33 and.b32 %r46,%r98,1048575; .loc 1 88 9 or.b32 %r91,%r46,1048576; bra $L20; $L19: .loc 1 90 8 mov.u32 %r197,-1022; sub.u32 %r110,%r197,%r114; .loc 1 91 8 setp.gt.s32 %r198,%r110,31; @ %r198 bra $L21; .loc 1 92 31 add.u32 %r199,%r114,1054; .loc 1 92 26 shr.u32 %r200,%r96,%r199; .loc 1 92 18 shl.b32 %r201,%r101,%r110; .loc 1 92 22 or.b32 %r91,%r200,%r201; .loc 1 93 13 shl.b32 %r96,%r96,%r110; bra $L20; $L21: .loc 1 95 14 mov.u32 %r203,-1054; sub.u32 %r202,%r203,%r114; .loc 1 95 10 shl.b32 %r91,%r96,%r202; .loc 1 96 6 mov.u32 %r96,0; $L20: .loc 1 101 4 sub.u32 %r118,%r93,%r114; .loc 1 102 7 bra $L22; $L27: .loc 1 103 27 setp.ge.u32 %r204,%r94,%r96; @ %r204 bra $L23; .loc 1 103 38 add.u32 %r92,%r92,-1; $L23: .loc 1 104 8 setp.ge.s32 %r205,%r92,0; @ %r205 bra $L24; .loc 1 104 22 add.u32 %r206,%r90,%r90; .loc 1 104 29 shr.u32 %r207,%r94,31; .loc 1 104 25 add.u32 %r90,%r206,%r207; .loc 1 104 39 add.u32 %r94,%r94,%r94; bra $L25; $L24: .loc 1 106 13 or.b32 %r209,%r92,%r117; .loc 1 106 9 setp.ne.u32 %r210,%r209,0; @ %r210 bra $L26; .loc 1 107 18 cvta.const.u64 %r211,Zero; .loc 1 107 33 shr.u32 %r212,%r119,31; .loc 1 107 18 cvt.u64.u32 %r213,%r212; shl.b64 %r214,%r213,3; add.u64 %r215,%r211,%r214; ld.f64 %r122,[%r215]; bra $L1; $L26: .loc 1 108 14 add.u32 %r216,%r92,%r92; .loc 1 108 21 shr.u32 %r217,%r117,31; .loc 1 108 17 add.u32 %r90,%r216,%r217; .loc 1 108 31 add.u32 %r94,%r117,%r117; $L25: add.u32 %r118,%r118,-1; $L22: sub.u32 %r92,%r90,%r91; sub.u32 %r117,%r94,%r96; .loc 1 102 7 setp.ne.u32 %r219,%r118,0; @ %r219 bra $L27; .loc 1 111 23 setp.ge.u32 %r220,%r94,%r96; @ %r220 bra $L28; .loc 1 111 34 add.u32 %r92,%r92,-1; $L28: .loc 1 112 4 setp.lt.s32 %r221,%r92,0; selp.u32 %r94,%r94,%r117,%r221; selp.u32 %r90,%r90,%r92,%r221; .loc 1 115 8 or.b32 %r222,%r90,%r94; .loc 1 115 4 setp.eq.u32 %r223,%r222,0; @ %r223 bra $L30; .loc 1 117 7 setp.le.s32 %r224,%r90,1048575; @ %r224 bra $L31; bra $L32; $L30: .loc 1 116 17 cvta.const.u64 %r225,Zero; .loc 1 116 32 shr.u32 %r226,%r119,31; .loc 1 116 17 cvt.u64.u32 %r227,%r226; shl.b64 %r228,%r227,3; add.u64 %r229,%r225,%r228; ld.f64 %r122,[%r229]; bra $L1; $L31: .loc 1 118 13 add.u32 %r230,%r90,%r90; .loc 1 118 20 shr.u32 %r231,%r94,31; .loc 1 118 16 add.u32 %r90,%r230,%r231; .loc 1 118 30 add.u32 %r94,%r94,%r94; .loc 1 119 9 add.u32 %r114,%r114,-1; .loc 1 117 7 setp.le.s32 %r233,%r90,1048575; @ %r233 bra $L31; setp.lt.s32 %r265,%r114,-1022; $L32: .loc 1 121 4 @ %r265 bra $L33; .loc 1 122 32 add.u32 %r235,%r114,1023; .loc 1 122 38 shl.b32 %r236,%r235,20; .loc 1 122 15 add.u32 %r237,%r90,-1048576; .loc 1 123 6 or.b32 %r238,%r237,%r119; or.b32 %r239,%r236,%r238; cvt.u64.u32 %r240,%r239; cvt.u64.u32 %r244,%r94; shl.b64 %r245,%r240,32; or.b64 %r246,%r245,%r244; mov.b64 %r122,%r246; bra $L1; $L33: .loc 1 125 8 mov.u32 %r247,-1022; sub.u32 %r115,%r247,%r114; .loc 1 126 8 setp.gt.s32 %r248,%r115,20; @ %r248 bra $L34; .loc 1 127 11 shr.u32 %r79,%r94,%r115; .loc 1 127 36 add.u32 %r249,%r114,1054; .loc 1 127 31 shl.b32 %r250,%r90,%r249; .loc 1 127 6 or.b32 %r95,%r250,%r79; .loc 1 128 6 shr.s32 %r251,%r90,%r115; or.b32 %r119,%r119,%r251; bra $L35; $L34: .loc 1 129 16 setp.gt.s32 %r252,%r115,31; @ %r252 bra $L36; .loc 1 130 24 shr.u32 %r86,%r94,%r115; .loc 1 130 16 add.u32 %r253,%r114,1054; .loc 1 130 11 shl.b32 %r254,%r90,%r253; .loc 1 130 6 or.b32 %r95,%r254,%r86; bra $L35; $L36: .loc 1 132 14 mov.u32 %r256,-1054; sub.u32 %r255,%r256,%r114; .loc 1 132 10 shr.s32 %r95,%r90,%r255; $L35: .loc 1 134 6 cvt.u64.u32 %r257,%r119; cvt.u64.u32 %r261,%r95; shl.b64 %r262,%r257,32; or.b64 %r263,%r262,%r261; mov.b64 %r122,%r263; bra $L1; $L37: .loc 1 51 34 mov.f64 %r122,%r123; $L1: .loc 1 138 1 mov.f64 %value,%r122; st.param.f64 [%value_out],%value; ret; } lib_a-e_hypot.o/1591654539 399 399 100644 6721 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r49; .reg .f64 %r53; .reg .u32 %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .f64 %r64; .reg .f64 %r65; .reg .f64 %r67; .reg .f64 %r69; .reg .f64 %r71; .reg .f64 %r73; .reg .u64 %r78; .reg .u64 %r79; .reg .u64 %r83; .reg .u64 %r84; .reg .f64 %r89; .reg .f64 %r90; .reg .f64 %r91; .reg .u32 %r92; .reg .f64 %r93; .reg .u64 %r94; .reg .u64 %r95; .reg .u64 %r96; .reg .u64 %r97; .reg .pred %r98; .reg .u64 %r100; .reg .u64 %r101; .reg .u64 %r102; .reg .u64 %r104; .reg .u64 %r105; .reg .u64 %r106; .reg .u32 %r107; .reg .pred %r108; .reg .pred %r109; .reg .pred %r110; .reg .u32 %r111; .reg .u32 %r113; .reg .u32 %r114; .reg .pred %r115; .reg .u32 %r116; .reg .u32 %r118; .reg .u32 %r119; .reg .pred %r120; .reg .u64 %r122; .reg .u64 %r123; .reg .u64 %r124; .reg .u64 %r126; .reg .u64 %r127; .reg .u64 %r128; .reg .pred %r129; .reg .pred %r130; .reg .u64 %r131; .reg .u32 %r132; .reg .u32 %r133; .reg .pred %r134; .reg .u64 %r136; .reg .u64 %r137; .reg .u64 %r138; .reg .u64 %r140; .reg .u64 %r141; .reg .u64 %r142; .reg .pred %r143; .reg .u64 %r145; .reg .f64 %r149; .reg .f64 %r150; .reg .f64 %r151; .reg .f64 %r152; .reg .f64 %r153; .reg .f64 %r154; .reg .f64 %r155; .reg .f64 %r156; .reg .f64 %r157; .reg .u64 %r159; .reg .u32 %r162; .reg .u64 %r163; .reg .u64 %r164; .reg .f64 %r167; .reg .f64 %r168; .reg .f64 %r169; .reg .f64 %r170; .reg .f64 %r171; .reg .f64 %r172; .reg .f64 %r173; .reg .f64 %r174; .reg .f64 %r175; .reg .f64 %r177; .reg .pred %r178; .reg .u32 %r179; .reg .u32 %r180; .reg .u64 %r181; .reg .u64 %r182; .reg .u64 %r186; .reg .u64 %r187; mov.f64 %r90,%ar0; mov.f64 %r91,%ar1; .loc 1 60 2 mov.b64 %r94,%r90; shr.u64 %r95,%r94,32; cvt.u32.u64 %r58,%r95; .loc 1 61 5 and.b32 %r56,%r58,2147483647; .loc 1 62 2 mov.b64 %r96,%r91; shr.u64 %r97,%r96,32; cvt.u32.u64 %r59,%r97; .loc 1 63 5 and.b32 %r57,%r59,2147483647; .loc 1 64 4 setp.ge.s32 %r98,%r56,%r57; @ %r98 bra $L2; mov.u32 %r92,%r56; mov.u32 %r56,%r57; mov.u32 %r57,%r92; mov.f64 %r93,%r90; .loc 1 64 16 mov.f64 %r90,%r91; .loc 1 64 20 mov.f64 %r91,%r93; $L2: .loc 1 65 2 mov.b64 %r78,%r90; cvt.u64.u32 %r186,%r56; shl.b64 %r100,%r186,32; and.b64 %r101,%r78,4294967295; or.b64 %r102,%r101,%r100; mov.b64 %r89,%r102; .loc 1 66 2 mov.b64 %r79,%r91; cvt.u64.u32 %r187,%r57; shl.b64 %r104,%r187,32; and.b64 %r105,%r79,4294967295; or.b64 %r106,%r105,%r104; mov.b64 %r53,%r106; .loc 1 67 8 sub.u32 %r107,%r56,%r57; .loc 1 67 4 setp.le.s32 %r108,%r107,62914560; @ %r108 bra $L3; .loc 1 67 33 add.f64 %r89,%r89,%r53; bra $L1; $L3: .loc 1 69 4 setp.le.s32 %r109,%r56,1596981248; @ %r109 bra $L13; .loc 1 70 7 setp.le.s32 %r110,%r56,2146435071; @ %r110 bra $L6; .loc 1 74 16 and.b32 %r111,%r56,1048575; .loc 1 74 25 cvt.u32.u64 %r114,%r102; or.b32 %r113,%r111,%r114; .loc 1 74 11 setp.eq.u32 %r115,%r113,0; @ %r115 bra $L7; .loc 1 72 11 add.f64 %r89,%r89,%r53; $L7: .loc 1 76 16 xor.b32 %r116,%r57,2146435072; .loc 1 76 28 cvt.u32.u64 %r119,%r106; or.b32 %r118,%r116,%r119; .loc 1 76 11 setp.ne.u32 %r120,%r118,0; .loc 1 76 40 selp.f64 %r89,%r89,%r53,%r120; bra $L1; $L6: .loc 1 80 8 add.u32 %r56,%r56,-629145600; .loc 1 80 26 add.u32 %r57,%r57,-629145600; .loc 1 81 5 cvt.u64.u32 %r186,%r56; shl.b64 %r122,%r186,32; and.b64 %r123,%r102,4294967295; or.b64 %r124,%r123,%r122; mov.b64 %r89,%r124; .loc 1 82 5 cvt.u64.u32 %r187,%r57; shl.b64 %r126,%r187,32; and.b64 %r127,%r106,4294967295; or.b64 %r128,%r127,%r126; mov.b64 %r53,%r128; .loc 1 80 43 mov.u32 %r55,600; bra $L5; $L13: .loc 1 68 3 mov.u32 %r55,0; $L5: .loc 1 84 4 setp.gt.s32 %r129,%r57,548405247; @ %r129 bra $L8; .loc 1 85 8 setp.gt.s32 %r130,%r57,1048575; @ %r130 bra $L9; .loc 1 88 9 mov.b64 %r131,%r53; cvt.u32.u64 %r133,%r131; or.b32 %r132,%r57,%r133; .loc 1 88 5 setp.eq.u32 %r134,%r132,0; @ %r134 bra $L1; .loc 1 90 3 mov.f64 %r64,0d7fd0000000000000; .loc 1 91 5 mul.f64 %r53,%r53,%r64; .loc 1 92 5 mul.f64 %r89,%r89,%r64; .loc 1 93 5 add.u32 %r55,%r55,-1022; bra $L8; $L9: .loc 1 95 13 add.u32 %r56,%r56,629145600; .loc 1 96 6 add.u32 %r57,%r57,629145600; .loc 1 97 5 add.u32 %r55,%r55,-600; .loc 1 98 3 mov.b64 %r83,%r89; cvt.u64.u32 %r186,%r56; shl.b64 %r136,%r186,32; and.b64 %r137,%r83,4294967295; or.b64 %r138,%r137,%r136; mov.b64 %r89,%r138; .loc 1 99 3 mov.b64 %r84,%r53; cvt.u64.u32 %r187,%r57; shl.b64 %r140,%r187,32; and.b64 %r141,%r84,4294967295; or.b64 %r142,%r141,%r140; mov.b64 %r53,%r142; $L8: .loc 1 103 4 sub.f64 %r65,%r89,%r53; .loc 1 104 5 setp.lt.f64 %r143,%r53,%r65; @ ! %r143 bra $L24; .loc 1 106 6 shl.b64 %r145,%r186,32; mov.b64 %r67,%r145; .loc 1 108 36 neg.f64 %r149,%r53; .loc 1 108 45 add.f64 %r150,%r89,%r67; .loc 1 107 9 sub.f64 %r151,%r89,%r67; .loc 1 108 42 mul.f64 %r152,%r150,%r151; .loc 1 108 39 neg.f64 %r153,%r152; fma.rn.f64 %r154,%r149,%r53,%r153; .loc 1 108 11 neg.f64 %r155,%r154; fma.rn.f64 %r156,%r67,%r67,%r155; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r156; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r157,[%value_in]; } mov.f64 %r89,%r157; bra $L12; $L24: .loc 1 112 6 shl.b64 %r159,%r187,32; mov.b64 %r69,%r159; .loc 1 115 6 add.u32 %r162,%r56,1048576; cvt.u64.u32 %r163,%r162; shl.b64 %r164,%r163,32; mov.b64 %r71,%r164; .loc 1 117 36 neg.f64 %r167,%r65; .loc 1 113 9 sub.f64 %r168,%r53,%r69; .loc 1 116 9 neg.f64 %r169,%r71; fma.rn.f64 %r170,%r89,0d4000000000000000,%r169; .loc 1 117 49 mul.f64 %r171,%r170,%r53; .loc 1 117 46 fma.rn.f64 %r172,%r168,%r71,%r171; .loc 1 117 39 neg.f64 %r173,%r172; fma.rn.f64 %r174,%r167,%r65,%r173; .loc 1 117 11 neg.f64 %r175,%r174; fma.rn.f64 %r49,%r69,%r71,%r175; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r49; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r177,[%value_in]; } mov.f64 %r89,%r177; $L12: .loc 1 119 4 setp.eq.u32 %r178,%r55,0; @ %r178 bra $L1; .loc 1 123 6 shl.b32 %r179,%r55,20; add.u32 %r180,%r179,1072693248; cvt.u64.u32 %r181,%r180; shl.b64 %r182,%r181,32; mov.b64 %r73,%r182; .loc 1 124 15 mul.f64 %r89,%r89,%r73; $L1: .loc 1 126 1 mov.f64 %value,%r89; st.param.f64 [%value_out],%value; ret; } lib_a-e_j0.o/ 1591654539 399 399 100644 18241 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r28; .reg .u32 %r35; .reg .u32 %r36; .reg .f64 %r37; .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 %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .pred %r53; .reg .pred %r54; .reg .pred %r55; .reg .f64 %r56; .reg .f64 %r57; .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; mov.f64 %r50,%ar0; .loc 1 339 2 mov.b64 %r51,%r50; shr.u64 %r52,%r51,32; cvt.u32.u64 %r35,%r52; .loc 1 340 5 and.b32 %r36,%r35,2147483647; .loc 1 341 4 setp.gt.s32 %r53,%r36,1075838975; @ %r53 bra $L3; .loc 1 342 9 setp.gt.s32 %r54,%r36,1074933386; @ %r54 bra $L4; .loc 1 343 9 setp.le.s32 %r55,%r36,1074191212; selp.f64 %r48,0d402d50b344391809,0d4065b296fc379081,%r55; selp.f64 %r47,0d40633c033ab6faff,0d40919ffcb8c39b7e,%r55; selp.f64 %r46,0d4070e78642ea079b,0d4092a66e6d1061d6,%r55; selp.f64 %r45,0d4061069e0ee8878f,0d40769839464a7c0e,%r55; selp.f64 %r44,0dc009de81af8fe70f,0dc03f72aca892d80f,%r55; selp.f64 %r43,0dc02662e6c5246303,0dc04d0a22420a1a45,%r55; selp.f64 %r42,0dc01e8af3edafa7f3,0dc035f74a4cb94e14,%r55; selp.f64 %r41,0dbff736398a24a843,0dc00345b2aea48074,%r55; selp.f64 %r40,0dbfb1ff62495e1e42,0dbfb1fff6f7c0e24b,%r55; selp.f64 %r28,0d40363865908b5959,0d4041ed9284077dd3,%r55; selp.f64 %r23,0dbe77d316e927026d,0dbe25e1036fe1aa86,%r55; bra $L2; $L3: 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 341 36 mov.f64 %r28,0d405d223307a96751; .loc 1 341 28 mov.f64 %r23,0d0000000000000000; bra $L2; $L4: 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 342 36 mov.f64 %r28,0d404e60810c98c5de; .loc 1 342 28 mov.f64 %r23,0dbda918b147e495cc; $L2: .loc 1 345 12 mul.f64 %r56,%r50,%r50; .loc 1 345 4 mov.f64 %r57,0d3ff0000000000000; div.rn.f64 %r37,%r57,%r56; .loc 1 346 42 fma.rn.f64 %r59,%r37,%r44,%r43; .loc 1 346 34 fma.rn.f64 %r60,%r59,%r37,%r42; .loc 1 346 26 fma.rn.f64 %r61,%r60,%r37,%r41; .loc 1 346 18 fma.rn.f64 %r62,%r61,%r37,%r40; .loc 1 346 4 fma.rn.f64 %r63,%r62,%r37,%r23; .loc 1 347 41 fma.rn.f64 %r64,%r37,%r48,%r47; .loc 1 347 33 fma.rn.f64 %r65,%r64,%r37,%r46; .loc 1 347 25 fma.rn.f64 %r66,%r65,%r37,%r45; .loc 1 347 17 fma.rn.f64 %r67,%r66,%r37,%r28; .loc 1 347 4 fma.rn.f64 %r68,%r67,%r37,0d3ff0000000000000; .loc 1 348 15 div.rn.f64 %r69,%r63,%r68; .loc 1 348 12 add.f64 %value,%r69,0d3ff0000000000000; .loc 1 349 1 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 %r28; .reg .u32 %r37; .reg .u32 %r38; .reg .f64 %r39; .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 %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .pred %r56; .reg .pred %r57; .reg .pred %r58; .reg .f64 %r59; .reg .f64 %r60; .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 %r74; .reg .f64 %r75; mov.f64 %r53,%ar0; .loc 1 475 2 mov.b64 %r54,%r53; shr.u64 %r55,%r54,32; cvt.u32.u64 %r37,%r55; .loc 1 476 5 and.b32 %r38,%r37,2147483647; .loc 1 477 4 setp.gt.s32 %r56,%r38,1075838975; @ %r56 bra $L8; .loc 1 478 9 setp.gt.s32 %r57,%r38,1074933386; @ %r57 bra $L9; .loc 1 479 9 setp.le.s32 %r58,%r38,1074191212; selp.f64 %r51,0dc0153e6af8b32931,0dc062a7eb201cf40f,%r58; selp.f64 %r50,0d406a95530e001365,0d40a3a8aad94fb1c0,%r58; selp.f64 %r49,0d408b977c9c5cc214,0d40b93c6cd7c76a28,%r58; selp.f64 %r48,0d408a664522b3bf22,0d40acf04be44dfc63,%r58; selp.f64 %r47,0d4070d591e4d14b40,0d40862d8386544eb3,%r58; selp.f64 %r46,0d403040b171814bb4,0d4064d77c81fa21e0,%r58; selp.f64 %r45,0d403faa8e29fbdc4a,0d406559dbe25efd1f,%r58; selp.f64 %r44,0d402cfdbfaaf96fe5,0d40454f98962daedd,%r58; selp.f64 %r43,0d3ffff897e727779c,0d400ac0fc61149cf5,%r58; selp.f64 %r42,0d3fb2bec53e883e34,0d3fb2bfee0e8d0842,%r58; selp.f64 %r28,0d403e5d96f7c07aed,0d40486122bfe343a6,%r58; selp.f64 %r23,0d3e84313b54f76bdb,0d3e32cd036adecb82,%r58; bra $L7; $L8: 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 477 36 mov.f64 %r28,0d406478d5365b39bc; .loc 1 477 28 mov.f64 %r23,0d0000000000000000; bra $L7; $L9: 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 478 36 mov.f64 %r28,0d4054b1b3fb5e1543; .loc 1 478 28 mov.f64 %r23,0d3db43d8f29cc8cd9; $L7: .loc 1 481 12 mul.f64 %r59,%r53,%r53; .loc 1 481 4 mov.f64 %r60,0d3ff0000000000000; div.rn.f64 %r39,%r60,%r59; .loc 1 482 42 fma.rn.f64 %r62,%r39,%r46,%r45; .loc 1 482 34 fma.rn.f64 %r63,%r62,%r39,%r44; .loc 1 482 26 fma.rn.f64 %r64,%r63,%r39,%r43; .loc 1 482 18 fma.rn.f64 %r65,%r64,%r39,%r42; .loc 1 482 4 fma.rn.f64 %r66,%r65,%r39,%r23; .loc 1 483 49 fma.rn.f64 %r67,%r39,%r51,%r50; .loc 1 483 41 fma.rn.f64 %r68,%r67,%r39,%r49; .loc 1 483 33 fma.rn.f64 %r69,%r68,%r39,%r48; .loc 1 483 25 fma.rn.f64 %r70,%r69,%r39,%r47; .loc 1 483 17 fma.rn.f64 %r71,%r70,%r39,%r28; .loc 1 483 4 fma.rn.f64 %r72,%r71,%r39,0d3ff0000000000000; .loc 1 484 19 div.rn.f64 %r73,%r66,%r72; .loc 1 484 16 mov.f64 %r75,0d3fc0000000000000; sub.f64 %r74,%r73,%r75; .loc 1 484 22 div.rn.f64 %value,%r74,%r53; .loc 1 485 1 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 %r45; .reg .f64 %r46; .reg .u32 %r47; .reg .u32 %r48; .reg .f64 %r52; .reg .f64 %r57; .reg .f64 %r63; .reg .f64 %r64; .reg .f64 %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .pred %r68; .reg .f64 %r69; .reg .f64 %r70; .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 %r94; .reg .f64 %r95; .reg .f64 %r96; .reg .f64 %r97; .reg .f64 %r98; .reg .pred %r99; .reg .f64 %r100; .reg .pred %r101; .reg .pred %r102; .reg .f64 %r104; .reg .f64 %r105; .reg .f64 %r106; .reg .f64 %r107; .reg .f64 %r108; .reg .f64 %r109; .reg .f64 %r110; .reg .f64 %r111; .reg .f64 %r112; .reg .pred %r113; .reg .f64 %r114; .reg .f64 %r115; .reg .f64 %r116; .reg .f64 %r117; .reg .f64 %r119; mov.f64 %r65,%ar0; .loc 1 104 2 mov.b64 %r66,%r65; shr.u64 %r67,%r66,32; cvt.u32.u64 %r47,%r67; .loc 1 105 5 and.b32 %r48,%r47,2147483647; .loc 1 106 4 setp.le.s32 %r68,%r48,2146435071; @ %r68 bra $L12; .loc 1 106 34 mul.f64 %r69,%r65,%r65; .loc 1 106 31 mov.f64 %r70,0d3ff0000000000000; div.rn.f64 %r64,%r70,%r69; bra $L11; $L12: .loc 1 107 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r65; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r72,[%value_in]; } .loc 1 108 4 and.b32 %r73,%r47,1073741824; setp.eq.u32 %r74,%r73,0; @ %r74 bra $L14; .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 $L15; .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 %r52,%r82; .loc 1 115 13 mul.f64 %r83,%r76,%r78; .loc 1 115 10 setp.lt.f64 %r84,%r83,0d0000000000000000; @ ! %r84 bra $L25; .loc 1 115 26 div.rn.f64 %r46,%r52,%r45; bra $L15; $L25: .loc 1 116 20 div.rn.f64 %r45,%r52,%r46; $L15: .loc 1 122 5 setp.le.s32 %r85,%r48,1207959552; @ %r85 bra $L18; .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 %r64,%r88,%r87; bra $L11; $L18: .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 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 %r94,[%value_in]; } .loc 1 125 28 mul.f64 %r95,%r45,%r92; .loc 1 125 26 neg.f64 %r96,%r95; fma.rn.f64 %r97,%r46,%r90,%r96; .loc 1 125 20 mul.f64 %r98,%r97,0d3fe20dd750429b6d; .loc 1 125 9 div.rn.f64 %r64,%r98,%r94; bra $L11; $L14: .loc 1 129 4 setp.gt.s32 %r99,%r48,1059061759; @ %r99 bra $L19; .loc 1 130 13 add.f64 %r100,%r72,0d7e37e43c8800759c; .loc 1 130 8 setp.gt.f64 %r101,%r100,0d3ff0000000000000; @ ! %r101 bra $L19; .loc 1 131 12 setp.le.s32 %r102,%r48,1044381695; @ %r102 bra $L22; .loc 1 132 33 mul.f64 %r104,%r72,0dbfd0000000000000; fma.rn.f64 %r64,%r104,%r72,0d3ff0000000000000; bra $L11; $L19: .loc 1 135 4 mul.f64 %r57,%r72,%r72; .loc 1 136 27 fma.rn.f64 %r105,%r57,0dbe33d5e773d63fce,0d3ebeb1d10c503919; .loc 1 136 20 fma.rn.f64 %r106,%r105,%r57,0dbf28e6a5b61ac6e9; .loc 1 136 13 fma.rn.f64 %r107,%r106,%r57,0d3f8ffffffffffffd; .loc 1 136 4 mul.f64 %r108,%r107,%r57; .loc 1 137 31 fma.rn.f64 %r109,%r57,0d3e1408bcf4745d8f,0d3ea13b54ce84d5a9; .loc 1 137 24 fma.rn.f64 %r110,%r109,%r57,0d3f1ea6d2dd57dbf4; .loc 1 137 17 fma.rn.f64 %r111,%r110,%r57,0d3f8ffce882c8c2a4; .loc 1 137 4 fma.rn.f64 %r112,%r111,%r57,0d3ff0000000000000; div.rn.f64 %r63,%r108,%r112; .loc 1 138 4 setp.gt.s32 %r113,%r48,1072693247; @ %r113 bra $L21; .loc 1 139 27 mov.f64 %r115,0d3fd0000000000000; sub.f64 %r114,%r63,%r115; .loc 1 139 17 fma.rn.f64 %r64,%r114,%r57,0d3ff0000000000000; bra $L11; $L21: .loc 1 142 17 fma.rn.f64 %r116,%r72,0d3fe0000000000000,0d3ff0000000000000; .loc 1 142 30 mul.f64 %r117,%r57,%r63; .loc 1 142 25 fma.rn.f64 %r119,%r72,0dbfe0000000000000,0d3ff0000000000000; .loc 1 142 28 fma.rn.f64 %r64,%r116,%r119,%r117; bra $L11; $L22: .loc 1 131 35 mov.f64 %r64,0d3ff0000000000000; $L11: .loc 1 144 1 mov.f64 %value,%r64; 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 %r42; .reg .f64 %r47; .reg .f64 %r48; .reg .u32 %r50; .reg .u32 %r52; .reg .f64 %r55; .reg .f64 %r59; .reg .f64 %r66; .reg .f64 %r67; .reg .u64 %r68; .reg .u64 %r69; .reg .pred %r70; .reg .f64 %r71; .reg .f64 %r72; .reg .u32 %r74; .reg .u32 %r75; .reg .pred %r76; .reg .f64 %r77; .reg .pred %r78; .reg .f64 %r79; .reg .u32 %r80; .reg .pred %r81; .reg .f64 %r83; .reg .f64 %r85; .reg .pred %r86; .reg .f64 %r88; .reg .f64 %r89; .reg .f64 %r90; .reg .pred %r91; .reg .pred %r92; .reg .f64 %r94; .reg .f64 %r95; .reg .f64 %r97; .reg .f64 %r99; .reg .f64 %r101; .reg .f64 %r102; .reg .f64 %r103; .reg .f64 %r104; .reg .pred %r105; .reg .f64 %r107; .reg .f64 %r108; .reg .f64 %r109; .reg .f64 %r110; .reg .f64 %r111; .reg .f64 %r112; .reg .f64 %r113; .reg .f64 %r114; .reg .f64 %r115; .reg .f64 %r116; .reg .f64 %r117; .reg .f64 %r119; .reg .f64 %r121; .reg .f64 %r122; mov.f64 %r67,%ar0; .loc 1 173 2 mov.b64 %r68,%r67; shr.u64 %r69,%r68,32; cvt.u32.u64 %r50,%r69; .loc 1 174 12 and.b32 %r52,%r50,2147483647; .loc 1 176 4 setp.le.s32 %r70,%r52,2146435071; @ %r70 bra $L27; .loc 1 176 35 fma.rn.f64 %r71,%r67,%r67,%r67; .loc 1 176 32 mov.f64 %r72,0d3ff0000000000000; div.rn.f64 %r66,%r72,%r71; bra $L26; $L27: .loc 1 177 15 cvt.u32.u64 %r75,%r68; or.b32 %r74,%r52,%r75; .loc 1 177 11 setp.ne.u32 %r76,%r74,0; @ %r76 bra $L29; .loc 1 177 35 mov.f64 %r77,0dbff0000000000000; div.rn.f64 %r66,%r77,0d0000000000000000; bra $L26; $L29: .loc 1 178 11 setp.ge.s32 %r78,%r50,0; @ %r78 bra $L30; .loc 1 178 29 mov.f64 %r79,0d0000000000000000; div.rn.f64 %r66,%r79,0d0000000000000000; bra $L26; $L30: .loc 1 179 11 and.b32 %r80,%r50,1073741824; setp.eq.u32 %r81,%r80,0; @ %r81 bra $L31; .loc 1 191 21 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r67; call (%value_in),sin,(%out_arg1); ld.param.f64 %r83,[%value_in]; } .loc 1 192 21 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r67; call (%value_in),cos,(%out_arg1); ld.param.f64 %r85,[%value_in]; } .loc 1 193 20 sub.f64 %r47,%r83,%r85; .loc 1 194 20 add.f64 %r48,%r83,%r85; .loc 1 199 19 setp.gt.s32 %r86,%r52,2145386495; @ %r86 bra $L32; .loc 1 200 26 add.f64 %r88,%r67,%r67; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r88; call (%value_in),cos,(%out_arg1); ld.param.f64 %r89,[%value_in]; } .loc 1 200 23 neg.f64 %r55,%r89; .loc 1 201 27 mul.f64 %r90,%r83,%r85; .loc 1 201 24 setp.lt.f64 %r91,%r90,0d0000000000000000; @ ! %r91 bra $L38; .loc 1 201 40 div.rn.f64 %r48,%r55,%r47; bra $L32; $L38: .loc 1 202 40 div.rn.f64 %r47,%r55,%r48; $L32: .loc 1 204 19 setp.le.s32 %r92,%r52,1207959552; @ %r92 bra $L35; .loc 1 204 54 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r67; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r94,[%value_in]; } .loc 1 204 49 mul.f64 %r95,%r47,0d3fe20dd750429b6d; .loc 1 204 37 div.rn.f64 %r66,%r95,%r94; bra $L26; $L35: .loc 1 206 25 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r67; call (%value_in),pzero,(%out_arg1); ld.param.f64 %r97,[%value_in]; } .loc 1 206 39 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r67; call (%value_in),qzero,(%out_arg1); ld.param.f64 %r99,[%value_in]; } .loc 1 207 47 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r67; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r101,[%value_in]; } .loc 1 207 42 mul.f64 %r102,%r48,%r99; .loc 1 207 40 fma.rn.f64 %r103,%r47,%r97,%r102; .loc 1 207 34 mul.f64 %r104,%r103,0d3fe20dd750429b6d; .loc 1 207 23 div.rn.f64 %r66,%r104,%r101; bra $L26; $L31: .loc 1 211 4 setp.gt.s32 %r105,%r52,1044381696; @ %r105 bra $L36; .loc 1 212 23 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r67; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r107,[%value_in]; } .loc 1 212 17 fma.rn.f64 %r66,%r107,0d3fe45f306dc9c883,0dbfb2e4d699cbd01f; bra $L26; $L36: .loc 1 214 4 mul.f64 %r59,%r67,%r67; .loc 1 215 44 fma.rn.f64 %r108,%r59,0dbdc5e43d693fb3c8,0d3e5500573b4eabd4; .loc 1 215 37 fma.rn.f64 %r109,%r108,%r59,0dbecffea773d25cad; .loc 1 215 30 fma.rn.f64 %r110,%r109,%r59,0d3f36c54d20b29b6b; .loc 1 215 23 fma.rn.f64 %r111,%r110,%r59,0dbf8c4ce8b16cfa97; .loc 1 215 16 fma.rn.f64 %r112,%r111,%r59,0d3fc69d019de9e3fc; .loc 1 215 4 fma.rn.f64 %r113,%r112,%r59,0dbfb2e4d699cbd01f; .loc 1 216 30 fma.rn.f64 %r114,%r59,0d3dfe50183bd6d9ef,0d3e91642d7ff202fd; .loc 1 216 23 fma.rn.f64 %r115,%r114,%r59,0d3f13ecbbf578c6c1; .loc 1 216 16 fma.rn.f64 %r116,%r115,%r59,0d3f8a127091c9c71a; .loc 1 216 4 fma.rn.f64 %r117,%r116,%r59,0d3ff0000000000000; .loc 1 217 10 div.rn.f64 %r42,%r113,%r117; .loc 1 217 20 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r67; call (%value_in),__ieee754_j0,(%out_arg1); ld.param.f64 %r119,[%value_in]; } .loc 1 217 36 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r67; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r121,[%value_in]; } .loc 1 217 35 mul.f64 %r122,%r119,%r121; .loc 1 217 13 fma.rn.f64 %r66,%r122,0d3fe45f306dc9c883,%r42; $L26: .loc 1 218 1 mov.f64 %value,%r66; st.param.f64 [%value_out],%value; ret; } lib_a-e_j1.o/ 1591654539 399 399 100644 17605 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r28; .reg .u32 %r35; .reg .u32 %r36; .reg .f64 %r37; .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 %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .pred %r53; .reg .pred %r54; .reg .pred %r55; .reg .f64 %r56; .reg .f64 %r57; .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; mov.f64 %r50,%ar0; .loc 1 337 2 mov.b64 %r51,%r50; shr.u64 %r52,%r51,32; cvt.u32.u64 %r35,%r52; .loc 1 338 5 and.b32 %r36,%r35,2147483647; .loc 1 339 11 setp.gt.s32 %r53,%r36,1075838975; @ %r53 bra $L3; .loc 1 340 16 setp.gt.s32 %r54,%r36,1074933386; @ %r54 bra $L4; .loc 1 341 16 setp.le.s32 %r55,%r36,1074191212; selp.f64 %r48,0d4020bab1f44e5192,0d4059f26d7c2eed53,%r55; selp.f64 %r47,0d405d6b7ada1884a9,0d408bd67da32e31e9,%r55; selp.f64 %r46,0d406d08d8d5a2dbd9,0d40905b7c5037d523,%r55; selp.f64 %r45,0d405f529314f92cd5,0d40750c3307f1a75f,%r55; selp.f64 %r44,0d40144b49a574c1fe,0d4048478f8ea83ee5,%r55; selp.f64 %r43,0d4031b1a8177f8ee2,0d4056c3854d2c1837,%r55; selp.f64 %r42,0d40287c377f71a964,0d40418f489da6d129,%r55; selp.f64 %r41,0d4002f2b7f98faec0,0d400f76bce85ead8a,%r55; selp.f64 %r40,0d3fbdff42be760d83,0d3fbdfff55b21d17b,%r55; selp.f64 %r28,0d40356fbd8ad5ecdc,0d40416549a134069c,%r55; selp.f64 %r23,0d3e7ce9d4f65544f4,0d3e29fc21a7ad9edd,%r55; bra $L2; $L3: 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 339 43 mov.f64 %r28,0d405c8d458e656cac; .loc 1 339 35 mov.f64 %r23,0d0000000000000000; bra $L2; $L4: 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 340 43 mov.f64 %r28,0d404da3eaa8af633d; .loc 1 340 35 mov.f64 %r23,0d3dad0667dae1ca7d; $L2: .loc 1 343 19 mul.f64 %r56,%r50,%r50; .loc 1 343 11 mov.f64 %r57,0d3ff0000000000000; div.rn.f64 %r37,%r57,%r56; .loc 1 344 49 fma.rn.f64 %r59,%r37,%r44,%r43; .loc 1 344 41 fma.rn.f64 %r60,%r59,%r37,%r42; .loc 1 344 33 fma.rn.f64 %r61,%r60,%r37,%r41; .loc 1 344 25 fma.rn.f64 %r62,%r61,%r37,%r40; .loc 1 344 11 fma.rn.f64 %r63,%r62,%r37,%r23; .loc 1 345 48 fma.rn.f64 %r64,%r37,%r48,%r47; .loc 1 345 40 fma.rn.f64 %r65,%r64,%r37,%r46; .loc 1 345 32 fma.rn.f64 %r66,%r65,%r37,%r45; .loc 1 345 24 fma.rn.f64 %r67,%r66,%r37,%r28; .loc 1 345 11 fma.rn.f64 %r68,%r67,%r37,0d3ff0000000000000; .loc 1 346 22 div.rn.f64 %r69,%r63,%r68; .loc 1 346 19 add.f64 %value,%r69,0d3ff0000000000000; .loc 1 347 1 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 %r28; .reg .u32 %r37; .reg .u32 %r38; .reg .f64 %r39; .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 %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .pred %r56; .reg .pred %r57; .reg .pred %r58; .reg .f64 %r59; .reg .f64 %r60; .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 %r74; mov.f64 %r53,%ar0; .loc 1 474 2 mov.b64 %r54,%r53; shr.u64 %r55,%r54,32; cvt.u32.u64 %r37,%r55; .loc 1 475 5 and.b32 %r38,%r37,2147483647; .loc 1 476 4 setp.gt.s32 %r56,%r38,1075838975; @ %r56 bra $L8; .loc 1 477 9 setp.gt.s32 %r57,%r38,1074933386; @ %r57 bra $L9; .loc 1 478 9 setp.le.s32 %r58,%r38,1074191212; selp.f64 %r51,0dc013d686e71be86b,0dc060e670290a311f,%r58; selp.f64 %r50,0d40637e5e3c3ed8d4,0d409dbc7a0dd4df4b,%r58; selp.f64 %r49,0d40871b2548d4c029,0d40b5abbaa61d54a6,%r58; selp.f64 %r48,0d4087ac05ce49a0f7,0d40aa684e448e7c9a,%r58; selp.f64 %r47,0d406f9f68db821cba,0d40850eebc031ee3e,%r58; selp.f64 %r46,0dc0355f3639cf6e52,0dc06b66b95f5c1bf6,%r58; selp.f64 %r45,0dc04529a3de104aaa,0dc06c87d34718d55f,%r58; selp.f64 %r44,0dc033a9e2c168907f,0dc04cec71c25d16da,%r58; selp.f64 %r43,0dc006048469bb4eda,0dc01270c23302d9ff,%r58; selp.f64 %r42,0dbfba3e8e9148b010,0dbfba3feb51aeed54,%r58; selp.f64 %r28,0d403d888a78ae64ff,0d4047d523ccd367e4,%r58; selp.f64 %r23,0dbe87f12644c626d2,0dbe35cfa9d38fc84f,%r58; bra $L7; $L8: 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 476 36 mov.f64 %r28,0d40642ca6de5bcde5; .loc 1 476 28 mov.f64 %r23,0d0000000000000000; bra $L7; $L9: 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 477 36 mov.f64 %r28,0d405451b2ff5a11b2; .loc 1 477 28 mov.f64 %r23,0dbdb6fa431aa1a098; $L7: .loc 1 480 12 mul.f64 %r59,%r53,%r53; .loc 1 480 4 mov.f64 %r60,0d3ff0000000000000; div.rn.f64 %r39,%r60,%r59; .loc 1 481 42 fma.rn.f64 %r62,%r39,%r46,%r45; .loc 1 481 34 fma.rn.f64 %r63,%r62,%r39,%r44; .loc 1 481 26 fma.rn.f64 %r64,%r63,%r39,%r43; .loc 1 481 18 fma.rn.f64 %r65,%r64,%r39,%r42; .loc 1 481 4 fma.rn.f64 %r66,%r65,%r39,%r23; .loc 1 482 49 fma.rn.f64 %r67,%r39,%r51,%r50; .loc 1 482 41 fma.rn.f64 %r68,%r67,%r39,%r49; .loc 1 482 33 fma.rn.f64 %r69,%r68,%r39,%r48; .loc 1 482 25 fma.rn.f64 %r70,%r69,%r39,%r47; .loc 1 482 17 fma.rn.f64 %r71,%r70,%r39,%r28; .loc 1 482 4 fma.rn.f64 %r72,%r71,%r39,0d3ff0000000000000; .loc 1 483 18 div.rn.f64 %r73,%r66,%r72; .loc 1 483 15 add.f64 %r74,%r73,0d3fd8000000000000; .loc 1 483 21 div.rn.f64 %value,%r74,%r53; .loc 1 484 1 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 %r40; .reg .f64 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .f64 %r52; .reg .f64 %r53; .reg .f64 %r59; .reg .f64 %r60; .reg .u64 %r61; .reg .u64 %r62; .reg .pred %r63; .reg .f64 %r64; .reg .f64 %r66; .reg .u32 %r67; .reg .pred %r68; .reg .f64 %r70; .reg .f64 %r72; .reg .f64 %r73; .reg .pred %r74; .reg .f64 %r76; .reg .f64 %r77; .reg .f64 %r78; .reg .pred %r79; .reg .pred %r80; .reg .f64 %r82; .reg .f64 %r83; .reg .f64 %r85; .reg .f64 %r87; .reg .f64 %r89; .reg .f64 %r90; .reg .f64 %r91; .reg .f64 %r92; .reg .f64 %r93; .reg .pred %r94; .reg .pred %r95; .reg .f64 %r96; .reg .pred %r97; .reg .f64 %r98; .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; mov.f64 %r60,%ar0; .loc 1 105 2 mov.b64 %r61,%r60; shr.u64 %r62,%r61,32; cvt.u32.u64 %r42,%r62; .loc 1 106 5 and.b32 %r43,%r42,2147483647; .loc 1 107 4 setp.le.s32 %r63,%r43,2146435071; @ %r63 bra $L12; .loc 1 107 31 mov.f64 %r64,0d3ff0000000000000; div.rn.f64 %r59,%r64,%r60; bra $L11; $L12: .loc 1 108 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r60; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r66,[%value_in]; } .loc 1 109 4 and.b32 %r67,%r42,1073741824; setp.eq.u32 %r68,%r67,0; @ %r68 bra $L14; .loc 1 110 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r66; call (%value_in),sin,(%out_arg1); ld.param.f64 %r70,[%value_in]; } .loc 1 111 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r66; call (%value_in),cos,(%out_arg1); ld.param.f64 %r72,[%value_in]; } .loc 1 112 8 neg.f64 %r73,%r70; .loc 1 112 6 sub.f64 %r40,%r73,%r72; .loc 1 113 6 sub.f64 %r41,%r70,%r72; .loc 1 114 5 setp.gt.s32 %r74,%r43,2145386495; @ %r74 bra $L15; .loc 1 115 11 add.f64 %r76,%r66,%r66; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r76; call (%value_in),cos,(%out_arg1); ld.param.f64 %r77,[%value_in]; } .loc 1 116 13 mul.f64 %r78,%r70,%r72; .loc 1 116 10 setp.gt.f64 %r79,%r78,0d0000000000000000; @ ! %r79 bra $L22; .loc 1 116 26 div.rn.f64 %r41,%r77,%r40; bra $L15; $L22: .loc 1 117 20 div.rn.f64 %r40,%r77,%r41; $L15: .loc 1 123 5 setp.le.s32 %r80,%r43,1207959552; @ %r80 bra $L18; .loc 1 123 40 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r66; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r82,[%value_in]; } .loc 1 123 35 mul.f64 %r83,%r41,0d3fe20dd750429b6d; .loc 1 123 23 div.rn.f64 %r59,%r83,%r82; bra $L19; $L18: .loc 1 125 11 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r66; call (%value_in),pone,(%out_arg1); ld.param.f64 %r85,[%value_in]; } .loc 1 125 24 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r66; call (%value_in),qone,(%out_arg1); ld.param.f64 %r87,[%value_in]; } .loc 1 126 33 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r66; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r89,[%value_in]; } .loc 1 126 28 mul.f64 %r90,%r40,%r87; .loc 1 126 26 neg.f64 %r91,%r90; fma.rn.f64 %r92,%r41,%r85,%r91; .loc 1 126 20 mul.f64 %r93,%r92,0d3fe20dd750429b6d; .loc 1 126 9 div.rn.f64 %r59,%r93,%r89; $L19: .loc 1 128 5 setp.ge.s32 %r94,%r42,0; @ %r94 bra $L11; .loc 1 128 19 neg.f64 %r59,%r59; bra $L11; $L14: mul.f64 %r59,%r60,0d3fe0000000000000; .loc 1 131 4 setp.gt.s32 %r95,%r43,1044381695; @ %r95 bra $L20; .loc 1 132 13 add.f64 %r96,%r60,0d7e37e43c8800759c; .loc 1 132 8 setp.gt.f64 %r97,%r96,0d3ff0000000000000; @ %r97 bra $L11; $L20: .loc 1 134 4 mul.f64 %r52,%r60,%r60; .loc 1 135 27 fma.rn.f64 %r98,%r52,0d3e6aaafa46ca0bd9,0dbef0c5c6ba169668; .loc 1 135 20 fma.rn.f64 %r99,%r98,%r52,0d3f570d9f98472c61; .loc 1 135 13 fma.rn.f64 %r100,%r99,%r52,0dbfb0000000000000; .loc 1 135 4 mul.f64 %r53,%r100,%r52; .loc 1 137 4 mul.f64 %r101,%r60,%r53; .loc 1 136 38 fma.rn.f64 %r102,%r52,0d3dab2acfcfb97ed8,0d3e35ac88c97dff2c; .loc 1 136 31 fma.rn.f64 %r103,%r102,%r52,0d3eb3bff8333f8498; .loc 1 136 24 fma.rn.f64 %r104,%r103,%r52,0d3f285f56b9cdf664; .loc 1 136 17 fma.rn.f64 %r105,%r104,%r52,0d3f939d0b12637e53; .loc 1 136 4 fma.rn.f64 %r106,%r105,%r52,0d3ff0000000000000; .loc 1 138 16 div.rn.f64 %r107,%r101,%r106; .loc 1 138 14 add.f64 %r59,%r59,%r107; $L11: .loc 1 139 1 mov.f64 %value,%r59; 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 %r43; .reg .f64 %r49; .reg .f64 %r50; .reg .u32 %r52; .reg .u32 %r54; .reg .f64 %r60; .reg .f64 %r65; .reg .f64 %r66; .reg .u64 %r67; .reg .u64 %r68; .reg .pred %r69; .reg .f64 %r70; .reg .f64 %r71; .reg .u32 %r73; .reg .u32 %r74; .reg .pred %r75; .reg .f64 %r76; .reg .pred %r77; .reg .f64 %r78; .reg .u32 %r79; .reg .pred %r80; .reg .f64 %r82; .reg .f64 %r84; .reg .f64 %r85; .reg .pred %r86; .reg .f64 %r88; .reg .f64 %r89; .reg .f64 %r90; .reg .pred %r91; .reg .pred %r92; .reg .f64 %r94; .reg .f64 %r95; .reg .f64 %r97; .reg .f64 %r99; .reg .f64 %r101; .reg .f64 %r102; .reg .f64 %r103; .reg .f64 %r104; .reg .pred %r105; .reg .f64 %r106; .reg .f64 %r107; .reg .f64 %r108; .reg .f64 %r109; .reg .f64 %r110; .reg .f64 %r111; .reg .f64 %r112; .reg .f64 %r113; .reg .f64 %r114; .reg .f64 %r115; .reg .f64 %r117; .reg .f64 %r119; .reg .f64 %r120; .reg .f64 %r121; .reg .f64 %r122; .reg .f64 %r123; .reg .f64 %r124; mov.f64 %r66,%ar0; .loc 1 174 2 mov.b64 %r67,%r66; shr.u64 %r68,%r67,32; cvt.u32.u64 %r52,%r68; .loc 1 175 12 and.b32 %r54,%r52,2147483647; .loc 1 177 4 setp.le.s32 %r69,%r54,2146435071; @ %r69 bra $L24; .loc 1 177 35 fma.rn.f64 %r70,%r66,%r66,%r66; .loc 1 177 32 mov.f64 %r71,0d3ff0000000000000; div.rn.f64 %r65,%r71,%r70; bra $L23; $L24: .loc 1 178 15 cvt.u32.u64 %r74,%r67; or.b32 %r73,%r54,%r74; .loc 1 178 11 setp.ne.u32 %r75,%r73,0; @ %r75 bra $L26; .loc 1 178 35 mov.f64 %r76,0dbff0000000000000; div.rn.f64 %r65,%r76,0d0000000000000000; bra $L23; $L26: .loc 1 179 11 setp.ge.s32 %r77,%r52,0; @ %r77 bra $L27; .loc 1 179 29 mov.f64 %r78,0d0000000000000000; div.rn.f64 %r65,%r78,0d0000000000000000; bra $L23; $L27: .loc 1 180 11 and.b32 %r79,%r52,1073741824; setp.eq.u32 %r80,%r79,0; @ %r80 bra $L28; .loc 1 181 21 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r66; call (%value_in),sin,(%out_arg1); ld.param.f64 %r82,[%value_in]; } .loc 1 182 21 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r66; call (%value_in),cos,(%out_arg1); ld.param.f64 %r84,[%value_in]; } .loc 1 183 22 neg.f64 %r85,%r82; .loc 1 183 20 sub.f64 %r49,%r85,%r84; .loc 1 184 20 sub.f64 %r50,%r82,%r84; .loc 1 185 19 setp.gt.s32 %r86,%r54,2145386495; @ %r86 bra $L29; .loc 1 186 25 add.f64 %r88,%r66,%r66; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r88; call (%value_in),cos,(%out_arg1); ld.param.f64 %r89,[%value_in]; } .loc 1 187 27 mul.f64 %r90,%r82,%r84; .loc 1 187 24 setp.gt.f64 %r91,%r90,0d0000000000000000; @ ! %r91 bra $L35; .loc 1 187 40 div.rn.f64 %r50,%r89,%r49; bra $L29; $L35: .loc 1 188 40 div.rn.f64 %r49,%r89,%r50; $L29: .loc 1 201 19 setp.le.s32 %r92,%r54,1207959552; @ %r92 bra $L32; .loc 1 201 54 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r66; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r94,[%value_in]; } .loc 1 201 49 mul.f64 %r95,%r49,0d3fe20dd750429b6d; .loc 1 201 37 div.rn.f64 %r65,%r95,%r94; bra $L23; $L32: .loc 1 203 25 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r66; call (%value_in),pone,(%out_arg1); ld.param.f64 %r97,[%value_in]; } .loc 1 203 38 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r66; call (%value_in),qone,(%out_arg1); ld.param.f64 %r99,[%value_in]; } .loc 1 204 47 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r66; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r101,[%value_in]; } .loc 1 204 42 mul.f64 %r102,%r50,%r99; .loc 1 204 40 fma.rn.f64 %r103,%r49,%r97,%r102; .loc 1 204 34 mul.f64 %r104,%r103,0d3fe20dd750429b6d; .loc 1 204 23 div.rn.f64 %r65,%r104,%r101; bra $L23; $L28: .loc 1 208 11 setp.gt.s32 %r105,%r54,1016070144; @ %r105 bra $L33; .loc 1 209 24 mov.f64 %r106,0dbfe45f306dc9c883; div.rn.f64 %r65,%r106,%r66; bra $L23; $L33: .loc 1 211 11 mul.f64 %r60,%r66,%r66; .loc 1 212 45 fma.rn.f64 %r107,%r60,0dbe78ac00569105b8,0d3ef8ab038fa6b88e; .loc 1 212 36 fma.rn.f64 %r108,%r107,%r60,0dbf5f55e54844f50f; .loc 1 212 27 fma.rn.f64 %r109,%r108,%r60,0d3fa9d3c776292cd1; .loc 1 212 11 fma.rn.f64 %r110,%r109,%r60,0dbfc91866143cbc8a; .loc 1 213 52 fma.rn.f64 %r111,%r60,0d3db25039daca772a,0d3e3abf1d5ba69a86; .loc 1 213 43 fma.rn.f64 %r112,%r111,%r60,0d3eb6c05a894e8ca6; .loc 1 213 34 fma.rn.f64 %r113,%r112,%r60,0d3f2a8c896c257764; .loc 1 213 25 fma.rn.f64 %r114,%r113,%r60,0d3f94650d3f4da9f0; .loc 1 213 11 fma.rn.f64 %r115,%r114,%r60,0d3ff0000000000000; .loc 1 214 20 div.rn.f64 %r43,%r110,%r115; .loc 1 214 31 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r66; call (%value_in),__ieee754_j1,(%out_arg1); ld.param.f64 %r117,[%value_in]; } .loc 1 214 47 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r66; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r119,[%value_in]; } .loc 1 214 67 mov.f64 %r121,0d3ff0000000000000; div.rn.f64 %r120,%r121,%r66; .loc 1 214 63 neg.f64 %r122,%r120; fma.rn.f64 %r123,%r117,%r119,%r122; .loc 1 214 29 mul.f64 %r124,%r123,0d3fe45f306dc9c883; .loc 1 214 24 fma.rn.f64 %r65,%r43,%r66,%r124; $L23: .loc 1 215 1 mov.f64 %value,%r65; st.param.f64 [%value_out],%value; ret; } lib_a-e_jn.o/ 1591654539 399 399 100644 19120 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r22; .reg .f64 %r32; .reg .u32 %r33; .reg .f64 %r48; .reg .u32 %r50; .reg .f64 %r52; .reg .f64 %r56; .reg .f64 %r60; .reg .f64 %r61; .reg .f64 %r66; .reg .f64 %r68; .reg .f64 %r70; .reg .f64 %r71; .reg .f64 %r72; .reg .f64 %r73; .reg .u32 %r74; .reg .f64 %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .u32 %r80; .reg .u32 %r81; .reg .u32 %r82; .reg .f64 %r85; .reg .f64 %r86; .reg .f64 %r87; .reg .u32 %r89; .reg .f64 %r94; .reg .u32 %r95; .reg .f64 %r97; .reg .f64 %r98; .reg .u32 %r99; .reg .u32 %r102; .reg .u32 %r104; .reg .u32 %r105; .reg .f64 %r106; .reg .f64 %r108; .reg .f64 %r109; .reg .u32 %r110; .reg .f64 %r111; .reg .u64 %r112; .reg .u64 %r113; .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 %r133; .reg .u32 %r134; .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 .f64 %r176; .reg .pred %r177; .reg .pred %r178; .reg .pred %r179; .reg .f64 %r180; .reg .pred %r181; .reg .f64 %r183; .reg .f64 %r184; .reg .pred %r185; .reg .f64 %r186; .reg .pred %r187; .reg .u32 %r188; .reg .u32 %r190; .reg .f64 %r192; .reg .f64 %r193; .reg .f64 %r194; .reg .pred %r195; .reg .f64 %r197; .reg .f64 %r198; .reg .f64 %r200; .reg .f64 %r201; .reg .pred %r202; .reg .f64 %r203; .reg .f64 %r204; .reg .pred %r205; .reg .f64 %r206; .reg .f64 %r207; .reg .pred %r208; .reg .pred %r209; .reg .f64 %r211; .reg .f64 %r212; .reg .pred %r213; .reg .f64 %r215; mov.u32 %r110,%ar0; mov.f64 %r111,%ar1; mov.b64 %r112,%r111; shr.u64 %r113,%r112,32; .loc 1 73 2 cvt.u32.u64 %r79,%r113; cvt.u32.u64 %r80,%r112; .loc 1 74 5 and.b32 %r81,%r79,2147483647; .loc 1 76 26 neg.s32 %r115,%r80; .loc 1 76 25 or.b32 %r116,%r115,%r80; .loc 1 76 31 shr.u32 %r117,%r116,31; .loc 1 76 8 or.b32 %r118,%r117,%r81; .loc 1 76 4 setp.le.u32 %r119,%r118,2146435072; @ %r119 bra $L2; .loc 1 76 57 add.f64 %r109,%r111,%r111; bra $L1; $L2: .loc 1 77 4 setp.ge.s32 %r120,%r110,0; @ %r120 bra $L4; .loc 1 78 5 neg.s32 %r110,%r110; .loc 1 79 5 neg.f64 %r111,%r111; .loc 1 80 6 add.u32 %r79,%r79,-2147483648; bra $L5; $L4: .loc 1 82 4 setp.ne.u32 %r121,%r110,0; @ %r121 bra $L5; .loc 1 82 18 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r111; call (%value_in),__ieee754_j0,(%out_arg1); ld.param.f64 %r123,[%value_in]; } mov.f64 %r109,%r123; bra $L1; $L5: .loc 1 83 4 setp.ne.u32 %r124,%r110,1; @ %r124 bra $L6; .loc 1 83 18 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r111; call (%value_in),__ieee754_j1,(%out_arg1); ld.param.f64 %r126,[%value_in]; } mov.f64 %r109,%r126; bra $L1; $L6: .loc 1 84 6 shr.u32 %r128,%r79,31; and.b32 %r82,%r128,%r110; .loc 1 85 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r111; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r130,[%value_in]; } .loc 1 86 8 or.b32 %r131,%r80,%r81; .loc 1 86 4 set.u32.eq.u32 %r133,%r131,0; neg.s32 %r134,%r133; .loc 1 86 15 set.u32.gt.s32 %r136,%r81,2146435071; neg.s32 %r137,%r136; cvt.u16.u32 %r139,%r134; cvt.u16.u32 %r140,%r137; 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 %r32,%r110; .loc 1 88 9 setp.le.f64 %r144,%r32,%r130; @ ! %r144 bra $L47; .loc 1 90 8 setp.le.s32 %r145,%r81,1389363199; @ %r145 bra $L10; .loc 1 104 11 and.b32 %r33,%r110,3; setp.eq.u32 %r146,%r33,2; @ %r146 bra $L11; setp.eq.u32 %r147,%r33,3; @ %r147 bra $L12; setp.eq.u32 %r148,%r33,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 %r73,%r150,%r152; .loc 1 105 7 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 %r73,%r154,%r156; .loc 1 106 7 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 %r73,%r161,%r160; .loc 1 107 7 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 %r73,%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,%r73,0d3fe20dd750429b6d; .loc 1 110 5 div.rn.f64 %r109,%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 %r48,%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 %r52,%r172; add.u32 %r102,%r110,%r110; mov.u32 %r105,2; $L15: .loc 1 116 14 cvt.rn.f64.s32 %r174,%r105; .loc 1 116 27 div.rn.f64 %r175,%r174,%r130; .loc 1 116 9 neg.f64 %r176,%r48; fma.rn.f64 %r109,%r175,%r52,%r176; add.u32 %r105,%r105,2; mov.f64 %r48,%r52; mov.f64 %r52,%r109; .loc 1 114 10 setp.ne.u32 %r177,%r102,%r105; @ %r177 bra $L15; bra $L7; $L47: .loc 1 121 8 setp.gt.s32 %r178,%r81,1041235967; @ %r178 bra $L16; .loc 1 125 5 setp.gt.s32 %r179,%r110,33; @ %r179 bra $L32; .loc 1 128 12 mul.f64 %r85,%r130,0d3fe0000000000000; add.u32 %r99,%r110,1; .loc 1 128 23 mov.f64 %r66,%r85; .loc 1 129 13 mov.f64 %r86,0d3ff0000000000000; .loc 1 129 19 mov.u32 %r74,2; $L17: .loc 1 130 9 cvt.rn.f64.s32 %r180,%r74; .loc 1 130 6 mul.f64 %r86,%r86,%r180; .loc 1 131 6 mul.f64 %r66,%r66,%r85; .loc 1 129 28 add.u32 %r74,%r74,1; .loc 1 129 7 setp.ne.u32 %r181,%r74,%r99; @ %r181 bra $L17; div.rn.f64 %r109,%r66,%r86; bra $L7; $L16: .loc 1 167 10 add.u32 %r50,%r110,%r110; .loc 1 167 13 cvt.rn.f64.s32 %r183,%r50; .loc 1 167 6 div.rn.f64 %r22,%r183,%r130; .loc 1 167 27 mov.f64 %r184,0d4000000000000000; div.rn.f64 %r87,%r184,%r130; .loc 1 168 14 add.f64 %r71,%r22,%r87; .loc 1 168 24 fma.rn.f64 %r70,%r22,%r71,0dbff0000000000000; .loc 1 169 8 setp.lt.f64 %r185,%r70,0d41cdcd6500000000; @ ! %r185 bra $L48; .loc 1 168 38 mov.u32 %r89,1; $L20: .loc 1 170 6 add.u32 %r89,%r89,1; .loc 1 170 14 add.f64 %r71,%r71,%r87; .loc 1 171 8 neg.f64 %r186,%r22; mov.f64 %r22,%r70; .loc 1 173 7 fma.rn.f64 %r70,%r71,%r70,%r186; .loc 1 169 8 setp.lt.f64 %r187,%r70,0d41cdcd6500000000; @ %r187 bra $L20; bra $L49; $L48: .loc 1 176 23 add.u32 %r188,%r110,1; .loc 1 176 17 add.u32 %r78,%r188,%r188; bra $L22; $L49: .loc 1 176 23 add.u32 %r190,%r89,%r110; .loc 1 176 17 add.u32 %r78,%r190,%r190; $L22: .loc 1 168 38 mov.f64 %r77,0d0000000000000000; .loc 1 176 44 mov.f64 %r194,0d3ff0000000000000; $L23: .loc 1 176 52 cvt.rn.f64.s32 %r192,%r78; div.rn.f64 %r193,%r192,%r130; .loc 1 176 54 sub.f64 %r56,%r193,%r77; .loc 1 176 44 div.rn.f64 %r77,%r194,%r56; .loc 1 176 36 add.u32 %r78,%r78,-2; .loc 1 176 3 setp.le.s32 %r195,%r50,%r78; @ %r195 bra $L23; .loc 1 189 13 mul.f64 %r197,%r32,%r87; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r197; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r198,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r198; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r200,[%value_in]; } add.u32 %r95,%r110,-1; add.u32 %r104,%r50,-2; .loc 1 189 7 mul.f64 %r201,%r32,%r200; .loc 1 190 5 setp.lt.f64 %r202,%r201,0d40862e42fefa39ef; @ ! %r202 bra $L50; .loc 1 191 23 cvt.rn.f64.s32 %r94,%r104; .loc 1 176 44 mov.f64 %r106,%r77; .loc 1 178 5 mov.f64 %r108,0d3ff0000000000000; .loc 1 196 7 mov.f64 %r204,0d4000000000000000; bra $L26; $L33: .loc 1 194 7 mov.f64 %r108,%r72; $L26: .loc 1 193 6 mul.f64 %r203,%r108,%r94; .loc 1 194 10 div.rn.f64 %r60,%r203,%r130; .loc 1 194 7 sub.f64 %r72,%r60,%r106; .loc 1 196 7 sub.f64 %r94,%r94,%r204; .loc 1 191 43 add.u32 %r95,%r95,-1; mov.f64 %r106,%r108; .loc 1 191 11 setp.ne.u32 %r205,%r95,0; @ %r205 bra $L33; bra $L27; $L50: .loc 1 199 23 cvt.rn.f64.s32 %r98,%r104; .loc 1 176 44 mov.f64 %r68,%r77; .loc 1 178 5 mov.f64 %r72,0d3ff0000000000000; .loc 1 204 7 mov.f64 %r207,0d4000000000000000; .loc 1 209 11 mov.f64 %r215,%r72; $L30: .loc 1 201 6 mul.f64 %r206,%r72,%r98; .loc 1 202 10 div.rn.f64 %r61,%r206,%r130; .loc 1 202 7 sub.f64 %r97,%r61,%r68; .loc 1 204 7 sub.f64 %r98,%r98,%r207; .loc 1 206 6 setp.gt.f64 %r208,%r97,0d54b249ad2594c37d; @ ! %r208 bra $L51; .loc 1 207 10 div.rn.f64 %r68,%r72,%r97; .loc 1 208 10 div.rn.f64 %r77,%r77,%r97; .loc 1 209 11 mov.f64 %r72,%r215; bra $L28; $L51: mov.f64 %r68,%r72; .loc 1 202 7 mov.f64 %r72,%r97; $L28: .loc 1 199 43 add.u32 %r95,%r95,-1; .loc 1 199 11 setp.ne.u32 %r209,%r95,0; @ %r209 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 %r211,[%value_in]; } .loc 1 213 13 mul.f64 %r212,%r211,%r77; .loc 1 213 9 div.rn.f64 %r109,%r212,%r72; bra $L7; $L31: .loc 1 87 8 mov.f64 %r109,0d0000000000000000; bra $L7; $L32: mov.f64 %r109,0d0000000000000000; $L7: .loc 1 216 4 setp.eq.u32 %r213,%r82,0; @ %r213 bra $L1; .loc 1 216 20 neg.f64 %r109,%r109; $L1: .loc 1 217 1 mov.f64 %value,%r109; 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 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .f64 %r56; .reg .u32 %r57; .reg .f64 %r62; .reg .f64 %r66; .reg .u32 %r67; .reg .f64 %r68; .reg .u64 %r69; .reg .u64 %r70; .reg .u32 %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .pred %r76; .reg .u32 %r77; .reg .pred %r78; .reg .f64 %r79; .reg .pred %r80; .reg .f64 %r81; .reg .pred %r82; .reg .u32 %r83; .reg .u32 %r84; .reg .u32 %r85; .reg .pred %r86; .reg .f64 %r88; .reg .pred %r89; .reg .f64 %r91; .reg .f64 %r92; .reg .pred %r93; .reg .pred %r94; .reg .pred %r95; .reg .pred %r96; .reg .pred %r97; .reg .f64 %r99; .reg .f64 %r101; .reg .f64 %r103; .reg .f64 %r105; .reg .f64 %r106; .reg .f64 %r108; .reg .f64 %r110; .reg .f64 %r112; .reg .f64 %r114; .reg .f64 %r116; .reg .f64 %r117; .reg .f64 %r119; .reg .f64 %r121; .reg .u64 %r122; .reg .u64 %r123; .reg .u32 %r124; .reg .pred %r125; .reg .u32 %r126; .reg .f64 %r127; .reg .f64 %r128; .reg .f64 %r129; .reg .u32 %r131; .reg .u32 %r132; .reg .u64 %r133; .reg .u64 %r134; .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 .pred %r145; mov.u32 %r67,%ar0; mov.f64 %r68,%ar1; .loc 1 230 2 mov.b64 %r69,%r68; shr.u64 %r70,%r69,32; cvt.u32.u64 %r52,%r70; cvt.u32.u64 %r53,%r69; .loc 1 231 5 and.b32 %r54,%r52,2147483647; .loc 1 233 26 neg.s32 %r72,%r53; .loc 1 233 25 or.b32 %r73,%r72,%r53; .loc 1 233 31 shr.u32 %r74,%r73,31; .loc 1 233 8 or.b32 %r75,%r74,%r54; .loc 1 233 4 setp.le.u32 %r76,%r75,2146435072; @ %r76 bra $L53; .loc 1 233 57 add.f64 %r66,%r68,%r68; bra $L52; $L53: .loc 1 234 8 or.b32 %r77,%r53,%r54; .loc 1 234 4 setp.ne.u32 %r78,%r77,0; @ %r78 bra $L55; .loc 1 234 28 mov.f64 %r79,0dbff0000000000000; div.rn.f64 %r66,%r79,0d0000000000000000; bra $L52; $L55: .loc 1 235 4 setp.ge.s32 %r80,%r52,0; @ %r80 bra $L56; .loc 1 235 22 mov.f64 %r81,0d0000000000000000; div.rn.f64 %r66,%r81,0d0000000000000000; bra $L52; $L56: .loc 1 237 4 setp.ge.s32 %r82,%r67,0; @ %r82 bra $L57; .loc 1 238 5 neg.s32 %r67,%r67; .loc 1 239 20 add.u32 %r83,%r67,%r67; and.b32 %r84,%r83,2; .loc 1 239 8 mov.u32 %r85,1; sub.u32 %r55,%r85,%r84; bra $L58; $L57: .loc 1 241 4 setp.ne.u32 %r86,%r67,0; @ %r86 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 %r88,[%value_in]; } mov.f64 %r66,%r88; bra $L52; $L67: .loc 1 236 7 mov.u32 %r55,1; $L58: .loc 1 242 4 setp.ne.u32 %r89,%r67,1; @ %r89 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 %r91,[%value_in]; } .loc 1 242 22 cvt.rn.f64.s32 %r92,%r55; mul.f64 %r66,%r92,%r91; bra $L52; $L59: .loc 1 243 4 setp.eq.u32 %r93,%r54,2146435072; @ %r93 bra $L68; .loc 1 244 4 setp.le.s32 %r94,%r54,1389363199; @ %r94 bra $L60; .loc 1 258 11 and.b32 %r33,%r67,3; setp.eq.u32 %r95,%r33,2; @ %r95 bra $L61; setp.eq.u32 %r96,%r33,3; @ %r96 bra $L62; setp.eq.u32 %r97,%r33,1; @ %r97 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 %r99,[%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 %r101,[%value_in]; } .loc 1 259 20 sub.f64 %r51,%r99,%r101; .loc 1 259 7 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 %r103,[%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 %r105,[%value_in]; } .loc 1 260 22 neg.f64 %r106,%r103; .loc 1 260 20 sub.f64 %r51,%r106,%r105; .loc 1 260 7 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 %r108,[%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 %r110,[%value_in]; } .loc 1 261 20 sub.f64 %r51,%r108,%r110; .loc 1 261 7 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 %r112,[%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 %r114,[%value_in]; } .loc 1 262 20 add.f64 %r51,%r112,%r114; $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 %r116,[%value_in]; } .loc 1 264 16 mul.f64 %r117,%r51,0d3fe20dd750429b6d; .loc 1 264 5 div.rn.f64 %r66,%r117,%r116; 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 %r119,[%value_in]; } mov.f64 %r62,%r119; .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 %r121,[%value_in]; } mov.f64 %r56,%r121; .loc 1 271 6 mov.b64 %r122,%r56; shr.u64 %r123,%r122,32; cvt.u32.u64 %r124,%r123; setp.eq.u32 %r125,%r124,-1048576; @ %r125 bra $L69; .loc 1 271 11 mov.u32 %r57,1; bra $L66; $L70: .loc 1 273 5 mov.f64 %r56,%r66; $L66: .loc 1 273 18 add.u32 %r126,%r57,%r57; .loc 1 273 8 cvt.rn.f64.s32 %r127,%r126; .loc 1 273 21 div.rn.f64 %r128,%r127,%r68; .loc 1 273 5 neg.f64 %r129,%r62; fma.rn.f64 %r66,%r128,%r56,%r129; .loc 1 271 37 add.u32 %r57,%r57,1; mov.f64 %r62,%r56; .loc 1 271 15 set.u32.lt.s32 %r131,%r57,%r67; neg.s32 %r132,%r131; .loc 1 271 23 mov.b64 %r133,%r66; shr.u64 %r134,%r133,32; cvt.u32.u64 %r136,%r134; set.u32.ne.u32 %r137,%r136,-1048576; neg.s32 %r138,%r137; .loc 1 271 17 cvt.u16.u32 %r140,%r132; cvt.u16.u32 %r141,%r138; and.b16 %r139,%r140,%r141; .loc 1 271 6 cvt.u32.u16 %r142,%r139; cvt.u16.u8 %r143,%r142; setp.ne.u16 %r144,%r143,0; @ %r144 bra $L70; bra $L65; $L69: .loc 1 268 10 mov.f64 %r66,%r121; $L65: .loc 1 278 4 setp.eq.u32 %r145,%r55,1; @ %r145 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/ 1591654539 399 399 100644 6144 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r57; .reg .u32 %r58; .reg .u32 %r60; .reg .u32 %r61; .reg .u32 %r62; .reg .f64 %r63; .reg .u32 %r64; .reg .f64 %r65; .reg .u32 %r66; .reg .f64 %r67; .reg .f64 %r68; .reg .f64 %r69; .reg .f64 %r70; .reg .f64 %r71; .reg .f64 %r72; .reg .u32 %r73; .reg .f64 %r74; .reg .f64 %r78; .reg .f64 %r79; .reg .f64 %r82; .reg .f64 %r85; .reg .u64 %r86; .reg .f64 %r87; .reg .f64 %r88; .reg .u64 %r89; .reg .u64 %r90; .reg .pred %r91; .reg .u32 %r92; .reg .u32 %r94; .reg .u32 %r95; .reg .pred %r96; .reg .f64 %r97; .reg .pred %r98; .reg .f64 %r99; .reg .u64 %r100; .reg .u64 %r101; .reg .pred %r102; .reg .u32 %r103; .reg .u32 %r104; .reg .u32 %r105; .reg .u32 %r106; .reg .u32 %r107; .reg .u64 %r108; .reg .u64 %r109; .reg .u64 %r110; .reg .u64 %r111; .reg .u32 %r112; .reg .f64 %r113; .reg .u32 %r114; .reg .u32 %r115; .reg .pred %r116; .reg .pred %r117; .reg .pred %r118; .reg .f64 %r119; .reg .f64 %r121; .reg .f64 %r122; .reg .pred %r123; .reg .f64 %r125; .reg .f64 %r126; .reg .f64 %r127; .reg .f64 %r128; .reg .f64 %r129; .reg .f64 %r130; .reg .f64 %r131; .reg .f64 %r132; .reg .f64 %r133; .reg .f64 %r134; .reg .u32 %r135; .reg .u32 %r136; .reg .u32 %r137; .reg .pred %r138; .reg .f64 %r139; .reg .f64 %r140; .reg .pred %r141; .reg .f64 %r142; .reg .f64 %r143; .reg .f64 %r144; .reg .f64 %r145; .reg .f64 %r146; .reg .f64 %r147; .reg .pred %r148; .reg .f64 %r150; .reg .f64 %r151; .reg .f64 %r152; mov.f64 %r88,%ar0; mov.b64 %r89,%r88; shr.u64 %r90,%r89,32; cvt.u32.u64 %r66,%r90; .loc 1 102 2 cvt.u32.u64 %r58,%r90; .loc 1 105 5 setp.gt.s32 %r91,%r66,1048575; @ %r91 bra $L13; .loc 1 106 14 and.b32 %r92,%r66,2147483647; .loc 1 106 26 cvt.u32.u64 %r95,%r89; or.b32 %r94,%r92,%r95; .loc 1 106 9 setp.ne.u32 %r96,%r94,0; @ %r96 bra $L3; .loc 1 107 16 mov.f64 %r97,0dc350000000000000; div.rn.f64 %r87,%r97,0d0000000000000000; bra $L1; $L3: .loc 1 108 9 setp.ge.s32 %r98,%r66,0; @ %r98 bra $L5; .loc 1 108 25 sub.f64 %r99,%r88,%r88; .loc 1 108 28 div.rn.f64 %r87,%r99,0d0000000000000000; bra $L1; $L5: .loc 1 109 17 mul.f64 %r88,%r88,0d4350000000000000; .loc 1 110 6 mov.b64 %r100,%r88; shr.u64 %r101,%r100,32; cvt.u32.u64 %r58,%r101; .loc 1 109 8 mov.u32 %r57,-54; bra $L2; $L13: .loc 1 104 3 mov.u32 %r57,0; $L2: .loc 1 112 5 setp.le.s32 %r102,%r58,2146435071; @ %r102 bra $L6; .loc 1 112 32 add.f64 %r87,%r88,%r88; bra $L1; $L6: .loc 1 113 10 shr.s32 %r103,%r58,20; .loc 1 113 15 add.u32 %r104,%r103,-1023; .loc 1 113 4 add.u32 %r60,%r104,%r57; .loc 1 114 5 and.b32 %r61,%r58,1048575; .loc 1 115 9 add.u32 %r105,%r61,614244; .loc 1 115 4 and.b32 %r62,%r105,1048576; .loc 1 116 2 mov.b64 %r86,%r88; xor.b32 %r106,%r62,1072693248; or.b32 %r107,%r106,%r61; cvt.u64.u32 %r108,%r107; shl.b64 %r109,%r108,32; and.b64 %r110,%r86,4294967295; or.b64 %r111,%r110,%r109; mov.b64 %r63,%r111; .loc 1 117 9 shr.s32 %r112,%r62,20; .loc 1 117 4 add.u32 %r64,%r112,%r60; .loc 1 118 4 mov.f64 %r113,0d3ff0000000000000; sub.f64 %r65,%r63,%r113; .loc 1 119 19 add.u32 %r114,%r61,2; .loc 1 119 16 and.b32 %r115,%r114,1048575; .loc 1 119 4 setp.gt.s32 %r116,%r115,2; @ %r116 bra $L7; .loc 1 120 13 setp.neu.f64 %r117,%r65,0d0000000000000000; @ %r117 bra $L8; .loc 1 120 27 setp.eq.u32 %r118,%r64,0; @ %r118 bra $L14; .loc 1 120 56 cvt.rn.f64.s32 %r67,%r64; .loc 1 121 51 mul.f64 %r119,%r67,0d3dea39ef35793c76; .loc 1 121 48 fma.rn.f64 %r87,%r67,0d3fe62e42fee00000,%r119; bra $L1; $L8: .loc 1 122 18 fma.rn.f64 %r121,%r65,0dbfd5555555555555,0d3fe0000000000000; .loc 1 122 11 mul.f64 %r122,%r65,%r65; .loc 1 122 8 mul.f64 %r68,%r121,%r122; .loc 1 123 8 setp.ne.u32 %r123,%r64,0; @ %r123 bra $L9; .loc 1 123 23 sub.f64 %r87,%r65,%r68; bra $L1; $L9: .loc 1 123 35 cvt.rn.f64.s32 %r69,%r64; .loc 1 124 32 fma.rn.f64 %r125,%r69,0dbdea39ef35793c76,%r68; .loc 1 124 43 sub.f64 %r126,%r125,%r65; .loc 1 124 28 neg.f64 %r127,%r126; fma.rn.f64 %r87,%r69,0d3fe62e42fee00000,%r127; bra $L1; $L7: .loc 1 126 13 add.f64 %r128,%r65,0d4000000000000000; .loc 1 126 5 div.rn.f64 %r70,%r65,%r128; .loc 1 127 5 cvt.rn.f64.s32 %r71,%r64; .loc 1 128 4 mul.f64 %r72,%r70,%r70; .loc 1 129 4 add.u32 %r73,%r61,-398458; .loc 1 130 4 mul.f64 %r74,%r72,%r72; .loc 1 132 19 fma.rn.f64 %r129,%r74,0d3fc39a09d078c69f,0d3fcc71c51d8e78af; .loc 1 132 12 fma.rn.f64 %r130,%r129,%r74,0d3fd999999997fa04; .loc 1 133 26 fma.rn.f64 %r131,%r74,0d3fc2f112df3e5244,0d3fc7466496cb03de; .loc 1 133 19 fma.rn.f64 %r132,%r131,%r74,0d3fd2492494229359; .loc 1 133 12 fma.rn.f64 %r133,%r132,%r74,0d3fe5555555555593; .loc 1 133 4 mul.f64 %r134,%r133,%r72; .loc 1 135 4 fma.rn.f64 %r78,%r130,%r74,%r134; .loc 1 131 4 mov.u32 %r136,440401; sub.u32 %r135,%r136,%r61; .loc 1 134 4 or.b32 %r137,%r135,%r73; .loc 1 136 4 setp.le.s32 %r138,%r137,0; @ %r138 bra $L10; .loc 1 137 14 mul.f64 %r139,%r65,0d3fe0000000000000; .loc 1 137 10 mul.f64 %r79,%r139,%r65; add.f64 %r140,%r78,%r79; mul.f64 %r82,%r140,%r70; .loc 1 138 8 setp.ne.u32 %r141,%r64,0; @ %r141 bra $L11; .loc 1 138 29 sub.f64 %r142,%r79,%r82; .loc 1 138 23 sub.f64 %r87,%r65,%r142; bra $L1; $L11: .loc 1 139 43 fma.rn.f64 %r143,%r71,0d3dea39ef35793c76,%r82; .loc 1 139 31 sub.f64 %r144,%r79,%r143; .loc 1 139 55 sub.f64 %r145,%r144,%r65; .loc 1 139 24 neg.f64 %r146,%r145; fma.rn.f64 %r87,%r71,0d3fe62e42fee00000,%r146; bra $L1; $L10: sub.f64 %r147,%r65,%r78; mul.f64 %r85,%r147,%r70; .loc 1 141 8 setp.ne.u32 %r148,%r64,0; @ %r148 bra $L12; .loc 1 141 23 sub.f64 %r87,%r65,%r85; bra $L1; $L12: .loc 1 142 34 fma.rn.f64 %r150,%r71,0dbdea39ef35793c76,%r85; .loc 1 142 45 sub.f64 %r151,%r150,%r65; .loc 1 142 24 neg.f64 %r152,%r151; fma.rn.f64 %r87,%r71,0d3fe62e42fee00000,%r152; bra $L1; $L14: .loc 1 120 41 mov.f64 %r87,0d0000000000000000; $L1: .loc 1 144 1 mov.f64 %value,%r87; st.param.f64 [%value_out],%value; ret; } lib_a-e_log10.o/1591654539 399 399 100644 3054 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r44; .reg .u64 %r47; .reg .f64 %r48; .reg .f64 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .pred %r52; .reg .u32 %r53; .reg .u32 %r55; .reg .u32 %r56; .reg .pred %r57; .reg .f64 %r58; .reg .pred %r59; .reg .f64 %r60; .reg .u64 %r61; .reg .u64 %r62; .reg .pred %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .u32 %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .u32 %r70; .reg .u64 %r71; .reg .u64 %r72; .reg .u64 %r73; .reg .u64 %r74; .reg .f64 %r76; .reg .f64 %r77; .reg .f64 %r78; mov.f64 %r49,%ar0; mov.b64 %r50,%r49; shr.u64 %r51,%r50,32; cvt.u32.u64 %r44,%r51; .loc 1 78 2 cvt.u32.u64 %r37,%r51; .loc 1 81 12 setp.gt.s32 %r52,%r44,1048575; @ %r52 bra $L7; .loc 1 82 21 and.b32 %r53,%r44,2147483647; .loc 1 82 33 cvt.u32.u64 %r56,%r50; or.b32 %r55,%r53,%r56; .loc 1 82 16 setp.ne.u32 %r57,%r55,0; @ %r57 bra $L3; .loc 1 83 30 mov.f64 %r58,0dc350000000000000; div.rn.f64 %r48,%r58,0d0000000000000000; bra $L1; $L3: .loc 1 84 16 setp.ge.s32 %r59,%r44,0; @ %r59 bra $L5; .loc 1 84 32 sub.f64 %r60,%r49,%r49; .loc 1 84 35 div.rn.f64 %r48,%r60,0d0000000000000000; bra $L1; $L5: .loc 1 85 24 mul.f64 %r49,%r49,0d4350000000000000; .loc 1 86 6 mov.b64 %r61,%r49; shr.u64 %r62,%r61,32; cvt.u32.u64 %r37,%r62; .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 %r63,%r37,2146435071; @ %r63 bra $L6; .loc 1 88 32 add.f64 %r48,%r49,%r49; bra $L1; $L6: .loc 1 89 10 shr.s32 %r64,%r37,20; .loc 1 89 15 add.u32 %r65,%r64,-1023; .loc 1 89 4 add.u32 %r38,%r65,%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 %r66,%r38,%r39; .loc 1 92 12 cvt.rn.f64.s32 %r41,%r66; .loc 1 93 2 mov.b64 %r47,%r49; .loc 1 91 37 mov.u32 %r68,1023; sub.u32 %r67,%r68,%r39; .loc 1 91 40 shl.b32 %r69,%r67,20; .loc 1 91 12 or.b32 %r70,%r69,%r29; .loc 1 93 2 cvt.u64.u32 %r71,%r70; shl.b64 %r72,%r71,32; and.b64 %r73,%r47,4294967295; or.b64 %r74,%r73,%r72; mov.b64 %r42,%r74; .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 %r76,[%value_in]; } .loc 1 94 27 mul.f64 %r77,%r76,0d3fdbcb7b1526e50e; .loc 1 94 5 fma.rn.f64 %r78,%r41,0d3d59fef311f12b36,%r77; .loc 1 95 11 fma.rn.f64 %r48,%r41,0d3fd34413509f6000,%r78; $L1: .loc 1 96 1 mov.f64 %value,%r48; st.param.f64 [%value_out],%value; ret; } lib_a-e_pow.o/ 1591654539 399 399 100644 23374 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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" // BEGIN GLOBAL FUNCTION DECL: nan .extern .func (.param .f64 %value_out) nan (.param .u64 %in_ar0); // 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: scalbn .extern .func (.param .f64 %value_out) scalbn (.param .f64 %in_ar0, .param .u32 %in_ar1); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[1] = {0 }; // 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 %r51; .reg .f64 %r54; .reg .u32 %r103; .reg .u32 %r118; .reg .f64 %r132; .reg .f64 %r135; .reg .f64 %r136; .reg .f64 %r137; .reg .f64 %r138; .reg .f64 %r139; .reg .u32 %r141; .reg .u32 %r142; .reg .u32 %r143; .reg .u32 %r144; .reg .u32 %r145; .reg .u32 %r146; .reg .f64 %r147; .reg .u32 %r149; .reg .u32 %r150; .reg .u32 %r151; .reg .u32 %r153; .reg .u32 %r154; .reg .u32 %r155; .reg .u32 %r156; .reg .u32 %r157; .reg .u32 %r158; .reg .u32 %r160; .reg .f64 %r162; .reg .f64 %r164; .reg .u32 %r166; .reg .u32 %r168; .reg .f64 %r169; .reg .f64 %r170; .reg .f64 %r171; .reg .f64 %r172; .reg .f64 %r173; .reg .f64 %r174; .reg .f64 %r176; .reg .f64 %r177; .reg .f64 %r178; .reg .f64 %r180; .reg .f64 %r182; .reg .f64 %r184; .reg .f64 %r186; .reg .f64 %r187; .reg .f64 %r189; .reg .f64 %r190; .reg .f64 %r191; .reg .u32 %r192; .reg .u32 %r194; .reg .u32 %r195; .reg .f64 %r196; .reg .f64 %r197; .reg .f64 %r198; .reg .f64 %r199; .reg .f64 %r200; .reg .f64 %r201; .reg .f64 %r202; .reg .f64 %r204; .reg .u32 %r205; .reg .u32 %r206; .reg .u32 %r209; .reg .u32 %r210; .reg .u32 %r217; .reg .f64 %r228; .reg .f64 %r229; .reg .u64 %r233; .reg .u64 %r234; .reg .u64 %r235; .reg .u64 %r237; .reg .u64 %r238; .reg .u64 %r239; .reg .u64 %r240; .reg .u64 %r242; .reg .f64 %r244; .reg .f64 %r245; .reg .f64 %r246; .reg .u64 %r247; .reg .u64 %r248; .reg .u32 %r250; .reg .pred %r251; .reg .u64 %r252; .reg .u64 %r253; .reg .pred %r255; .reg .u32 %r257; .reg .u32 %r258; .reg .u32 %r260; .reg .u32 %r261; .reg .u16 %r262; .reg .u16 %r263; .reg .u16 %r264; .reg .u32 %r265; .reg .u16 %r266; .reg .pred %r267; .reg .pred %r268; .reg .u32 %r270; .reg .u32 %r271; .reg .u32 %r273; .reg .u32 %r274; .reg .u16 %r275; .reg .u16 %r276; .reg .u16 %r277; .reg .u32 %r278; .reg .u16 %r279; .reg .pred %r280; .reg .u32 %r281; .reg .u32 %r282; .reg .pred %r283; .reg .u64 %r284; .reg .f64 %r285; .reg .pred %r286; .reg .pred %r287; .reg .pred %r288; .reg .u32 %r289; .reg .pred %r290; .reg .u32 %r291; .reg .u32 %r292; .reg .pred %r293; .reg .u32 %r294; .reg .u32 %r295; .reg .pred %r296; .reg .u32 %r297; .reg .u32 %r298; .reg .pred %r299; .reg .u32 %r300; .reg .u32 %r301; .reg .pred %r302; .reg .pred %r303; .reg .u32 %r304; .reg .u32 %r305; .reg .pred %r306; .reg .pred %r307; .reg .pred %r308; .reg .pred %r309; .reg .pred %r310; .reg .pred %r311; .reg .f64 %r312; .reg .pred %r313; .reg .u32 %r315; .reg .u32 %r316; .reg .u32 %r318; .reg .u32 %r319; .reg .u16 %r321; .reg .u16 %r322; .reg .u16 %r323; .reg .u32 %r324; .reg .u16 %r325; .reg .pred %r326; .reg .f64 %r328; .reg .f64 %r330; .reg .pred %r331; .reg .u32 %r332; .reg .u32 %r334; .reg .u32 %r335; .reg .u32 %r337; .reg .u32 %r338; .reg .u16 %r339; .reg .u16 %r340; .reg .u16 %r341; .reg .u32 %r342; .reg .u16 %r343; .reg .pred %r344; .reg .pred %r345; .reg .f64 %r346; .reg .pred %r347; .reg .u32 %r348; .reg .u32 %r349; .reg .pred %r350; .reg .pred %r351; .reg .u32 %r353; .reg .pred %r354; .reg .pred %r355; .reg .pred %r356; .reg .pred %r357; .reg .pred %r358; .reg .f64 %r359; .reg .pred %r360; .reg .pred %r361; .reg .pred %r362; .reg .pred %r363; .reg .pred %r364; .reg .f64 %r365; .reg .f64 %r366; .reg .f64 %r367; .reg .f64 %r368; .reg .f64 %r369; .reg .f64 %r370; .reg .f64 %r371; .reg .f64 %r373; .reg .f64 %r374; .reg .u64 %r375; .reg .f64 %r377; .reg .u32 %r378; .reg .pred %r379; .reg .u64 %r380; .reg .u64 %r381; .reg .u32 %r382; .reg .u32 %r383; .reg .pred %r384; .reg .pred %r385; .reg .u64 %r386; .reg .u64 %r387; .reg .u64 %r388; .reg .u64 %r389; .reg .f64 %r390; .reg .f64 %r391; .reg .u64 %r392; .reg .u32 %r393; .reg .u32 %r394; .reg .u32 %r395; .reg .u32 %r396; .reg .u64 %r397; .reg .u64 %r398; .reg .f64 %r401; .reg .f64 %r403; .reg .f64 %r404; .reg .f64 %r405; .reg .f64 %r406; .reg .f64 %r407; .reg .f64 %r408; .reg .f64 %r409; .reg .f64 %r410; .reg .f64 %r411; .reg .f64 %r412; .reg .f64 %r413; .reg .f64 %r414; .reg .f64 %r415; .reg .f64 %r416; .reg .u64 %r417; .reg .f64 %r419; .reg .f64 %r420; .reg .f64 %r421; .reg .f64 %r422; .reg .f64 %r423; .reg .f64 %r424; .reg .u64 %r425; .reg .f64 %r427; .reg .f64 %r428; .reg .f64 %r429; .reg .f64 %r430; .reg .f64 %r431; .reg .f64 %r432; .reg .f64 %r433; .reg .u64 %r434; .reg .f64 %r436; .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 .pred %r448; .reg .u32 %r449; .reg .u32 %r450; .reg .pred %r451; .reg .f64 %r452; .reg .f64 %r453; .reg .f64 %r454; .reg .pred %r455; .reg .f64 %r456; .reg .pred %r457; .reg .u32 %r458; .reg .u32 %r459; .reg .pred %r460; .reg .f64 %r461; .reg .f64 %r462; .reg .pred %r463; .reg .f64 %r464; .reg .pred %r465; .reg .u32 %r466; .reg .u32 %r467; .reg .u32 %r468; .reg .u32 %r469; .reg .u32 %r470; .reg .u32 %r471; .reg .u32 %r472; .reg .u32 %r473; .reg .u32 %r474; .reg .u64 %r475; .reg .u64 %r476; .reg .u32 %r479; .reg .u32 %r480; .reg .u32 %r481; .reg .pred %r482; .reg .u64 %r483; .reg .f64 %r484; .reg .f64 %r485; .reg .f64 %r486; .reg .f64 %r488; .reg .f64 %r489; .reg .f64 %r490; .reg .f64 %r491; .reg .f64 %r492; .reg .f64 %r493; .reg .f64 %r494; .reg .f64 %r495; .reg .f64 %r496; .reg .f64 %r497; .reg .f64 %r498; .reg .f64 %r499; .reg .f64 %r500; .reg .u64 %r501; .reg .u64 %r502; .reg .pred %r504; .reg .f64 %r507; .reg .u64 %r508; .reg .u64 %r509; .reg .u64 %r510; .reg .u64 %r511; .reg .u32 %r513; .reg .f64 %r515; .reg .pred %r516; .reg .u32 %r517; .reg .u32 %r519; .reg .u32 %r520; .reg .u32 %r522; .reg .u32 %r523; .reg .u16 %r524; .reg .u16 %r525; .reg .u16 %r526; .reg .u32 %r527; .reg .u16 %r528; .reg .pred %r529; mov.f64 %r245,%ar0; mov.f64 %r246,%ar1; .loc 1 115 2 mov.b64 %r247,%r246; shr.u64 %r248,%r247,32; cvt.u32.u64 %r150,%r248; cvt.u32.u64 %r166,%r247; .loc 1 116 26 and.b32 %r151,%r150,2147483647; .loc 1 119 8 or.b32 %r250,%r151,%r166; .loc 1 119 4 setp.eq.u32 %r251,%r250,0; @ %r251 bra $L44; mov.b64 %r252,%r245; shr.u64 %r253,%r252,32; cvt.u32.u64 %r156,%r253; .loc 1 114 2 cvt.u32.u64 %r149,%r253; cvt.u32.u64 %r157,%r252; .loc 1 116 5 and.b32 %r145,%r156,2147483647; .loc 1 122 4 setp.gt.s32 %r255,%r145,2146435072; @ %r255 bra $L3; .loc 1 122 28 set.u32.eq.u32 %r257,%r145,2146435072; neg.s32 %r258,%r257; .loc 1 122 46 set.u32.ne.u32 %r260,%r157,0; neg.s32 %r261,%r260; .loc 1 122 41 cvt.u16.u32 %r263,%r258; cvt.u16.u32 %r264,%r261; and.b16 %r262,%r263,%r264; .loc 1 122 21 cvt.u32.u16 %r265,%r262; cvt.u16.u8 %r266,%r265; setp.ne.u16 %r267,%r266,0; @ %r267 bra $L4; .loc 1 122 52 setp.gt.s32 %r268,%r151,2146435072; @ %r268 bra $L3; .loc 1 123 28 set.u32.eq.u32 %r270,%r151,2146435072; neg.s32 %r271,%r270; .loc 1 123 46 set.u32.ne.u32 %r273,%r166,0; neg.s32 %r274,%r273; .loc 1 123 41 cvt.u16.u32 %r276,%r271; cvt.u16.u32 %r277,%r274; and.b16 %r275,%r276,%r277; .loc 1 123 21 cvt.u32.u16 %r278,%r275; cvt.u16.u8 %r279,%r278; setp.eq.u16 %r280,%r279,0; @ %r280 bra $L5; $L3: .loc 1 124 13 add.u32 %r281,%r145,-1072693248; .loc 1 124 25 or.b32 %r282,%r281,%r157; .loc 1 124 8 setp.eq.u32 %r283,%r282,0; @ %r283 bra $L45; $L4: .loc 1 125 18 cvta.const.u64 %r284,$LC0; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r284; call (%value_in),nan,(%out_arg1); ld.param.f64 %r285,[%value_in]; } mov.f64 %r244,%r285; bra $L1; $L5: .loc 1 134 4 setp.ge.s32 %r286,%r156,0; @ %r286 bra $L46; .loc 1 135 8 setp.gt.s32 %r287,%r151,1128267775; @ %r287 bra $L47; .loc 1 136 13 setp.le.s32 %r288,%r151,1072693247; @ %r288 bra $L48; .loc 1 137 10 shr.s32 %r289,%r151,20; .loc 1 137 5 add.u32 %r153,%r289,-1023; .loc 1 138 5 setp.le.s32 %r290,%r153,20; @ %r290 bra $L7; .loc 1 139 18 mov.u32 %r291,52; sub.u32 %r34,%r291,%r153; .loc 1 139 13 shr.u32 %r154,%r166,%r34; .loc 1 140 12 shl.b32 %r292,%r154,%r34; .loc 1 140 9 setp.ne.u32 %r293,%r292,%r166; @ %r293 bra $L49; .loc 1 140 40 and.b32 %r294,%r154,1; .loc 1 140 34 mov.u32 %r295,2; sub.u32 %r141,%r295,%r294; bra $L6; $L7: .loc 1 141 12 setp.ne.u32 %r296,%r166,0; @ %r296 bra $L8; .loc 1 142 18 mov.u32 %r297,20; sub.u32 %r39,%r297,%r153; .loc 1 142 9 shr.s32 %r155,%r151,%r39; .loc 1 143 12 shl.b32 %r298,%r155,%r39; .loc 1 143 9 setp.ne.u32 %r299,%r298,%r151; @ %r299 bra $L50; .loc 1 143 40 and.b32 %r300,%r155,1; .loc 1 143 34 mov.u32 %r301,2; sub.u32 %r141,%r301,%r300; bra $L11; $L46: .loc 1 133 10 mov.u32 %r141,0; bra $L6; $L47: .loc 1 135 32 mov.u32 %r141,2; bra $L6; $L48: .loc 1 133 10 mov.u32 %r141,0; bra $L6; $L49: mov.u32 %r141,0; $L6: .loc 1 149 4 setp.ne.u32 %r302,%r166,0; @ %r302 bra $L10; .loc 1 150 9 setp.ne.u32 %r303,%r151,2146435072; @ %r303 bra $L11; .loc 1 151 17 add.u32 %r304,%r145,-1072693248; .loc 1 151 29 or.b32 %r305,%r304,%r157; .loc 1 151 12 setp.eq.u32 %r306,%r305,0; @ %r306 bra $L51; .loc 1 153 18 setp.le.s32 %r307,%r145,1072693247; @ %r307 bra $L12; .loc 1 154 24 setp.ge.s32 %r308,%r150,0; @ %r308 bra $L52; $L13: mov.f64 %r244,0d0000000000000000; bra $L1; $L12: .loc 1 156 23 setp.ge.s32 %r309,%r150,0; @ %r309 bra $L13; neg.f64 %r244,%r246; bra $L1; $L11: .loc 1 158 8 setp.ne.u32 %r310,%r151,1072693248; @ %r310 bra $L14; .loc 1 159 5 setp.ge.s32 %r311,%r150,0; @ %r311 bra $L53; .loc 1 159 22 mov.f64 %r312,0d3ff0000000000000; div.rn.f64 %r244,%r312,%r245; bra $L1; $L14: .loc 1 161 8 setp.ne.u32 %r313,%r150,1073741824; @ %r313 bra $L15; .loc 1 161 33 mul.f64 %r244,%r245,%r245; bra $L1; $L15: .loc 1 162 8 set.u32.eq.u32 %r315,%r150,1071644672; neg.s32 %r316,%r315; .loc 1 163 5 not.b32 %r318,%r149; shr.u32 %r319,%r318,31; cvt.u16.u32 %r322,%r316; cvt.u16.u32 %r323,%r319; and.b16 %r321,%r322,%r323; cvt.u32.u16 %r324,%r321; cvt.u16.u8 %r325,%r324; setp.eq.u16 %r326,%r325,0; @ %r326 bra $L10; .loc 1 164 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r245; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r328,[%value_in]; } mov.f64 %r244,%r328; bra $L1; $L10: .loc 1 168 9 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r245; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r330,[%value_in]; } mov.f64 %r244,%r330; .loc 1 170 4 setp.ne.u32 %r331,%r157,0; @ %r331 bra $L16; .loc 1 171 30 and.b32 %r332,%r149,1073741823; set.u32.eq.u32 %r334,%r332,1072693248; neg.s32 %r335,%r334; .loc 1 171 27 set.u32.eq.u32 %r337,%r145,0; neg.s32 %r338,%r337; .loc 1 171 30 cvt.u16.u32 %r340,%r335; cvt.u16.u32 %r341,%r338; or.b16 %r339,%r340,%r341; cvt.u32.u16 %r342,%r339; cvt.u16.u8 %r343,%r342; setp.eq.u16 %r344,%r343,0; @ %r344 bra $L16; bra $L43; $L59: .loc 1 133 10 mov.u32 %r141,%r157; $L43: .loc 1 173 5 setp.ge.s32 %r345,%r150,0; @ %r345 bra $L17; .loc 1 173 14 mov.f64 %r346,0d3ff0000000000000; div.rn.f64 %r244,%r346,%r244; $L17: .loc 1 174 5 setp.ge.s32 %r347,%r149,0; @ %r347 bra $L1; .loc 1 175 14 add.u32 %r348,%r145,-1072693248; .loc 1 175 26 or.b32 %r349,%r348,%r141; .loc 1 175 9 setp.ne.u32 %r350,%r349,0; @ %r350 bra $L18; .loc 1 176 10 sub.f64 %r48,%r244,%r244; .loc 1 176 6 div.rn.f64 %r244,%r48,%r48; bra $L1; $L18: .loc 1 177 16 setp.ne.u32 %r351,%r141,1; @ %r351 bra $L1; .loc 1 178 6 neg.f64 %r244,%r244; bra $L1; $L16: .loc 1 189 27 set.u32.ge.s32 %r51,%r156,0; .loc 1 189 30 or.b32 %r353,%r141,%r51; .loc 1 189 4 setp.ne.u32 %r354,%r353,0; @ %r354 bra $L19; $L42: .loc 1 189 52 sub.f64 %r54,%r245,%r245; .loc 1 189 55 div.rn.f64 %r244,%r54,%r54; bra $L1; $L19: .loc 1 192 4 setp.le.s32 %r355,%r151,1105199104; @ %r355 bra $L20; .loc 1 193 8 setp.le.s32 %r356,%r151,1139802112; @ %r356 bra $L21; .loc 1 194 5 setp.gt.s32 %r357,%r145,1072693247; @ %r357 bra $L22; .loc 1 194 46 setp.ge.s32 %r358,%r150,0; @ %r358 bra $L13; $L23: mov.f64 %r359,0d7e37e43c8800759c; mul.f64 %r244,%r359,0d7e37e43c8800759c; bra $L1; $L22: .loc 1 195 46 setp.gt.s32 %r360,%r150,0; @ %r360 bra $L23; bra $L13; $L21: .loc 1 198 8 setp.gt.s32 %r361,%r145,1072693246; @ %r361 bra $L24; .loc 1 198 48 setp.lt.s32 %r362,%r150,0; @ ! %r362 bra $L13; bra $L23; $L24: .loc 1 199 8 setp.le.s32 %r363,%r145,1072693248; @ %r363 bra $L25; .loc 1 199 48 setp.gt.s32 %r364,%r150,0; @ %r364 bra $L23; bra $L13; $L25: .loc 1 202 8 mov.f64 %r365,0d3ff0000000000000; sub.f64 %r162,%r330,%r365; .loc 1 203 48 neg.f64 %r366,%r162; fma.rn.f64 %r367,%r366,0d3fd0000000000000,0d3fd5555555555555; .loc 1 203 20 neg.f64 %r368,%r367; fma.rn.f64 %r369,%r368,%r162,0d3fe0000000000000; .loc 1 203 12 mul.f64 %r370,%r162,%r162; .loc 1 203 8 mul.f64 %r371,%r369,%r370; .loc 1 205 8 mul.f64 %r373,%r371,0dbff71547652b82fe; fma.rn.f64 %r164,%r162,0d3e54ae0bf85ddf44,%r373; .loc 1 206 9 fma.rn.f64 %r374,%r162,0d3ff7154760000000,%r164; .loc 1 207 6 mov.b64 %r233,%r374; and.b64 %r375,%r233,-4294967296; mov.b64 %r137,%r375; .loc 1 208 16 fma.rn.f64 %r377,%r366,0d3ff7154760000000,%r137; .loc 1 208 9 sub.f64 %r138,%r164,%r377; bra $L26; $L20: .loc 1 213 8 and.b32 %r378,%r149,2146435072; setp.ne.u32 %r379,%r378,0; @ %r379 bra $L54; .loc 1 214 7 mul.f64 %r244,%r330,0d4340000000000000; .loc 1 214 26 mov.b64 %r380,%r244; shr.u64 %r381,%r380,32; cvt.u32.u64 %r145,%r381; .loc 1 214 19 mov.u32 %r142,-53; bra $L27; $L54: .loc 1 211 8 mov.u32 %r142,0; $L27: .loc 1 215 17 shr.s32 %r382,%r145,20; .loc 1 215 22 add.u32 %r383,%r382,-1023; .loc 1 215 9 add.u32 %r143,%r383,%r142; .loc 1 216 9 and.b32 %r168,%r145,1048575; .loc 1 218 9 or.b32 %r146,%r168,1072693248; .loc 1 219 8 setp.le.s32 %r384,%r168,235662; @ %r384 bra $L55; .loc 1 220 13 setp.le.s32 %r385,%r168,767609; @ %r385 bra $L56; .loc 1 221 17 add.u32 %r143,%r143,1; .loc 1 221 24 add.u32 %r146,%r146,-1048576; mov.f64 %r229,0d0000000000000000; mov.f64 %r228,%r229; mov.u32 %r209,0; mov.f64 %r147,0d3ff0000000000000; bra $L28; $L55: mov.f64 %r229,0d0000000000000000; mov.f64 %r228,%r229; mov.u32 %r209,0; mov.f64 %r147,0d3ff0000000000000; bra $L28; $L56: mov.f64 %r229,0d3fe2b80340000000; mov.f64 %r228,0d3e4cfdeb43cfd006; mov.u32 %r209,262144; mov.f64 %r147,0d3ff8000000000000; $L28: .loc 1 222 6 mov.b64 %r234,%r244; cvt.u64.u32 %r386,%r146; shl.b64 %r387,%r386,32; and.b64 %r388,%r234,4294967295; or.b64 %r389,%r388,%r387; mov.b64 %r169,%r389; .loc 1 225 8 sub.f64 %r170,%r169,%r147; .loc 1 226 17 add.f64 %r390,%r147,%r169; .loc 1 226 8 mov.f64 %r391,0d3ff0000000000000; div.rn.f64 %r171,%r391,%r390; .loc 1 227 8 mul.f64 %r172,%r170,%r171; .loc 1 229 6 mov.b64 %r235,%r172; and.b64 %r392,%r235,-4294967296; mov.b64 %r173,%r392; .loc 1 232 6 shr.s32 %r393,%r146,1; or.b32 %r394,%r393,536870912; add.u32 %r395,%r394,524288; add.u32 %r396,%r395,%r209; cvt.u64.u32 %r397,%r396; shl.b64 %r398,%r397,32; mov.b64 %r174,%r398; .loc 1 234 26 neg.f64 %r401,%r173; .loc 1 234 17 fma.rn.f64 %r403,%r401,%r174,%r170; .loc 1 233 21 sub.f64 %r404,%r174,%r147; .loc 1 233 10 sub.f64 %r405,%r169,%r404; .loc 1 234 26 fma.rn.f64 %r406,%r401,%r405,%r403; .loc 1 234 10 mul.f64 %r176,%r406,%r171; .loc 1 236 9 mul.f64 %r177,%r172,%r172; .loc 1 237 12 mul.f64 %r407,%r177,%r177; .loc 1 238 19 add.f64 %r408,%r172,%r173; .loc 1 238 14 mul.f64 %r409,%r408,%r176; .loc 1 237 47 fma.rn.f64 %r410,%r177,0d3fca7e284a454eef,0d3fcd864a93c9db65; .loc 1 237 40 fma.rn.f64 %r411,%r410,%r177,0d3fd17460a91d4101; .loc 1 237 33 fma.rn.f64 %r412,%r411,%r177,0d3fd55555518f264d; .loc 1 237 26 fma.rn.f64 %r413,%r412,%r177,0d3fdb6db6db6fabff; .loc 1 237 19 fma.rn.f64 %r414,%r413,%r177,0d3fe3333333333303; .loc 1 238 8 fma.rn.f64 %r178,%r407,%r414,%r409; .loc 1 240 15 fma.rn.f64 %r415,%r173,%r173,0d4008000000000000; .loc 1 240 10 add.f64 %r416,%r415,%r178; .loc 1 241 6 mov.b64 %r237,%r416; and.b64 %r417,%r237,-4294967296; mov.b64 %r180,%r417; .loc 1 242 19 mov.f64 %r420,0d4008000000000000; sub.f64 %r419,%r180,%r420; .loc 1 242 24 fma.rn.f64 %r421,%r401,%r173,%r419; .loc 1 242 10 sub.f64 %r422,%r178,%r421; .loc 1 245 21 mul.f64 %r423,%r422,%r172; .loc 1 245 8 fma.rn.f64 %r182,%r176,%r180,%r423; .loc 1 247 10 fma.rn.f64 %r424,%r173,%r180,%r182; .loc 1 248 6 mov.b64 %r238,%r424; and.b64 %r425,%r238,-4294967296; mov.b64 %r184,%r425; .loc 1 249 18 fma.rn.f64 %r427,%r401,%r180,%r184; .loc 1 249 10 sub.f64 %r428,%r182,%r427; .loc 1 251 24 mul.f64 %r429,%r428,0d3feec709dc3a03fd; .loc 1 251 20 fma.rn.f64 %r430,%r184,0dbe3e2fe0145b01f5,%r429; .loc 1 251 10 add.f64 %r186,%r430,%r228; .loc 1 253 8 cvt.rn.f64.s32 %r187,%r143; .loc 1 254 17 fma.rn.f64 %r431,%r184,0d3feec709e0000000,%r186; .loc 1 254 22 add.f64 %r432,%r431,%r229; .loc 1 254 9 add.f64 %r433,%r432,%r187; .loc 1 255 6 mov.b64 %r239,%r433; and.b64 %r434,%r239,-4294967296; mov.b64 %r137,%r434; .loc 1 256 20 sub.f64 %r436,%r137,%r187; .loc 1 256 23 sub.f64 %r437,%r436,%r229; .loc 1 256 32 fma.rn.f64 %r438,%r184,0dbfeec709e0000000,%r437; .loc 1 256 9 sub.f64 %r138,%r186,%r438; $L26: .loc 1 260 38 add.u32 %r439,%r141,-1; .loc 1 260 30 or.b32 %r440,%r439,%r51; .loc 1 260 4 setp.ne.u32 %r441,%r440,0; .loc 1 261 8 selp.f64 %r139,0d3ff0000000000000,0dbff0000000000000,%r441; .loc 1 265 2 mov.b64 %r240,%r246; and.b64 %r442,%r240,-4294967296; mov.b64 %r189,%r442; .loc 1 266 10 sub.f64 %r443,%r246,%r189; .loc 1 266 19 mul.f64 %r444,%r138,%r246; .loc 1 266 6 fma.rn.f64 %r190,%r443,%r137,%r444; .loc 1 267 6 mul.f64 %r136,%r137,%r189; .loc 1 268 4 add.f64 %r191,%r190,%r136; mov.b64 %r445,%r191; shr.u64 %r446,%r445,32; cvt.u32.u64 %r160,%r446; .loc 1 269 2 cvt.u32.u64 %r192,%r446; cvt.u32.u64 %r158,%r445; .loc 1 270 5 setp.le.s32 %r448,%r160,1083179007; @ %r448 bra $L30; .loc 1 271 12 add.u32 %r449,%r160,-1083179008; .loc 1 271 24 or.b32 %r450,%r449,%r158; .loc 1 271 8 setp.eq.u32 %r451,%r450,0; @ %r451 bra $L31; .loc 1 272 11 mul.f64 %r452,%r139,0d7e37e43c8800759c; .loc 1 272 16 mul.f64 %r244,%r452,0d7e37e43c8800759c; bra $L1; $L31: .loc 1 274 9 add.f64 %r453,%r190,0d3c971547652b82fe; .loc 1 274 15 sub.f64 %r454,%r191,%r136; .loc 1 274 5 setp.gt.f64 %r455,%r453,%r454; @ ! %r455 bra $L32; .loc 1 274 29 mul.f64 %r456,%r139,0d7e37e43c8800759c; .loc 1 274 34 mul.f64 %r244,%r456,0d7e37e43c8800759c; bra $L1; $L30: .loc 1 276 14 and.b32 %r103,%r160,2147483647; .loc 1 276 11 setp.le.s32 %r457,%r103,1083231231; @ %r457 bra $L34; .loc 1 277 12 add.u32 %r458,%r160,1064252416; .loc 1 277 24 or.b32 %r459,%r458,%r158; .loc 1 277 8 setp.eq.u32 %r460,%r459,0; @ %r460 bra $L35; .loc 1 278 11 mul.f64 %r461,%r139,0d01a56e1fc2f8f359; .loc 1 278 16 mul.f64 %r244,%r461,0d01a56e1fc2f8f359; bra $L1; $L35: .loc 1 280 12 sub.f64 %r462,%r191,%r136; .loc 1 280 5 setp.ge.f64 %r463,%r462,%r190; @ ! %r463 bra $L32; .loc 1 280 26 mul.f64 %r464,%r139,0d01a56e1fc2f8f359; .loc 1 280 31 mul.f64 %r244,%r464,0d01a56e1fc2f8f359; bra $L1; $L34: .loc 1 289 4 setp.le.s32 %r465,%r103,1071644672; @ %r465 bra $L58; .loc 1 287 8 shr.s32 %r217,%r103,20; $L41: .loc 1 290 27 add.u32 %r466,%r217,-1022; .loc 1 290 23 mov.u32 %r468,1048576; shr.s32 %r467,%r468,%r466; .loc 1 290 8 add.u32 %r194,%r467,%r192; .loc 1 291 25 shr.s32 %r469,%r194,20; and.b32 %r470,%r469,2047; .loc 1 291 8 add.u32 %r195,%r470,-1023; .loc 1 293 6 mov.u32 %r472,1048575; shr.s32 %r471,%r472,%r195; not.b32 %r473,%r471; and.b32 %r474,%r473,%r194; cvt.u64.u32 %r475,%r474; shl.b64 %r476,%r475,32; mov.b64 %r196,%r476; .loc 1 294 13 and.b32 %r479,%r194,1048575; .loc 1 294 25 or.b32 %r118,%r479,1048576; .loc 1 294 42 mov.u32 %r481,20; sub.u32 %r480,%r481,%r195; .loc 1 294 8 shr.s32 %r144,%r118,%r480; .loc 1 295 8 setp.ge.s32 %r482,%r192,0; @ %r482 bra $L38; .loc 1 295 16 neg.s32 %r144,%r144; $L38: .loc 1 296 10 sub.f64 %r136,%r136,%r196; shl.b32 %r210,%r144,20; add.f64 %r191,%r190,%r136; bra $L37; $L58: mov.u32 %r210,0; .loc 1 288 4 mov.u32 %r144,%r210; $L37: .loc 1 299 2 mov.b64 %r242,%r191; and.b64 %r483,%r242,-4294967296; mov.b64 %r197,%r483; .loc 1 301 13 sub.f64 %r484,%r197,%r136; .loc 1 301 10 sub.f64 %r485,%r190,%r484; .loc 1 301 25 mul.f64 %r486,%r197,0dbe205c610ca86c39; .loc 1 301 4 fma.rn.f64 %r198,%r485,0d3fe62e42fefa39ef,%r486; .loc 1 302 4 fma.rn.f64 %r199,%r197,0d3fe62e4300000000,%r198; .loc 1 303 10 fma.rn.f64 %r488,%r197,0dbfe62e4300000000,%r199; .loc 1 303 4 sub.f64 %r200,%r198,%r488; .loc 1 304 5 mul.f64 %r201,%r199,%r199; .loc 1 305 35 fma.rn.f64 %r489,%r201,0d3e66376972bea4d0,0dbebbbd41c5d26bf1; .loc 1 305 29 fma.rn.f64 %r490,%r489,%r201,0d3f11566aaf25de2c; .loc 1 305 23 fma.rn.f64 %r491,%r490,%r201,0dbf66c16c16bebd93; .loc 1 305 17 fma.rn.f64 %r492,%r491,%r201,0d3fc555555555553e; .loc 1 305 6 neg.f64 %r493,%r492; fma.rn.f64 %r202,%r493,%r201,%r199; .loc 1 306 9 mul.f64 %r494,%r199,%r202; .loc 1 306 17 mov.f64 %r496,0d4000000000000000; sub.f64 %r495,%r202,%r496; .loc 1 306 13 div.rn.f64 %r497,%r494,%r495; .loc 1 306 25 fma.rn.f64 %r498,%r199,%r200,%r200; .loc 1 306 5 sub.f64 %r499,%r497,%r498; .loc 1 307 13 sub.f64 %r132,%r499,%r199; .loc 1 307 5 mov.f64 %r500,0d3ff0000000000000; sub.f64 %r204,%r500,%r132; .loc 1 308 2 mov.b64 %r501,%r204; shr.u64 %r502,%r501,32; cvt.u32.u64 %r205,%r502; .loc 1 309 4 add.u32 %r206,%r205,%r210; .loc 1 310 4 setp.gt.s32 %r504,%r206,1048575; @ %r504 bra $L39; .loc 1 310 21 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r204; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r144; call (%value_in),scalbn,(%out_arg1,%out_arg2); ld.param.f64 %r507,[%value_in]; } mov.f64 %r135,%r507; bra $L40; $L39: .loc 1 311 7 cvt.u64.u32 %r508,%r206; shl.b64 %r509,%r508,32; and.b64 %r510,%r501,4294967295; or.b64 %r511,%r510,%r509; mov.b64 %r135,%r511; $L40: .loc 1 312 10 mul.f64 %r244,%r135,%r139; bra $L1; $L44: .loc 1 119 24 mov.f64 %r244,0d3ff0000000000000; bra $L1; $L45: mov.f64 %r244,0d3ff0000000000000; bra $L1; $L51: mov.f64 %r244,0d3ff0000000000000; bra $L1; $L52: .loc 1 154 24 mov.f64 %r244,%r246; bra $L1; $L53: .loc 1 159 38 mov.f64 %r244,%r245; bra $L1; $L32: .loc 1 287 8 shr.s32 %r513,%r192,20; and.b32 %r217,%r513,2047; bra $L41; $L8: .loc 1 168 9 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r245; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r515,[%value_in]; } mov.f64 %r244,%r515; .loc 1 170 4 setp.ne.u32 %r516,%r157,0; @ %r516 bra $L42; .loc 1 171 30 and.b32 %r517,%r149,1073741823; set.u32.eq.u32 %r519,%r517,1072693248; neg.s32 %r520,%r519; .loc 1 171 27 set.u32.eq.u32 %r522,%r145,0; neg.s32 %r523,%r522; .loc 1 171 30 cvt.u16.u32 %r525,%r520; cvt.u16.u32 %r526,%r523; or.b16 %r524,%r525,%r526; cvt.u32.u16 %r527,%r524; cvt.u16.u8 %r528,%r527; setp.ne.u16 %r529,%r528,0; @ ! %r529 bra $L42; bra $L59; $L50: .loc 1 133 10 mov.u32 %r141,0; bra $L11; $L1: .loc 1 313 1 mov.f64 %value,%r244; st.param.f64 [%value_out],%value; ret; } /62 1591654539 399 399 100644 10430 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r41; .reg .f64 %r54; .reg .f64 %r58; .reg .f64 %r69; .reg .f64 %r70; .reg .u32 %r73; .reg .u32 %r74; .reg .f64 %r75; .reg .f64 %r76; .reg .f64 %r77; .reg .f64 %r78; .reg .f64 %r80; .reg .f64 %r83; .reg .u32 %r86; .reg .f64 %r87; .reg .f64 %r89; .reg .f64 %r91; .reg .f64 %r92; .reg .f64 %r93; .reg .u32 %r95; .reg .f64 %r96; .reg .f64 %r97; .reg .f64 %r98; .reg .u32 %r101; .reg .f64 %r102; .reg .u64 %r103; .reg .u64 %r104; .reg .u64 %r105; .reg .pred %r106; .reg .f64 %r107; .reg .pred %r108; .reg .pred %r109; .reg .f64 %r110; .reg .pred %r111; .reg .f64 %r112; .reg .f64 %r113; .reg .f64 %r114; .reg .f64 %r116; .reg .f64 %r117; .reg .f64 %r118; .reg .f64 %r119; .reg .pred %r121; .reg .f64 %r122; .reg .f64 %r123; .reg .f64 %r124; .reg .f64 %r125; .reg .pred %r126; .reg .f64 %r128; .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 %r140; .reg .u32 %r141; .reg .u32 %r142; .reg .u32 %r143; .reg .u32 %r144; .reg .pred %r145; .reg .f64 %r148; .reg .f64 %r149; .reg .f64 %r150; .reg .u64 %r151; .reg .u64 %r152; .reg .u32 %r153; .reg .u32 %r154; .reg .u32 %r155; .reg .u32 %r156; .reg .pred %r157; .reg .f64 %r160; .reg .f64 %r161; .reg .f64 %r162; .reg .f64 %r163; .reg .pred %r164; .reg .f64 %r165; .reg .f64 %r166; .reg .pred %r167; .reg .u32 %r170; .reg .u32 %r173; .reg .u32 %r174; .reg .u32 %r175; .reg .u64 %r176; .reg .u64 %r177; .reg .u64 %r178; .reg .u64 %r179; .reg .u32 %r180; .reg .pred %r181; .reg .pred %r182; .reg .u32 %r187; .reg .u64 %r188; .reg .u32 %r189; .reg .pred %r190; .reg .f64 %r191; .reg .f64 %r192; .reg .f64 %r193; .reg .f64 %r194; .reg .f64 %r196; mov.f64 %r102,%ar0; mov.u64 %r103,%ar1; .loc 1 98 2 mov.b64 %r104,%r102; shr.u64 %r105,%r104,32; cvt.u32.u64 %r73,%r105; .loc 1 99 5 and.b32 %r74,%r73,2147483647; .loc 1 100 4 setp.gt.s32 %r106,%r74,1072243195; @ %r106 bra $L2; .loc 1 101 12 st.f64 [%r103],%r102; .loc 1 101 22 mov.f64 %r107,0d0000000000000000; st.f64 [%r103+8],%r107; .loc 1 101 34 mov.u32 %r101,0; bra $L1; $L2: .loc 1 102 4 setp.gt.s32 %r108,%r74,1073928571; @ %r108 bra $L4; .loc 1 103 8 setp.le.s32 %r109,%r73,0; @ %r109 bra $L5; .loc 1 104 5 mov.f64 %r110,0d3ff921fb54400000; sub.f64 %r75,%r102,%r110; .loc 1 105 5 setp.eq.u32 %r111,%r74,1073291771; @ %r111 bra $L6; .loc 1 106 16 mov.f64 %r112,0d3dd0b4611a626331; sub.f64 %r22,%r75,%r112; .loc 1 106 12 st.f64 [%r103],%r22; .loc 1 107 16 sub.f64 %r113,%r75,%r22; .loc 1 107 22 sub.f64 %r114,%r113,%r112; .loc 1 107 12 st.f64 [%r103+8],%r114; .loc 1 113 10 mov.u32 %r101,1; bra $L1; $L6: .loc 1 109 9 mov.f64 %r116,0d3dd0b4611a600000; sub.f64 %r76,%r75,%r116; .loc 1 110 16 mov.f64 %r117,0d3ba3198a2e037073; sub.f64 %r25,%r76,%r117; .loc 1 110 12 st.f64 [%r103],%r25; .loc 1 111 16 sub.f64 %r118,%r76,%r25; .loc 1 111 22 sub.f64 %r119,%r118,%r117; .loc 1 111 12 st.f64 [%r103+8],%r119; .loc 1 113 10 mov.u32 %r101,1; bra $L1; $L5: .loc 1 115 5 add.f64 %r77,%r102,0d3ff921fb54400000; .loc 1 116 5 setp.eq.u32 %r121,%r74,1073291771; @ %r121 bra $L7; .loc 1 117 16 add.f64 %r28,%r77,0d3dd0b4611a626331; .loc 1 117 12 st.f64 [%r103],%r28; .loc 1 118 16 sub.f64 %r122,%r77,%r28; .loc 1 118 22 add.f64 %r123,%r122,0d3dd0b4611a626331; .loc 1 118 12 st.f64 [%r103+8],%r123; .loc 1 124 10 mov.u32 %r101,-1; bra $L1; $L7: .loc 1 120 9 add.f64 %r78,%r77,0d3dd0b4611a600000; .loc 1 121 16 add.f64 %r32,%r78,0d3ba3198a2e037073; .loc 1 121 12 st.f64 [%r103],%r32; .loc 1 122 16 sub.f64 %r124,%r78,%r32; .loc 1 122 22 add.f64 %r125,%r124,0d3ba3198a2e037073; .loc 1 122 12 st.f64 [%r103+8],%r125; .loc 1 124 10 mov.u32 %r101,-1; bra $L1; $L4: .loc 1 127 4 setp.gt.s32 %r126,%r74,1094263291; @ %r126 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 %r128,[%value_in]; } .loc 1 129 33 fma.rn.f64 %r129,%r128,0d3fe45f306dc9c883,0d3fe0000000000000; .loc 1 129 9 cvt.rzi.s32.f64 %r101,%r129; .loc 1 130 9 cvt.rn.f64.s32 %r80,%r101; .loc 1 131 9 neg.f64 %r196,%r80; fma.rn.f64 %r70,%r196,0d3ff921fb54400000,%r128; .loc 1 132 9 mul.f64 %r69,%r80,0d3dd0b4611a626331; .loc 1 133 8 setp.gt.s32 %r131,%r101,31; @ %r131 bra $L9; sub.f64 %r89,%r70,%r69; .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,%r74; @ %r138 bra $L10; .loc 1 134 8 st.f64 [%r103],%r89; bra $L11; $L9: sub.f64 %r89,%r70,%r69; $L10: .loc 1 137 13 shr.s32 %r41,%r74,20; .loc 1 140 22 mov.b64 %r139,%r89; shr.u64 %r140,%r139,32; cvt.u32.u64 %r142,%r140; shr.u32 %r141,%r142,20; .loc 1 140 27 and.b32 %r143,%r141,2047; .loc 1 140 15 sub.u32 %r144,%r41,%r143; .loc 1 141 12 setp.gt.s32 %r145,%r144,16; @ %r145 bra $L12; .loc 1 138 15 st.f64 [%r103],%r89; bra $L11; $L12: .loc 1 144 10 fma.rn.f64 %r83,%r196,0d3dd0b4611a600000,%r70; .loc 1 145 26 sub.f64 %r148,%r70,%r83; .loc 1 145 29 fma.rn.f64 %r149,%r196,0d3dd0b4611a600000,%r148; .loc 1 145 10 neg.f64 %r150,%r149; fma.rn.f64 %r69,%r80,0d3ba3198a2e037073,%r150; .loc 1 146 15 sub.f64 %r89,%r83,%r69; .loc 1 148 19 mov.b64 %r151,%r89; shr.u64 %r152,%r151,32; cvt.u32.u64 %r154,%r152; shr.u32 %r153,%r154,20; .loc 1 148 24 and.b32 %r155,%r153,2047; .loc 1 148 12 sub.u32 %r156,%r41,%r155; .loc 1 149 9 setp.gt.s32 %r157,%r156,49; @ %r157 bra $L13; .loc 1 146 12 st.f64 [%r103],%r89; .loc 1 144 10 mov.f64 %r70,%r83; bra $L11; $L13: .loc 1 152 11 fma.rn.f64 %r70,%r196,0d3ba3198a2e000000,%r83; .loc 1 153 27 sub.f64 %r160,%r83,%r70; .loc 1 153 30 fma.rn.f64 %r161,%r196,0d3ba3198a2e000000,%r160; .loc 1 153 11 neg.f64 %r162,%r161; fma.rn.f64 %r69,%r80,0d397b839a252049c1,%r162; .loc 1 154 16 sub.f64 %r89,%r70,%r69; .loc 1 154 13 st.f64 [%r103],%r89; $L11: .loc 1 158 15 sub.f64 %r163,%r70,%r89; .loc 1 158 21 sub.f64 %r54,%r163,%r69; .loc 1 158 11 st.f64 [%r103+8],%r54; .loc 1 159 8 setp.ge.s32 %r164,%r73,0; @ %r164 bra $L1; .loc 1 159 24 neg.f64 %r165,%r89; .loc 1 159 22 st.f64 [%r103],%r165; .loc 1 159 38 neg.f64 %r166,%r54; .loc 1 159 36 st.f64 [%r103+8],%r166; .loc 1 159 52 neg.s32 %r101,%r101; bra $L1; $L8: .loc 1 165 4 setp.le.s32 %r167,%r74,2146435071; @ %r167 bra $L14; .loc 1 166 17 sub.f64 %r58,%r102,%r102; .loc 1 166 15 st.f64 [%r103+8],%r58; .loc 1 166 10 st.f64 [%r103],%r58; .loc 1 166 28 mov.u32 %r101,0; bra $L1; $L14: .loc 1 170 2 cvt.u32.u64 %r170,%r104; .loc 1 171 17 shr.s32 %r173,%r74,20; .loc 1 171 6 add.u32 %r86,%r173,-1046; .loc 1 172 2 shl.b32 %r174,%r86,20; sub.u32 %r175,%r74,%r174; cvt.u64.u32 %r176,%r175; shl.b64 %r177,%r176,32; cvt.u64.u32 %r178,%r170; or.b64 %r179,%r178,%r177; mov.b64 %r87,%r179; .loc 1 174 20 cvt.rzi.s32.f64 %r180,%r87; .loc 1 174 11 cvt.rn.f64.s32 %r91,%r180; .loc 1 174 9 st.f64 [%frame],%r91; .loc 1 175 13 sub.f64 %r92,%r87,%r91; .loc 1 175 9 mul.f64 %r93,%r92,0d4170000000000000; .loc 1 174 20 cvt.rzi.s32.f64 %r95,%r93; .loc 1 174 11 cvt.rn.f64.s32 %r96,%r95; .loc 1 174 9 st.f64 [%frame+8],%r96; .loc 1 175 13 sub.f64 %r97,%r93,%r96; .loc 1 175 9 mul.f64 %r98,%r97,0d4170000000000000; .loc 1 177 8 st.f64 [%frame+16],%r98; .loc 1 179 7 setp.neu.f64 %r181,%r98,0d0000000000000000; @ %r181 bra $L16; setp.ne.u32 %r182,%r95,0; .loc 1 179 13 selp.u32 %r30,2,1,%r182; bra $L15; $L16: .loc 1 178 5 mov.u32 %r30,3; $L15: .loc 1 180 8 cvta.const.u64 %r188,two_over_pi; mov.u32 %r187,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],%r86; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r30; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r187; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r188; call (%value_in),__kernel_rem_pio2,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); ld.param.u32 %r189,[%value_in]; } mov.u32 %r101,%r189; .loc 1 181 4 setp.ge.s32 %r190,%r73,0; @ %r190 bra $L1; .loc 1 181 19 ld.f64 %r192,[%r103]; neg.f64 %r191,%r192; .loc 1 181 17 st.f64 [%r103],%r191; .loc 1 181 33 ld.f64 %r194,[%r103+8]; neg.f64 %r193,%r194; .loc 1 181 31 st.f64 [%r103+8],%r193; .loc 1 181 47 neg.s32 %r101,%r101; $L1: .loc 1 183 1 mov.u32 %value,%r101; st.param.u32 [%value_out],%value; ret; } /82 1591654539 399 399 100644 4427 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r59; .reg .pred %r60; .reg .u64 %r61; .reg .u64 %r62; .reg .pred %r63; .reg .pred %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .pred %r67; .reg .pred %r68; .reg .f64 %r71; .reg .f64 %r72; .reg .u32 %r73; .reg .u64 %r74; .reg .u32 %r75; .reg .u32 %r76; .reg .u32 %r77; .reg .pred %r78; .reg .f64 %r80; .reg .f64 %r82; .reg .u32 %r83; .reg .pred %r84; .reg .f64 %r85; .reg .pred %r86; .reg .f64 %r87; .reg .pred %r88; .reg .pred %r89; .reg .pred %r90; .reg .u32 %r91; .reg .u64 %r93; .reg .u32 %r94; .reg .u32 %r95; .reg .u64 %r96; .reg .u64 %r97; .reg .u64 %r98; .reg .u64 %r99; 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 %r59,%r43,%r50; .loc 1 52 4 setp.ne.u32 %r60,%r59,0; @ %r60 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 %r61,%r54; shr.u64 %r62,%r61,32; cvt.u32.u64 %r47,%r62; .loc 1 49 5 and.b32 %r44,%r47,2147483647; .loc 1 53 4 setp.gt.s32 %r63,%r44,2146435071; @ %r63 bra $L4; .loc 1 53 21 setp.le.s32 %r64,%r43,2146435071; @ %r64 bra $L5; .loc 1 55 9 add.u32 %r65,%r43,-2146435072; .loc 1 55 21 or.b32 %r66,%r65,%r50; .loc 1 54 21 setp.eq.u32 %r67,%r66,0; @ %r67 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 %r68,%r43,2145386495; @ %r68 bra $L14; .loc 1 59 26 add.f64 %r71,%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],%r71; call (%value_in),__ieee754_fmod,(%out_arg1,%out_arg2); ld.param.f64 %r72,[%value_in]; } mov.f64 %r38,%r72; bra $L7; $L14: mov.f64 %r38,%r54; $L7: .loc 1 60 10 sub.u32 %r73,%r44,%r43; .loc 1 60 18 mov.b64 %r74,%r54; cvt.u32.u64 %r76,%r74; sub.u32 %r75,%r76,%r50; .loc 1 60 14 or.b32 %r77,%r73,%r75; .loc 1 60 5 setp.ne.u32 %r78,%r77,0; @ %r78 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 %r80,[%value_in]; } mov.f64 %r39,%r80; .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 %r82,[%value_in]; } .loc 1 63 5 and.b32 %r83,%r41,2145386496; setp.ne.u32 %r84,%r83,0; @ %r84 bra $L8; .loc 1 64 10 add.f64 %r85,%r39,%r39; .loc 1 64 8 setp.gt.f64 %r86,%r85,%r82; @ ! %r86 bra $L9; .loc 1 65 4 sub.f64 %r39,%r39,%r82; .loc 1 66 7 add.f64 %r87,%r39,%r39; .loc 1 66 5 setp.ge.f64 %r88,%r87,%r82; @ ! %r88 bra $L9; .loc 1 66 16 sub.f64 %r39,%r39,%r82; bra $L9; $L8: .loc 1 69 13 mul.f64 %r46,%r82,0d3fe0000000000000; .loc 1 70 8 setp.gt.f64 %r89,%r39,%r46; @ ! %r89 bra $L9; .loc 1 71 4 sub.f64 %r39,%r39,%r82; .loc 1 72 5 setp.le.f64 %r90,%r46,%r39; @ ! %r90 bra $L9; .loc 1 72 19 sub.f64 %r39,%r39,%r82; $L9: .loc 1 76 2 mov.b64 %r52,%r39; .loc 1 47 5 and.b32 %r91,%r47,-2147483648; .loc 1 76 2 shr.u64 %r93,%r52,32; cvt.u32.u64 %r95,%r93; xor.b32 %r94,%r91,%r95; cvt.u64.u32 %r96,%r94; shl.b64 %r97,%r96,32; and.b64 %r98,%r52,4294967295; or.b64 %r99,%r98,%r97; mov.b64 %r53,%r99; $L1: .loc 1 78 1 mov.f64 %value,%r53; st.param.f64 [%value_out],%value; ret; } lib_a-e_scalb.o/1591654539 399 399 100644 3614 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0); // 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 %r27; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r31; .reg .u32 %r33; .reg .pred %r34; .reg .u32 %r36; .reg .pred %r37; .reg .u32 %r39; .reg .pred %r40; .reg .pred %r41; .reg .f64 %r42; .reg .f64 %r44; .reg .pred %r45; .reg .pred %r46; .reg .u32 %r48; .reg .f64 %r49; .reg .pred %r50; .reg .u32 %r52; .reg .f64 %r53; .reg .u32 %r56; .reg .f64 %r57; mov.f64 %r30,%ar0; mov.f64 %r31,%ar1; .loc 1 43 6 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r30; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r33,[%value_in]; } .loc 1 43 5 setp.ne.u32 %r34,%r33,0; @ ! %r34 bra $L3; .loc 1 43 16 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r31; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r36,[%value_in]; } .loc 1 43 14 setp.eq.u32 %r37,%r36,0; @ ! %r37 bra $L18; $L3: .loc 1 43 35 mul.f64 %r29,%r30,%r31; bra $L1; $L18: .loc 1 44 7 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r31; call (%value_in),finite,(%out_arg1); ld.param.u32 %r39,[%value_in]; } .loc 1 44 5 setp.ne.u32 %r40,%r39,0; @ %r40 bra $L7; .loc 1 45 8 setp.gt.f64 %r41,%r31,0d0000000000000000; @ %r41 bra $L3; .loc 1 46 25 neg.f64 %r42,%r30; div.rn.f64 %r29,%r42,%r31; bra $L1; $L7: .loc 1 48 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r31; call (%value_in),rint,(%out_arg1); ld.param.f64 %r44,[%value_in]; } .loc 1 48 5 setp.eq.f64 %r45,%r44,%r31; @ %r45 bra $L8; .loc 1 48 30 sub.f64 %r27,%r31,%r31; .loc 1 48 34 div.rn.f64 %r29,%r27,%r27; bra $L1; $L8: .loc 1 49 5 setp.gt.f64 %r46,%r31,0d40efbd0000000000; @ ! %r46 bra $L19; .loc 1 49 28 mov.u32 %r48,65000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r30; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r48; call (%value_in),scalbn,(%out_arg1,%out_arg2); ld.param.f64 %r49,[%value_in]; } mov.f64 %r29,%r49; bra $L1; $L19: .loc 1 50 5 setp.lt.f64 %r50,%r31,0dc0efbd0000000000; @ ! %r50 bra $L20; .loc 1 50 28 mov.u32 %r52,-65000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r30; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r52; call (%value_in),scalbn,(%out_arg1,%out_arg2); ld.param.f64 %r53,[%value_in]; } mov.f64 %r29,%r53; bra $L1; $L20: .loc 1 51 9 cvt.rzi.s32.f64 %r56,%r31; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r30; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r56; call (%value_in),scalbn,(%out_arg1,%out_arg2); ld.param.f64 %r57,[%value_in]; } mov.f64 %r29,%r57; $L1: .loc 1 53 1 mov.f64 %value,%r29; st.param.f64 [%value_out],%value; ret; } lib_a-e_sinh.o/ 1591654539 399 399 100644 4797 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r38; .reg .u32 %r39; .reg .u32 %r40; .reg .u32 %r44; .reg .f64 %r45; .reg .f64 %r48; .reg .f64 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .pred %r52; .reg .pred %r53; .reg .pred %r54; .reg .pred %r55; .reg .f64 %r56; .reg .pred %r57; .reg .f64 %r59; .reg .f64 %r61; .reg .pred %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 .pred %r71; .reg .f64 %r73; .reg .f64 %r75; .reg .pred %r77; .reg .u32 %r79; .reg .u32 %r80; .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 %r91; .reg .f64 %r93; .reg .f64 %r94; .reg .f64 %r95; .reg .f64 %r98; .reg .f64 %r100; mov.f64 %r49,%ar0; .loc 1 54 2 mov.b64 %r50,%r49; shr.u64 %r51,%r50,32; cvt.u32.u64 %r39,%r51; .loc 1 55 5 and.b32 %r40,%r39,2147483647; .loc 1 58 4 setp.le.s32 %r52,%r40,2146435071; @ %r52 bra $L2; .loc 1 58 29 add.f64 %r48,%r49,%r49; bra $L1; $L2: .loc 1 61 5 setp.ge.s32 %r53,%r39,0; .loc 1 61 14 selp.f64 %r38,0d3fe0000000000000,0dbfe0000000000000,%r53; .loc 1 63 5 setp.gt.s32 %r54,%r40,1077280767; @ %r54 bra $L5; .loc 1 64 9 setp.gt.s32 %r55,%r40,1043333119; @ %r55 bra $L6; .loc 1 65 11 add.f64 %r56,%r49,0d7fac7b1f3cac7433; .loc 1 65 5 setp.gt.f64 %r57,%r56,0d3ff0000000000000; @ ! %r57 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 %r59,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r59; call (%value_in),expm1,(%out_arg1); ld.param.f64 %r61,[%value_in]; } mov.f64 %r45,%r61; .loc 1 67 8 setp.gt.s32 %r62,%r40,1072693247; @ %r62 bra $L8; $L12: .loc 1 67 41 mul.f64 %r63,%r45,%r45; .loc 1 67 46 add.f64 %r64,%r45,0d3ff0000000000000; .loc 1 67 43 div.rn.f64 %r65,%r63,%r64; .loc 1 67 39 neg.f64 %r66,%r65; fma.rn.f64 %r67,%r45,0d4000000000000000,%r66; .loc 1 67 32 mul.f64 %r48,%r67,%r38; bra $L1; $L8: .loc 1 68 22 add.f64 %r68,%r61,0d3ff0000000000000; .loc 1 68 19 div.rn.f64 %r69,%r61,%r68; .loc 1 68 17 add.f64 %r70,%r69,%r61; .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 %r44,%r50; .loc 1 76 11 setp.le.s32 %r77,%r40,1082536909; @ %r77 bra $L10; .loc 1 76 32 set.u32.eq.u32 %r79,%r40,1082536910; neg.s32 %r80,%r79; .loc 1 76 50 set.u32.le.u32 %r82,%r44,-1883637635; neg.s32 %r83,%r82; .loc 1 76 45 cvt.u16.u32 %r85,%r80; cvt.u16.u32 %r86,%r83; and.b16 %r84,%r85,%r86; .loc 1 76 26 cvt.u32.u16 %r87,%r84; cvt.u16.u8 %r88,%r87; setp.eq.u16 %r89,%r88,0; @ %r89 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 %r91,[%value_in]; } .loc 1 77 10 mul.f64 %r93,%r91,0d3fe0000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r93; call (%value_in),__ieee754_exp,(%out_arg1); ld.param.f64 %r94,[%value_in]; } .loc 1 78 8 mul.f64 %r95,%r38,%r94; .loc 1 79 14 mul.f64 %r48,%r95,%r94; 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 %r98,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r98; call (%value_in),expm1,(%out_arg1); ld.param.f64 %r100,[%value_in]; } mov.f64 %r45,%r100; bra $L12; $L1: .loc 1 84 1 mov.f64 %value,%r48; st.param.f64 [%value_out],%value; ret; } lib_a-e_sqrt.o/ 1591654539 399 399 100644 7036 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r22; .reg .f64 %r28; .reg .u32 %r32; .reg .u32 %r36; .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 %r68; .reg .u32 %r70; .reg .u32 %r71; .reg .u32 %r73; .reg .u32 %r75; .reg .u32 %r76; .reg .u32 %r77; .reg .u32 %r79; .reg .u32 %r83; .reg .u32 %r84; .reg .u32 %r91; .reg .u32 %r92; .reg .f64 %r97; .reg .f64 %r98; .reg .u64 %r99; .reg .u64 %r100; .reg .u32 %r102; .reg .pred %r103; .reg .pred %r104; .reg .u32 %r105; .reg .u32 %r106; .reg .pred %r107; .reg .pred %r108; .reg .pred %r109; .reg .pred %r110; .reg .u32 %r111; .reg .pred %r112; .reg .u32 %r114; .reg .pred %r115; .reg .u32 %r116; .reg .u32 %r117; .reg .u32 %r118; .reg .u32 %r119; .reg .u32 %r120; .reg .u32 %r122; .reg .pred %r123; .reg .u32 %r124; .reg .u32 %r125; .reg .pred %r126; .reg .u32 %r127; .reg .u32 %r128; .reg .pred %r130; .reg .pred %r131; .reg .u32 %r133; .reg .u32 %r134; .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 .u32 %r147; .reg .u32 %r148; .reg .pred %r150; .reg .u32 %r151; .reg .pred %r152; .reg .pred %r153; .reg .u32 %r154; .reg .u32 %r155; .reg .u32 %r156; .reg .pred %r157; .reg .u32 %r158; .reg .u32 %r159; .reg .u64 %r160; .reg .u64 %r164; .reg .u64 %r165; .reg .u64 %r166; .reg .pred %r168; mov.f64 %r98,%ar0; .loc 1 106 2 mov.b64 %r99,%r98; shr.u64 %r100,%r99,32; cvt.u32.u64 %r54,%r100; cvt.u32.u64 %r68,%r99; .loc 1 109 9 and.b32 %r102,%r54,2146435072; .loc 1 109 4 setp.ne.u32 %r103,%r102,2146435072; @ %r103 bra $L2; .loc 1 110 16 fma.rn.f64 %r97,%r98,%r98,%r98; bra $L1; $L2: .loc 1 114 4 setp.gt.s32 %r104,%r54,0; @ %r104 bra $L4; .loc 1 115 14 and.b32 %r105,%r54,2147483647; .loc 1 115 23 or.b32 %r106,%r105,%r68; .loc 1 115 8 setp.eq.u32 %r107,%r106,0; @ %r107 bra $L24; .loc 1 116 13 setp.eq.u32 %r108,%r54,0; @ %r108 bra $L5; .loc 1 117 12 sub.f64 %r28,%r98,%r98; .loc 1 117 15 div.rn.f64 %r97,%r28,%r28; bra $L1; $L4: .loc 1 120 4 shr.s32 %r64,%r54,20; .loc 1 121 4 setp.eq.u32 %r109,%r64,0; @ ! %r109 bra $L7; bra $L25; $L5: .loc 1 123 5 add.u32 %r54,%r54,-21; .loc 1 124 14 shr.u32 %r92,%r68,11; .loc 1 124 7 mov.u32 %r58,%r92; .loc 1 124 25 shl.b32 %r68,%r68,21; .loc 1 122 11 setp.eq.u32 %r110,%r92,0; @ %r110 bra $L5; .loc 1 126 18 and.b32 %r111,%r92,1048576; .loc 1 126 6 setp.ne.u32 %r112,%r111,0; @ ! %r112 bra $L6; bra $L26; $L25: cvt.u32.u64 %r58,%r100; .loc 1 120 4 mov.u32 %r54,%r64; $L6: mov.u32 %r61,0; bra $L9; $L27: .loc 1 126 35 mov.u32 %r61,%r70; $L9: .loc 1 126 42 add.u32 %r58,%r58,%r58; .loc 1 126 35 add.u32 %r70,%r61,1; .loc 1 126 18 and.b32 %r114,%r58,1048576; .loc 1 126 6 setp.eq.u32 %r115,%r114,0; @ %r115 bra $L27; mov.u32 %r116,32; sub.u32 %r91,%r116,%r70; mov.u32 %r92,%r58; mov.u32 %r22,%r68; shl.b32 %r68,%r68,%r70; bra $L8; $L26: .loc 1 124 25 mov.u32 %r22,%r68; .loc 1 126 6 mov.u32 %r91,32; mov.u32 %r61,-1; $L8: .loc 1 127 8 sub.u32 %r64,%r54,%r61; .loc 1 128 17 shr.u32 %r117,%r22,%r91; .loc 1 128 10 or.b32 %r54,%r117,%r92; $L7: .loc 1 131 4 add.u32 %r71,%r64,-1023; .loc 1 132 12 and.b32 %r32,%r54,1048575; .loc 1 132 6 or.b32 %r118,%r32,1048576; add.u32 %r119,%r118,%r118; shr.u32 %r120,%r68,31; add.u32 %r59,%r119,%r120; add.u32 %r55,%r68,%r68; .loc 1 133 6 and.b32 %r122,%r71,1; .loc 1 133 4 setp.eq.u32 %r123,%r122,0; @ %r123 bra $L10; add.u32 %r124,%r59,%r59; shr.u32 %r125,%r55,31; add.u32 %r59,%r124,%r125; shl.b32 %r55,%r68,2; $L10: .loc 1 137 4 shr.s32 %r73,%r71,1; mov.u32 %r83,22; .loc 1 142 4 mov.u32 %r63,0; .loc 1 142 14 mov.u32 %r60,%r63; .loc 1 143 4 mov.u32 %r75,2097152; $L12: .loc 1 146 12 add.u32 %r36,%r60,%r75; .loc 1 147 8 setp.gt.s32 %r126,%r36,%r59; @ %r126 bra $L11; .loc 1 148 11 add.u32 %r60,%r36,%r75; .loc 1 149 7 sub.u32 %r59,%r59,%r36; .loc 1 150 7 add.u32 %r63,%r63,%r75; $L11: .loc 1 152 10 shr.u32 %r127,%r55,31; add.u32 %r128,%r59,%r59; add.u32 %r59,%r127,%r128; .loc 1 153 10 add.u32 %r55,%r55,%r55; .loc 1 154 7 shr.u32 %r75,%r75,1; add.u32 %r83,%r83,-1; .loc 1 145 7 setp.ne.u32 %r130,%r83,0; @ %r130 bra $L12; mov.u32 %r84,32; .loc 1 142 9 mov.u32 %r57,%r83; .loc 1 142 19 mov.u32 %r53,%r57; .loc 1 157 4 mov.u32 %r77,-2147483648; $L18: .loc 1 159 9 add.u32 %r76,%r77,%r53; .loc 1 161 8 setp.gt.s32 %r131,%r59,%r60; @ %r131 bra $L13; .loc 1 161 21 set.u32.eq.u32 %r133,%r59,%r60; neg.s32 %r134,%r133; .loc 1 161 32 set.u32.le.u32 %r136,%r76,%r55; neg.s32 %r137,%r136; .loc 1 161 27 cvt.u16.u32 %r139,%r134; cvt.u16.u32 %r140,%r137; and.b16 %r138,%r139,%r140; .loc 1 161 16 cvt.u32.u16 %r141,%r138; cvt.u16.u8 %r142,%r141; setp.ne.u16 %r143,%r142,0; @ %r143 bra $L14; bra $L15; $L13: .loc 1 162 7 add.u32 %r53,%r76,%r77; .loc 1 163 5 setp.ge.s32 %r144,%r76,0; @ %r144 bra $L28; $L23: .loc 1 163 23 setp.lt.s32 %r145,%r53,0; @ %r145 bra $L29; .loc 1 163 42 add.u32 %r62,%r60,1; bra $L16; $L28: mov.u32 %r62,%r60; bra $L16; $L29: mov.u32 %r62,%r60; $L16: .loc 1 164 7 sub.u32 %r59,%r59,%r60; .loc 1 165 6 setp.le.u32 %r146,%r76,%r55; @ %r146 bra $L17; .loc 1 165 21 add.u32 %r59,%r59,-1; $L17: .loc 1 166 7 sub.u32 %r55,%r55,%r76; .loc 1 167 7 add.u32 %r57,%r57,%r77; mov.u32 %r60,%r62; $L15: .loc 1 169 10 add.u32 %r147,%r59,%r59; shr.u32 %r148,%r55,31; add.u32 %r59,%r147,%r148; .loc 1 170 10 add.u32 %r55,%r55,%r55; .loc 1 171 7 shr.u32 %r77,%r77,1; add.u32 %r84,%r84,-1; .loc 1 158 7 setp.ne.u32 %r150,%r84,0; @ %r150 bra $L18; .loc 1 175 9 or.b32 %r151,%r59,%r55; .loc 1 175 4 setp.ne.u32 %r152,%r151,0; @ %r152 bra $L19; shr.u32 %r56,%r57,1; bra $L20; $L19: .loc 1 179 13 setp.ne.u32 %r153,%r57,-1; @ %r153 bra $L21; .loc 1 179 52 add.u32 %r63,%r63,1; mov.u32 %r56,%r84; bra $L20; $L21: .loc 1 184 17 add.u32 %r154,%r57,1; shr.u32 %r56,%r154,1; $L20: .loc 1 187 10 shr.s32 %r155,%r63,1; .loc 1 187 6 add.u32 %r79,%r155,1071644672; .loc 1 189 8 and.b32 %r156,%r63,1; .loc 1 189 5 setp.eq.u32 %r157,%r156,0; @ %r157 bra $L22; .loc 1 189 20 or.b32 %r56,%r56,-2147483648; $L22: .loc 1 190 12 shl.b32 %r158,%r73,20; .loc 1 190 6 add.u32 %r159,%r158,%r79; .loc 1 191 2 cvt.u64.u32 %r160,%r159; cvt.u64.u32 %r164,%r56; shl.b64 %r165,%r160,32; or.b64 %r166,%r165,%r164; mov.b64 %r97,%r166; .loc 1 192 9 bra $L1; $L24: .loc 1 115 40 mov.f64 %r97,%r98; bra $L1; $L14: .loc 1 162 7 add.u32 %r53,%r76,%r77; .loc 1 163 5 setp.lt.s32 %r168,%r76,0; @ %r168 bra $L23; mov.u32 %r62,%r60; .loc 1 164 7 mov.u32 %r59,0; bra $L17; $L1: .loc 1 193 1 mov.f64 %value,%r97; st.param.f64 [%value_out],%value; ret; } lib_a-ef_acos.o/1591654539 399 399 100644 5419 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r57; .reg .u32 %r58; .reg .f32 %r59; .reg .f32 %r63; .reg .f32 %r64; .reg .f32 %r65; .reg .f32 %r69; .reg .f32 %r72; .reg .f32 %r94; .reg .f32 %r95; .reg .pred %r96; .reg .pred %r97; .reg .pred %r98; .reg .pred %r99; .reg .pred %r100; .reg .f32 %r101; .reg .f32 %r102; .reg .f32 %r103; .reg .f32 %r104; .reg .f32 %r105; .reg .f32 %r106; .reg .f32 %r107; .reg .f32 %r108; .reg .f32 %r109; .reg .f32 %r110; .reg .f32 %r111; .reg .f32 %r112; .reg .f32 %r113; .reg .f32 %r114; .reg .f32 %r115; .reg .pred %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 %r125; .reg .f32 %r127; .reg .f32 %r128; .reg .f32 %r129; .reg .f32 %r130; .reg .f32 %r132; .reg .f32 %r133; .reg .f32 %r135; .reg .u32 %r136; .reg .u32 %r137; .reg .f32 %r138; .reg .f32 %r139; .reg .f32 %r140; .reg .f32 %r141; .reg .f32 %r142; .reg .f32 %r143; .reg .f32 %r144; .reg .f32 %r145; .reg .f32 %r146; .reg .f32 %r147; .reg .f32 %r148; .reg .f32 %r149; .reg .f32 %r150; .reg .f32 %r151; .reg .f32 %r152; .reg .f32 %r153; .reg .f32 %r154; mov.f32 %r95,%ar0; .loc 1 47 2 mov.b32 %r57,%r95; .loc 1 48 5 and.b32 %r58,%r57,2147483647; .loc 1 49 4 setp.ne.u32 %r96,%r58,1065353216; @ %r96 bra $L2; .loc 1 50 8 setp.gt.s32 %r97,%r57,0; .loc 1 51 20 selp.f32 %r94,0f00000000,0f40490fdb,%r97; bra $L1; $L2: .loc 1 52 11 setp.le.s32 %r98,%r58,1065353216; @ %r98 bra $L4; .loc 1 53 15 sub.f32 %r22,%r95,%r95; .loc 1 53 18 div.rn.f32 %r94,%r22,%r22; bra $L1; $L4: .loc 1 55 4 setp.gt.s32 %r99,%r58,1056964607; @ %r99 bra $L5; .loc 1 56 8 setp.le.s32 %r100,%r58,587202560; @ %r100 bra $L8; .loc 1 57 8 mul.f32 %r59,%r95,%r95; .loc 1 61 36 neg.f32 %r101,%r95; .loc 1 58 44 fma.rn.f32 %r102,%r59,0f3811ef08,0f3a4f7f04; .loc 1 58 37 fma.rn.f32 %r103,%r102,%r59,0fbd241146; .loc 1 58 30 fma.rn.f32 %r104,%r103,%r59,0f3e4e0aa8; .loc 1 58 23 fma.rn.f32 %r105,%r104,%r59,0fbea6b090; .loc 1 58 16 fma.rn.f32 %r106,%r105,%r59,0f3e2aaaab; .loc 1 58 8 mul.f32 %r107,%r106,%r59; .loc 1 59 34 fma.rn.f32 %r108,%r59,0f3d9dc62e,0fbf303361; .loc 1 59 27 fma.rn.f32 %r109,%r108,%r59,0f4001572d; .loc 1 59 20 fma.rn.f32 %r110,%r109,%r59,0fc019d139; .loc 1 59 8 fma.rn.f32 %r111,%r110,%r59,0f3f800000; .loc 1 60 8 div.rn.f32 %r112,%r107,%r111; .loc 1 61 36 fma.rn.f32 %r113,%r101,%r112,0f33a22168; .loc 1 61 26 sub.f32 %r114,%r95,%r113; .loc 1 61 21 mov.f32 %r115,0f3fc90fda; sub.f32 %r94,%r115,%r114; bra $L1; $L5: .loc 1 62 13 setp.ge.s32 %r116,%r57,0; @ %r116 bra $L6; .loc 1 63 14 add.f32 %r117,%r95,0f3f800000; .loc 1 63 8 mul.f32 %r63,%r117,0f3f000000; .loc 1 64 44 fma.rn.f32 %r118,%r63,0f3811ef08,0f3a4f7f04; .loc 1 64 37 fma.rn.f32 %r119,%r118,%r63,0fbd241146; .loc 1 64 30 fma.rn.f32 %r120,%r119,%r63,0f3e4e0aa8; .loc 1 64 23 fma.rn.f32 %r121,%r120,%r63,0fbea6b090; .loc 1 64 16 fma.rn.f32 %r122,%r121,%r63,0f3e2aaaab; .loc 1 64 8 mul.f32 %r64,%r122,%r63; .loc 1 65 34 fma.rn.f32 %r123,%r63,0f3d9dc62e,0fbf303361; .loc 1 65 27 fma.rn.f32 %r124,%r123,%r63,0f4001572d; .loc 1 65 20 fma.rn.f32 %r125,%r124,%r63,0fc019d139; .loc 1 65 8 fma.rn.f32 %r65,%r125,%r63,0f3f800000; .loc 1 66 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r63; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r127,[%value_in]; } .loc 1 67 8 div.rn.f32 %r128,%r64,%r65; .loc 1 68 8 fma.rn.f32 %r129,%r127,%r128,0fb3a22168; .loc 1 69 31 add.f32 %r130,%r129,%r127; .loc 1 69 16 fma.rn.f32 %r94,%r130,0fc0000000,0f40490fda; bra $L1; $L6: .loc 1 72 14 mov.f32 %r133,0f3f800000; sub.f32 %r132,%r133,%r95; .loc 1 72 8 mul.f32 %r69,%r132,0f3f000000; .loc 1 73 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r69; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r135,[%value_in]; } .loc 1 76 6 mov.b32 %r137,%r135; and.b32 %r136,%r137,-4096; mov.b32 %r72,%r136; .loc 1 77 13 neg.f32 %r138,%r72; fma.rn.f32 %r139,%r138,%r72,%r69; .loc 1 77 23 add.f32 %r140,%r135,%r72; .loc 1 77 9 div.rn.f32 %r141,%r139,%r140; .loc 1 78 44 fma.rn.f32 %r142,%r69,0f3811ef08,0f3a4f7f04; .loc 1 78 37 fma.rn.f32 %r143,%r142,%r69,0fbd241146; .loc 1 78 30 fma.rn.f32 %r144,%r143,%r69,0f3e4e0aa8; .loc 1 78 23 fma.rn.f32 %r145,%r144,%r69,0fbea6b090; .loc 1 78 16 fma.rn.f32 %r146,%r145,%r69,0f3e2aaaab; .loc 1 78 8 mul.f32 %r147,%r146,%r69; .loc 1 79 34 fma.rn.f32 %r148,%r69,0f3d9dc62e,0fbf303361; .loc 1 79 27 fma.rn.f32 %r149,%r148,%r69,0f4001572d; .loc 1 79 20 fma.rn.f32 %r150,%r149,%r69,0fc019d139; .loc 1 79 8 fma.rn.f32 %r151,%r150,%r69,0f3f800000; .loc 1 80 8 div.rn.f32 %r152,%r147,%r151; .loc 1 81 8 fma.rn.f32 %r153,%r135,%r152,%r141; .loc 1 82 27 add.f32 %r154,%r153,%r72; .loc 1 82 23 add.f32 %r94,%r154,%r154; bra $L1; $L8: .loc 1 56 39 mov.f32 %r94,0f3fc90fdb; $L1: .loc 1 84 1 mov.f32 %value,%r94; st.param.f32 [%value_out],%value; ret; } /103 1591654539 399 399 100644 3156 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r33; .reg .f32 %r35; .reg .f32 %r38; .reg .f32 %r39; .reg .pred %r40; .reg .pred %r41; .reg .pred %r42; .reg .f32 %r44; .reg .pred %r45; .reg .pred %r46; .reg .f32 %r48; .reg .f32 %r49; .reg .f32 %r51; .reg .f32 %r52; .reg .f32 %r53; .reg .f32 %r54; .reg .f32 %r55; .reg .f32 %r56; .reg .f32 %r57; .reg .f32 %r59; .reg .f32 %r60; .reg .f32 %r61; .reg .f32 %r63; .reg .f32 %r64; mov.f32 %r39,%ar0; .loc 1 36 2 mov.b32 %r33,%r39; .loc 1 37 4 setp.gt.s32 %r40,%r33,1065353215; @ %r40 bra $L2; .loc 1 38 15 sub.f32 %r22,%r39,%r39; .loc 1 38 18 div.rn.f32 %r38,%r22,%r22; bra $L1; $L2: .loc 1 39 11 setp.le.s32 %r41,%r33,1300234239; @ %r41 bra $L4; .loc 1 40 8 setp.le.s32 %r42,%r33,2139095039; @ %r42 bra $L5; .loc 1 41 18 add.f32 %r38,%r39,%r39; bra $L1; $L5: .loc 1 43 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r39; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r44,[%value_in]; } .loc 1 43 27 add.f32 %r38,%r44,0f3f317218; bra $L1; $L4: .loc 1 44 12 setp.eq.u32 %r45,%r33,1065353216; @ %r45 bra $L7; .loc 1 46 12 setp.le.s32 %r46,%r33,1073741824; @ %r46 bra $L6; .loc 1 48 48 fma.rn.f32 %r48,%r39,%r39,0fbf800000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r48; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r49,[%value_in]; } .loc 1 48 47 add.f32 %r51,%r49,%r39; .loc 1 48 44 mov.f32 %r53,0f3f800000; div.rn.f32 %r52,%r53,%r51; .loc 1 48 13 neg.f32 %r54,%r52; fma.rn.f32 %r55,%r39,0f40000000,%r54; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r55; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r56,[%value_in]; } mov.f32 %r38,%r56; bra $L1; $L6: .loc 1 50 8 mov.f32 %r57,0f3f800000; sub.f32 %r35,%r39,%r57; .loc 1 51 52 mul.f32 %r59,%r35,%r35; .loc 1 51 22 fma.rn.f32 %r60,%r35,0f40000000,%r59; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r60; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r61,[%value_in]; } .loc 1 51 13 add.f32 %r63,%r61,%r35; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r63; call (%value_in),log1pf,(%out_arg1); ld.param.f32 %r64,[%value_in]; } mov.f32 %r38,%r64; bra $L1; $L7: .loc 1 45 13 mov.f32 %r38,0f00000000; $L1: .loc 1 53 1 mov.f32 %value,%r38; st.param.f32 [%value_out],%value; ret; } lib_a-ef_asin.o/1591654539 399 399 100644 5040 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r49; .reg .u32 %r50; .reg .u32 %r51; .reg .f32 %r53; .reg .f32 %r58; .reg .f32 %r59; .reg .f32 %r60; .reg .f32 %r64; .reg .f32 %r66; .reg .f32 %r81; .reg .f32 %r82; .reg .pred %r83; .reg .f32 %r84; .reg .pred %r85; .reg .pred %r86; .reg .pred %r87; .reg .f32 %r88; .reg .pred %r89; .reg .f32 %r90; .reg .f32 %r91; .reg .f32 %r92; .reg .f32 %r93; .reg .f32 %r94; .reg .f32 %r95; .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 %r105; .reg .f32 %r106; .reg .f32 %r107; .reg .f32 %r108; .reg .f32 %r109; .reg .f32 %r110; .reg .f32 %r111; .reg .f32 %r112; .reg .f32 %r114; .reg .pred %r115; .reg .f32 %r116; .reg .f32 %r117; .reg .f32 %r118; .reg .f32 %r119; .reg .u32 %r120; .reg .u32 %r121; .reg .f32 %r122; .reg .f32 %r123; .reg .f32 %r124; .reg .f32 %r125; .reg .f32 %r126; .reg .f32 %r128; .reg .f32 %r129; .reg .f32 %r130; .reg .f32 %r132; .reg .f32 %r133; .reg .pred %r134; mov.f32 %r82,%ar0; .loc 1 49 2 mov.b32 %r50,%r82; .loc 1 50 5 and.b32 %r51,%r50,2147483647; .loc 1 51 4 setp.ne.u32 %r83,%r51,1065353216; @ %r83 bra $L2; .loc 1 53 24 mul.f32 %r84,%r82,0fb33bbd2e; .loc 1 53 22 fma.rn.f32 %r81,%r82,0f3fc90fdb,%r84; bra $L1; $L2: .loc 1 54 11 setp.le.s32 %r85,%r51,1065353216; @ %r85 bra $L4; .loc 1 55 15 sub.f32 %r23,%r82,%r82; .loc 1 55 18 div.rn.f32 %r81,%r23,%r23; bra $L1; $L4: .loc 1 56 12 setp.gt.s32 %r86,%r51,1056964607; @ %r86 bra $L5; .loc 1 57 8 setp.gt.s32 %r87,%r51,838860799; @ %r87 bra $L6; .loc 1 58 10 add.f32 %r88,%r82,0f7149f2ca; .loc 1 58 5 setp.gt.f32 %r89,%r88,0f3f800000; @ ! %r89 bra $L5; bra $L9; $L6: .loc 1 60 5 mul.f32 %r53,%r82,%r82; .loc 1 61 41 fma.rn.f32 %r90,%r53,0f3811ef08,0f3a4f7f04; .loc 1 61 34 fma.rn.f32 %r91,%r90,%r53,0fbd241146; .loc 1 61 27 fma.rn.f32 %r92,%r91,%r53,0f3e4e0aa8; .loc 1 61 20 fma.rn.f32 %r93,%r92,%r53,0fbea6b090; .loc 1 61 13 fma.rn.f32 %r94,%r93,%r53,0f3e2aaaab; .loc 1 61 5 mul.f32 %r95,%r94,%r53; .loc 1 62 31 fma.rn.f32 %r96,%r53,0f3d9dc62e,0fbf303361; .loc 1 62 24 fma.rn.f32 %r97,%r96,%r53,0f4001572d; .loc 1 62 17 fma.rn.f32 %r98,%r97,%r53,0fc019d139; .loc 1 62 5 fma.rn.f32 %r99,%r98,%r53,0f3f800000; .loc 1 63 5 div.rn.f32 %r100,%r95,%r99; .loc 1 64 11 fma.rn.f32 %r81,%r82,%r100,%r82; bra $L1; $L5: .loc 1 68 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r82; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r102,[%value_in]; } .loc 1 68 4 mov.f32 %r104,0f3f800000; sub.f32 %r103,%r104,%r102; .loc 1 69 4 mul.f32 %r58,%r103,0f3f000000; .loc 1 70 40 fma.rn.f32 %r105,%r58,0f3811ef08,0f3a4f7f04; .loc 1 70 33 fma.rn.f32 %r106,%r105,%r58,0fbd241146; .loc 1 70 26 fma.rn.f32 %r107,%r106,%r58,0f3e4e0aa8; .loc 1 70 19 fma.rn.f32 %r108,%r107,%r58,0fbea6b090; .loc 1 70 12 fma.rn.f32 %r109,%r108,%r58,0f3e2aaaab; .loc 1 70 4 mul.f32 %r59,%r109,%r58; .loc 1 71 30 fma.rn.f32 %r110,%r58,0f3d9dc62e,0fbf303361; .loc 1 71 23 fma.rn.f32 %r111,%r110,%r58,0f4001572d; .loc 1 71 16 fma.rn.f32 %r112,%r111,%r58,0fc019d139; .loc 1 71 4 fma.rn.f32 %r60,%r112,%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 %r114,[%value_in]; } .loc 1 73 4 setp.le.s32 %r115,%r51,1064933785; @ %r115 bra $L7; .loc 1 74 8 div.rn.f32 %r116,%r59,%r60; .loc 1 75 32 fma.rn.f32 %r117,%r114,%r116,%r114; .loc 1 75 37 fma.rn.f32 %r118,%r117,0f40000000,0f333bbd2e; .loc 1 75 8 mov.f32 %r119,0f3fc90fdb; sub.f32 %r81,%r119,%r118; bra $L8; $L7: .loc 1 80 6 mov.b32 %r121,%r114; and.b32 %r120,%r121,-4096; mov.b32 %r64,%r120; .loc 1 82 9 div.rn.f32 %r66,%r59,%r60; .loc 1 83 21 add.f32 %r122,%r114,%r114; .loc 1 81 13 neg.f32 %r123,%r64; fma.rn.f32 %r124,%r123,%r64,%r58; .loc 1 81 21 add.f32 %r125,%r114,%r64; .loc 1 81 9 div.rn.f32 %r126,%r124,%r125; .loc 1 83 34 fma.rn.f32 %r128,%r126,0fc0000000,0fb33bbd2e; .loc 1 83 9 neg.f32 %r129,%r128; fma.rn.f32 %r130,%r122,%r66,%r129; .loc 1 84 9 fma.rn.f32 %r132,%r123,0f40000000,0f3f490fdb; .loc 1 85 21 sub.f32 %r49,%r130,%r132; .loc 1 85 9 mov.f32 %r133,0f3f490fdb; sub.f32 %r81,%r133,%r49; $L8: .loc 1 87 4 setp.gt.s32 %r134,%r50,0; @ %r134 bra $L1; .loc 1 87 33 neg.f32 %r81,%r81; bra $L1; $L9: .loc 1 58 25 mov.f32 %r81,%r82; $L1: .loc 1 88 1 mov.f32 %value,%r81; st.param.f32 [%value_out],%value; ret; } /121 1591654539 399 399 100644 5407 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 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 %r45; .reg .u32 %r46; .reg .f32 %r47; .reg .f32 %r48; .reg .f32 %r49; .reg .u32 %r51; .reg .u32 %r52; .reg .u32 %r54; .reg .u32 %r55; .reg .u16 %r56; .reg .u16 %r57; .reg .u16 %r58; .reg .u32 %r59; .reg .u16 %r60; .reg .pred %r61; .reg .pred %r62; .reg .f32 %r64; .reg .u32 %r65; .reg .u32 %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 .u32 %r83; .reg .pred %r84; .reg .u32 %r86; .reg .u32 %r88; .reg .u32 %r89; .reg .u16 %r91; .reg .u16 %r92; .reg .u16 %r93; .reg .u32 %r94; .reg .u16 %r95; .reg .pred %r96; .reg .f32 %r98; .reg .f32 %r99; .reg .f32 %r101; .reg .pred %r102; .reg .pred %r103; .reg .pred %r104; .reg .u32 %r105; .reg .f32 %r106; .reg .f32 %r107; .reg .f32 %r108; .reg .f32 %r109; mov.f32 %r48,%ar0; mov.f32 %r49,%ar1; .loc 1 41 2 mov.b32 %r39,%r49; .loc 1 42 5 and.b32 %r40,%r39,2147483647; .loc 1 43 2 mov.b32 %r45,%r48; .loc 1 44 5 and.b32 %r42,%r45,2147483647; .loc 1 45 5 set.u32.gt.s32 %r51,%r40,2139095040; neg.s32 %r52,%r51; .loc 1 46 5 set.u32.gt.s32 %r54,%r42,2139095040; neg.s32 %r55,%r54; .loc 1 45 25 cvt.u16.u32 %r57,%r52; cvt.u16.u32 %r58,%r55; or.b16 %r56,%r57,%r58; .loc 1 45 4 cvt.u32.u16 %r59,%r56; cvt.u16.u8 %r60,%r59; setp.eq.u16 %r61,%r60,0; @ %r61 bra $L2; .loc 1 47 13 add.f32 %r47,%r49,%r48; bra $L1; $L2: .loc 1 48 4 setp.ne.u32 %r62,%r39,1065353216; @ %r62 bra $L4; .loc 1 48 28 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r48; call (%value_in),atanf,(%out_arg1); ld.param.f32 %r64,[%value_in]; } mov.f32 %r47,%r64; bra $L1; $L4: .loc 1 49 23 shr.s32 %r65,%r39,30; .loc 1 49 28 and.b32 %r66,%r65,2; .loc 1 49 15 shr.u32 %r67,%r45,31; .loc 1 49 4 or.b32 %r43,%r66,%r67; .loc 1 52 4 setp.ne.u32 %r68,%r42,0; @ %r68 bra $L5; setp.eq.u32 %r69,%r43,2; @ %r69 bra $L14; setp.eq.u32 %r70,%r43,3; .loc 1 55 18 selp.f32 %r47,0fc0490fdb,%r48,%r70; bra $L1; $L5: .loc 1 61 4 setp.ne.u32 %r71,%r40,0; @ %r71 bra $L6; .loc 1 61 56 setp.ge.s32 %r72,%r45,0; selp.f32 %r47,0f3fc90fdb,0fbfc90fdb,%r72; bra $L1; $L6: .loc 1 64 4 setp.ne.u32 %r73,%r40,2139095040; @ %r73 bra $L7; .loc 1 65 8 setp.ne.u32 %r74,%r42,2139095040; @ %r74 bra $L8; setp.eq.u32 %r75,%r43,2; @ %r75 bra $L17; setp.eq.u32 %r76,%r43,3; @ %r76 bra $L18; setp.eq.u32 %r77,%r43,1; .loc 1 67 29 selp.f32 %r47,0fbf490fdb,0f3f490fdb,%r77; bra $L1; $L8: setp.eq.u32 %r78,%r43,2; @ %r78 bra $L20; setp.eq.u32 %r79,%r43,3; @ %r79 bra $L21; setp.eq.u32 %r80,%r43,1; .loc 1 74 23 selp.f32 %r47,0f80000000,0f00000000,%r80; bra $L1; $L7: .loc 1 82 4 setp.ne.u32 %r81,%r42,2139095040; @ %r81 bra $L9; .loc 1 82 59 setp.ge.s32 %r82,%r45,0; .loc 1 61 56 selp.f32 %r47,0f3fc90fdb,0fbfc90fdb,%r82; bra $L1; $L9: .loc 1 85 9 sub.u32 %r83,%r42,%r40; .loc 1 85 4 shr.s32 %r46,%r83,23; .loc 1 86 4 setp.gt.s32 %r84,%r46,60; @ %r84 bra $L24; .loc 1 87 12 shr.u32 %r86,%r39,31; .loc 1 87 17 set.u32.lt.s32 %r88,%r46,-60; neg.s32 %r89,%r88; .loc 1 87 14 cvt.u16.u32 %r92,%r86; cvt.u16.u32 %r93,%r89; and.b16 %r91,%r92,%r93; .loc 1 87 9 cvt.u32.u16 %r94,%r91; cvt.u16.u8 %r95,%r94; setp.ne.u16 %r96,%r95,0; @ %r96 bra $L25; .loc 1 88 9 div.rn.f32 %r98,%r48,%r49; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r98; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r99,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r99; call (%value_in),atanf,(%out_arg1); ld.param.f32 %r101,[%value_in]; } mov.f32 %r47,%r101; bra $L10; $L24: .loc 1 86 14 mov.f32 %r47,0f3fc90fdb; bra $L10; $L25: .loc 1 87 24 mov.f32 %r47,0f00000000; $L10: setp.eq.u32 %r102,%r43,1; @ %r102 bra $L11; setp.eq.u32 %r103,%r43,2; @ %r103 bra $L12; setp.eq.u32 %r104,%r43,0; @ ! %r104 bra $L29; bra $L1; $L11: .loc 1 94 9 mov.b32 %r105,%r47; add.u32 %r36,%r105,-2147483648; mov.b32 %r47,%r36; .loc 1 96 20 bra $L1; $L12: .loc 1 97 27 add.f32 %r106,%r47,0f33bbbd2e; .loc 1 97 24 mov.f32 %r107,0f40490fdb; sub.f32 %r47,%r107,%r106; bra $L1; $L29: .loc 1 99 21 add.f32 %r108,%r47,0f33bbbd2e; .loc 1 99 28 mov.f32 %r109,0f40490fdb; sub.f32 %r47,%r108,%r109; bra $L1; $L14: .loc 1 56 21 mov.f32 %r47,0f40490fdb; bra $L1; $L17: .loc 1 69 40 mov.f32 %r47,0f4016cbe4; bra $L1; $L18: .loc 1 70 40 mov.f32 %r47,0fc016cbe4; bra $L1; $L20: .loc 1 56 21 mov.f32 %r47,0f40490fdb; bra $L1; $L21: .loc 1 57 21 mov.f32 %r47,0fc0490fdb; $L1: .loc 1 101 1 mov.f32 %value,%r47; st.param.f32 [%value_out],%value; ret; } /139 1591654539 399 399 100644 2548 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r30; .reg .u32 %r31; .reg .f32 %r33; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r37; .reg .pred %r38; .reg .pred %r39; .reg .pred %r40; .reg .f32 %r41; .reg .pred %r42; .reg .f32 %r43; .reg .pred %r44; .reg .f32 %r46; .reg .f32 %r47; .reg .f32 %r48; .reg .f32 %r49; .reg .f32 %r51; .reg .f32 %r52; .reg .pred %r53; .reg .f32 %r55; mov.f32 %r37,%ar0; .loc 1 40 2 mov.b32 %r30,%r37; .loc 1 41 5 and.b32 %r31,%r30,2147483647; .loc 1 42 5 setp.le.s32 %r38,%r31,1065353216; @ %r38 bra $L2; .loc 1 43 15 sub.f32 %r22,%r37,%r37; .loc 1 43 18 div.rn.f32 %r36,%r22,%r22; bra $L1; $L2: .loc 1 44 4 setp.ne.u32 %r39,%r31,1065353216; @ %r39 bra $L4; .loc 1 45 14 div.rn.f32 %r36,%r37,0f00000000; bra $L1; $L4: .loc 1 46 4 setp.gt.s32 %r40,%r31,830472191; @ %r40 bra $L5; .loc 1 46 25 add.f32 %r41,%r37,0f7149f2ca; .loc 1 46 18 setp.gt.f32 %r42,%r41,0f00000000; @ ! %r42 bra $L11; bra $L10; $L5: .loc 1 47 2 mov.b32 %r34,%r31; add.f32 %r33,%r34,%r34; mov.f32 %r43,0f3f800000; sub.f32 %r35,%r43,%r34; .loc 1 48 4 setp.gt.s32 %r44,%r31,1056964607; @ %r44 bra $L7; $L9: .loc 1 50 31 mul.f32 %r46,%r33,%r34; .loc 1 50 33 div.rn.f32 %r47,%r46,%r35; .loc 1 50 21 add.f32 %r48,%r47,%r33; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r48; call (%value_in),log1pf,(%out_arg1); ld.param.f32 %r49,[%value_in]; } .loc 1 50 8 mul.f32 %r36,%r49,0f3f000000; bra $L8; $L7: .loc 1 52 21 div.rn.f32 %r51,%r33,%r35; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r51; call (%value_in),log1pf,(%out_arg1); ld.param.f32 %r52,[%value_in]; } .loc 1 52 8 mul.f32 %r36,%r52,0f3f000000; $L8: .loc 1 53 4 setp.ge.s32 %r53,%r30,0; @ %r53 bra $L1; .loc 1 53 34 neg.f32 %r36,%r36; bra $L1; $L10: .loc 1 46 42 mov.f32 %r36,%r37; bra $L1; $L11: .loc 1 47 2 mov.b32 %r34,%r31; add.f32 %r33,%r34,%r34; mov.f32 %r55,0f3f800000; sub.f32 %r35,%r55,%r34; bra $L9; $L1: .loc 1 54 1 mov.f32 %value,%r36; st.param.f32 [%value_out],%value; ret; } lib_a-ef_cosh.o/1591654539 399 399 100644 3662 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 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 .f32 %r70; mov.f32 %r40,%ar0; .loc 1 38 2 mov.b32 %r32,%r40; .loc 1 39 5 and.b32 %r33,%r32,2147483647; .loc 1 42 4 setp.le.s32 %r41,%r33,2139095039; @ %r41 bra $L2; .loc 1 42 39 mul.f32 %r39,%r40,%r40; bra $L1; $L2: .loc 1 45 4 setp.gt.s32 %r42,%r33,1051816471; @ %r42 bra $L4; .loc 1 46 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 47 8 add.f32 %r39,%r46,0f3f800000; .loc 1 48 9 setp.le.s32 %r47,%r33,603979775; @ %r47 bra $L1; .loc 1 49 19 mul.f32 %r48,%r46,%r46; .loc 1 49 25 add.f32 %r49,%r39,%r39; .loc 1 49 22 div.rn.f32 %r50,%r48,%r49; .loc 1 49 16 add.f32 %r39,%r50,0f3f800000; bra $L1; $L4: .loc 1 53 5 setp.gt.s32 %r51,%r33,1102053375; @ %r51 bra $L5; .loc 1 54 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 55 21 mov.f32 %r57,0f3f000000; div.rn.f32 %r56,%r57,%r55; .loc 1 55 16 fma.rn.f32 %r39,%r55,0f3f000000,%r56; bra $L1; $L5: .loc 1 59 5 setp.gt.s32 %r58,%r33,1118925335; @ %r58 bra $L6; .loc 1 60 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 60 15 mul.f32 %r39,%r62,0f3f000000; bra $L1; $L6: .loc 1 63 5 setp.gt.s32 %r63,%r33,1119016188; @ %r63 bra $L7; .loc 1 64 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 64 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 65 8 mul.f32 %r69,%r68,0f3f000000; .loc 1 66 14 mul.f32 %r39,%r69,%r68; bra $L1; $L7: .loc 1 70 13 mov.f32 %r70,0f7149f2ca; mul.f32 %r39,%r70,0f7149f2ca; $L1: .loc 1 71 1 mov.f32 %value,%r39; st.param.f32 [%value_out],%value; ret; } lib_a-ef_exp.o/ 1591654539 399 399 100644 5626 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 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 %r50; .reg .f32 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r56; .reg .f32 %r57; .reg .f32 %r58; .reg .f32 %r61; .reg .f32 %r66; .reg .u32 %r75; .reg .f32 %r76; .reg .f32 %r77; .reg .pred %r78; .reg .pred %r79; .reg .pred %r80; .reg .pred %r81; .reg .f32 %r82; .reg .u32 %r86; .reg .u32 %r87; .reg .u16 %r89; .reg .u16 %r90; .reg .u16 %r91; .reg .u32 %r92; .reg .u16 %r93; .reg .pred %r94; .reg .pred %r95; .reg .pred %r96; .reg .u64 %r97; .reg .u64 %r98; .reg .u64 %r99; .reg .u64 %r100; .reg .f32 %r101; .reg .u64 %r102; .reg .u64 %r105; .reg .u32 %r106; .reg .u32 %r107; .reg .u64 %r108; .reg .u64 %r109; .reg .u64 %r110; .reg .u64 %r111; .reg .f32 %r112; .reg .f32 %r113; .reg .f32 %r115; .reg .f32 %r116; .reg .f32 %r117; .reg .f32 %r118; .reg .f32 %r119; .reg .pred %r120; .reg .pred %r121; .reg .f32 %r122; .reg .pred %r123; .reg .f32 %r125; .reg .f32 %r126; .reg .f32 %r127; .reg .f32 %r128; .reg .f32 %r129; .reg .f32 %r130; .reg .f32 %r131; .reg .f32 %r132; .reg .f32 %r133; .reg .f32 %r134; .reg .f32 %r135; .reg .f32 %r136; .reg .pred %r137; .reg .u32 %r138; .reg .u32 %r139; .reg .u32 %r140; .reg .u32 %r141; .reg .u32 %r142; .reg .f32 %r143; .reg .f32 %r145; .reg .f32 %r146; .reg .f32 %r147; .reg .f32 %r148; .reg .f32 %r149; .reg .f32 %r150; mov.f32 %r77,%ar0; .loc 1 53 2 mov.b32 %r53,%r77; .loc 1 55 5 and.b32 %r56,%r53,2147483647; .loc 1 58 11 setp.le.u32 %r78,%r56,2139095040; @ %r78 bra $L2; .loc 1 59 21 add.f32 %r76,%r77,%r77; bra $L1; $L2: .loc 1 54 16 shr.u32 %r22,%r53,31; .loc 1 60 11 setp.ne.u32 %r79,%r56,2139095040; @ %r79 bra $L4; .loc 1 61 24 setp.ne.u32 %r80,%r22,0; selp.f32 %r76,0f00000000,%r77,%r80; bra $L1; $L4: .loc 1 62 4 setp.le.s32 %r81,%r53,1118925335; @ %r81 bra $L5; .loc 1 63 17 mov.f32 %r82,0f7149f2ca; mul.f32 %r76,%r82,0f7149f2ca; bra $L1; $L5: .loc 1 64 18 set.u32.gt.u32 %r86,%r56,1120924085; neg.s32 %r87,%r86; .loc 1 64 12 cvt.u16.u32 %r90,%r22; cvt.u16.u32 %r91,%r87; and.b16 %r89,%r90,%r91; .loc 1 64 4 cvt.u32.u16 %r92,%r89; cvt.u16.u8 %r93,%r92; setp.ne.u16 %r94,%r93,0; @ %r94 bra $L15; .loc 1 68 4 setp.le.u32 %r95,%r56,1051816472; @ %r95 bra $L6; .loc 1 69 8 setp.gt.u32 %r96,%r56,1065686417; @ %r96 bra $L7; .loc 1 70 15 cvta.const.u64 %r97,ln2HI; cvt.s64.s32 %r98,%r22; shl.b64 %r99,%r98,2; add.u64 %r100,%r97,%r99; .loc 1 70 6 ld.f32 %r101,[%r100]; sub.f32 %r50,%r77,%r101; .loc 1 70 24 cvta.const.u64 %r102,ln2LO; add.u64 %r105,%r102,%r99; ld.f32 %r51,[%r105]; .loc 1 70 42 mov.u32 %r107,1; sub.u32 %r106,%r107,%r22; .loc 1 70 39 sub.u32 %r52,%r106,%r22; bra $L8; $L7: .loc 1 72 21 cvta.const.u64 %r108,halF; cvt.s64.s32 %r109,%r22; shl.b64 %r110,%r109,2; add.u64 %r111,%r108,%r110; .loc 1 72 16 ld.f32 %r113,[%r111]; fma.rn.f32 %r112,%r77,0f3fb8aa3b,%r113; .loc 1 72 6 cvt.rzi.s32.f32 %r52,%r112; .loc 1 73 6 cvt.rn.f32.s32 %r57,%r52; .loc 1 74 6 fma.rn.f32 %r50,%r57,0fbf317180,%r77; .loc 1 75 6 mul.f32 %r51,%r57,0f3717f7d1; $L8: .loc 1 77 9 sub.f32 %r77,%r50,%r51; .loc 1 84 5 mul.f32 %r58,%r77,%r77; .loc 1 85 34 fma.rn.f32 %r115,%r58,0f3331bb4c,0fb5ddea0e; .loc 1 85 28 fma.rn.f32 %r116,%r115,%r58,0f388ab355; .loc 1 85 22 fma.rn.f32 %r117,%r116,%r58,0fbb360b61; .loc 1 85 16 fma.rn.f32 %r118,%r117,%r58,0f3e2aaaab; .loc 1 85 5 neg.f32 %r119,%r118; fma.rn.f32 %r66,%r119,%r58,%r77; mul.f32 %r150,%r77,%r66; .loc 1 86 4 setp.eq.u32 %r120,%r52,0; @ ! %r120 bra $L20; bra $L9; $L6: .loc 1 79 9 setp.gt.u32 %r121,%r56,830472191; @ %r121 bra $L11; .loc 1 80 13 add.f32 %r122,%r77,0f7149f2ca; .loc 1 80 8 setp.gt.f32 %r123,%r122,0f3f800000; @ ! %r123 bra $L11; .loc 1 80 31 add.f32 %r76,%r77,0f3f800000; bra $L1; $L9: .loc 1 86 32 mov.f32 %r126,0f40000000; sub.f32 %r125,%r66,%r126; .loc 1 86 29 div.rn.f32 %r127,%r150,%r125; .loc 1 86 44 sub.f32 %r128,%r127,%r77; .loc 1 86 22 mov.f32 %r129,0f3f800000; sub.f32 %r76,%r129,%r128; bra $L1; $L20: .loc 1 87 39 mov.f32 %r131,0f40000000; sub.f32 %r130,%r131,%r66; .loc 1 87 27 div.rn.f32 %r132,%r150,%r130; .loc 1 87 21 sub.f32 %r133,%r51,%r132; .loc 1 87 43 sub.f32 %r134,%r133,%r50; .loc 1 87 11 mov.f32 %r136,0f3f800000; sub.f32 %r135,%r136,%r134; mov.b32 %r75,%r135; .loc 1 88 4 setp.lt.s32 %r137,%r52,-125; @ %r137 bra $L13; .loc 1 91 6 shl.b32 %r138,%r52,23; add.u32 %r139,%r138,%r75; mov.b32 %r76,%r139; .loc 1 92 13 bra $L1; $L13: .loc 1 96 6 add.u32 %r140,%r52,100; shl.b32 %r141,%r140,23; add.u32 %r142,%r141,%r75; .loc 1 97 14 mov.b32 %r143,%r142; mul.f32 %r76,%r143,0f0d800000; bra $L1; $L15: .loc 1 61 24 mov.f32 %r76,0f00000000; bra $L1; $L11: .loc 1 84 5 mul.f32 %r61,%r77,%r77; .loc 1 85 5 neg.f32 %r145,%r61; .loc 1 85 34 fma.rn.f32 %r146,%r61,0f3331bb4c,0fb5ddea0e; .loc 1 85 28 fma.rn.f32 %r147,%r61,%r146,0f388ab355; .loc 1 85 22 fma.rn.f32 %r148,%r61,%r147,0fbb360b61; .loc 1 85 16 fma.rn.f32 %r149,%r61,%r148,0f3e2aaaab; .loc 1 85 5 fma.rn.f32 %r66,%r145,%r149,%r77; mul.f32 %r150,%r77,%r66; bra $L9; $L1: .loc 1 99 1 mov.f32 %value,%r76; st.param.f32 [%value_out],%value; ret; } lib_a-ef_fmod.o/1591654539 399 399 100644 6160 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .f32 %r26; .reg .u32 %r31; .reg .u32 %r32; .reg .u32 %r43; .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 %r64; .reg .f32 %r66; .reg .f32 %r67; .reg .f32 %r68; .reg .u32 %r70; .reg .u32 %r71; .reg .u32 %r73; .reg .u32 %r74; .reg .u16 %r75; .reg .u16 %r76; .reg .u16 %r77; .reg .u32 %r79; .reg .u32 %r80; .reg .u16 %r82; .reg .u16 %r84; .reg .u32 %r85; .reg .u16 %r86; .reg .pred %r87; .reg .pred %r88; .reg .pred %r89; .reg .u64 %r90; .reg .u32 %r91; .reg .u64 %r92; .reg .u64 %r93; .reg .u64 %r94; .reg .u32 %r95; .reg .pred %r96; .reg .pred %r97; .reg .pred %r99; .reg .u32 %r100; .reg .u32 %r101; .reg .pred %r102; .reg .pred %r103; .reg .pred %r105; .reg .u32 %r106; .reg .pred %r107; .reg .u32 %r108; .reg .u32 %r109; .reg .u32 %r111; .reg .u32 %r112; .reg .pred %r113; .reg .pred %r115; .reg .u64 %r116; .reg .u32 %r117; .reg .u64 %r118; .reg .u64 %r119; .reg .u64 %r120; .reg .pred %r122; .reg .pred %r123; .reg .pred %r124; .reg .pred %r125; .reg .u64 %r126; .reg .u32 %r127; .reg .u64 %r128; .reg .u64 %r129; .reg .u64 %r130; .reg .pred %r132; .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 .pred %r144; mov.f32 %r67,%ar0; mov.f32 %r68,%ar1; .loc 1 39 2 mov.b32 %r45,%r67; .loc 1 40 2 mov.b32 %r46,%r68; .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 %r70,%r49,2139095040; neg.s32 %r71,%r70; .loc 1 46 5 set.u32.eq.u32 %r73,%r49,0; neg.s32 %r74,%r73; .loc 1 47 29 cvt.u16.u32 %r76,%r71; cvt.u16.u32 %r77,%r74; or.b16 %r75,%r76,%r77; .loc 1 47 5 set.u32.gt.s32 %r79,%r48,2139095039; neg.s32 %r80,%r79; .loc 1 47 29 cvt.u16.u32 %r84,%r80; or.b16 %r82,%r75,%r84; cvt.u32.u16 %r85,%r82; cvt.u16.u8 %r86,%r85; setp.eq.u16 %r87,%r86,0; @ %r87 bra $L2; .loc 1 49 15 mul.f32 %r26,%r67,%r68; .loc 1 49 18 div.rn.f32 %r66,%r26,%r26; bra $L1; $L2: .loc 1 50 4 setp.lt.s32 %r88,%r48,%r49; @ %r88 bra $L25; .loc 1 41 5 and.b32 %r47,%r45,-2147483648; .loc 1 51 4 setp.ne.u32 %r89,%r48,%r49; @ %r89 bra $L4; .loc 1 52 17 cvta.const.u64 %r90,Zero; .loc 1 52 32 shr.u32 %r91,%r47,31; .loc 1 52 17 cvt.u64.u32 %r92,%r91; shl.b64 %r93,%r92,2; add.u64 %r94,%r90,%r93; ld.f32 %r66,[%r94]; bra $L1; $L4: .loc 1 57 4 and.b32 %r95,%r45,2139095040; setp.ne.u32 %r96,%r95,0; @ %r96 bra $L5; .loc 1 58 22 shl.b32 %r52,%r48,8; .loc 1 58 6 setp.le.s32 %r97,%r52,0; @ %r97 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 6 setp.gt.s32 %r99,%r52,0; @ %r99 bra $L7; bra $L6; $L5: .loc 1 59 17 shr.s32 %r100,%r48,23; .loc 1 59 12 add.u32 %r51,%r100,-127; bra $L6; $L26: .loc 1 58 14 mov.u32 %r51,-126; $L6: .loc 1 62 4 and.b32 %r101,%r46,2139095040; setp.ne.u32 %r102,%r101,0; @ %r102 bra $L8; .loc 1 63 22 shl.b32 %r55,%r49,8; .loc 1 63 6 setp.lt.s32 %r103,%r55,0; @ %r103 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 6 setp.ge.s32 %r105,%r55,0; @ %r105 bra $L10; bra $L9; $L8: .loc 1 64 17 shr.s32 %r106,%r49,23; .loc 1 64 12 add.u32 %r54,%r106,-127; bra $L9; $L27: .loc 1 63 14 mov.u32 %r54,-126; $L9: .loc 1 67 4 setp.lt.s32 %r107,%r51,-126; @ %r107 bra $L11; .loc 1 68 33 and.b32 %r31,%r45,8388607; .loc 1 68 9 or.b32 %r22,%r31,8388608; bra $L12; $L11: .loc 1 70 8 mov.u32 %r109,-126; sub.u32 %r108,%r109,%r51; .loc 1 71 9 shl.b32 %r22,%r48,%r108; $L12: .loc 1 73 4 setp.lt.s32 %r144,%r54,-126; @ %r144 bra $L13; .loc 1 74 33 and.b32 %r32,%r46,8388607; .loc 1 74 9 or.b32 %r43,%r32,8388608; bra $L14; $L13: .loc 1 76 8 mov.u32 %r112,-126; sub.u32 %r111,%r112,%r54; .loc 1 77 9 shl.b32 %r43,%r49,%r111; $L14: .loc 1 81 4 sub.u32 %r64,%r51,%r54; .loc 1 82 7 bra $L15; $L19: .loc 1 84 8 setp.ge.s32 %r113,%r44,0; @ %r113 bra $L16; .loc 1 84 18 add.u32 %r22,%r22,%r22; bra $L17; $L16: .loc 1 86 9 setp.ne.u32 %r115,%r44,0; @ %r115 bra $L18; .loc 1 87 18 cvta.const.u64 %r116,Zero; .loc 1 87 33 shr.u32 %r117,%r47,31; .loc 1 87 18 cvt.u64.u32 %r118,%r117; shl.b64 %r119,%r118,2; add.u64 %r120,%r116,%r119; ld.f32 %r66,[%r120]; bra $L1; $L18: .loc 1 88 10 add.u32 %r22,%r44,%r44; $L17: add.u32 %r64,%r64,-1; $L15: sub.u32 %r44,%r22,%r43; .loc 1 82 7 setp.ne.u32 %r122,%r64,0; @ %r122 bra $L19; .loc 1 92 4 setp.lt.s32 %r123,%r44,0; selp.u32 %r22,%r22,%r44,%r123; .loc 1 95 4 setp.eq.u32 %r124,%r22,0; @ %r124 bra $L21; .loc 1 97 7 setp.le.s32 %r125,%r22,8388607; @ %r125 bra $L22; bra $L23; $L21: .loc 1 96 17 cvta.const.u64 %r126,Zero; .loc 1 96 32 shr.u32 %r127,%r47,31; .loc 1 96 17 cvt.u64.u32 %r128,%r127; shl.b64 %r129,%r128,2; add.u64 %r130,%r126,%r129; ld.f32 %r66,[%r130]; bra $L1; $L22: .loc 1 98 9 add.u32 %r22,%r22,%r22; .loc 1 99 9 add.u32 %r54,%r54,-1; .loc 1 97 7 setp.le.s32 %r132,%r22,8388607; @ %r132 bra $L22; setp.lt.s32 %r144,%r54,-126; $L23: .loc 1 101 4 @ %r144 bra $L24; .loc 1 102 32 add.u32 %r134,%r54,127; .loc 1 102 37 shl.b32 %r135,%r134,23; .loc 1 102 15 add.u32 %r136,%r22,-8388608; .loc 1 103 6 or.b32 %r137,%r136,%r47; or.b32 %r138,%r135,%r137; mov.b32 %r66,%r138; bra $L1; $L24: .loc 1 107 8 mov.u32 %r140,-126; sub.u32 %r139,%r140,%r54; .loc 1 108 9 shr.s32 %r141,%r22,%r139; .loc 1 109 6 or.b32 %r142,%r141,%r47; mov.b32 %r66,%r142; bra $L1; $L25: .loc 1 50 19 mov.f32 %r66,%r67; $L1: .loc 1 113 1 mov.f32 %value,%r66; st.param.f32 [%value_out],%value; ret; } /157 1591654539 399 399 100644 4663 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r41; .reg .f32 %r45; .reg .u32 %r47; .reg .u32 %r48; .reg .u32 %r49; .reg .u32 %r52; .reg .u32 %r53; .reg .f32 %r54; .reg .f32 %r55; .reg .f32 %r57; .reg .f32 %r59; .reg .f32 %r66; .reg .f32 %r67; .reg .f32 %r68; .reg .u32 %r69; .reg .pred %r70; .reg .u32 %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 .u32 %r81; .reg .f32 %r83; .reg .f32 %r84; .reg .f32 %r85; .reg .f32 %r86; .reg .f32 %r87; .reg .f32 %r88; .reg .f32 %r89; .reg .f32 %r90; .reg .f32 %r91; .reg .u32 %r92; .reg .u32 %r93; .reg .f32 %r94; .reg .f32 %r95; .reg .f32 %r96; .reg .f32 %r97; .reg .f32 %r98; .reg .f32 %r99; .reg .f32 %r100; .reg .f32 %r101; .reg .f32 %r102; .reg .f32 %r104; .reg .pred %r105; .reg .u32 %r106; .reg .u32 %r107; .reg .f32 %r108; mov.f32 %r67,%ar0; mov.f32 %r68,%ar1; .loc 1 28 2 mov.b32 %r52,%r67; .loc 1 29 5 and.b32 %r48,%r52,2147483647; .loc 1 30 2 mov.b32 %r53,%r68; .loc 1 31 5 and.b32 %r49,%r53,2147483647; .loc 1 32 4 setp.ge.s32 %r70,%r48,%r49; @ %r70 bra $L2; mov.u32 %r69,%r48; mov.u32 %r48,%r49; mov.u32 %r49,%r69; $L2: .loc 1 33 2 mov.b32 %r66,%r48; .loc 1 34 2 mov.b32 %r45,%r49; .loc 1 35 8 sub.u32 %r71,%r48,%r49; .loc 1 35 4 setp.le.s32 %r72,%r71,251658240; @ %r72 bra $L3; .loc 1 35 34 add.f32 %r66,%r66,%r45; bra $L1; $L3: .loc 1 37 4 setp.le.s32 %r73,%r48,1484783616; @ %r73 bra $L13; .loc 1 38 7 setp.le.s32 %r74,%r48,2139095039; @ %r74 bra $L6; .loc 1 40 11 setp.eq.u32 %r75,%r48,2139095040; @ %r75 bra $L14; .loc 1 39 11 add.f32 %r66,%r66,%r45; bra $L7; $L14: .loc 1 40 41 mov.f32 %r66,0f7f800000; $L7: .loc 1 41 11 setp.ne.u32 %r76,%r49,2139095040; .loc 1 41 41 selp.f32 %r66,%r66,0f7f800000,%r76; bra $L1; $L6: .loc 1 45 8 add.u32 %r48,%r48,-570425344; .loc 1 45 27 add.u32 %r49,%r49,-570425344; .loc 1 46 5 mov.b32 %r66,%r48; .loc 1 47 5 mov.b32 %r45,%r49; .loc 1 45 45 mov.u32 %r47,68; bra $L5; $L13: .loc 1 36 3 mov.u32 %r47,0; $L5: .loc 1 49 4 setp.gt.s32 %r77,%r49,645922815; @ %r77 bra $L8; .loc 1 50 8 setp.eq.u32 %r78,%r49,0; @ %r78 bra $L1; .loc 1 52 15 setp.gt.s32 %r79,%r49,8388607; @ %r79 bra $L9; .loc 1 54 5 mul.f32 %r45,%r45,0f7e800000; .loc 1 55 5 mul.f32 %r66,%r66,0f7e800000; .loc 1 56 5 add.u32 %r47,%r47,-126; bra $L8; $L9: .loc 1 58 13 add.u32 %r48,%r48,570425344; .loc 1 59 6 add.u32 %r49,%r49,570425344; .loc 1 60 5 add.u32 %r47,%r47,-68; .loc 1 61 3 mov.b32 %r66,%r48; .loc 1 62 3 mov.b32 %r45,%r49; $L8: .loc 1 66 4 sub.f32 %r54,%r66,%r45; .loc 1 67 5 setp.lt.f32 %r80,%r45,%r54; @ ! %r80 bra $L22; .loc 1 68 6 and.b32 %r81,%r48,-4096; mov.b32 %r55,%r81; .loc 1 70 37 neg.f32 %r83,%r45; .loc 1 70 46 add.f32 %r84,%r66,%r55; .loc 1 69 9 sub.f32 %r85,%r66,%r55; .loc 1 70 43 mul.f32 %r86,%r84,%r85; .loc 1 70 40 neg.f32 %r87,%r86; fma.rn.f32 %r88,%r83,%r45,%r87; .loc 1 70 11 neg.f32 %r89,%r88; fma.rn.f32 %r90,%r55,%r55,%r89; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r90; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r91,[%value_in]; } mov.f32 %r66,%r91; bra $L12; $L22: .loc 1 73 6 and.b32 %r92,%r49,-4096; mov.b32 %r57,%r92; .loc 1 75 6 add.u32 %r93,%r48,8388608; mov.b32 %r59,%r93; .loc 1 77 37 neg.f32 %r94,%r54; .loc 1 74 9 sub.f32 %r95,%r45,%r57; .loc 1 76 9 neg.f32 %r96,%r59; fma.rn.f32 %r97,%r66,0f40000000,%r96; .loc 1 77 50 mul.f32 %r98,%r97,%r45; .loc 1 77 47 fma.rn.f32 %r99,%r95,%r59,%r98; .loc 1 77 40 neg.f32 %r100,%r99; fma.rn.f32 %r101,%r94,%r54,%r100; .loc 1 77 11 neg.f32 %r102,%r101; fma.rn.f32 %r41,%r57,%r59,%r102; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r41; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r104,[%value_in]; } mov.f32 %r66,%r104; $L12: .loc 1 79 4 setp.eq.u32 %r105,%r47,0; @ %r105 bra $L1; .loc 1 80 6 shl.b32 %r106,%r47,23; add.u32 %r107,%r106,1065353216; .loc 1 81 15 mov.b32 %r108,%r107; mul.f32 %r66,%r66,%r108; $L1: .loc 1 83 1 mov.f32 %value,%r66; st.param.f32 [%value_out],%value; ret; } lib_a-ef_j0.o/ 1591654539 399 399 100644 15872 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r28; .reg .u32 %r35; .reg .u32 %r36; .reg .f32 %r37; .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 %r55; .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; 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 mov.f32 %r55,0f3f800000; div.rn.f32 %r37,%r55,%r54; .loc 1 300 42 fma.rn.f32 %r57,%r37,%r44,%r43; .loc 1 300 34 fma.rn.f32 %r58,%r57,%r37,%r42; .loc 1 300 26 fma.rn.f32 %r59,%r58,%r37,%r41; .loc 1 300 18 fma.rn.f32 %r60,%r59,%r37,%r40; .loc 1 300 4 fma.rn.f32 %r61,%r60,%r37,%r23; .loc 1 301 41 fma.rn.f32 %r62,%r37,%r48,%r47; .loc 1 301 33 fma.rn.f32 %r63,%r62,%r37,%r46; .loc 1 301 25 fma.rn.f32 %r64,%r63,%r37,%r45; .loc 1 301 17 fma.rn.f32 %r65,%r64,%r37,%r28; .loc 1 301 4 fma.rn.f32 %r66,%r65,%r37,0f3f800000; .loc 1 302 15 div.rn.f32 %r67,%r61,%r66; .loc 1 302 12 add.f32 %value,%r67,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 %r28; .reg .u32 %r37; .reg .u32 %r38; .reg .f32 %r39; .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 %r58; .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; 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 mov.f32 %r58,0f3f800000; div.rn.f32 %r39,%r58,%r57; .loc 1 436 42 fma.rn.f32 %r60,%r39,%r46,%r45; .loc 1 436 34 fma.rn.f32 %r61,%r60,%r39,%r44; .loc 1 436 26 fma.rn.f32 %r62,%r61,%r39,%r43; .loc 1 436 18 fma.rn.f32 %r63,%r62,%r39,%r42; .loc 1 436 4 fma.rn.f32 %r64,%r63,%r39,%r23; .loc 1 437 49 fma.rn.f32 %r65,%r39,%r51,%r50; .loc 1 437 41 fma.rn.f32 %r66,%r65,%r39,%r49; .loc 1 437 33 fma.rn.f32 %r67,%r66,%r39,%r48; .loc 1 437 25 fma.rn.f32 %r68,%r67,%r39,%r47; .loc 1 437 17 fma.rn.f32 %r69,%r68,%r39,%r28; .loc 1 437 4 fma.rn.f32 %r70,%r69,%r39,0f3f800000; .loc 1 438 26 div.rn.f32 %r71,%r64,%r70; .loc 1 438 23 mov.f32 %r73,0f3e000000; sub.f32 %r72,%r71,%r73; .loc 1 438 29 div.rn.f32 %value,%r72,%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 %r43; .reg .f32 %r44; .reg .u32 %r46; .reg .u32 %r47; .reg .f32 %r51; .reg .f32 %r54; .reg .f32 %r61; .reg .f32 %r62; .reg .f32 %r63; .reg .pred %r64; .reg .f32 %r65; .reg .f32 %r66; .reg .f32 %r68; .reg .u32 %r69; .reg .pred %r70; .reg .f32 %r72; .reg .f32 %r74; .reg .pred %r75; .reg .f32 %r77; .reg .f32 %r78; .reg .f32 %r79; .reg .pred %r80; .reg .f32 %r82; .reg .f32 %r84; .reg .f32 %r86; .reg .f32 %r87; .reg .f32 %r88; .reg .f32 %r89; .reg .f32 %r90; .reg .pred %r91; .reg .f32 %r92; .reg .pred %r93; .reg .pred %r94; .reg .f32 %r96; .reg .f32 %r97; .reg .f32 %r98; .reg .f32 %r99; .reg .f32 %r100; .reg .f32 %r101; .reg .f32 %r102; .reg .f32 %r103; .reg .f32 %r104; .reg .pred %r105; .reg .f32 %r106; .reg .f32 %r107; .reg .f32 %r108; .reg .f32 %r109; .reg .f32 %r111; mov.f32 %r63,%ar0; .loc 1 59 2 mov.b32 %r46,%r63; .loc 1 60 5 and.b32 %r47,%r46,2147483647; .loc 1 61 4 setp.le.s32 %r64,%r47,2139095039; @ %r64 bra $L12; .loc 1 61 44 mul.f32 %r65,%r63,%r63; .loc 1 61 41 mov.f32 %r66,0f3f800000; div.rn.f32 %r62,%r66,%r65; bra $L11; $L12: .loc 1 62 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r63; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r68,[%value_in]; } .loc 1 63 4 and.b32 %r69,%r46,1073741824; setp.eq.u32 %r70,%r69,0; @ %r70 bra $L14; .loc 1 64 7 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r68; call (%value_in),sinf,(%out_arg1); ld.param.f32 %r72,[%value_in]; } .loc 1 65 7 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r68; call (%value_in),cosf,(%out_arg1); ld.param.f32 %r74,[%value_in]; } .loc 1 66 6 sub.f32 %r43,%r72,%r74; .loc 1 67 6 add.f32 %r44,%r72,%r74; .loc 1 68 5 setp.gt.s32 %r75,%r47,2130706431; @ %r75 bra $L15; .loc 1 69 12 add.f32 %r77,%r68,%r68; { .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 69 9 neg.f32 %r51,%r78; .loc 1 70 13 mul.f32 %r79,%r72,%r74; .loc 1 70 10 setp.lt.f32 %r80,%r79,0f00000000; @ ! %r80 bra $L24; .loc 1 70 26 div.rn.f32 %r44,%r51,%r43; bra $L15; $L24: .loc 1 71 20 div.rn.f32 %r43,%r51,%r44; $L15: .loc 1 79 11 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r68; call (%value_in),pzerof,(%out_arg1); ld.param.f32 %r82,[%value_in]; } .loc 1 79 26 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r68; call (%value_in),qzerof,(%out_arg1); ld.param.f32 %r84,[%value_in]; } .loc 1 80 33 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r68; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r86,[%value_in]; } .loc 1 80 28 mul.f32 %r87,%r43,%r84; .loc 1 80 26 neg.f32 %r88,%r87; fma.rn.f32 %r89,%r44,%r82,%r88; .loc 1 80 20 mul.f32 %r90,%r89,0f3f106ebb; .loc 1 80 9 div.rn.f32 %r62,%r90,%r86; .loc 1 82 10 bra $L11; $L14: .loc 1 84 4 setp.gt.s32 %r91,%r47,956301311; @ %r91 bra $L18; .loc 1 85 13 add.f32 %r92,%r68,0f7149f2ca; .loc 1 85 8 setp.gt.f32 %r93,%r92,0f3f800000; @ ! %r93 bra $L18; .loc 1 86 12 setp.le.s32 %r94,%r47,838860799; @ %r94 bra $L21; .loc 1 87 33 mul.f32 %r96,%r68,0fbe800000; fma.rn.f32 %r62,%r96,%r68,0f3f800000; bra $L11; $L18: .loc 1 90 4 mul.f32 %r54,%r68,%r68; .loc 1 91 27 fma.rn.f32 %r97,%r54,0fb19eaf3c,0f35f58e88; .loc 1 91 20 fma.rn.f32 %r98,%r97,%r54,0fb947352e; .loc 1 91 13 fma.rn.f32 %r99,%r98,%r54,0f3c800000; .loc 1 91 4 mul.f32 %r100,%r99,%r54; .loc 1 92 31 fma.rn.f32 %r101,%r54,0f30a045e8,0f3509daa6; .loc 1 92 24 fma.rn.f32 %r102,%r101,%r54,0f38f53697; .loc 1 92 17 fma.rn.f32 %r103,%r102,%r54,0f3c7fe744; .loc 1 92 4 fma.rn.f32 %r104,%r103,%r54,0f3f800000; div.rn.f32 %r61,%r100,%r104; .loc 1 93 4 setp.gt.s32 %r105,%r47,1065353215; @ %r105 bra $L20; .loc 1 94 34 mov.f32 %r107,0f3e800000; sub.f32 %r106,%r61,%r107; .loc 1 94 17 fma.rn.f32 %r62,%r106,%r54,0f3f800000; bra $L11; $L20: .loc 1 97 17 fma.rn.f32 %r108,%r68,0f3f000000,0f3f800000; .loc 1 97 30 mul.f32 %r109,%r54,%r61; .loc 1 97 25 fma.rn.f32 %r111,%r68,0fbf000000,0f3f800000; .loc 1 97 28 fma.rn.f32 %r62,%r108,%r111,%r109; bra $L11; $L21: .loc 1 86 35 mov.f32 %r62,0f3f800000; $L11: .loc 1 99 1 mov.f32 %value,%r62; 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 %r39; .reg .f32 %r44; .reg .f32 %r45; .reg .u32 %r47; .reg .u32 %r48; .reg .f32 %r51; .reg .f32 %r54; .reg .f32 %r61; .reg .f32 %r62; .reg .pred %r63; .reg .f32 %r64; .reg .f32 %r65; .reg .pred %r66; .reg .f32 %r67; .reg .pred %r68; .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 .f32 %r83; .reg .f32 %r85; .reg .f32 %r87; .reg .f32 %r88; .reg .f32 %r89; .reg .f32 %r90; .reg .pred %r91; .reg .f32 %r93; .reg .f32 %r94; .reg .f32 %r95; .reg .f32 %r96; .reg .f32 %r97; .reg .f32 %r98; .reg .f32 %r99; .reg .f32 %r100; .reg .f32 %r101; .reg .f32 %r102; .reg .f32 %r103; .reg .f32 %r105; .reg .f32 %r107; .reg .f32 %r108; mov.f32 %r62,%ar0; .loc 1 128 2 mov.b32 %r47,%r62; .loc 1 129 12 and.b32 %r48,%r47,2147483647; .loc 1 131 4 setp.le.s32 %r63,%r48,2139095039; @ %r63 bra $L26; .loc 1 131 45 fma.rn.f32 %r64,%r62,%r62,%r62; .loc 1 131 42 mov.f32 %r65,0f3f800000; div.rn.f32 %r61,%r65,%r64; bra $L25; $L26: .loc 1 132 11 setp.ne.u32 %r66,%r48,0; @ %r66 bra $L28; .loc 1 132 46 mov.f32 %r67,0fbf800000; div.rn.f32 %r61,%r67,0f00000000; bra $L25; $L28: .loc 1 133 11 setp.ge.s32 %r68,%r47,0; @ %r68 bra $L29; .loc 1 133 29 mov.f32 %r69,0f00000000; div.rn.f32 %r61,%r69,0f00000000; bra $L25; $L29: .loc 1 134 11 and.b32 %r70,%r47,1073741824; setp.eq.u32 %r71,%r70,0; @ %r71 bra $L30; .loc 1 146 21 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r62; call (%value_in),sinf,(%out_arg1); ld.param.f32 %r73,[%value_in]; } .loc 1 147 21 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r62; call (%value_in),cosf,(%out_arg1); ld.param.f32 %r75,[%value_in]; } .loc 1 148 20 sub.f32 %r44,%r73,%r75; .loc 1 149 20 add.f32 %r45,%r73,%r75; .loc 1 154 19 setp.gt.s32 %r76,%r48,2130706431; @ %r76 bra $L31; .loc 1 155 26 add.f32 %r78,%r62,%r62; { .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 155 23 neg.f32 %r51,%r79; .loc 1 156 27 mul.f32 %r80,%r73,%r75; .loc 1 156 24 setp.lt.f32 %r81,%r80,0f00000000; @ ! %r81 bra $L36; .loc 1 156 40 div.rn.f32 %r45,%r51,%r44; bra $L31; $L36: .loc 1 157 40 div.rn.f32 %r44,%r51,%r45; $L31: .loc 1 161 25 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r62; call (%value_in),pzerof,(%out_arg1); ld.param.f32 %r83,[%value_in]; } .loc 1 161 40 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r62; call (%value_in),qzerof,(%out_arg1); ld.param.f32 %r85,[%value_in]; } .loc 1 162 47 { .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 162 42 mul.f32 %r88,%r45,%r85; .loc 1 162 40 fma.rn.f32 %r89,%r44,%r83,%r88; .loc 1 162 34 mul.f32 %r90,%r89,0f3f106ebb; .loc 1 162 23 div.rn.f32 %r61,%r90,%r87; .loc 1 164 24 bra $L25; $L30: .loc 1 166 4 setp.gt.s32 %r91,%r48,838860800; @ %r91 bra $L34; .loc 1 167 23 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r62; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r93,[%value_in]; } .loc 1 167 17 fma.rn.f32 %r61,%r93,0f3f22f983,0fbd9726b5; bra $L25; $L34: .loc 1 169 4 mul.f32 %r54,%r62,%r62; .loc 1 170 44 fma.rn.f32 %r94,%r54,0fae2f21eb,0f32a802ba; .loc 1 170 37 fma.rn.f32 %r95,%r94,%r54,0fb67ff53c; .loc 1 170 30 fma.rn.f32 %r96,%r95,%r54,0f39b62a69; .loc 1 170 23 fma.rn.f32 %r97,%r96,%r54,0fbc626746; .loc 1 170 16 fma.rn.f32 %r98,%r97,%r54,0f3e34e80d; .loc 1 170 4 fma.rn.f32 %r99,%r98,%r54,0fbd9726b5; .loc 1 171 30 fma.rn.f32 %r100,%r54,0f2ff280c2,0f348b216c; .loc 1 171 23 fma.rn.f32 %r101,%r100,%r54,0f389f65e0; .loc 1 171 16 fma.rn.f32 %r102,%r101,%r54,0f3c509385; .loc 1 171 4 fma.rn.f32 %r103,%r102,%r54,0f3f800000; .loc 1 172 10 div.rn.f32 %r39,%r99,%r103; .loc 1 172 20 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r62; call (%value_in),__ieee754_j0f,(%out_arg1); ld.param.f32 %r105,[%value_in]; } .loc 1 172 37 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r62; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r107,[%value_in]; } .loc 1 172 36 mul.f32 %r108,%r105,%r107; .loc 1 172 13 fma.rn.f32 %r61,%r108,0f3f22f983,%r39; $L25: .loc 1 173 1 mov.f32 %value,%r61; st.param.f32 [%value_out],%value; ret; } lib_a-ef_j1.o/ 1591654539 399 399 100644 14817 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r28; .reg .u32 %r35; .reg .u32 %r36; .reg .f32 %r37; .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 %r55; .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; 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 mov.f32 %r55,0f3f800000; div.rn.f32 %r37,%r55,%r54; .loc 1 299 49 fma.rn.f32 %r57,%r37,%r44,%r43; .loc 1 299 41 fma.rn.f32 %r58,%r57,%r37,%r42; .loc 1 299 33 fma.rn.f32 %r59,%r58,%r37,%r41; .loc 1 299 25 fma.rn.f32 %r60,%r59,%r37,%r40; .loc 1 299 11 fma.rn.f32 %r61,%r60,%r37,%r23; .loc 1 300 48 fma.rn.f32 %r62,%r37,%r48,%r47; .loc 1 300 40 fma.rn.f32 %r63,%r62,%r37,%r46; .loc 1 300 32 fma.rn.f32 %r64,%r63,%r37,%r45; .loc 1 300 24 fma.rn.f32 %r65,%r64,%r37,%r28; .loc 1 300 11 fma.rn.f32 %r66,%r65,%r37,0f3f800000; .loc 1 301 22 div.rn.f32 %r67,%r61,%r66; .loc 1 301 19 add.f32 %value,%r67,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 %r28; .reg .u32 %r37; .reg .f32 %r39; .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 %r57; .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; 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 mov.f32 %r57,0f3f800000; div.rn.f32 %r39,%r57,%r56; .loc 1 436 42 fma.rn.f32 %r59,%r39,%r46,%r45; .loc 1 436 34 fma.rn.f32 %r60,%r59,%r39,%r44; .loc 1 436 26 fma.rn.f32 %r61,%r60,%r39,%r43; .loc 1 436 18 fma.rn.f32 %r62,%r61,%r39,%r42; .loc 1 436 4 fma.rn.f32 %r63,%r62,%r39,%r23; .loc 1 437 49 fma.rn.f32 %r64,%r39,%r51,%r50; .loc 1 437 41 fma.rn.f32 %r65,%r64,%r39,%r49; .loc 1 437 33 fma.rn.f32 %r66,%r65,%r39,%r48; .loc 1 437 25 fma.rn.f32 %r67,%r66,%r39,%r47; .loc 1 437 17 fma.rn.f32 %r68,%r67,%r39,%r28; .loc 1 437 4 fma.rn.f32 %r69,%r68,%r39,0f3f800000; .loc 1 438 25 div.rn.f32 %r70,%r63,%r69; .loc 1 438 22 add.f32 %r71,%r70,0f3ec00000; .loc 1 438 28 div.rn.f32 %value,%r71,%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 %r39; .reg .f32 %r40; .reg .u32 %r42; .reg .u32 %r43; .reg .f32 %r50; .reg .f32 %r51; .reg .f32 %r57; .reg .f32 %r58; .reg .pred %r59; .reg .f32 %r60; .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 .f32 %r77; .reg .f32 %r79; .reg .f32 %r81; .reg .f32 %r82; .reg .f32 %r83; .reg .f32 %r84; .reg .f32 %r85; .reg .pred %r86; .reg .pred %r87; .reg .f32 %r88; .reg .pred %r89; .reg .f32 %r90; .reg .f32 %r91; .reg .f32 %r92; .reg .f32 %r93; .reg .f32 %r94; .reg .f32 %r95; .reg .f32 %r96; .reg .f32 %r97; .reg .f32 %r98; .reg .f32 %r99; 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 mov.f32 %r60,0f3f800000; div.rn.f32 %r57,%r60,%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 %r39,%r69,%r68; .loc 1 68 6 sub.f32 %r40,%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 $L18; .loc 1 71 26 div.rn.f32 %r40,%r73,%r39; bra $L13; $L18: .loc 1 72 20 div.rn.f32 %r39,%r73,%r40; $L13: .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 %r77,[%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 %r79,[%value_in]; } .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 %r81,[%value_in]; } .loc 1 81 28 mul.f32 %r82,%r39,%r79; .loc 1 81 26 neg.f32 %r83,%r82; fma.rn.f32 %r84,%r40,%r77,%r83; .loc 1 81 20 mul.f32 %r85,%r84,0f3f106ebb; .loc 1 81 9 div.rn.f32 %r57,%r85,%r81; .loc 1 83 5 setp.ge.s32 %r86,%r42,0; @ %r86 bra $L9; .loc 1 83 19 neg.f32 %r57,%r57; bra $L9; $L12: mul.f32 %r57,%r58,0f3f000000; .loc 1 86 4 setp.gt.s32 %r87,%r43,838860799; @ %r87 bra $L16; .loc 1 87 13 add.f32 %r88,%r58,0f7149f2ca; .loc 1 87 8 setp.gt.f32 %r89,%r88,0f3f800000; @ %r89 bra $L9; $L16: .loc 1 89 4 mul.f32 %r50,%r58,%r58; .loc 1 90 27 fma.rn.f32 %r90,%r50,0f335557d2,0fb7862e36; .loc 1 90 20 fma.rn.f32 %r91,%r90,%r50,0f3ab86cfd; .loc 1 90 13 fma.rn.f32 %r92,%r91,%r50,0fbd800000; .loc 1 90 4 mul.f32 %r51,%r92,%r50; .loc 1 92 4 mul.f32 %r93,%r58,%r51; .loc 1 91 38 fma.rn.f32 %r94,%r50,0f2d59567e,0f31ad6446; .loc 1 91 31 fma.rn.f32 %r95,%r94,%r50,0f359dffc2; .loc 1 91 24 fma.rn.f32 %r96,%r95,%r50,0f3942fab6; .loc 1 91 17 fma.rn.f32 %r97,%r96,%r50,0f3c9ce859; .loc 1 91 4 fma.rn.f32 %r98,%r97,%r50,0f3f800000; .loc 1 93 23 div.rn.f32 %r99,%r93,%r98; .loc 1 93 21 add.f32 %r57,%r57,%r99; $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 %r41; .reg .f32 %r47; .reg .f32 %r48; .reg .u32 %r50; .reg .u32 %r51; .reg .f32 %r57; .reg .f32 %r62; .reg .f32 %r63; .reg .pred %r64; .reg .f32 %r65; .reg .f32 %r66; .reg .pred %r67; .reg .f32 %r68; .reg .pred %r69; .reg .f32 %r70; .reg .u32 %r71; .reg .pred %r72; .reg .f32 %r74; .reg .f32 %r76; .reg .f32 %r77; .reg .pred %r78; .reg .f32 %r80; .reg .f32 %r81; .reg .f32 %r82; .reg .pred %r83; .reg .pred %r84; .reg .f32 %r86; .reg .f32 %r87; .reg .f32 %r89; .reg .f32 %r91; .reg .f32 %r93; .reg .f32 %r94; .reg .f32 %r95; .reg .f32 %r96; .reg .pred %r97; .reg .f32 %r98; .reg .f32 %r99; .reg .f32 %r100; .reg .f32 %r101; .reg .f32 %r102; .reg .f32 %r103; .reg .f32 %r104; .reg .f32 %r105; .reg .f32 %r106; .reg .f32 %r107; .reg .f32 %r109; .reg .f32 %r111; .reg .f32 %r112; .reg .f32 %r113; .reg .f32 %r114; .reg .f32 %r115; .reg .f32 %r116; mov.f32 %r63,%ar0; .loc 1 129 2 mov.b32 %r50,%r63; .loc 1 130 12 and.b32 %r51,%r50,2147483647; .loc 1 132 4 setp.le.s32 %r64,%r51,2139095039; @ %r64 bra $L20; .loc 1 132 44 fma.rn.f32 %r65,%r63,%r63,%r63; .loc 1 132 41 mov.f32 %r66,0f3f800000; div.rn.f32 %r62,%r66,%r65; bra $L19; $L20: .loc 1 133 11 setp.ne.u32 %r67,%r51,0; @ %r67 bra $L22; .loc 1 133 46 mov.f32 %r68,0fbf800000; div.rn.f32 %r62,%r68,0f00000000; bra $L19; $L22: .loc 1 134 11 setp.ge.s32 %r69,%r50,0; @ %r69 bra $L23; .loc 1 134 29 mov.f32 %r70,0f00000000; div.rn.f32 %r62,%r70,0f00000000; bra $L19; $L23: .loc 1 135 11 and.b32 %r71,%r50,1073741824; setp.eq.u32 %r72,%r71,0; @ %r72 bra $L24; .loc 1 136 21 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r63; call (%value_in),sinf,(%out_arg1); ld.param.f32 %r74,[%value_in]; } .loc 1 137 21 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r63; call (%value_in),cosf,(%out_arg1); ld.param.f32 %r76,[%value_in]; } .loc 1 138 22 neg.f32 %r77,%r74; .loc 1 138 20 sub.f32 %r47,%r77,%r76; .loc 1 139 20 sub.f32 %r48,%r74,%r76; .loc 1 140 19 setp.gt.s32 %r78,%r51,2130706431; @ %r78 bra $L25; .loc 1 141 25 add.f32 %r80,%r63,%r63; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r80; call (%value_in),cosf,(%out_arg1); ld.param.f32 %r81,[%value_in]; } .loc 1 142 27 mul.f32 %r82,%r74,%r76; .loc 1 142 24 setp.gt.f32 %r83,%r82,0f00000000; @ ! %r83 bra $L31; .loc 1 142 40 div.rn.f32 %r48,%r81,%r47; bra $L25; $L31: .loc 1 143 40 div.rn.f32 %r47,%r81,%r48; $L25: .loc 1 156 19 setp.le.s32 %r84,%r51,1207959552; @ %r84 bra $L28; .loc 1 156 54 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r63; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r86,[%value_in]; } .loc 1 156 49 mul.f32 %r87,%r47,0f3f106ebb; .loc 1 156 37 div.rn.f32 %r62,%r87,%r86; bra $L19; $L28: .loc 1 158 25 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r63; call (%value_in),ponef,(%out_arg1); ld.param.f32 %r89,[%value_in]; } .loc 1 158 39 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r63; call (%value_in),qonef,(%out_arg1); ld.param.f32 %r91,[%value_in]; } .loc 1 159 47 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r63; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r93,[%value_in]; } .loc 1 159 42 mul.f32 %r94,%r48,%r91; .loc 1 159 40 fma.rn.f32 %r95,%r47,%r89,%r94; .loc 1 159 34 mul.f32 %r96,%r95,0f3f106ebb; .loc 1 159 23 div.rn.f32 %r62,%r96,%r93; bra $L19; $L24: .loc 1 163 11 setp.gt.s32 %r97,%r51,612368384; @ %r97 bra $L29; .loc 1 164 24 mov.f32 %r98,0fbf22f983; div.rn.f32 %r62,%r98,%r63; bra $L19; $L29: .loc 1 166 11 mul.f32 %r57,%r63,%r63; .loc 1 167 45 fma.rn.f32 %r99,%r57,0fb3c56003,0f37c5581c; .loc 1 167 36 fma.rn.f32 %r100,%r99,%r57,0fbafaaf2a; .loc 1 167 27 fma.rn.f32 %r101,%r100,%r57,0f3d4e9e3c; .loc 1 167 11 fma.rn.f32 %r102,%r101,%r57,0fbe48c331; .loc 1 168 52 fma.rn.f32 %r103,%r57,0f2d9281cf,0f31d5f8eb; .loc 1 168 43 fma.rn.f32 %r104,%r103,%r57,0f35b602d4; .loc 1 168 34 fma.rn.f32 %r105,%r104,%r57,0f3954644b; .loc 1 168 25 fma.rn.f32 %r106,%r105,%r57,0f3ca3286a; .loc 1 168 11 fma.rn.f32 %r107,%r106,%r57,0f3f800000; .loc 1 169 20 div.rn.f32 %r41,%r102,%r107; .loc 1 169 31 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r63; call (%value_in),__ieee754_j1f,(%out_arg1); ld.param.f32 %r109,[%value_in]; } .loc 1 169 48 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r63; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r111,[%value_in]; } .loc 1 169 69 mov.f32 %r113,0f3f800000; div.rn.f32 %r112,%r113,%r63; .loc 1 169 65 neg.f32 %r114,%r112; fma.rn.f32 %r115,%r109,%r111,%r114; .loc 1 169 29 mul.f32 %r116,%r115,0f3f22f983; .loc 1 169 24 fma.rn.f32 %r62,%r41,%r63,%r116; $L19: .loc 1 170 1 mov.f32 %value,%r62; st.param.f32 [%value_out],%value; ret; } lib_a-ef_jn.o/ 1591654539 399 399 100644 12827 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r28; .reg .f32 %r32; .reg .u32 %r34; .reg .f32 %r36; .reg .f32 %r37; .reg .f32 %r41; .reg .f32 %r45; .reg .f32 %r46; .reg .u32 %r49; .reg .f32 %r51; .reg .u32 %r52; .reg .f32 %r53; .reg .f32 %r55; .reg .f32 %r56; .reg .f32 %r58; .reg .f32 %r59; .reg .u32 %r60; .reg .u32 %r61; .reg .u32 %r62; .reg .f32 %r65; .reg .f32 %r66; .reg .f32 %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .f32 %r70; .reg .f32 %r74; .reg .u32 %r75; .reg .f32 %r77; .reg .f32 %r78; .reg .u32 %r81; .reg .u32 %r83; .reg .u32 %r84; .reg .f32 %r86; .reg .f32 %r87; .reg .u32 %r88; .reg .f32 %r89; .reg .pred %r90; .reg .pred %r91; .reg .pred %r92; .reg .f32 %r94; .reg .pred %r95; .reg .f32 %r97; .reg .u32 %r99; .reg .f32 %r101; .reg .u32 %r103; .reg .u32 %r104; .reg .u32 %r106; .reg .u32 %r107; .reg .u16 %r108; .reg .u16 %r109; .reg .u16 %r110; .reg .u32 %r111; .reg .u16 %r112; .reg .pred %r113; .reg .pred %r114; .reg .f32 %r116; .reg .f32 %r118; .reg .f32 %r120; .reg .f32 %r121; .reg .f32 %r122; .reg .pred %r123; .reg .pred %r124; .reg .pred %r125; .reg .f32 %r126; .reg .pred %r127; .reg .f32 %r129; .reg .f32 %r130; .reg .pred %r131; .reg .f32 %r132; .reg .pred %r133; .reg .u32 %r134; .reg .u32 %r136; .reg .f32 %r138; .reg .f32 %r139; .reg .f32 %r140; .reg .pred %r141; .reg .f32 %r143; .reg .f32 %r144; .reg .f32 %r146; .reg .f32 %r147; .reg .pred %r148; .reg .f32 %r149; .reg .f32 %r150; .reg .pred %r151; .reg .f32 %r152; .reg .f32 %r153; .reg .pred %r154; .reg .pred %r155; .reg .f32 %r157; .reg .f32 %r158; .reg .pred %r159; .reg .f32 %r161; mov.u32 %r88,%ar0; mov.f32 %r89,%ar1; .loc 1 47 2 mov.b32 %r60,%r89; .loc 1 48 5 and.b32 %r61,%r60,2147483647; .loc 1 50 4 setp.le.s32 %r90,%r61,2139095040; @ %r90 bra $L2; .loc 1 50 35 add.f32 %r87,%r89,%r89; bra $L1; $L2: .loc 1 51 4 setp.ge.s32 %r91,%r88,0; @ %r91 bra $L4; .loc 1 52 5 neg.s32 %r88,%r88; .loc 1 53 5 neg.f32 %r89,%r89; .loc 1 54 6 add.u32 %r60,%r60,-2147483648; bra $L5; $L4: .loc 1 56 4 setp.ne.u32 %r92,%r88,0; @ %r92 bra $L5; .loc 1 56 18 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r89; call (%value_in),__ieee754_j0f,(%out_arg1); ld.param.f32 %r94,[%value_in]; } mov.f32 %r87,%r94; bra $L1; $L5: .loc 1 57 4 setp.ne.u32 %r95,%r88,1; @ %r95 bra $L6; .loc 1 57 18 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r89; call (%value_in),__ieee754_j1f,(%out_arg1); ld.param.f32 %r97,[%value_in]; } mov.f32 %r87,%r97; bra $L1; $L6: .loc 1 58 6 shr.u32 %r99,%r60,31; and.b32 %r62,%r99,%r88; .loc 1 59 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r89; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r101,[%value_in]; } .loc 1 60 5 set.u32.eq.u32 %r103,%r61,0; neg.s32 %r104,%r103; .loc 1 60 28 set.u32.eq.u32 %r106,%r61,2139095040; neg.s32 %r107,%r106; .loc 1 60 26 cvt.u16.u32 %r109,%r104; cvt.u16.u32 %r110,%r107; or.b16 %r108,%r109,%r110; .loc 1 60 4 cvt.u32.u16 %r111,%r108; cvt.u16.u8 %r112,%r111; setp.ne.u16 %r113,%r112,0; @ %r113 bra $L26; .loc 1 62 10 cvt.rn.f32.s32 %r28,%r88; .loc 1 62 9 setp.le.f32 %r114,%r28,%r101; @ ! %r114 bra $L42; .loc 1 64 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r101; call (%value_in),__ieee754_j0f,(%out_arg1); ld.param.f32 %r116,[%value_in]; } mov.f32 %r32,%r116; .loc 1 65 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r101; call (%value_in),__ieee754_j1f,(%out_arg1); ld.param.f32 %r118,[%value_in]; } mov.f32 %r36,%r118; add.u32 %r81,%r88,%r88; mov.u32 %r83,2; $L10: .loc 1 68 10 cvt.rn.f32.s32 %r120,%r83; .loc 1 68 22 div.rn.f32 %r121,%r120,%r101; .loc 1 68 5 neg.f32 %r122,%r32; fma.rn.f32 %r87,%r121,%r36,%r122; add.u32 %r83,%r83,2; mov.f32 %r32,%r36; mov.f32 %r36,%r87; .loc 1 66 6 setp.ne.u32 %r123,%r81,%r83; @ %r123 bra $L10; bra $L7; $L42: .loc 1 72 8 setp.gt.s32 %r124,%r61,813694975; @ %r124 bra $L11; .loc 1 76 5 setp.gt.s32 %r125,%r88,33; @ %r125 bra $L27; .loc 1 79 12 mul.f32 %r65,%r101,0f3f000000; add.u32 %r68,%r88,1; .loc 1 79 30 mov.f32 %r66,%r65; .loc 1 80 13 mov.f32 %r56,0f3f800000; .loc 1 80 19 mov.u32 %r49,2; $L12: .loc 1 81 9 cvt.rn.f32.s32 %r126,%r49; .loc 1 81 6 mul.f32 %r56,%r56,%r126; .loc 1 82 6 mul.f32 %r66,%r66,%r65; .loc 1 80 28 add.u32 %r49,%r49,1; .loc 1 80 7 setp.ne.u32 %r127,%r49,%r68; @ %r127 bra $L12; div.rn.f32 %r87,%r66,%r56; bra $L7; $L11: .loc 1 118 10 add.u32 %r34,%r88,%r88; .loc 1 118 13 cvt.rn.f32.s32 %r129,%r34; .loc 1 118 6 div.rn.f32 %r37,%r129,%r101; .loc 1 118 26 mov.f32 %r130,0f40000000; div.rn.f32 %r67,%r130,%r101; .loc 1 119 14 add.f32 %r70,%r37,%r67; .loc 1 119 24 fma.rn.f32 %r53,%r37,%r70,0fbf800000; .loc 1 120 8 setp.lt.f32 %r131,%r53,0f4e6e6b28; @ ! %r131 bra $L43; .loc 1 119 45 mov.u32 %r69,1; $L15: .loc 1 121 6 add.u32 %r69,%r69,1; .loc 1 121 14 add.f32 %r70,%r70,%r67; .loc 1 122 8 neg.f32 %r132,%r37; mov.f32 %r37,%r53; .loc 1 124 7 fma.rn.f32 %r53,%r53,%r70,%r132; .loc 1 120 8 setp.lt.f32 %r133,%r53,0f4e6e6b28; @ %r133 bra $L15; bra $L44; $L43: .loc 1 127 23 add.u32 %r134,%r88,1; .loc 1 127 17 add.u32 %r52,%r134,%r134; bra $L17; $L44: .loc 1 127 23 add.u32 %r136,%r69,%r88; .loc 1 127 17 add.u32 %r52,%r136,%r136; $L17: .loc 1 119 45 mov.f32 %r58,0f00000000; .loc 1 127 44 mov.f32 %r140,0f3f800000; $L18: .loc 1 127 52 cvt.rn.f32.s32 %r138,%r52; div.rn.f32 %r139,%r138,%r101; .loc 1 127 54 sub.f32 %r41,%r139,%r58; .loc 1 127 44 div.rn.f32 %r58,%r140,%r41; .loc 1 127 36 add.u32 %r52,%r52,-2; .loc 1 127 3 setp.le.s32 %r141,%r34,%r52; @ %r141 bra $L18; .loc 1 140 13 mul.f32 %r143,%r28,%r67; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r143; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r144,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r144; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r146,[%value_in]; } add.u32 %r75,%r88,-1; add.u32 %r84,%r34,-2; .loc 1 140 7 mul.f32 %r147,%r28,%r146; .loc 1 141 5 setp.lt.f32 %r148,%r147,0f42b17180; @ ! %r148 bra $L45; .loc 1 142 23 cvt.rn.f32.s32 %r74,%r84; .loc 1 127 44 mov.f32 %r59,%r58; .loc 1 129 5 mov.f32 %r86,0f3f800000; .loc 1 147 7 mov.f32 %r150,0f40000000; bra $L21; $L28: .loc 1 145 7 mov.f32 %r86,%r55; $L21: .loc 1 144 6 mul.f32 %r149,%r86,%r74; .loc 1 145 10 div.rn.f32 %r45,%r149,%r101; .loc 1 145 7 sub.f32 %r55,%r45,%r59; .loc 1 147 7 sub.f32 %r74,%r74,%r150; .loc 1 142 42 add.u32 %r75,%r75,-1; mov.f32 %r59,%r86; .loc 1 142 11 setp.ne.u32 %r151,%r75,0; @ %r151 bra $L28; bra $L22; $L45: .loc 1 150 23 cvt.rn.f32.s32 %r78,%r84; .loc 1 127 44 mov.f32 %r51,%r58; .loc 1 129 5 mov.f32 %r55,0f3f800000; .loc 1 155 7 mov.f32 %r153,0f40000000; .loc 1 160 11 mov.f32 %r161,%r55; $L25: .loc 1 152 6 mul.f32 %r152,%r55,%r78; .loc 1 153 10 div.rn.f32 %r46,%r152,%r101; .loc 1 153 7 sub.f32 %r77,%r46,%r51; .loc 1 155 7 sub.f32 %r78,%r78,%r153; .loc 1 157 6 setp.gt.f32 %r154,%r77,0f501502f9; @ ! %r154 bra $L46; .loc 1 158 10 div.rn.f32 %r51,%r55,%r77; .loc 1 159 10 div.rn.f32 %r58,%r58,%r77; .loc 1 160 11 mov.f32 %r55,%r161; bra $L23; $L46: mov.f32 %r51,%r55; .loc 1 153 7 mov.f32 %r55,%r77; $L23: .loc 1 150 42 add.u32 %r75,%r75,-1; .loc 1 150 11 setp.ne.u32 %r155,%r75,0; @ %r155 bra $L25; $L22: .loc 1 164 14 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r101; call (%value_in),__ieee754_j0f,(%out_arg1); ld.param.f32 %r157,[%value_in]; } .loc 1 164 13 mul.f32 %r158,%r157,%r58; .loc 1 164 9 div.rn.f32 %r87,%r158,%r55; bra $L7; $L26: .loc 1 61 8 mov.f32 %r87,0f00000000; bra $L7; $L27: mov.f32 %r87,0f00000000; $L7: .loc 1 167 4 setp.eq.u32 %r159,%r62,0; @ %r159 bra $L1; .loc 1 167 20 neg.f32 %r87,%r87; $L1: .loc 1 168 1 mov.f32 %value,%r87; 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 .u32 %r32; .reg .u32 %r33; .reg .u32 %r35; .reg .f32 %r37; .reg .u32 %r40; .reg .f32 %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 %r75; .reg .u32 %r76; .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; mov.u32 %r45,%ar0; mov.f32 %r46,%ar1; .loc 1 181 2 mov.b32 %r32,%r46; .loc 1 182 5 and.b32 %r33,%r32,2147483647; .loc 1 184 4 setp.le.s32 %r47,%r33,2139095040; @ %r47 bra $L48; .loc 1 184 35 add.f32 %r44,%r46,%r46; bra $L47; $L48: .loc 1 185 4 setp.ne.u32 %r48,%r33,0; @ %r48 bra $L50; .loc 1 185 39 mov.f32 %r49,0fbf800000; div.rn.f32 %r44,%r49,0f00000000; bra $L47; $L50: .loc 1 186 4 setp.ge.s32 %r50,%r32,0; @ %r50 bra $L51; .loc 1 186 22 mov.f32 %r51,0f00000000; div.rn.f32 %r44,%r51,0f00000000; bra $L47; $L51: .loc 1 188 4 setp.ge.s32 %r52,%r45,0; @ %r52 bra $L52; .loc 1 189 5 neg.s32 %r45,%r45; .loc 1 190 20 add.u32 %r53,%r45,%r45; and.b32 %r54,%r53,2; .loc 1 190 8 mov.u32 %r55,1; sub.u32 %r35,%r55,%r54; bra $L53; $L52: .loc 1 192 4 setp.ne.u32 %r56,%r45,0; @ %r56 bra $L57; .loc 1 192 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 187 7 mov.u32 %r35,1; $L53: .loc 1 193 4 setp.ne.u32 %r59,%r45,1; @ %r59 bra $L54; .loc 1 193 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 193 22 cvt.rn.f32.s32 %r62,%r35; mul.f32 %r44,%r62,%r61; bra $L47; $L54: .loc 1 194 4 setp.eq.u32 %r63,%r33,2139095040; @ %r63 bra $L58; .loc 1 196 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 %r41,%r65; .loc 1 197 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 %r37,%r67; .loc 1 200 2 mov.b32 %r68,%r37; setp.eq.u32 %r69,%r68,-8388608; @ %r69 bra $L59; .loc 1 200 7 mov.u32 %r40,1; bra $L56; $L60: .loc 1 202 8 mov.f32 %r37,%r44; $L56: .loc 1 202 20 add.u32 %r70,%r40,%r40; .loc 1 202 11 cvt.rn.f32.s32 %r71,%r70; .loc 1 202 23 div.rn.f32 %r72,%r71,%r46; .loc 1 202 8 neg.f32 %r73,%r41; fma.rn.f32 %r44,%r72,%r37,%r73; .loc 1 200 31 add.u32 %r40,%r40,1; mov.f32 %r41,%r37; .loc 1 200 11 set.u32.lt.s32 %r75,%r40,%r45; neg.s32 %r76,%r75; .loc 1 200 17 mov.b32 %r78,%r44; set.u32.ne.u32 %r79,%r78,-8388608; neg.s32 %r80,%r79; .loc 1 200 13 cvt.u16.u32 %r82,%r76; cvt.u16.u32 %r83,%r80; and.b16 %r81,%r82,%r83; .loc 1 200 2 cvt.u32.u16 %r84,%r81; cvt.u16.u8 %r85,%r84; setp.ne.u16 %r86,%r85,0; @ %r86 bra $L60; bra $L55; $L59: .loc 1 197 6 mov.f32 %r44,%r67; $L55: .loc 1 206 4 setp.eq.u32 %r87,%r35,1; @ %r87 bra $L47; .loc 1 206 35 neg.f32 %r44,%r44; bra $L47; $L58: .loc 1 194 39 mov.f32 %r44,0f00000000; $L47: .loc 1 207 1 mov.f32 %value,%r44; st.param.f32 [%value_out],%value; ret; } lib_a-ef_log.o/ 1591654539 399 399 100644 5369 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r50; .reg .u32 %r51; .reg .u32 %r55; .reg .u32 %r56; .reg .u32 %r57; .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 .u32 %r67; .reg .f32 %r68; .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 .f32 %r109; .reg .f32 %r110; .reg .pred %r111; .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 .u32 %r123; .reg .u32 %r124; .reg .u32 %r125; .reg .pred %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 .f32 %r135; .reg .pred %r136; .reg .f32 %r138; .reg .f32 %r139; .reg .f32 %r140; mov.f32 %r85,%ar0; .loc 1 50 2 mov.b32 %r51,%r85; .loc 1 53 6 and.b32 %r86,%r51,2147483647; .loc 1 53 5 setp.ne.u32 %r87,%r86,0; @ %r87 bra $L2; .loc 1 54 19 mov.f32 %r88,0fcc000000; div.rn.f32 %r84,%r88,0f00000000; bra $L1; $L2: .loc 1 55 12 setp.ge.s32 %r89,%r51,0; @ %r89 bra $L4; .loc 1 55 28 sub.f32 %r90,%r85,%r85; .loc 1 55 31 div.rn.f32 %r84,%r90,0f00000000; bra $L1; $L4: .loc 1 56 5 setp.le.s32 %r91,%r51,2139095039; @ %r91 bra $L5; .loc 1 56 40 add.f32 %r84,%r85,%r85; bra $L1; $L5: .loc 1 57 5 setp.gt.s32 %r92,%r51,8388607; @ %r92 bra $L13; .loc 1 58 17 mul.f32 %r93,%r85,0f4c000000; .loc 1 59 6 mov.b32 %r51,%r93; .loc 1 58 8 mov.u32 %r50,-25; bra $L6; $L13: .loc 1 52 3 mov.u32 %r50,0; $L6: .loc 1 61 10 shr.s32 %r94,%r51,23; .loc 1 61 15 add.u32 %r95,%r94,-127; .loc 1 61 4 add.u32 %r55,%r95,%r50; .loc 1 62 5 and.b32 %r56,%r51,8388607; .loc 1 63 9 add.u32 %r96,%r56,4913952; .loc 1 63 4 and.b32 %r57,%r96,8388608; .loc 1 65 9 shr.s32 %r97,%r57,23; .loc 1 65 4 add.u32 %r59,%r97,%r55; .loc 1 64 2 xor.b32 %r98,%r57,1065353216; or.b32 %r99,%r98,%r56; .loc 1 66 4 mov.b32 %r100,%r99; mov.f32 %r101,0f3f800000; sub.f32 %r60,%r100,%r101; .loc 1 67 20 add.u32 %r102,%r56,15; .loc 1 67 25 and.b32 %r103,%r102,8388592; .loc 1 67 4 setp.ne.u32 %r104,%r103,0; @ %r104 bra $L7; .loc 1 68 14 setp.neu.f32 %r105,%r60,0f00000000; @ %r105 bra $L8; .loc 1 68 28 setp.eq.u32 %r106,%r59,0; @ %r106 bra $L14; .loc 1 68 57 cvt.rn.f32.s32 %r61,%r59; .loc 1 69 52 mul.f32 %r107,%r61,0f3717f7d1; .loc 1 69 49 fma.rn.f32 %r84,%r61,0f3f317180,%r107; bra $L1; $L8: .loc 1 70 25 fma.rn.f32 %r109,%r60,0fbeaaaaab,0f3f000000; .loc 1 70 11 mul.f32 %r110,%r60,%r60; .loc 1 70 8 mul.f32 %r62,%r109,%r110; .loc 1 71 8 setp.ne.u32 %r111,%r59,0; @ %r111 bra $L9; .loc 1 71 23 sub.f32 %r84,%r60,%r62; bra $L1; $L9: .loc 1 71 35 cvt.rn.f32.s32 %r63,%r59; .loc 1 72 32 fma.rn.f32 %r113,%r63,0fb717f7d1,%r62; .loc 1 72 43 sub.f32 %r114,%r113,%r60; .loc 1 72 28 neg.f32 %r115,%r114; fma.rn.f32 %r84,%r63,0f3f317180,%r115; bra $L1; $L7: .loc 1 74 20 add.f32 %r116,%r60,0f40000000; .loc 1 74 5 div.rn.f32 %r64,%r60,%r116; .loc 1 75 5 cvt.rn.f32.s32 %r65,%r59; .loc 1 76 4 mul.f32 %r66,%r64,%r64; .loc 1 77 4 add.u32 %r67,%r56,-3187664; .loc 1 78 4 mul.f32 %r68,%r66,%r66; .loc 1 80 19 fma.rn.f32 %r117,%r68,0f3e1cd04f,0f3e638e29; .loc 1 80 12 fma.rn.f32 %r118,%r117,%r68,0f3ecccccd; .loc 1 81 26 fma.rn.f32 %r119,%r68,0f3e178897,0f3e3a3325; .loc 1 81 19 fma.rn.f32 %r120,%r119,%r68,0f3e924925; .loc 1 81 12 fma.rn.f32 %r121,%r120,%r68,0f3f2aaaab; .loc 1 81 4 mul.f32 %r122,%r121,%r66; .loc 1 83 4 fma.rn.f32 %r72,%r118,%r68,%r122; .loc 1 79 4 mov.u32 %r124,3523208; sub.u32 %r123,%r124,%r56; .loc 1 82 4 or.b32 %r125,%r123,%r67; .loc 1 84 4 setp.le.s32 %r126,%r125,0; @ %r126 bra $L10; .loc 1 85 21 mul.f32 %r127,%r60,0f3f000000; .loc 1 85 10 mul.f32 %r73,%r127,%r60; add.f32 %r128,%r72,%r73; mul.f32 %r83,%r128,%r64; .loc 1 86 8 setp.ne.u32 %r129,%r59,0; @ %r129 bra $L11; .loc 1 86 29 sub.f32 %r130,%r73,%r83; .loc 1 86 23 sub.f32 %r84,%r60,%r130; bra $L1; $L11: .loc 1 87 43 fma.rn.f32 %r131,%r65,0f3717f7d1,%r83; .loc 1 87 31 sub.f32 %r132,%r73,%r131; .loc 1 87 55 sub.f32 %r133,%r132,%r60; .loc 1 87 24 neg.f32 %r134,%r133; fma.rn.f32 %r84,%r65,0f3f317180,%r134; bra $L1; $L10: sub.f32 %r135,%r60,%r72; mul.f32 %r81,%r135,%r64; .loc 1 89 8 setp.ne.u32 %r136,%r59,0; @ %r136 bra $L12; .loc 1 89 23 sub.f32 %r84,%r60,%r81; bra $L1; $L12: .loc 1 90 34 fma.rn.f32 %r138,%r65,0fb717f7d1,%r81; .loc 1 90 45 sub.f32 %r139,%r138,%r60; .loc 1 90 24 neg.f32 %r140,%r139; fma.rn.f32 %r84,%r65,0f3f317180,%r140; bra $L1; $L14: .loc 1 68 42 mov.f32 %r84,0f00000000; $L1: .loc 1 92 1 mov.f32 %value,%r84; st.param.f32 [%value_out],%value; ret; } /175 1591654539 399 399 100644 2515 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %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; .reg .f32 %r65; 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 %r65,%r42,0f355427db,%r64; .loc 1 61 11 fma.rn.f32 %r45,%r42,0f3e9a2080,%r65; $L1: .loc 1 62 1 mov.f32 %value,%r45; st.param.f32 [%value_out],%value; ret; } lib_a-ef_pow.o/ 1591654539 399 399 100644 18320 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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" // BEGIN GLOBAL FUNCTION DECL: nanf .extern .func (.param .f32 %value_out) nanf (.param .u64 %in_ar0); // 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: scalbnf .extern .func (.param .f32 %value_out) scalbnf (.param .f32 %in_ar0, .param .u32 %in_ar1); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[1] = {0 }; // 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 .f32 %r32; .reg .u32 %r33; .reg .u32 %r35; .reg .f32 %r38; .reg .u32 %r43; .reg .u32 %r65; .reg .u32 %r66; .reg .u32 %r70; .reg .u32 %r77; .reg .u32 %r102; .reg .f32 %r117; .reg .f32 %r119; .reg .f32 %r120; .reg .f32 %r121; .reg .f32 %r122; .reg .f32 %r123; .reg .u32 %r124; .reg .u32 %r125; .reg .u32 %r126; .reg .u32 %r127; .reg .u32 %r128; .reg .u32 %r129; .reg .u32 %r132; .reg .u32 %r134; .reg .u32 %r136; .reg .f32 %r137; .reg .f32 %r139; .reg .u32 %r144; .reg .f32 %r148; .reg .f32 %r149; .reg .f32 %r150; .reg .f32 %r151; .reg .f32 %r153; .reg .f32 %r154; .reg .f32 %r156; .reg .f32 %r157; .reg .f32 %r158; .reg .f32 %r160; .reg .f32 %r162; .reg .f32 %r164; .reg .f32 %r166; .reg .f32 %r167; .reg .f32 %r169; .reg .f32 %r170; .reg .f32 %r171; .reg .u32 %r173; .reg .u32 %r174; .reg .u32 %r175; .reg .f32 %r176; .reg .f32 %r177; .reg .f32 %r178; .reg .f32 %r179; .reg .f32 %r180; .reg .f32 %r181; .reg .f32 %r182; .reg .f32 %r184; .reg .u32 %r185; .reg .u32 %r186; .reg .u32 %r188; .reg .u32 %r208; .reg .f32 %r209; .reg .u32 %r210; .reg .f32 %r211; .reg .f32 %r212; .reg .f32 %r213; .reg .f32 %r214; .reg .f32 %r215; .reg .pred %r216; .reg .u32 %r218; .reg .u32 %r219; .reg .u32 %r221; .reg .u32 %r222; .reg .u16 %r223; .reg .u16 %r224; .reg .u16 %r225; .reg .u32 %r226; .reg .u16 %r227; .reg .pred %r228; .reg .pred %r229; .reg .u64 %r230; .reg .f32 %r231; .reg .pred %r233; .reg .pred %r234; .reg .u32 %r235; .reg .u32 %r237; .reg .u32 %r238; .reg .pred %r239; .reg .u32 %r240; .reg .u32 %r241; .reg .pred %r242; .reg .pred %r243; .reg .pred %r244; .reg .pred %r245; .reg .pred %r246; .reg .pred %r247; .reg .pred %r248; .reg .f32 %r249; .reg .pred %r250; .reg .u32 %r252; .reg .u32 %r253; .reg .u32 %r255; .reg .u32 %r256; .reg .u16 %r258; .reg .u16 %r259; .reg .u16 %r260; .reg .u32 %r261; .reg .u16 %r262; .reg .pred %r263; .reg .f32 %r265; .reg .f32 %r267; .reg .u32 %r268; .reg .u32 %r270; .reg .u32 %r271; .reg .u32 %r273; .reg .u32 %r274; .reg .u16 %r275; .reg .u16 %r276; .reg .u16 %r277; .reg .u32 %r278; .reg .u16 %r279; .reg .pred %r280; .reg .pred %r281; .reg .f32 %r282; .reg .u32 %r284; .reg .u32 %r285; .reg .pred %r286; .reg .pred %r287; .reg .u32 %r289; .reg .pred %r290; .reg .pred %r291; .reg .pred %r292; .reg .pred %r293; .reg .f32 %r294; .reg .pred %r295; .reg .pred %r296; .reg .f32 %r297; .reg .f32 %r298; .reg .f32 %r299; .reg .f32 %r300; .reg .f32 %r301; .reg .f32 %r302; .reg .f32 %r303; .reg .f32 %r305; .reg .f32 %r306; .reg .u32 %r307; .reg .f32 %r309; .reg .u32 %r310; .reg .pred %r311; .reg .f32 %r312; .reg .u32 %r313; .reg .u32 %r314; .reg .pred %r315; .reg .pred %r316; .reg .f32 %r317; .reg .f32 %r318; .reg .u32 %r319; .reg .u32 %r320; .reg .u32 %r321; .reg .u32 %r322; .reg .u32 %r323; .reg .u32 %r324; .reg .f32 %r325; .reg .f32 %r327; .reg .f32 %r328; .reg .f32 %r329; .reg .f32 %r330; .reg .f32 %r331; .reg .f32 %r332; .reg .f32 %r333; .reg .f32 %r334; .reg .f32 %r335; .reg .f32 %r336; .reg .f32 %r337; .reg .f32 %r338; .reg .f32 %r339; .reg .f32 %r340; .reg .u32 %r341; .reg .f32 %r343; .reg .f32 %r344; .reg .f32 %r345; .reg .f32 %r346; .reg .f32 %r347; .reg .f32 %r348; .reg .u32 %r349; .reg .f32 %r351; .reg .f32 %r352; .reg .f32 %r353; .reg .f32 %r354; .reg .f32 %r355; .reg .f32 %r356; .reg .f32 %r357; .reg .u32 %r358; .reg .f32 %r360; .reg .f32 %r361; .reg .f32 %r362; .reg .u32 %r363; .reg .u32 %r364; .reg .pred %r365; .reg .u32 %r366; .reg .f32 %r367; .reg .f32 %r368; .reg .pred %r369; .reg .pred %r370; .reg .f32 %r371; .reg .pred %r372; .reg .f32 %r373; .reg .f32 %r374; .reg .pred %r375; .reg .f32 %r376; .reg .pred %r377; .reg .f32 %r378; .reg .pred %r379; .reg .f32 %r380; .reg .pred %r381; .reg .f32 %r382; .reg .pred %r383; .reg .u32 %r384; .reg .u32 %r385; .reg .u32 %r386; .reg .u32 %r387; .reg .u32 %r388; .reg .u32 %r389; .reg .u32 %r390; .reg .u32 %r391; .reg .u32 %r392; .reg .u32 %r393; .reg .u32 %r394; .reg .u32 %r395; .reg .pred %r396; .reg .f32 %r397; .reg .u32 %r398; .reg .f32 %r399; .reg .f32 %r400; .reg .f32 %r401; .reg .f32 %r403; .reg .f32 %r404; .reg .f32 %r405; .reg .f32 %r406; .reg .f32 %r407; .reg .f32 %r408; .reg .f32 %r409; .reg .f32 %r410; .reg .f32 %r411; .reg .f32 %r412; .reg .f32 %r413; .reg .f32 %r414; .reg .f32 %r415; .reg .pred %r417; .reg .f32 %r420; .reg .pred %r422; mov.f32 %r214,%ar0; mov.f32 %r215,%ar1; .loc 1 72 2 mov.b32 %r33,%r215; .loc 1 73 26 and.b32 %r132,%r33,2147483647; .loc 1 76 4 setp.eq.u32 %r216,%r132,0; @ %r216 bra $L36; .loc 1 71 2 mov.b32 %r134,%r214; .loc 1 73 5 and.b32 %r128,%r134,2147483647; .loc 1 79 5 set.u32.gt.s32 %r218,%r128,2139095040; neg.s32 %r219,%r218; .loc 1 80 5 set.u32.gt.s32 %r221,%r132,2139095040; neg.s32 %r222,%r221; .loc 1 79 26 cvt.u16.u32 %r224,%r219; cvt.u16.u32 %r225,%r222; or.b16 %r223,%r224,%r225; .loc 1 79 4 cvt.u32.u16 %r226,%r223; cvt.u16.u8 %r227,%r226; setp.eq.u16 %r228,%r227,0; @ %r228 bra $L3; .loc 1 81 8 setp.eq.u32 %r229,%r128,1065353216; @ %r229 bra $L37; .loc 1 82 18 cvta.const.u64 %r230,$LC0; { .param .f32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r230; call (%value_in),nanf,(%out_arg1); ld.param.f32 %r231,[%value_in]; } mov.f32 %r213,%r231; bra $L1; $L3: .loc 1 91 4 setp.ge.s32 %r422,%r134,0; @ %r422 bra $L38; .loc 1 92 8 setp.gt.s32 %r233,%r132,1266679807; @ %r233 bra $L39; .loc 1 93 13 setp.le.s32 %r234,%r132,1065353215; @ %r234 bra $L40; .loc 1 94 10 shr.s32 %r235,%r132,23; .loc 1 95 14 mov.u32 %r237,150; sub.u32 %r26,%r237,%r235; .loc 1 95 5 shr.s32 %r136,%r132,%r26; .loc 1 96 8 shl.b32 %r238,%r136,%r26; .loc 1 96 5 setp.ne.u32 %r239,%r238,%r132; @ %r239 bra $L41; .loc 1 96 36 and.b32 %r240,%r136,1; .loc 1 96 30 mov.u32 %r241,2; sub.u32 %r124,%r241,%r240; bra $L6; $L38: .loc 1 90 10 mov.u32 %r124,0; bra $L4; $L39: .loc 1 92 32 mov.u32 %r124,2; $L4: .loc 1 101 5 setp.ne.u32 %r242,%r132,2139095040; @ %r242 bra $L6; .loc 1 102 9 setp.eq.u32 %r243,%r128,1065353216; @ %r243 bra $L42; .loc 1 104 14 setp.le.s32 %r244,%r128,1065353216; @ %r244 bra $L7; .loc 1 105 27 setp.ge.s32 %r245,%r33,0; @ %r245 bra $L43; $L8: mov.f32 %r213,0f00000000; bra $L1; $L7: .loc 1 107 26 setp.ge.s32 %r246,%r33,0; @ %r246 bra $L8; neg.f32 %r213,%r215; bra $L1; $L6: .loc 1 109 4 setp.ne.u32 %r247,%r132,1065353216; @ %r247 bra $L9; .loc 1 110 8 setp.ge.s32 %r248,%r33,0; @ %r248 bra $L44; .loc 1 110 25 mov.f32 %r249,0f3f800000; div.rn.f32 %r213,%r249,%r214; bra $L1; $L9: .loc 1 112 4 setp.ne.u32 %r250,%r33,1073741824; @ %r250 bra $L10; .loc 1 112 29 mul.f32 %r213,%r214,%r214; bra $L1; $L10: .loc 1 113 4 set.u32.eq.u32 %r252,%r33,1056964608; neg.s32 %r253,%r252; .loc 1 114 8 not.b32 %r255,%r134; shr.u32 %r256,%r255,31; cvt.u16.u32 %r259,%r253; cvt.u16.u32 %r260,%r256; and.b16 %r258,%r259,%r260; cvt.u32.u16 %r261,%r258; cvt.u16.u8 %r262,%r261; setp.eq.u16 %r263,%r262,0; @ %r263 bra $L11; .loc 1 115 13 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r214; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r265,[%value_in]; } mov.f32 %r213,%r265; bra $L1; $L11: .loc 1 118 9 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r214; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r267,[%value_in]; } mov.f32 %r213,%r267; .loc 1 120 53 and.b32 %r268,%r134,1073741823; set.u32.eq.u32 %r270,%r268,1065353216; neg.s32 %r271,%r270; .loc 1 120 32 set.u32.eq.u32 %r273,%r128,0; neg.s32 %r274,%r273; .loc 1 120 53 cvt.u16.u32 %r276,%r271; cvt.u16.u32 %r277,%r274; or.b16 %r275,%r276,%r277; cvt.u32.u16 %r278,%r275; cvt.u16.u8 %r279,%r278; setp.eq.u16 %r280,%r279,0; @ %r280 bra $L12; .loc 1 122 8 setp.ge.s32 %r281,%r33,0; @ %r281 bra $L13; .loc 1 122 17 mov.f32 %r282,0f3f800000; div.rn.f32 %r213,%r282,%r213; $L13: .loc 1 123 8 @ %r422 bra $L1; .loc 1 124 10 add.u32 %r284,%r128,-1065353216; .loc 1 124 22 or.b32 %r285,%r284,%r124; .loc 1 124 5 setp.ne.u32 %r286,%r285,0; @ %r286 bra $L14; .loc 1 125 13 sub.f32 %r32,%r213,%r213; .loc 1 125 9 div.rn.f32 %r213,%r32,%r32; bra $L1; $L14: .loc 1 126 12 setp.ne.u32 %r287,%r124,1; @ %r287 bra $L1; .loc 1 127 9 neg.f32 %r213,%r213; bra $L1; $L12: .loc 1 133 27 set.u32.ge.s32 %r35,%r134,0; .loc 1 133 30 or.b32 %r289,%r124,%r35; .loc 1 133 4 setp.ne.u32 %r290,%r289,0; @ %r290 bra $L15; .loc 1 133 52 sub.f32 %r38,%r214,%r214; .loc 1 133 55 div.rn.f32 %r213,%r38,%r38; bra $L1; $L15: .loc 1 136 4 setp.le.s32 %r291,%r132,1291845632; @ %r291 bra $L16; .loc 1 138 8 setp.gt.s32 %r292,%r128,1065353207; @ %r292 bra $L17; .loc 1 138 48 setp.ge.s32 %r293,%r33,0; @ %r293 bra $L8; $L19: mov.f32 %r294,0f7149f2ca; mul.f32 %r213,%r294,0f7149f2ca; bra $L1; $L17: .loc 1 139 8 setp.le.s32 %r295,%r128,1065353223; @ %r295 bra $L18; .loc 1 139 48 setp.gt.s32 %r296,%r33,0; @ %r296 bra $L19; bra $L8; $L18: .loc 1 142 8 mov.f32 %r297,0f3f800000; sub.f32 %r137,%r267,%r297; .loc 1 143 52 neg.f32 %r298,%r137; fma.rn.f32 %r299,%r298,0f3e800000,0f3eaaaaab; .loc 1 143 27 neg.f32 %r300,%r299; fma.rn.f32 %r301,%r300,%r137,0f3f000000; .loc 1 143 12 mul.f32 %r302,%r137,%r137; .loc 1 143 8 mul.f32 %r303,%r301,%r302; .loc 1 145 8 mul.f32 %r305,%r303,0fbfb8aa3b; fma.rn.f32 %r139,%r137,0f36eca570,%r305; .loc 1 146 9 fma.rn.f32 %r306,%r137,0f3fb8aa00,%r139; .loc 1 148 6 mov.b32 %r307,%r306; and.b32 %r43,%r307,-4096; mov.b32 %r121,%r43; .loc 1 149 16 fma.rn.f32 %r309,%r298,0f3fb8aa00,%r121; .loc 1 149 9 sub.f32 %r122,%r139,%r309; bra $L20; $L16: .loc 1 154 8 and.b32 %r310,%r134,2139095040; setp.ne.u32 %r311,%r310,0; @ %r311 bra $L45; .loc 1 155 7 mul.f32 %r312,%r267,0f4b800000; .loc 1 155 26 mov.b32 %r128,%r312; .loc 1 155 19 mov.u32 %r125,-24; bra $L21; $L45: .loc 1 152 8 mov.u32 %r125,0; $L21: .loc 1 156 17 shr.s32 %r313,%r128,23; .loc 1 156 22 add.u32 %r314,%r313,-127; .loc 1 156 9 add.u32 %r126,%r314,%r125; .loc 1 157 9 and.b32 %r144,%r128,8388607; .loc 1 159 9 or.b32 %r129,%r144,1065353216; .loc 1 160 8 setp.le.s32 %r315,%r144,1885297; @ %r315 bra $L46; .loc 1 161 13 setp.le.s32 %r316,%r144,6140886; @ %r316 bra $L47; .loc 1 162 17 add.u32 %r126,%r126,1; .loc 1 162 24 add.u32 %r129,%r129,-8388608; mov.f32 %r212,0f00000000; mov.f32 %r211,%r212; mov.u32 %r210,0; mov.f32 %r209,0f3f800000; bra $L22; $L46: mov.f32 %r212,0f00000000; mov.f32 %r211,%r212; mov.u32 %r210,0; mov.f32 %r209,0f3f800000; bra $L22; $L47: mov.f32 %r212,0f3f15c000; mov.f32 %r211,0f35d1cfdc; mov.u32 %r210,2097152; mov.f32 %r209,0f3fc00000; $L22: .loc 1 163 6 mov.b32 %r148,%r129; .loc 1 166 8 sub.f32 %r149,%r148,%r209; .loc 1 167 17 add.f32 %r317,%r148,%r209; .loc 1 167 8 mov.f32 %r318,0f3f800000; div.rn.f32 %r150,%r318,%r317; .loc 1 168 8 mul.f32 %r151,%r149,%r150; .loc 1 171 6 mov.b32 %r320,%r151; and.b32 %r319,%r320,-4096; mov.b32 %r153,%r319; .loc 1 173 6 shr.s32 %r321,%r129,1; or.b32 %r322,%r321,536870912; add.u32 %r323,%r322,262144; add.u32 %r324,%r323,%r210; mov.b32 %r154,%r324; .loc 1 175 26 neg.f32 %r325,%r153; .loc 1 175 17 fma.rn.f32 %r327,%r325,%r154,%r149; .loc 1 174 21 sub.f32 %r328,%r154,%r209; .loc 1 174 10 sub.f32 %r329,%r148,%r328; .loc 1 175 26 fma.rn.f32 %r330,%r325,%r329,%r327; .loc 1 175 10 mul.f32 %r156,%r330,%r150; .loc 1 177 9 mul.f32 %r157,%r151,%r151; .loc 1 178 12 mul.f32 %r331,%r157,%r157; .loc 1 179 19 add.f32 %r332,%r151,%r153; .loc 1 179 14 mul.f32 %r333,%r332,%r156; .loc 1 178 47 fma.rn.f32 %r334,%r157,0f3e53f142,0f3e6c3255; .loc 1 178 40 fma.rn.f32 %r335,%r334,%r157,0f3e8ba305; .loc 1 178 33 fma.rn.f32 %r336,%r335,%r157,0f3eaaaaab; .loc 1 178 26 fma.rn.f32 %r337,%r336,%r157,0f3edb6db7; .loc 1 178 19 fma.rn.f32 %r338,%r337,%r157,0f3f19999a; .loc 1 179 8 fma.rn.f32 %r158,%r331,%r338,%r333; .loc 1 181 22 fma.rn.f32 %r339,%r153,%r153,0f40400000; .loc 1 181 10 add.f32 %r340,%r339,%r158; .loc 1 183 6 mov.b32 %r341,%r340; and.b32 %r66,%r341,-4096; mov.b32 %r160,%r66; .loc 1 184 19 mov.f32 %r344,0f40400000; sub.f32 %r343,%r160,%r344; .loc 1 184 31 fma.rn.f32 %r345,%r325,%r153,%r343; .loc 1 184 10 sub.f32 %r346,%r158,%r345; .loc 1 187 21 mul.f32 %r347,%r346,%r151; .loc 1 187 8 fma.rn.f32 %r162,%r156,%r160,%r347; .loc 1 189 10 fma.rn.f32 %r348,%r153,%r160,%r162; .loc 1 191 6 mov.b32 %r349,%r348; and.b32 %r70,%r349,-4096; mov.b32 %r164,%r70; .loc 1 192 18 fma.rn.f32 %r351,%r325,%r160,%r164; .loc 1 192 10 sub.f32 %r352,%r162,%r351; .loc 1 194 24 mul.f32 %r353,%r352,0f3f76384f; .loc 1 194 20 fma.rn.f32 %r354,%r164,0f369dc3a0,%r353; .loc 1 194 10 add.f32 %r166,%r354,%r211; .loc 1 196 8 cvt.rn.f32.s32 %r167,%r126; .loc 1 197 17 fma.rn.f32 %r355,%r164,0f3f763800,%r166; .loc 1 197 22 add.f32 %r356,%r355,%r212; .loc 1 197 9 add.f32 %r357,%r356,%r167; .loc 1 199 6 mov.b32 %r358,%r357; and.b32 %r77,%r358,-4096; mov.b32 %r121,%r77; .loc 1 200 20 sub.f32 %r360,%r121,%r167; .loc 1 200 23 sub.f32 %r361,%r360,%r212; .loc 1 200 32 fma.rn.f32 %r362,%r164,0fbf763800,%r361; .loc 1 200 9 sub.f32 %r122,%r166,%r362; $L20: .loc 1 204 38 add.u32 %r363,%r124,-1; .loc 1 204 30 or.b32 %r364,%r363,%r35; .loc 1 204 4 setp.ne.u32 %r365,%r364,0; .loc 1 205 8 selp.f32 %r123,0f3f800000,0fbf800000,%r365; .loc 1 209 2 and.b32 %r366,%r33,-4096; mov.b32 %r169,%r366; .loc 1 210 10 sub.f32 %r367,%r215,%r169; .loc 1 210 19 mul.f32 %r368,%r122,%r215; .loc 1 210 6 fma.rn.f32 %r170,%r367,%r121,%r368; .loc 1 211 6 mul.f32 %r120,%r121,%r169; .loc 1 212 4 add.f32 %r171,%r170,%r120; .loc 1 213 2 mov.b32 %r65,%r171; .loc 1 214 4 and.b32 %r173,%r65,2147483647; .loc 1 215 5 setp.le.s32 %r369,%r65,0; @ %r369 bra $L24; .loc 1 216 9 setp.le.s32 %r370,%r173,1124073472; @ %r370 bra $L25; .loc 1 217 18 mul.f32 %r371,%r123,0f7149f2ca; .loc 1 217 23 mul.f32 %r213,%r371,0f7149f2ca; bra $L1; $L25: .loc 1 218 14 setp.ne.u32 %r372,%r173,1124073472; @ %r372 bra $L26; .loc 1 219 16 add.f32 %r373,%r170,0f3338aa3c; .loc 1 219 22 sub.f32 %r374,%r171,%r120; .loc 1 219 12 setp.gt.f32 %r375,%r373,%r374; @ ! %r375 bra $L27; .loc 1 219 36 mul.f32 %r376,%r123,0f7149f2ca; .loc 1 219 41 mul.f32 %r213,%r376,0f7149f2ca; bra $L1; $L24: .loc 1 221 9 setp.le.s32 %r377,%r173,1125515264; @ %r377 bra $L29; .loc 1 222 18 mul.f32 %r378,%r123,0f0da24260; .loc 1 222 23 mul.f32 %r213,%r378,0f0da24260; bra $L1; $L29: .loc 1 223 14 setp.ne.u32 %r379,%r173,1125515264; @ %r379 bra $L26; .loc 1 224 19 sub.f32 %r380,%r171,%r120; .loc 1 224 12 setp.ge.f32 %r381,%r380,%r170; @ ! %r381 bra $L27; .loc 1 224 33 mul.f32 %r382,%r123,0f0da24260; .loc 1 224 38 mul.f32 %r213,%r382,0f0da24260; bra $L1; $L26: .loc 1 231 4 setp.le.s32 %r383,%r173,1056964608; @ %r383 bra $L49; .loc 1 229 8 shr.s32 %r188,%r173,23; $L35: .loc 1 232 27 add.u32 %r384,%r188,-126; .loc 1 232 23 mov.u32 %r386,8388608; shr.s32 %r385,%r386,%r384; .loc 1 232 8 add.u32 %r174,%r385,%r65; .loc 1 233 25 shr.s32 %r387,%r174,23; and.b32 %r388,%r387,255; .loc 1 233 8 add.u32 %r175,%r388,-127; .loc 1 234 6 mov.u32 %r390,8388607; shr.s32 %r389,%r390,%r175; not.b32 %r391,%r389; and.b32 %r392,%r391,%r174; mov.b32 %r176,%r392; .loc 1 235 13 and.b32 %r393,%r174,8388607; .loc 1 235 25 or.b32 %r102,%r393,8388608; .loc 1 235 42 mov.u32 %r395,23; sub.u32 %r394,%r395,%r175; .loc 1 235 8 shr.s32 %r127,%r102,%r394; .loc 1 236 8 setp.ge.s32 %r396,%r65,0; @ %r396 bra $L32; .loc 1 236 16 neg.s32 %r127,%r127; $L32: .loc 1 237 10 sub.f32 %r120,%r120,%r176; add.f32 %r397,%r170,%r120; mov.b32 %r65,%r397; shl.b32 %r208,%r127,23; bra $L31; $L49: mov.u32 %r208,0; .loc 1 230 4 mov.u32 %r127,%r208; $L31: .loc 1 241 2 and.b32 %r398,%r65,-4096; mov.b32 %r177,%r398; .loc 1 243 13 sub.f32 %r399,%r177,%r120; .loc 1 243 10 sub.f32 %r400,%r170,%r399; .loc 1 243 25 mul.f32 %r401,%r177,0f35bfbe8c; .loc 1 243 4 fma.rn.f32 %r178,%r400,0f3f317218,%r401; .loc 1 244 4 fma.rn.f32 %r179,%r177,0f3f317200,%r178; .loc 1 245 10 fma.rn.f32 %r403,%r177,0fbf317200,%r179; .loc 1 245 4 sub.f32 %r180,%r178,%r403; .loc 1 246 5 mul.f32 %r181,%r179,%r179; .loc 1 247 35 fma.rn.f32 %r404,%r181,0f3331bb4c,0fb5ddea0e; .loc 1 247 29 fma.rn.f32 %r405,%r404,%r181,0f388ab355; .loc 1 247 23 fma.rn.f32 %r406,%r405,%r181,0fbb360b61; .loc 1 247 17 fma.rn.f32 %r407,%r406,%r181,0f3e2aaaab; .loc 1 247 6 neg.f32 %r408,%r407; fma.rn.f32 %r182,%r408,%r181,%r179; .loc 1 248 9 mul.f32 %r409,%r179,%r182; .loc 1 248 17 mov.f32 %r411,0f40000000; sub.f32 %r410,%r182,%r411; .loc 1 248 13 div.rn.f32 %r412,%r409,%r410; .loc 1 248 25 fma.rn.f32 %r413,%r179,%r180,%r180; .loc 1 248 5 sub.f32 %r414,%r412,%r413; .loc 1 249 13 sub.f32 %r117,%r414,%r179; .loc 1 249 5 mov.f32 %r415,0f3f800000; sub.f32 %r184,%r415,%r117; .loc 1 250 2 mov.b32 %r185,%r184; .loc 1 251 4 add.u32 %r186,%r185,%r208; .loc 1 252 4 setp.gt.s32 %r417,%r186,8388607; @ %r417 bra $L33; .loc 1 252 21 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r184; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r127; call (%value_in),scalbnf,(%out_arg1,%out_arg2); ld.param.f32 %r420,[%value_in]; } mov.f32 %r119,%r420; bra $L34; $L33: .loc 1 253 7 mov.b32 %r119,%r186; $L34: .loc 1 254 10 mul.f32 %r213,%r119,%r123; bra $L1; $L36: .loc 1 76 35 mov.f32 %r213,0f3f800000; bra $L1; $L37: mov.f32 %r213,0f3f800000; bra $L1; $L42: mov.f32 %r213,0f3f800000; bra $L1; $L43: .loc 1 105 27 mov.f32 %r213,%r215; bra $L1; $L44: .loc 1 110 41 mov.f32 %r213,%r214; bra $L1; $L27: .loc 1 229 8 shr.s32 %r188,%r173,23; bra $L35; $L40: .loc 1 90 10 mov.u32 %r124,0; bra $L6; $L41: mov.u32 %r124,0; bra $L6; $L1: .loc 1 255 1 mov.f32 %value,%r213; st.param.f32 [%value_out],%value; ret; } /193 1591654539 399 399 100644 10049 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r32; .reg .f32 %r35; .reg .u32 %r45; .reg .f32 %r58; .reg .f32 %r61; .reg .f32 %r66; .reg .f32 %r71; .reg .f32 %r72; .reg .u32 %r75; .reg .u32 %r76; .reg .f32 %r77; .reg .f32 %r78; .reg .f32 %r79; .reg .f32 %r80; .reg .f32 %r82; .reg .f32 %r85; .reg .u32 %r87; .reg .f32 %r88; .reg .u32 %r91; .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 .f32 %r127; .reg .pred %r129; .reg .u32 %r130; .reg .u64 %r131; .reg .u32 %r132; .reg .u64 %r133; .reg .u64 %r134; .reg .u64 %r135; .reg .u32 %r136; .reg .pred %r137; .reg .u32 %r138; .reg .u32 %r139; .reg .u32 %r140; .reg .u32 %r141; .reg .pred %r142; .reg .f32 %r145; .reg .f32 %r146; .reg .f32 %r147; .reg .u32 %r148; .reg .u32 %r149; .reg .u32 %r150; .reg .u32 %r151; .reg .pred %r152; .reg .f32 %r155; .reg .f32 %r156; .reg .f32 %r157; .reg .f32 %r158; .reg .pred %r159; .reg .f32 %r160; .reg .f32 %r161; .reg .pred %r162; .reg .u32 %r163; .reg .u32 %r164; .reg .u32 %r165; .reg .u32 %r166; .reg .u32 %r167; .reg .pred %r168; .reg .pred %r169; .reg .u32 %r174; .reg .u64 %r175; .reg .u32 %r176; .reg .pred %r177; .reg .f32 %r178; .reg .f32 %r179; .reg .f32 %r180; .reg .f32 %r181; .reg .f32 %r183; mov.f32 %r102,%ar0; mov.u64 %r103,%ar1; .loc 1 110 2 mov.b32 %r75,%r102; .loc 1 111 5 and.b32 %r76,%r75,2147483647; .loc 1 112 4 setp.gt.s32 %r104,%r76,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,%r76,1075235811; @ %r106 bra $L4; and.b32 %r91,%r75,2147483632; .loc 1 115 8 setp.le.s32 %r107,%r75,0; @ %r107 bra $L5; .loc 1 116 5 mov.f32 %r108,0f3fc90f80; sub.f32 %r77,%r102,%r108; .loc 1 117 5 setp.eq.u32 %r109,%r91,1070141392; @ %r109 bra $L6; .loc 1 118 16 mov.f32 %r110,0f37354443; sub.f32 %r24,%r77,%r110; .loc 1 118 12 st.f32 [%r103],%r24; .loc 1 119 16 sub.f32 %r111,%r77,%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 %r78,%r77,%r114; .loc 1 122 16 mov.f32 %r115,0f2e85a308; sub.f32 %r28,%r78,%r115; .loc 1 122 12 st.f32 [%r103],%r28; .loc 1 123 16 sub.f32 %r116,%r78,%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 %r79,%r102,0f3fc90f80; .loc 1 128 5 setp.eq.u32 %r119,%r91,1070141392; @ %r119 bra $L7; .loc 1 129 16 add.f32 %r32,%r79,0f37354443; .loc 1 129 12 st.f32 [%r103],%r32; .loc 1 130 16 sub.f32 %r120,%r79,%r32; .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 %r80,%r79,0f37354400; .loc 1 133 16 add.f32 %r35,%r80,0f2e85a308; .loc 1 133 12 st.f32 [%r103],%r35; .loc 1 134 16 sub.f32 %r122,%r80,%r35; .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,%r76,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 %r127,%r126,0f3f22f984,0f3f000000; .loc 1 141 9 cvt.rzi.s32.f32 %r101,%r127; .loc 1 142 9 cvt.rn.f32.s32 %r82,%r101; .loc 1 143 9 neg.f32 %r183,%r82; fma.rn.f32 %r72,%r183,0f3fc90f80,%r126; .loc 1 144 9 mul.f32 %r71,%r82,0f37354443; .loc 1 145 8 setp.gt.s32 %r129,%r101,31; @ %r129 bra $L9; sub.f32 %r66,%r72,%r71; .loc 1 145 18 and.b32 %r130,%r75,2147483392; .loc 1 145 40 cvta.const.u64 %r131,npio2_hw; .loc 1 145 42 add.u32 %r132,%r101,-1; .loc 1 145 40 cvt.s64.s32 %r133,%r132; shl.b64 %r134,%r133,2; add.u64 %r135,%r131,%r134; .loc 1 145 13 ld.u32 %r136,[%r135]; setp.eq.u32 %r137,%r130,%r136; @ %r137 bra $L10; .loc 1 146 8 st.f32 [%r103],%r66; bra $L11; $L9: sub.f32 %r66,%r72,%r71; $L10: .loc 1 149 13 shr.s32 %r45,%r76,23; .loc 1 152 22 mov.b32 %r139,%r66; shr.u32 %r138,%r139,23; .loc 1 152 27 and.b32 %r140,%r138,255; .loc 1 152 15 sub.u32 %r141,%r45,%r140; .loc 1 153 12 setp.gt.s32 %r142,%r141,8; @ %r142 bra $L12; .loc 1 150 15 st.f32 [%r103],%r66; bra $L11; $L12: .loc 1 156 10 fma.rn.f32 %r85,%r183,0f37354400,%r72; .loc 1 157 26 sub.f32 %r145,%r72,%r85; .loc 1 157 29 fma.rn.f32 %r146,%r183,0f37354400,%r145; .loc 1 157 10 neg.f32 %r147,%r146; fma.rn.f32 %r71,%r82,0f2e85a308,%r147; .loc 1 158 15 sub.f32 %r66,%r85,%r71; .loc 1 160 19 mov.b32 %r149,%r66; shr.u32 %r148,%r149,23; .loc 1 160 24 and.b32 %r150,%r148,255; .loc 1 160 12 sub.u32 %r151,%r45,%r150; .loc 1 161 9 setp.gt.s32 %r152,%r151,25; @ %r152 bra $L13; .loc 1 158 12 st.f32 [%r103],%r66; .loc 1 156 10 mov.f32 %r72,%r85; bra $L11; $L13: .loc 1 164 11 fma.rn.f32 %r72,%r183,0f2e85a300,%r85; .loc 1 165 27 sub.f32 %r155,%r85,%r72; .loc 1 165 30 fma.rn.f32 %r156,%r183,0f2e85a300,%r155; .loc 1 165 11 neg.f32 %r157,%r156; fma.rn.f32 %r71,%r82,0f248d3132,%r157; .loc 1 166 16 sub.f32 %r66,%r72,%r71; .loc 1 166 13 st.f32 [%r103],%r66; $L11: .loc 1 170 15 sub.f32 %r158,%r72,%r66; .loc 1 170 21 sub.f32 %r58,%r158,%r71; .loc 1 170 11 st.f32 [%r103+4],%r58; .loc 1 171 8 setp.ge.s32 %r159,%r75,0; @ %r159 bra $L1; .loc 1 171 24 neg.f32 %r160,%r66; .loc 1 171 22 st.f32 [%r103],%r160; .loc 1 171 38 neg.f32 %r161,%r58; .loc 1 171 36 st.f32 [%r103+4],%r161; .loc 1 171 52 neg.s32 %r101,%r101; bra $L1; $L8: .loc 1 177 4 setp.le.s32 %r162,%r76,2139095039; @ %r162 bra $L14; .loc 1 178 17 sub.f32 %r61,%r102,%r102; .loc 1 178 15 st.f32 [%r103+4],%r61; .loc 1 178 10 st.f32 [%r103],%r61; .loc 1 178 28 mov.u32 %r101,0; bra $L1; $L14: .loc 1 181 17 shr.s32 %r163,%r76,23; .loc 1 181 6 add.u32 %r87,%r163,-134; .loc 1 182 2 shl.b32 %r164,%r87,23; sub.u32 %r165,%r76,%r164; mov.b32 %r88,%r165; .loc 1 184 19 cvt.rzi.s32.f32 %r166,%r88; .loc 1 184 11 cvt.rn.f32.s32 %r93,%r166; .loc 1 184 9 st.f32 [%frame],%r93; .loc 1 185 13 sub.f32 %r94,%r88,%r93; .loc 1 185 9 mul.f32 %r95,%r94,0f43800000; .loc 1 184 19 cvt.rzi.s32.f32 %r167,%r95; .loc 1 184 11 cvt.rn.f32.s32 %r98,%r167; .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 7 setp.neu.f32 %r168,%r100,0f00000000; @ %r168 bra $L16; setp.neu.f32 %r169,%r98,0f00000000; .loc 1 189 13 selp.u32 %r22,2,1,%r169; bra $L15; $L16: .loc 1 188 5 mov.u32 %r22,3; $L15: .loc 1 190 8 cvta.const.u64 %r175,two_over_pi; mov.u32 %r174,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],%r87; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r22; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r174; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r175; call (%value_in),__kernel_rem_pio2f,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); ld.param.u32 %r176,[%value_in]; } mov.u32 %r101,%r176; .loc 1 191 4 setp.ge.s32 %r177,%r75,0; @ %r177 bra $L1; .loc 1 191 19 ld.f32 %r179,[%r103]; neg.f32 %r178,%r179; .loc 1 191 17 st.f32 [%r103],%r178; .loc 1 191 33 ld.f32 %r181,[%r103+4]; neg.f32 %r180,%r181; .loc 1 191 31 st.f32 [%r103+4],%r180; .loc 1 191 47 neg.s32 %r101,%r101; $L1: .loc 1 193 1 mov.u32 %value,%r101; st.param.u32 [%value_out],%value; ret; } /214 1591654539 399 399 100644 3746 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r48; .reg .u32 %r49; .reg .u32 %r51; .reg .u32 %r52; .reg .u16 %r53; .reg .u16 %r54; .reg .u16 %r55; .reg .u32 %r57; .reg .u32 %r58; .reg .u16 %r60; .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; 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; .loc 1 44 29 set.u32.gt.s32 %r51,%r35,2139095040; neg.s32 %r52,%r51; cvt.u16.u32 %r54,%r49; cvt.u16.u32 %r55,%r52; or.b16 %r53,%r54,%r55; .loc 1 44 5 set.u32.gt.s32 %r57,%r36,2139095039; neg.s32 %r58,%r57; .loc 1 44 29 cvt.u16.u32 %r62,%r58; or.b16 %r60,%r53,%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; } /236 1591654539 399 399 100644 3606 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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: __fpclassifyf .extern .func (.param .u32 %value_out) __fpclassifyf (.param .f32 %in_ar0); // 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 %r27; .reg .f32 %r29; .reg .f32 %r30; .reg .f32 %r31; .reg .u32 %r33; .reg .pred %r34; .reg .u32 %r36; .reg .pred %r37; .reg .u32 %r39; .reg .pred %r40; .reg .pred %r41; .reg .f32 %r42; .reg .f32 %r44; .reg .pred %r45; .reg .pred %r46; .reg .u32 %r48; .reg .f32 %r49; .reg .pred %r50; .reg .u32 %r52; .reg .f32 %r53; .reg .u32 %r56; .reg .f32 %r57; mov.f32 %r30,%ar0; mov.f32 %r31,%ar1; .loc 1 38 6 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r30; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r33,[%value_in]; } .loc 1 38 5 setp.ne.u32 %r34,%r33,0; @ ! %r34 bra $L3; .loc 1 38 16 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r31; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r36,[%value_in]; } .loc 1 38 14 setp.eq.u32 %r37,%r36,0; @ ! %r37 bra $L18; $L3: .loc 1 38 35 mul.f32 %r29,%r30,%r31; bra $L1; $L18: .loc 1 39 7 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r31; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r39,[%value_in]; } .loc 1 39 5 setp.ne.u32 %r40,%r39,0; @ %r40 bra $L7; .loc 1 40 8 setp.gt.f32 %r41,%r31,0f00000000; @ %r41 bra $L3; .loc 1 41 25 neg.f32 %r42,%r30; div.rn.f32 %r29,%r42,%r31; bra $L1; $L7: .loc 1 43 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r31; call (%value_in),rintf,(%out_arg1); ld.param.f32 %r44,[%value_in]; } .loc 1 43 5 setp.eq.f32 %r45,%r44,%r31; @ %r45 bra $L8; .loc 1 43 31 sub.f32 %r27,%r31,%r31; .loc 1 43 35 div.rn.f32 %r29,%r27,%r27; bra $L1; $L8: .loc 1 45 5 setp.gt.f32 %r46,%r31,0f477de800; @ ! %r46 bra $L19; .loc 1 45 35 mov.u32 %r48,65000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r30; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r48; call (%value_in),scalbnf,(%out_arg1,%out_arg2); ld.param.f32 %r49,[%value_in]; } mov.f32 %r29,%r49; bra $L1; $L19: .loc 1 46 5 setp.lt.f32 %r50,%r31,0fc77de800; @ ! %r50 bra $L20; .loc 1 46 35 mov.u32 %r52,-65000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r30; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r52; call (%value_in),scalbnf,(%out_arg1,%out_arg2); ld.param.f32 %r53,[%value_in]; } mov.f32 %r29,%r53; bra $L1; $L20: .loc 1 51 9 cvt.rzi.s32.f32 %r56,%r31; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r30; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r56; call (%value_in),scalbnf,(%out_arg1,%out_arg2); ld.param.f32 %r57,[%value_in]; } mov.f32 %r29,%r57; $L1: .loc 1 53 1 mov.f32 %value,%r29; st.param.f32 [%value_out],%value; ret; } lib_a-ef_sinh.o/1591654539 399 399 100644 4134 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %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 .f32 %r64; .reg .pred %r65; .reg .f32 %r67; .reg .f32 %r69; .reg .pred %r70; .reg .f32 %r72; .reg .f32 %r74; .reg .f32 %r75; .reg .f32 %r76; .reg .f32 %r79; .reg .f32 %r81; 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 %r61,%r41,0f40000000,%r60; .loc 1 47 32 mul.f32 %r44,%r61,%r35; bra $L1; $L8: .loc 1 48 22 add.f32 %r62,%r55,0f3f800000; .loc 1 48 19 div.rn.f32 %r63,%r55,%r62; .loc 1 48 17 add.f32 %r64,%r63,%r55; .loc 1 48 14 mul.f32 %r44,%r64,%r35; bra $L1; $L5: .loc 1 52 5 setp.gt.s32 %r65,%r37,1118925335; @ %r65 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 %r67,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r67; call (%value_in),__ieee754_expf,(%out_arg1); ld.param.f32 %r69,[%value_in]; } .loc 1 52 38 mul.f32 %r44,%r69,%r35; bra $L1; $L9: .loc 1 55 5 setp.gt.s32 %r70,%r37,1119016188; @ %r70 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 %r72,[%value_in]; } .loc 1 56 10 mul.f32 %r74,%r72,0f3f000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r74; call (%value_in),__ieee754_expf,(%out_arg1); ld.param.f32 %r75,[%value_in]; } .loc 1 57 8 mul.f32 %r76,%r35,%r75; .loc 1 58 14 mul.f32 %r44,%r76,%r75; 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 %r79,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r79; call (%value_in),expm1f,(%out_arg1); ld.param.f32 %r81,[%value_in]; } mov.f32 %r41,%r81; bra $L11; $L1: .loc 1 63 1 mov.f32 %value,%r44; st.param.f32 [%value_out],%value; ret; } lib_a-ef_sqrt.o/1591654539 399 399 100644 3154 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r23; .reg .f32 %r24; .reg .u32 %r25; .reg .u32 %r28; .reg .u32 %r32; .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 %r47; .reg .u32 %r48; .reg .u32 %r50; .reg .u32 %r52; .reg .u32 %r53; .reg .f32 %r54; .reg .f32 %r55; .reg .pred %r56; .reg .pred %r57; .reg .pred %r58; .reg .u32 %r59; .reg .pred %r60; .reg .pred %r61; .reg .u32 %r63; .reg .pred %r64; .reg .u32 %r66; .reg .pred %r67; .reg .pred %r68; .reg .pred %r70; .reg .pred %r71; .reg .u32 %r72; .reg .u32 %r73; .reg .u32 %r74; mov.f32 %r55,%ar0; .loc 1 35 2 mov.b32 %r42,%r55; .loc 1 36 5 and.b32 %r41,%r42,2147483647; .loc 1 39 4 setp.le.u32 %r56,%r41,2139095039; @ %r56 bra $L2; .loc 1 40 16 fma.rn.f32 %r54,%r55,%r55,%r55; bra $L1; $L2: .loc 1 43 4 setp.eq.u32 %r57,%r41,0; @ %r57 bra $L12; .loc 1 35 2 mov.u32 %r37,%r42; .loc 1 44 4 setp.ge.s32 %r58,%r42,0; @ %r58 bra $L4; .loc 1 44 20 sub.f32 %r24,%r55,%r55; .loc 1 44 23 div.rn.f32 %r54,%r24,%r24; bra $L1; $L4: .loc 1 47 4 shr.s32 %r40,%r37,23; .loc 1 48 4 and.b32 %r59,%r37,2139095040; setp.ne.u32 %r60,%r59,0; @ %r60 bra $L5; and.b32 %r52,%r37,8388608; .loc 1 49 6 setp.ne.u32 %r61,%r52,0; @ ! %r61 bra $L7; bra $L13; $L14: .loc 1 49 35 mov.u32 %r52,%r23; $L7: .loc 1 49 41 add.u32 %r37,%r37,%r37; .loc 1 49 35 add.u32 %r23,%r52,1; .loc 1 49 6 and.b32 %r63,%r37,8388608; setp.eq.u32 %r64,%r63,0; @ %r64 bra $L14; bra $L6; $L13: mov.u32 %r52,-1; $L6: .loc 1 50 8 sub.u32 %r40,%r40,%r52; $L5: .loc 1 52 4 add.u32 %r43,%r40,-127; .loc 1 53 10 and.b32 %r25,%r37,8388607; .loc 1 53 5 or.b32 %r44,%r25,8388608; add.u32 %r47,%r44,%r44; .loc 1 54 6 and.b32 %r66,%r43,1; .loc 1 54 4 setp.eq.u32 %r67,%r66,0; @ %r67 bra $L8; shl.b32 %r47,%r44,2; $L8: .loc 1 56 4 shr.s32 %r45,%r43,1; mov.u32 %r53,25; .loc 1 60 4 mov.u32 %r39,0; .loc 1 60 8 mov.u32 %r38,%r39; .loc 1 61 4 mov.u32 %r48,16777216; $L10: .loc 1 64 11 add.u32 %r28,%r38,%r48; .loc 1 65 8 setp.gt.s32 %r68,%r28,%r47; @ %r68 bra $L9; .loc 1 66 11 add.u32 %r38,%r28,%r48; .loc 1 67 7 sub.u32 %r47,%r47,%r28; .loc 1 68 7 add.u32 %r39,%r39,%r48; $L9: .loc 1 70 9 add.u32 %r47,%r47,%r47; .loc 1 71 7 shr.u32 %r48,%r48,1; add.u32 %r53,%r53,-1; .loc 1 63 7 setp.ne.u32 %r70,%r53,0; @ %r70 bra $L10; .loc 1 75 4 setp.eq.u32 %r71,%r47,0; @ %r71 bra $L11; .loc 1 82 9 add.u32 %r32,%r39,1; and.b32 %r39,%r32,-2; $L11: .loc 1 85 9 shr.s32 %r72,%r39,1; .loc 1 85 13 add.u32 %r50,%r72,1056964608; .loc 1 86 11 shl.b32 %r73,%r45,23; .loc 1 86 5 add.u32 %r74,%r73,%r50; .loc 1 87 2 mov.b32 %r54,%r74; .loc 1 88 9 bra $L1; $L12: .loc 1 43 35 mov.f32 %r54,%r55; $L1: .loc 1 89 1 mov.f32 %value,%r54; st.param.f32 [%value_out],%value; ret; } /254 1591654539 399 399 100644 1383 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_gamma_r .visible .func (.param .f64 %value_out) __ieee754_gamma_r (.param .f64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libm/math/er_gamma.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_gamma_r .visible .func (.param .f64 %value_out) __ieee754_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 %r24; .reg .u64 %r25; .reg .f64 %r28; .reg .f64 %r30; mov.f64 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 31 9 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; 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]; } .loc 1 32 1 mov.f64 %value,%r30; st.param.f64 [%value_out],%value; ret; } /272 1591654539 399 399 100644 19438 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r77; .reg .f64 %r91; .reg .f64 %r92; .reg .f64 %r93; .reg .f64 %r94; .reg .u32 %r96; .reg .u32 %r97; .reg .u32 %r98; .reg .f64 %r99; .reg .f64 %r101; .reg .f64 %r102; .reg .f64 %r103; .reg .f64 %r106; .reg .f64 %r107; .reg .u32 %r114; .reg .f64 %r115; .reg .f64 %r122; .reg .f64 %r123; .reg .f64 %r126; .reg .f64 %r128; .reg .f64 %r130; .reg .u32 %r135; .reg .u32 %r136; .reg .f64 %r137; .reg .u32 %r138; .reg .f64 %r139; .reg .f64 %r142; .reg .f64 %r145; .reg .f64 %r151; .reg .f64 %r154; .reg .f64 %r173; .reg .f64 %r174; .reg .u64 %r175; .reg .u64 %r176; .reg .u64 %r177; .reg .u32 %r178; .reg .pred %r179; .reg .u32 %r181; .reg .pred %r182; .reg .f64 %r183; .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 .f64 %r206; .reg .f64 %r207; .reg .u64 %r208; .reg .pred %r209; .reg .pred %r210; .reg .pred %r211; .reg .pred %r212; .reg .pred %r213; .reg .f64 %r215; .reg .f64 %r217; .reg .f64 %r218; .reg .f64 %r219; .reg .f64 %r221; .reg .f64 %r222; .reg .f64 %r223; .reg .f64 %r224; .reg .f64 %r226; .reg .u32 %r227; .reg .f64 %r228; .reg .f64 %r230; .reg .f64 %r231; .reg .f64 %r232; .reg .f64 %r233; .reg .f64 %r234; .reg .f64 %r235; .reg .f64 %r236; .reg .f64 %r238; .reg .u32 %r239; .reg .f64 %r240; .reg .pred %r241; .reg .f64 %r243; .reg .f64 %r244; .reg .f64 %r246; .reg .f64 %r247; .reg .f64 %r248; .reg .pred %r249; .reg .u32 %r250; .reg .u32 %r251; .reg .u32 %r252; .reg .pred %r253; .reg .u32 %r254; .reg .u32 %r255; .reg .pred %r256; .reg .u32 %r257; .reg .pred %r258; .reg .pred %r259; .reg .f64 %r261; .reg .pred %r262; .reg .f64 %r263; .reg .pred %r264; .reg .f64 %r265; .reg .pred %r266; .reg .f64 %r267; .reg .pred %r268; .reg .f64 %r269; .reg .f64 %r270; .reg .f64 %r272; .reg .f64 %r273; .reg .f64 %r274; .reg .f64 %r275; .reg .f64 %r276; .reg .f64 %r277; .reg .f64 %r278; .reg .f64 %r279; .reg .f64 %r280; .reg .f64 %r281; .reg .f64 %r282; .reg .f64 %r283; .reg .f64 %r284; .reg .f64 %r285; .reg .f64 %r286; .reg .f64 %r287; .reg .f64 %r288; .reg .f64 %r289; .reg .f64 %r290; .reg .f64 %r291; .reg .f64 %r292; .reg .f64 %r293; .reg .f64 %r294; .reg .f64 %r295; .reg .f64 %r296; .reg .f64 %r297; .reg .f64 %r298; .reg .f64 %r299; .reg .f64 %r300; .reg .f64 %r301; .reg .f64 %r302; .reg .f64 %r303; .reg .f64 %r304; .reg .f64 %r305; .reg .f64 %r306; .reg .f64 %r307; .reg .f64 %r308; .reg .f64 %r309; .reg .f64 %r310; .reg .f64 %r311; .reg .f64 %r312; .reg .f64 %r313; .reg .f64 %r314; .reg .f64 %r315; .reg .f64 %r316; .reg .pred %r317; .reg .f64 %r318; .reg .f64 %r319; .reg .f64 %r320; .reg .f64 %r321; .reg .f64 %r322; .reg .f64 %r323; .reg .f64 %r324; .reg .f64 %r325; .reg .f64 %r326; .reg .f64 %r327; .reg .f64 %r328; .reg .f64 %r329; .reg .f64 %r330; .reg .f64 %r331; .reg .f64 %r332; .reg .pred %r333; .reg .pred %r334; .reg .pred %r335; .reg .pred %r336; .reg .pred %r337; .reg .pred %r338; .reg .f64 %r339; .reg .f64 %r340; .reg .f64 %r341; .reg .f64 %r343; .reg .f64 %r344; .reg .f64 %r345; .reg .pred %r346; .reg .f64 %r348; .reg .f64 %r349; .reg .f64 %r350; .reg .f64 %r351; .reg .f64 %r352; .reg .f64 %r353; .reg .f64 %r354; .reg .f64 %r355; .reg .f64 %r356; .reg .f64 %r357; .reg .f64 %r358; .reg .f64 %r361; .reg .f64 %r362; .reg .f64 %r363; .reg .u32 %r366; .reg .u32 %r367; .reg .pred %r368; .reg .u32 %r369; .reg .u32 %r370; .reg .pred %r371; .reg .pred %r372; mov.f64 %r174,%ar0; mov.u64 %r175,%ar1; .loc 1 222 2 mov.b64 %r176,%r174; shr.u64 %r177,%r176,32; cvt.u32.u64 %r96,%r177; .loc 1 225 12 mov.u32 %r178,1; st.u32 [%r175],%r178; .loc 1 226 5 and.b32 %r98,%r96,2147483647; .loc 1 227 4 setp.le.s32 %r179,%r98,2146435071; @ %r179 bra $L2; .loc 1 227 29 mul.f64 %r173,%r174,%r174; bra $L1; $L2: .loc 1 222 2 cvt.u32.u64 %r97,%r176; .loc 1 228 8 or.b32 %r181,%r97,%r98; .loc 1 228 4 setp.ne.u32 %r182,%r181,0; @ %r182 bra $L4; $L8: .loc 1 228 27 mov.f64 %r183,0d3ff0000000000000; div.rn.f64 %r173,%r183,0d0000000000000000; bra $L1; $L4: .loc 1 229 4 setp.gt.s32 %r184,%r98,999292927; @ %r184 bra $L5; .loc 1 230 8 setp.ge.s32 %r185,%r96,0; @ %r185 bra $L6; .loc 1 231 20 mov.u32 %r186,-1; st.u32 [%r175],%r186; .loc 1 232 18 neg.f64 %r188,%r174; { .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 232 17 neg.f64 %r173,%r189; bra $L1; $L6: .loc 1 233 21 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r174; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r191,[%value_in]; } .loc 1 233 20 neg.f64 %r173,%r191; bra $L1; $L5: .loc 1 235 4 setp.ge.s32 %r372,%r96,0; @ %r372 bra $L7; .loc 1 236 8 setp.gt.s32 %r193,%r98,1127219199; @ %r193 bra $L8; .loc 1 175 4 setp.gt.s32 %r194,%r98,1070596095; @ %r194 bra $L9; .loc 1 175 27 mul.f64 %r198,%r174,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 %r126,%r174; .loc 1 182 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r126; call (%value_in),floor,(%out_arg1); ld.param.f64 %r201,[%value_in]; } .loc 1 183 4 setp.eq.f64 %r202,%r126,%r201; @ %r202 bra $L11; .loc 1 184 9 mul.f64 %r128,%r126,0d3fe0000000000000; .loc 1 185 21 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r128; call (%value_in),floor,(%out_arg1); ld.param.f64 %r204,[%value_in]; } .loc 1 185 19 sub.f64 %r130,%r128,%r204; .loc 1 185 10 add.f64 %r137,%r130,%r130; .loc 1 186 26 mul.f64 %r205,%r137,0d4010000000000000; .loc 1 186 10 cvt.rzi.s32.f64 %r138,%r205; bra $L12; $L11: .loc 1 192 3 mov.f64 %r207,0d4330000000000000; sub.f64 %r206,%r207,%r174; mov.b64 %r208,%r206; cvt.u32.u64 %r135,%r208; .loc 1 193 5 and.b32 %r136,%r135,1; .loc 1 194 20 cvt.rn.f64.s32 %r137,%r136; .loc 1 195 18 shl.b32 %r138,%r136,2; $L12: setp.gt.s32 %r209,%r138,4; @ %r209 bra $L13; setp.ge.s32 %r210,%r138,3; @ %r210 bra $L14; setp.eq.u32 %r211,%r138,0; @ %r211 bra $L15; setp.lt.s32 %r212,%r138,0; @ ! %r212 bra $L53; bra $L16; $L13: setp.gt.s32 %r213,%r138,6; @ ! %r213 bra $L54; bra $L16; $L15: .loc 1 199 21 mul.f64 %r139,%r137,0d400921fb54442d18; mov.f64 %r215,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r139; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r215; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r138; call (%value_in),__kernel_sin,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r217,[%value_in]; } neg.f64 %r154,%r217; bra $L10; $L53: .loc 1 201 41 mov.f64 %r219,0d3fe0000000000000; sub.f64 %r218,%r219,%r137; .loc 1 201 21 mul.f64 %r142,%r218,0d400921fb54442d18; mov.f64 %r221,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r142; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r221; call (%value_in),__kernel_cos,(%out_arg1,%out_arg2); ld.param.f64 %r222,[%value_in]; } neg.f64 %r154,%r222; bra $L10; $L14: .loc 1 203 41 mov.f64 %r224,0d3ff0000000000000; sub.f64 %r223,%r224,%r137; .loc 1 203 21 mul.f64 %r145,%r223,0d400921fb54442d18; mov.u32 %r227,0; mov.f64 %r226,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r145; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r226; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r227; call (%value_in),__kernel_sin,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r228,[%value_in]; } neg.f64 %r154,%r228; bra $L10; $L54: .loc 1 205 39 mov.f64 %r232,0d3ff8000000000000; sub.f64 %r231,%r137,%r232; .loc 1 205 21 mul.f64 %r233,%r231,0d400921fb54442d18; mov.f64 %r230,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r233; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r230; call (%value_in),__kernel_cos,(%out_arg1,%out_arg2); ld.param.f64 %r234,[%value_in]; } mov.f64 %r154,%r234; bra $L10; $L16: .loc 1 206 39 mov.f64 %r236,0d4000000000000000; sub.f64 %r235,%r137,%r236; .loc 1 206 21 mul.f64 %r151,%r235,0d400921fb54442d18; mov.u32 %r239,0; mov.f64 %r238,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r151; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r238; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r239; call (%value_in),__kernel_sin,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r240,[%value_in]; } neg.f64 %r154,%r240; $L10: .loc 1 239 8 setp.eq.f64 %r241,%r154,0d0000000000000000; @ %r241 bra $L8; .loc 1 240 30 mul.f64 %r243,%r174,%r154; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r243; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r244,[%value_in]; } .loc 1 240 13 mov.f64 %r247,0d400921fb54442d18; div.rn.f64 %r246,%r247,%r244; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r246; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r248,[%value_in]; } mov.f64 %r173,%r248; .loc 1 241 8 setp.lt.f64 %r249,%r154,0d0000000000000000; @ ! %r249 bra $L20; .loc 1 241 27 mov.u32 %r250,-1; st.u32 [%r175],%r250; $L20: .loc 1 246 10 add.u32 %r251,%r98,-1072693248; .loc 1 246 22 or.b32 %r252,%r251,%r97; .loc 1 246 4 setp.eq.u32 %r253,%r252,0; @ %r253 bra $L1; .loc 1 242 8 neg.f64 %r174,%r174; .loc 1 246 37 add.u32 %r254,%r98,-1073741824; .loc 1 246 49 or.b32 %r255,%r254,%r97; .loc 1 246 30 setp.eq.u32 %r256,%r255,0; @ %r256 bra $L41; $L40: .loc 1 248 9 and.b32 %r257,%r96,1073741824; setp.ne.u32 %r258,%r257,0; @ %r258 bra $L24; .loc 1 249 8 setp.gt.s32 %r259,%r98,1072483532; @ %r259 bra $L25; .loc 1 250 8 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r174; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r261,[%value_in]; } .loc 1 250 5 neg.f64 %r99,%r261; .loc 1 251 5 setp.le.s32 %r262,%r98,1072130371; @ %r262 bra $L26; .loc 1 251 25 mov.f64 %r263,0d3ff0000000000000; sub.f64 %r101,%r263,%r174; bra $L27; $L26: .loc 1 252 10 setp.le.s32 %r264,%r98,1070442080; @ %r264 bra $L28; .loc 1 252 29 mov.f64 %r265,0d3fdd8b618d5af8fc; sub.f64 %r102,%r174,%r265; bra $L29; $L25: .loc 1 256 12 setp.le.s32 %r266,%r98,1073460418; @ %r266 bra $L30; .loc 1 256 31 mov.f64 %r267,0d4000000000000000; sub.f64 %r101,%r267,%r174; .loc 1 255 7 mov.f64 %r99,0d0000000000000000; bra $L27; $L30: .loc 1 257 17 setp.le.s32 %r268,%r98,1072936131; @ %r268 bra $L31; .loc 1 257 36 mov.f64 %r269,0d3ff762d86356be3f; sub.f64 %r102,%r174,%r269; .loc 1 255 7 mov.f64 %r99,0d0000000000000000; bra $L29; $L31: .loc 1 258 10 mov.f64 %r270,0d3ff0000000000000; sub.f64 %r174,%r174,%r270; .loc 1 255 7 mov.f64 %r99,0d0000000000000000; bra $L28; $L27: .loc 1 262 5 mul.f64 %r103,%r101,%r101; .loc 1 264 37 fma.rn.f64 %r272,%r103,0d3f07858e90a45837,0d3f1c5088987dfb07; .loc 1 264 31 fma.rn.f64 %r273,%r272,%r103,0d3f40b6c689b99c00; .loc 1 264 25 fma.rn.f64 %r274,%r273,%r103,0d3f67add8ccb7926b; .loc 1 264 19 fma.rn.f64 %r275,%r274,%r103,0d3f951322ac92547b; .loc 1 264 13 fma.rn.f64 %r276,%r275,%r103,0d3fd4a34cc4a60fad; .loc 1 263 34 fma.rn.f64 %r277,%r103,0d3efa7074428cfa52,0d3f2cf2eced10e54d; .loc 1 263 28 fma.rn.f64 %r278,%r277,%r103,0d3f538a94116f3f5d; .loc 1 263 22 fma.rn.f64 %r279,%r278,%r103,0d3f7e404fb68fefe8; .loc 1 263 16 fma.rn.f64 %r280,%r279,%r103,0d3fb13e001a5562a7; .loc 1 263 6 fma.rn.f64 %r281,%r280,%r103,0d3fb3c467e37db0c8; .loc 1 265 9 mul.f64 %r282,%r281,%r101; .loc 1 265 6 fma.rn.f64 %r283,%r276,%r103,%r282; .loc 1 266 11 fma.rn.f64 %r284,%r101,0dbfe0000000000000,%r283; .loc 1 266 6 add.f64 %r94,%r284,%r99; .loc 1 266 3 bra $L32; $L29: .loc 1 268 5 mul.f64 %r106,%r102,%r102; .loc 1 269 5 mul.f64 %r107,%r106,%r102; .loc 1 272 29 fma.rn.f64 %r285,%r107,0d3f35fd3ee8c2d3f4,0dbf41a6109c73e0ec; .loc 1 272 22 fma.rn.f64 %r286,%r285,%r107,0d3f6282d32e15c915; .loc 1 272 16 fma.rn.f64 %r287,%r286,%r107,0dbf851f9fba91ec6a; .loc 1 272 6 fma.rn.f64 %r288,%r287,%r107,0d3fb08b4294d5419b; .loc 1 271 29 fma.rn.f64 %r289,%r107,0dbf347f24ecc38c38,0d3f4cdf0cef61a8e9; .loc 1 271 22 fma.rn.f64 %r290,%r289,%r107,0dbf6e2effb3e914d7; .loc 1 271 16 fma.rn.f64 %r291,%r290,%r107,0d3f9266e7970af9ec; .loc 1 271 6 fma.rn.f64 %r292,%r291,%r107,0dbfc2e4278dc6c509; .loc 1 273 22 fma.rn.f64 %r293,%r288,%r102,%r292; .loc 1 273 16 neg.f64 %r294,%r293; fma.rn.f64 %r295,%r294,%r107,0dbc50c7caa48a971f; .loc 1 273 6 neg.f64 %r296,%r295; .loc 1 270 29 fma.rn.f64 %r297,%r107,0d3f34af6d6c0ebbf7,0dbf56fe8ebf2d1af1; .loc 1 270 22 fma.rn.f64 %r298,%r297,%r107,0d3f78fce0e370e344; .loc 1 270 16 fma.rn.f64 %r299,%r298,%r107,0dbfa0c9a8df35b713; .loc 1 270 6 fma.rn.f64 %r300,%r299,%r107,0d3fdef72bc8ee38a2; .loc 1 273 6 fma.rn.f64 %r301,%r106,%r300,%r296; .loc 1 274 12 mov.f64 %r303,0d3fbf19b9bcc38a42; sub.f64 %r302,%r301,%r303; .loc 1 274 5 add.f64 %r94,%r302,%r99; .loc 1 274 3 bra $L32; $L28: .loc 1 276 37 fma.rn.f64 %r304,%r174,0d3f8b678bbf2bab09,0d3fcd4eaef6010924; .loc 1 276 31 fma.rn.f64 %r305,%r304,%r174,0d3fef497644ea8450; .loc 1 276 25 fma.rn.f64 %r306,%r305,%r174,0d3ff7475cd119bd6f; .loc 1 276 19 fma.rn.f64 %r307,%r306,%r174,0d3fe4401e8b005dff; .loc 1 276 13 fma.rn.f64 %r308,%r307,%r174,0dbfb3c467e37db0c8; .loc 1 276 6 mul.f64 %r309,%r308,%r174; .loc 1 277 35 fma.rn.f64 %r310,%r174,0d3f6a5abb57d0cf61,0d3fbaae55d6537c88; .loc 1 277 29 fma.rn.f64 %r311,%r310,%r174,0d3fe89dfbe45050af; .loc 1 277 23 fma.rn.f64 %r312,%r311,%r174,0d40010725a42b18f5; .loc 1 277 17 fma.rn.f64 %r313,%r312,%r174,0d4003a5d7c2bd619c; .loc 1 277 6 fma.rn.f64 %r314,%r313,%r174,0d3ff0000000000000; .loc 1 278 20 div.rn.f64 %r315,%r309,%r314; .loc 1 278 16 fma.rn.f64 %r316,%r174,0dbfe0000000000000,%r315; .loc 1 278 5 add.f64 %r94,%r316,%r99; bra $L32; $L24: .loc 1 281 9 setp.gt.s32 %r317,%r98,1075838975; @ %r317 bra $L33; .loc 1 282 8 cvt.rzi.s32.f64 %r114,%r174; .loc 1 284 12 cvt.rn.f64.s32 %r318,%r114; .loc 1 284 8 sub.f64 %r115,%r174,%r318; .loc 1 285 45 fma.rn.f64 %r319,%r115,0d3f00bfecdd17e945,0d3f5e26b67368f239; .loc 1 285 39 fma.rn.f64 %r320,%r319,%r115,0d3f9b481c7e939961; .loc 1 285 33 fma.rn.f64 %r321,%r320,%r115,0d3fc2bb9cbee5f2f7; .loc 1 285 27 fma.rn.f64 %r322,%r321,%r115,0d3fd4d98f4f139f59; .loc 1 285 21 fma.rn.f64 %r323,%r322,%r115,0d3fcb848b36e20878; .loc 1 285 15 fma.rn.f64 %r324,%r323,%r115,0dbfb3c467e37db0c8; .loc 1 285 8 mul.f64 %r325,%r324,%r115; .loc 1 286 43 fma.rn.f64 %r326,%r115,0d3edebaf7a5b38140,0d3f497ddaca41a95b; .loc 1 286 37 fma.rn.f64 %r327,%r326,%r115,0d3f9317ea742ed475; .loc 1 286 31 fma.rn.f64 %r328,%r327,%r115,0d3fc601edccfbdf27; .loc 1 286 25 fma.rn.f64 %r329,%r328,%r115,0d3fe71a1893d3dcdc; .loc 1 286 19 fma.rn.f64 %r330,%r329,%r115,0d3ff645a762c4ab74; .loc 1 286 8 fma.rn.f64 %r331,%r330,%r115,0d3ff0000000000000; .loc 1 287 18 div.rn.f64 %r332,%r325,%r331; .loc 1 287 8 fma.rn.f64 %r94,%r115,0d3fe0000000000000,%r332; setp.eq.u32 %r333,%r114,5; @ %r333 bra $L42; setp.gt.s32 %r334,%r114,5; @ %r334 bra $L35; setp.eq.u32 %r335,%r114,3; @ %r335 bra $L43; setp.eq.u32 %r336,%r114,4; @ %r336 bra $L44; bra $L32; $L35: setp.eq.u32 %r337,%r114,6; @ %r337 bra $L45; setp.ne.u32 %r338,%r114,7; @ %r338 bra $L32; .loc 1 290 21 add.f64 %r77,%r115,0d4018000000000000; bra $L38; $L45: .loc 1 288 8 mov.f64 %r77,0d3ff0000000000000; $L38: .loc 1 291 21 add.f64 %r339,%r115,0d4014000000000000; .loc 1 291 16 mul.f64 %r91,%r339,%r77; bra $L34; $L42: .loc 1 288 8 mov.f64 %r91,0d3ff0000000000000; $L34: .loc 1 292 21 add.f64 %r340,%r115,0d4010000000000000; .loc 1 292 16 mul.f64 %r92,%r340,%r91; bra $L37; $L44: .loc 1 288 8 mov.f64 %r92,0d3ff0000000000000; $L37: .loc 1 293 21 add.f64 %r341,%r115,0d4008000000000000; .loc 1 293 16 mul.f64 %r93,%r341,%r92; bra $L36; $L43: .loc 1 288 8 mov.f64 %r93,0d3ff0000000000000; $L36: .loc 1 294 21 add.f64 %r343,%r115,0d4000000000000000; .loc 1 294 16 mul.f64 %r344,%r343,%r93; .loc 1 295 12 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r344; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r345,[%value_in]; } .loc 1 295 9 add.f64 %r94,%r94,%r345; .loc 1 295 7 bra $L32; $L33: .loc 1 298 12 setp.gt.s32 %r346,%r98,1133510655; @ %r346 bra $L39; .loc 1 299 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r174; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r348,[%value_in]; } .loc 1 300 8 mov.f64 %r349,0d3ff0000000000000; div.rn.f64 %r122,%r349,%r174; .loc 1 301 8 mul.f64 %r123,%r122,%r122; .loc 1 303 12 mov.f64 %r351,0d3fe0000000000000; sub.f64 %r350,%r174,%r351; .loc 1 302 42 fma.rn.f64 %r352,%r123,0dbf5ab89d0b9e43e4,0d3f4b67ba4cdad5d1; .loc 1 302 36 fma.rn.f64 %r353,%r352,%r123,0dbf4380cb8c0fe741; .loc 1 302 30 fma.rn.f64 %r354,%r353,%r123,0d3f4a019f98cf38b6; .loc 1 302 24 fma.rn.f64 %r355,%r354,%r123,0dbf66c16c16b02e5c; .loc 1 302 18 fma.rn.f64 %r356,%r355,%r123,0d3fb555555555553b; .loc 1 302 8 fma.rn.f64 %r357,%r356,%r122,0d3fdacfe390c97d69; .loc 1 303 21 sub.f64 %r358,%r348,%r349; .loc 1 303 8 fma.rn.f64 %r94,%r350,%r358,%r357; bra $L32; $L39: .loc 1 306 14 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r174; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r361,[%value_in]; } .loc 1 306 30 mov.f64 %r363,0d3ff0000000000000; sub.f64 %r362,%r361,%r363; .loc 1 306 8 mul.f64 %r94,%r362,%r174; $L32: .loc 1 307 4 @ ! %r372 bra $L23; bra $L46; $L41: .loc 1 246 61 mov.f64 %r94,0d0000000000000000; $L23: sub.f64 %r173,%r173,%r94; bra $L1; $L46: mov.f64 %r173,%r94; bra $L1; $L47: mov.f64 %r173,0d0000000000000000; bra $L1; $L48: mov.f64 %r173,0d0000000000000000; bra $L1; $L7: .loc 1 246 10 add.u32 %r366,%r98,-1072693248; .loc 1 246 22 or.b32 %r367,%r366,%r97; .loc 1 246 4 setp.eq.u32 %r368,%r367,0; @ %r368 bra $L47; .loc 1 246 37 add.u32 %r369,%r98,-1073741824; .loc 1 246 49 or.b32 %r370,%r369,%r97; .loc 1 246 30 setp.eq.u32 %r371,%r370,0; @ %r371 bra $L48; .loc 1 219 15 mov.f64 %r173,0d0000000000000000; bra $L40; $L1: .loc 1 309 1 mov.f64 %value,%r173; st.param.f64 [%value_out],%value; ret; } /291 1591654539 399 399 100644 1394 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_gammaf_r .visible .func (.param .f32 %value_out) __ieee754_gammaf_r (.param .f32 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libm/math/erf_gamma.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_gammaf_r .visible .func (.param .f32 %value_out) __ieee754_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 %r24; .reg .u64 %r25; .reg .f32 %r28; .reg .f32 %r30; mov.f32 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 33 9 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; 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]; } .loc 1 34 1 mov.f32 %value,%r30; st.param.f32 [%value_out],%value; ret; } /310 1591654539 399 399 100644 17825 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r76; .reg .f32 %r90; .reg .f32 %r91; .reg .f32 %r92; .reg .u32 %r94; .reg .u32 %r95; .reg .f32 %r97; .reg .f32 %r98; .reg .f32 %r99; .reg .f32 %r100; .reg .f32 %r103; .reg .f32 %r104; .reg .u32 %r111; .reg .f32 %r113; .reg .f32 %r119; .reg .f32 %r120; .reg .f32 %r123; .reg .f32 %r125; .reg .f32 %r127; .reg .u32 %r131; .reg .u32 %r132; .reg .f32 %r133; .reg .u32 %r134; .reg .f32 %r136; .reg .f32 %r139; .reg .f32 %r142; .reg .f32 %r147; .reg .f32 %r149; .reg .f32 %r152; .reg .f32 %r168; .reg .f32 %r169; .reg .u64 %r170; .reg .u32 %r171; .reg .pred %r172; .reg .pred %r173; .reg .f32 %r174; .reg .pred %r175; .reg .pred %r176; .reg .u32 %r177; .reg .f32 %r179; .reg .f32 %r180; .reg .f32 %r182; .reg .pred %r184; .reg .pred %r185; .reg .f32 %r187; .reg .u32 %r188; .reg .f32 %r189; .reg .f32 %r190; .reg .f32 %r192; .reg .pred %r193; .reg .f32 %r195; .reg .f32 %r196; .reg .f32 %r197; .reg .f32 %r198; .reg .pred %r199; .reg .pred %r200; .reg .pred %r201; .reg .pred %r202; .reg .pred %r203; .reg .f32 %r205; .reg .f32 %r207; .reg .f32 %r208; .reg .f32 %r209; .reg .f32 %r211; .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 %r259; .reg .f32 %r260; .reg .f32 %r261; .reg .f32 %r262; .reg .f32 %r263; .reg .f32 %r264; .reg .f32 %r265; .reg .f32 %r266; .reg .f32 %r267; .reg .f32 %r268; .reg .f32 %r269; .reg .f32 %r270; .reg .f32 %r271; .reg .f32 %r272; .reg .f32 %r273; .reg .f32 %r274; .reg .f32 %r275; .reg .f32 %r276; .reg .f32 %r277; .reg .f32 %r278; .reg .f32 %r279; .reg .f32 %r280; .reg .f32 %r281; .reg .f32 %r282; .reg .f32 %r283; .reg .f32 %r284; .reg .f32 %r285; .reg .f32 %r286; .reg .f32 %r287; .reg .f32 %r288; .reg .f32 %r289; .reg .f32 %r290; .reg .f32 %r291; .reg .f32 %r292; .reg .f32 %r293; .reg .f32 %r294; .reg .f32 %r295; .reg .f32 %r296; .reg .f32 %r297; .reg .f32 %r298; .reg .f32 %r299; .reg .f32 %r300; .reg .f32 %r301; .reg .f32 %r302; .reg .f32 %r303; .reg .pred %r304; .reg .f32 %r305; .reg .f32 %r306; .reg .f32 %r307; .reg .f32 %r308; .reg .f32 %r309; .reg .f32 %r310; .reg .f32 %r311; .reg .f32 %r312; .reg .f32 %r313; .reg .f32 %r314; .reg .f32 %r315; .reg .f32 %r316; .reg .f32 %r317; .reg .f32 %r318; .reg .f32 %r319; .reg .pred %r320; .reg .pred %r321; .reg .pred %r322; .reg .pred %r323; .reg .pred %r324; .reg .pred %r325; .reg .f32 %r326; .reg .f32 %r327; .reg .f32 %r328; .reg .f32 %r330; .reg .f32 %r331; .reg .f32 %r332; .reg .pred %r333; .reg .f32 %r335; .reg .f32 %r336; .reg .f32 %r337; .reg .f32 %r338; .reg .f32 %r339; .reg .f32 %r340; .reg .f32 %r341; .reg .f32 %r342; .reg .f32 %r343; .reg .f32 %r344; .reg .f32 %r345; .reg .f32 %r348; .reg .f32 %r349; .reg .f32 %r350; .reg .u32 %r353; .reg .u32 %r354; .reg .pred %r355; .reg .pred %r356; mov.f32 %r169,%ar0; mov.u64 %r170,%ar1; .loc 1 157 2 mov.b32 %r94,%r169; .loc 1 160 12 mov.u32 %r171,1; st.u32 [%r170],%r171; .loc 1 161 5 and.b32 %r95,%r94,2147483647; .loc 1 162 4 setp.le.s32 %r172,%r95,2139095039; @ %r172 bra $L2; .loc 1 162 29 mul.f32 %r168,%r169,%r169; bra $L1; $L2: .loc 1 163 4 setp.ne.u32 %r173,%r95,0; @ %r173 bra $L4; $L8: .loc 1 163 22 mov.f32 %r174,0f3f800000; div.rn.f32 %r168,%r174,0f00000000; bra $L1; $L4: .loc 1 164 4 setp.gt.s32 %r175,%r95,478150655; @ %r175 bra $L5; .loc 1 165 8 setp.ge.s32 %r176,%r94,0; @ %r176 bra $L6; .loc 1 166 20 mov.u32 %r177,-1; st.u32 [%r170],%r177; .loc 1 167 18 neg.f32 %r179,%r169; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r179; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r180,[%value_in]; } .loc 1 167 17 neg.f32 %r168,%r180; bra $L1; $L6: .loc 1 168 21 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r169; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r182,[%value_in]; } .loc 1 168 20 neg.f32 %r168,%r182; bra $L1; $L5: .loc 1 170 4 setp.ge.s32 %r356,%r94,0; @ %r356 bra $L7; .loc 1 171 8 setp.gt.s32 %r184,%r95,1258291199; @ %r184 bra $L8; .loc 1 110 4 setp.gt.s32 %r185,%r95,1048575999; @ %r185 bra $L9; .loc 1 110 27 mul.f32 %r189,%r169,0f40490fdb; mov.u32 %r188,0; mov.f32 %r187,0f00000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r189; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r187; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r188; call (%value_in),__kernel_sinf,(%out_arg1,%out_arg2,%out_arg3); ld.param.f32 %r190,[%value_in]; } mov.f32 %r149,%r190; bra $L10; $L9: .loc 1 111 4 neg.f32 %r123,%r169; .loc 1 117 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r123; call (%value_in),floorf,(%out_arg1); ld.param.f32 %r192,[%value_in]; } .loc 1 118 4 setp.eq.f32 %r193,%r123,%r192; @ %r193 bra $L11; .loc 1 119 9 mul.f32 %r125,%r123,0f3f000000; .loc 1 120 28 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r125; call (%value_in),floorf,(%out_arg1); ld.param.f32 %r195,[%value_in]; } .loc 1 120 26 sub.f32 %r127,%r125,%r195; .loc 1 120 10 add.f32 %r133,%r127,%r127; .loc 1 121 26 mul.f32 %r196,%r133,0f40800000; .loc 1 121 10 cvt.rzi.s32.f32 %r134,%r196; bra $L12; $L11: .loc 1 127 3 mov.f32 %r198,0f4b000000; sub.f32 %r197,%r198,%r169; mov.b32 %r131,%r197; .loc 1 128 5 and.b32 %r132,%r131,1; .loc 1 129 20 cvt.rn.f32.s32 %r133,%r132; .loc 1 130 18 shl.b32 %r134,%r132,2; $L12: setp.gt.s32 %r199,%r134,4; @ %r199 bra $L13; setp.ge.s32 %r200,%r134,3; @ %r200 bra $L14; setp.eq.u32 %r201,%r134,0; @ %r201 bra $L15; setp.lt.s32 %r202,%r134,0; @ ! %r202 bra $L49; bra $L16; $L13: setp.gt.s32 %r203,%r134,6; @ ! %r203 bra $L50; bra $L16; $L15: .loc 1 134 21 mul.f32 %r136,%r133,0f40490fdb; mov.f32 %r205,0f00000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r136; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r205; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r134; call (%value_in),__kernel_sinf,(%out_arg1,%out_arg2,%out_arg3); ld.param.f32 %r207,[%value_in]; } neg.f32 %r149,%r207; bra $L10; $L49: .loc 1 136 49 mov.f32 %r209,0f3f000000; sub.f32 %r208,%r209,%r133; .loc 1 136 21 mul.f32 %r139,%r208,0f40490fdb; mov.f32 %r211,0f00000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r139; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r211; call (%value_in),__kernel_cosf,(%out_arg1,%out_arg2); ld.param.f32 %r212,[%value_in]; } neg.f32 %r149,%r212; bra $L10; $L14: .loc 1 138 42 mov.f32 %r214,0f3f800000; sub.f32 %r213,%r214,%r133; .loc 1 138 21 mul.f32 %r142,%r213,0f40490fdb; mov.u32 %r217,0; mov.f32 %r216,0f00000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r142; .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]; } neg.f32 %r149,%r218; bra $L10; $L50: .loc 1 140 40 mov.f32 %r222,0f3fc00000; sub.f32 %r221,%r133,%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 %r149,%r224; bra $L10; $L16: .loc 1 141 40 mov.f32 %r226,0f40000000; sub.f32 %r225,%r133,%r226; .loc 1 141 21 mul.f32 %r147,%r225,0f40490fdb; mov.u32 %r229,0; mov.f32 %r228,0f00000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r147; .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]; } neg.f32 %r149,%r230; $L10: .loc 1 174 8 setp.eq.f32 %r231,%r149,0f00000000; @ %r231 bra $L8; .loc 1 175 31 mul.f32 %r233,%r169,%r149; { .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 175 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 %r168,%r238; .loc 1 176 8 setp.lt.f32 %r239,%r149,0f00000000; @ ! %r239 bra $L20; .loc 1 176 27 mov.u32 %r240,-1; st.u32 [%r170],%r240; $L20: .loc 1 181 8 add.u32 %r241,%r95,-1065353216; and.b32 %r242,%r241,-8388609; .loc 1 181 5 setp.eq.u32 %r243,%r242,0; @ %r243 bra $L1; .loc 1 177 8 neg.f32 %r169,%r169; .loc 1 175 13 mov.f32 %r152,%r238; $L39: .loc 1 183 9 and.b32 %r244,%r94,1073741824; setp.ne.u32 %r245,%r244,0; @ %r245 bra $L23; .loc 1 184 8 setp.gt.s32 %r246,%r95,1063675494; @ %r246 bra $L24; .loc 1 185 8 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r169; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r248,[%value_in]; } .loc 1 185 5 neg.f32 %r97,%r248; .loc 1 186 5 setp.le.s32 %r249,%r95,1060850207; @ %r249 bra $L25; .loc 1 186 25 mov.f32 %r250,0f3f800000; sub.f32 %r98,%r250,%r169; bra $L26; $L25: .loc 1 187 10 setp.le.s32 %r251,%r95,1047343879; @ %r251 bra $L27; .loc 1 187 29 mov.f32 %r252,0f3eec5b0c; sub.f32 %r99,%r169,%r252; bra $L28; $L24: .loc 1 191 12 setp.le.s32 %r253,%r95,1071490583; @ %r253 bra $L29; .loc 1 191 31 mov.f32 %r254,0f40000000; sub.f32 %r98,%r254,%r169; .loc 1 190 7 mov.f32 %r97,0f00000000; bra $L26; $L29: .loc 1 192 17 setp.le.s32 %r255,%r95,1067296287; @ %r255 bra $L30; .loc 1 192 36 mov.f32 %r256,0f3fbb16c3; sub.f32 %r99,%r169,%r256; .loc 1 190 7 mov.f32 %r97,0f00000000; bra $L28; $L30: .loc 1 193 10 mov.f32 %r257,0f3f800000; sub.f32 %r169,%r169,%r257; .loc 1 190 7 mov.f32 %r97,0f00000000; bra $L27; $L26: .loc 1 197 5 mul.f32 %r100,%r98,%r98; .loc 1 199 37 fma.rn.f32 %r259,%r100,0f383c2c75,0f38e28445; .loc 1 199 31 fma.rn.f32 %r260,%r259,%r100,0f3a05b634; .loc 1 199 25 fma.rn.f32 %r261,%r260,%r100,0f3b3d6ec6; .loc 1 199 19 fma.rn.f32 %r262,%r261,%r100,0f3ca89915; .loc 1 199 13 fma.rn.f32 %r263,%r262,%r100,0f3ea51a66; .loc 1 198 34 fma.rn.f32 %r264,%r100,0f37d383a2,0f39679767; .loc 1 198 28 fma.rn.f32 %r265,%r264,%r100,0f3a9c54a1; .loc 1 198 22 fma.rn.f32 %r266,%r265,%r100,0f3bf2027e; .loc 1 198 16 fma.rn.f32 %r267,%r266,%r100,0f3d89f001; .loc 1 198 6 fma.rn.f32 %r268,%r267,%r100,0f3d9e233f; .loc 1 200 9 mul.f32 %r269,%r268,%r98; .loc 1 200 6 fma.rn.f32 %r270,%r263,%r100,%r269; .loc 1 201 11 fma.rn.f32 %r271,%r98,0fbf000000,%r270; .loc 1 201 6 add.f32 %r168,%r271,%r97; .loc 1 201 3 bra $L31; $L28: .loc 1 203 5 mul.f32 %r103,%r99,%r99; .loc 1 204 5 mul.f32 %r104,%r103,%r99; .loc 1 207 29 fma.rn.f32 %r272,%r104,0f39afe9f7,0fba0d3085; .loc 1 207 22 fma.rn.f32 %r273,%r272,%r104,0f3b141699; .loc 1 207 16 fma.rn.f32 %r274,%r273,%r104,0fbc28fcfe; .loc 1 207 6 fma.rn.f32 %r275,%r274,%r104,0f3d845a15; .loc 1 206 29 fma.rn.f32 %r276,%r104,0fb9a3f927,0f3a66f867; .loc 1 206 22 fma.rn.f32 %r277,%r276,%r104,0fbb7177fe; .loc 1 206 16 fma.rn.f32 %r278,%r277,%r104,0f3c93373d; .loc 1 206 6 fma.rn.f32 %r279,%r278,%r104,0fbe17213c; .loc 1 208 22 fma.rn.f32 %r280,%r275,%r99,%r279; .loc 1 208 16 neg.f32 %r281,%r280; fma.rn.f32 %r282,%r281,%r104,0f31e61c52; .loc 1 208 6 neg.f32 %r283,%r282; .loc 1 205 29 fma.rn.f32 %r284,%r104,0f39a57b6b,0fbab7f476; .loc 1 205 22 fma.rn.f32 %r285,%r284,%r104,0f3bc7e707; .loc 1 205 16 fma.rn.f32 %r286,%r285,%r104,0fbd064d47; .loc 1 205 6 fma.rn.f32 %r287,%r286,%r104,0f3ef7b95e; .loc 1 208 6 fma.rn.f32 %r288,%r103,%r287,%r283; .loc 1 209 12 mov.f32 %r290,0f3df8cdcd; sub.f32 %r289,%r288,%r290; .loc 1 209 5 add.f32 %r168,%r289,%r97; .loc 1 209 3 bra $L31; $L27: .loc 1 211 37 fma.rn.f32 %r291,%r169,0f3c5b3c5e,0f3e6a7578; .loc 1 211 31 fma.rn.f32 %r292,%r291,%r169,0f3f7a4bb2; .loc 1 211 25 fma.rn.f32 %r293,%r292,%r169,0f3fba3ae7; .loc 1 211 19 fma.rn.f32 %r294,%r293,%r169,0f3f2200f4; .loc 1 211 13 fma.rn.f32 %r295,%r294,%r169,0fbd9e233f; .loc 1 211 6 mul.f32 %r296,%r295,%r169; .loc 1 212 35 fma.rn.f32 %r297,%r169,0f3b52d5db,0f3dd572af; .loc 1 212 29 fma.rn.f32 %r298,%r297,%r169,0f3f44efdf; .loc 1 212 23 fma.rn.f32 %r299,%r298,%r169,0f4008392d; .loc 1 212 17 fma.rn.f32 %r300,%r299,%r169,0f401d2ebe; .loc 1 212 6 fma.rn.f32 %r301,%r300,%r169,0f3f800000; .loc 1 213 27 div.rn.f32 %r302,%r296,%r301; .loc 1 213 23 fma.rn.f32 %r303,%r169,0fbf000000,%r302; .loc 1 213 5 add.f32 %r168,%r303,%r97; bra $L31; $L23: .loc 1 216 9 setp.gt.s32 %r304,%r95,1090519039; @ %r304 bra $L32; .loc 1 217 8 cvt.rzi.s32.f32 %r111,%r169; .loc 1 219 12 cvt.rn.f32.s32 %r305,%r111; .loc 1 219 8 sub.f32 %r113,%r169,%r305; .loc 1 220 45 fma.rn.f32 %r306,%r113,0f3805ff67,0f3af135b4; .loc 1 220 39 fma.rn.f32 %r307,%r306,%r113,0f3cda40e4; .loc 1 220 33 fma.rn.f32 %r308,%r307,%r113,0f3e15dce6; .loc 1 220 27 fma.rn.f32 %r309,%r308,%r113,0f3ea6cc7a; .loc 1 220 21 fma.rn.f32 %r310,%r309,%r113,0f3e5c245a; .loc 1 220 15 fma.rn.f32 %r311,%r310,%r113,0fbd9e233f; .loc 1 220 8 mul.f32 %r312,%r311,%r113; .loc 1 221 43 fma.rn.f32 %r313,%r113,0f36f5d7bd,0f3a4beed6; .loc 1 221 37 fma.rn.f32 %r314,%r313,%r113,0f3c98bf54; .loc 1 221 31 fma.rn.f32 %r315,%r314,%r113,0f3e300f6e; .loc 1 221 25 fma.rn.f32 %r316,%r315,%r113,0f3f38d0c5; .loc 1 221 19 fma.rn.f32 %r317,%r316,%r113,0f3fb22d3b; .loc 1 221 8 fma.rn.f32 %r318,%r317,%r113,0f3f800000; .loc 1 222 18 div.rn.f32 %r319,%r312,%r318; .loc 1 222 8 fma.rn.f32 %r168,%r113,0f3f000000,%r319; setp.eq.u32 %r320,%r111,5; @ %r320 bra $L40; setp.gt.s32 %r321,%r111,5; @ %r321 bra $L34; setp.eq.u32 %r322,%r111,3; @ %r322 bra $L41; setp.eq.u32 %r323,%r111,4; @ %r323 bra $L42; bra $L31; $L34: setp.eq.u32 %r324,%r111,6; @ %r324 bra $L43; setp.ne.u32 %r325,%r111,7; @ %r325 bra $L31; .loc 1 225 21 add.f32 %r76,%r113,0f40c00000; bra $L37; $L43: .loc 1 223 8 mov.f32 %r76,0f3f800000; $L37: .loc 1 226 21 add.f32 %r326,%r113,0f40a00000; .loc 1 226 16 mul.f32 %r90,%r326,%r76; bra $L33; $L40: .loc 1 223 8 mov.f32 %r90,0f3f800000; $L33: .loc 1 227 21 add.f32 %r327,%r113,0f40800000; .loc 1 227 16 mul.f32 %r91,%r327,%r90; bra $L36; $L42: .loc 1 223 8 mov.f32 %r91,0f3f800000; $L36: .loc 1 228 21 add.f32 %r328,%r113,0f40400000; .loc 1 228 16 mul.f32 %r92,%r328,%r91; bra $L35; $L41: .loc 1 223 8 mov.f32 %r92,0f3f800000; $L35: .loc 1 229 21 add.f32 %r330,%r113,0f40000000; .loc 1 229 16 mul.f32 %r331,%r330,%r92; .loc 1 230 12 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r331; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r332,[%value_in]; } .loc 1 230 9 add.f32 %r168,%r168,%r332; .loc 1 230 7 bra $L31; $L32: .loc 1 233 12 setp.gt.s32 %r333,%r95,1551892479; @ %r333 bra $L38; .loc 1 234 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r169; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r335,[%value_in]; } .loc 1 235 8 mov.f32 %r336,0f3f800000; div.rn.f32 %r119,%r336,%r169; .loc 1 236 8 mul.f32 %r120,%r119,%r119; .loc 1 238 12 mov.f32 %r338,0f3f000000; sub.f32 %r337,%r169,%r338; .loc 1 237 42 fma.rn.f32 %r339,%r120,0fbad5c4e8,0f3a5b3dd2; .loc 1 237 36 fma.rn.f32 %r340,%r339,%r120,0fba1c065c; .loc 1 237 30 fma.rn.f32 %r341,%r340,%r120,0f3a500cfd; .loc 1 237 24 fma.rn.f32 %r342,%r341,%r120,0fbb360b61; .loc 1 237 18 fma.rn.f32 %r343,%r342,%r120,0f3daaaaab; .loc 1 237 8 fma.rn.f32 %r344,%r343,%r119,0f3ed67f1d; .loc 1 238 21 sub.f32 %r345,%r335,%r336; .loc 1 238 8 fma.rn.f32 %r168,%r337,%r345,%r344; bra $L31; $L38: .loc 1 241 14 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r169; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r348,[%value_in]; } .loc 1 241 31 mov.f32 %r350,0f3f800000; sub.f32 %r349,%r348,%r350; .loc 1 241 8 mul.f32 %r168,%r349,%r169; $L31: .loc 1 242 4 @ %r356 bra $L1; sub.f32 %r168,%r152,%r168; bra $L1; $L44: .loc 1 181 40 mov.f32 %r168,0f00000000; bra $L1; $L7: .loc 1 181 8 add.u32 %r353,%r95,-1065353216; and.b32 %r354,%r353,-8388609; .loc 1 181 5 setp.eq.u32 %r355,%r354,0; @ %r355 bra $L44; .loc 1 154 14 mov.f32 %r152,0f00000000; bra $L39; $L1: .loc 1 244 1 mov.f32 %value,%r168; st.param.f32 [%value_out],%value; ret; } lib_a-erfcl.o/ 1591654539 399 399 100644 793 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654539 399 399 100644 785 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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-exp2l.o/ 1591654539 399 399 100644 793 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } lib_a-expl.o/ 1591654539 399 399 100644 785 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654539 399 399 100644 801 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654539 399 399 100644 793 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // 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; .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),fabs,(%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-fdiml.o/ 1591654539 399 399 100644 1000 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } lib_a-floorl.o/ 1591654539 399 399 100644 801 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 DECL: floor .extern .func (.param .f64 %value_out) floor (.param .f64 %in_ar0); // 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; .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),floor,(%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-fmal.o/ 1591654539 399 399 100644 1199 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 DECL: fma .extern .func (.param .f64 %value_out) fma (.param .f64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); // 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; .reg .f64 %r29; mov.f64 %r23,%ar0; mov.f64 %r24,%ar1; mov.f64 %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 .f64 %out_arg3; st.param.f64 [%out_arg3],%r25; call (%value_in),fma,(%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-fmaxl.o/ 1591654539 399 399 100644 1000 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654539 399 399 100644 1000 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654539 399 399 100644 1000 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654539 399 399 100644 1008 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654539 399 399 100644 1008 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 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),hypot,(%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-ilogbl.o/ 1591654539 399 399 100644 801 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654539 399 399 100644 3350 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .f64 %r46; .reg .f64 %r52; .reg .f64 %r54; .reg .f64 %r58; .reg .f64 %r59; .reg .f64 %r60; .reg .u64 %r61; .reg .u64 %r62; .reg .pred %r63; .reg .u32 %r64; .reg .pred %r65; .reg .f64 %r66; .reg .f64 %r67; .reg .f64 %r68; .reg .f64 %r69; .reg .f64 %r70; .reg .pred %r71; .reg .f64 %r72; .reg .f64 %r73; .reg .f64 %r74; .reg .f64 %r75; .reg .f64 %r76; .reg .f64 %r77; .reg .pred %r78; .reg .u32 %r79; .reg .u64 %r80; .reg .u64 %r84; .reg .f64 %r85; .reg .f64 %r86; .reg .f64 %r87; .reg .f64 %r88; .reg .f64 %r89; .reg .f64 %r90; .reg .f64 %r91; .reg .f64 %r93; .reg .f64 %r94; .reg .f64 %r95; .reg .f64 %r96; .reg .f64 %r97; mov.f64 %r59,%ar0; mov.f64 %r60,%ar1; .loc 1 75 2 mov.b64 %r61,%r59; shr.u64 %r62,%r61,32; cvt.u32.u64 %r37,%r62; .loc 1 76 5 and.b32 %r38,%r37,2147483647; .loc 1 77 4 setp.gt.s32 %r63,%r38,1044381695; @ %r63 bra $L2; .loc 1 78 10 cvt.rzi.s32.f64 %r64,%r59; .loc 1 78 8 setp.eq.u32 %r65,%r64,0; @ ! %r65 bra $L10; bra $L8; $L2: .loc 1 80 5 mul.f64 %r46,%r59,%r59; .loc 1 81 36 fma.rn.f64 %r66,%r46,0dbda8fae9be8838d4,0d3e21ee9ebdb4b1c4; .loc 1 81 30 fma.rn.f64 %r67,%r66,%r46,0dbe927e4f809c52ad; .loc 1 81 24 fma.rn.f64 %r68,%r67,%r46,0d3efa01a019cb1590; .loc 1 81 18 fma.rn.f64 %r69,%r68,%r46,0dbf56c16c16c15177; .loc 1 81 12 fma.rn.f64 %r70,%r69,%r46,0d3fa555555555554c; .loc 1 81 5 mul.f64 %r52,%r70,%r46; .loc 1 82 4 setp.gt.s32 %r71,%r38,1070805810; @ %r71 bra $L5; $L7: .loc 1 83 36 mul.f64 %r72,%r59,%r60; .loc 1 83 33 neg.f64 %r73,%r72; fma.rn.f64 %r74,%r46,%r52,%r73; .loc 1 83 26 neg.f64 %r75,%r74; fma.rn.f64 %r76,%r46,0d3fe0000000000000,%r75; .loc 1 83 17 mov.f64 %r77,0d3ff0000000000000; sub.f64 %r58,%r77,%r76; bra $L1; $L5: .loc 1 85 8 setp.gt.s32 %r78,%r38,1072234496; @ %r78 bra $L9; .loc 1 88 10 add.u32 %r79,%r38,-2097152; cvt.u64.u32 %r80,%r79; shl.b64 %r84,%r80,32; mov.b64 %r36,%r84; mov.f64 %r85,0d3ff0000000000000; sub.f64 %r54,%r85,%r36; bra $L6; $L9: mov.f64 %r54,0d3fe7000000000000; .loc 1 86 6 mov.f64 %r36,0d3fd2000000000000; $L6: .loc 1 90 9 neg.f64 %r86,%r36; fma.rn.f64 %r87,%r46,0d3fe0000000000000,%r86; .loc 1 92 29 mul.f64 %r88,%r59,%r60; .loc 1 92 27 neg.f64 %r89,%r88; fma.rn.f64 %r90,%r46,%r52,%r89; .loc 1 92 21 sub.f64 %r91,%r87,%r90; .loc 1 92 15 sub.f64 %r58,%r54,%r91; bra $L1; $L8: .loc 1 78 29 mov.f64 %r58,0d3ff0000000000000; bra $L1; $L10: .loc 1 80 5 mul.f64 %r46,%r59,%r59; .loc 1 81 36 fma.rn.f64 %r93,%r46,0dbda8fae9be8838d4,0d3e21ee9ebdb4b1c4; .loc 1 81 30 fma.rn.f64 %r94,%r46,%r93,0dbe927e4f809c52ad; .loc 1 81 24 fma.rn.f64 %r95,%r46,%r94,0d3efa01a019cb1590; .loc 1 81 18 fma.rn.f64 %r96,%r46,%r95,0dbf56c16c16c15177; .loc 1 81 12 fma.rn.f64 %r97,%r46,%r96,0d3fa555555555554c; .loc 1 81 5 mul.f64 %r52,%r97,%r46; bra $L7; $L1: .loc 1 94 1 mov.f64 %value,%r58; st.param.f64 [%value_out],%value; ret; } /330 1591654539 399 399 100644 25368 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r38; .reg .u32 %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u32 %r42; .reg .f64 %r43; .reg .u32 %r45; .reg .u32 %r51; .reg .u32 %r53; .reg .u32 %r55; .reg .u64 %r71; .reg .u32 %r75; .reg .u64 %r82; .reg .f64 %r90; .reg .f64 %r93; .reg .u32 %r99; .reg .u32 %r102; .reg .u32 %r103; .reg .u32 %r105; .reg .u64 %r106; .reg .u64 %r108; .reg .u64 %r109; .reg .f64 %r113; .reg .u32 %r114; .reg .f64 %r116; .reg .u64 %r121; .reg .f64 %r122; .reg .u64 %r123; .reg .u64 %r124; .reg .f64 %r125; .reg .u32 %r126; .reg .u32 %r128; .reg .u32 %r130; .reg .f64 %r131; .reg .f64 %r133; .reg .f64 %r136; .reg .u32 %r137; .reg .u32 %r138; .reg .u32 %r141; .reg .f64 %r143; .reg .u32 %r145; .reg .u32 %r146; .reg .f64 %r149; .reg .f64 %r150; .reg .f64 %r151; .reg .f64 %r152; .reg .f64 %r156; .reg .u32 %r157; .reg .f64 %r158; .reg .f64 %r159; .reg .f64 %r160; .reg .u32 %r162; .reg .u64 %r163; .reg .u64 %r164; .reg .u32 %r165; .reg .u32 %r172; .reg .u64 %r173; .reg .u64 %r175; .reg .u64 %r177; .reg .u64 %r181; .reg .u32 %r186; .reg .u64 %r187; .reg .u64 %r190; .reg .f64 %r191; .reg .f64 %r195; .reg .f64 %r196; .reg .f64 %r200; .reg .u32 %r201; .reg .u32 %r202; .reg .u64 %r204; .reg .u64 %r205; .reg .u64 %r207; .reg .u64 %r216; .reg .u64 %r217; .reg .u64 %r223; .reg .u64 %r224; .reg .u64 %r235; .reg .u64 %r237; .reg .u64 %r244; .reg .u64 %r249; .reg .u64 %r262; .reg .u64 %r263; .reg .u64 %r264; .reg .u64 %r270; .reg .u64 %r272; .reg .u64 %r282; .reg .u64 %r283; .reg .u64 %r295; .reg .u64 %r297; .reg .u64 %r299; .reg .u64 %r300; .reg .u64 %r312; .reg .u64 %r313; .reg .u64 %r314; .reg .u64 %r325; .reg .u64 %r326; .reg .u32 %r327; .reg .u32 %r332; .reg .u64 %r333; .reg .u64 %r334; .reg .u32 %r342; .reg .u64 %r345; .reg .u64 %r346; .reg .u32 %r347; .reg .u32 %r348; .reg .u32 %r349; .reg .u64 %r350; .reg .u64 %r351; .reg .u64 %r352; .reg .u64 %r353; .reg .u64 %r354; .reg .pred %r355; .reg .u32 %r356; .reg .u32 %r357; .reg .u32 %r359; .reg .u32 %r360; .reg .pred %r362; .reg .u64 %r365; .reg .u64 %r366; .reg .u64 %r367; .reg .u64 %r368; .reg .u64 %r369; .reg .u32 %r370; .reg .pred %r371; .reg .u32 %r372; .reg .pred %r373; .reg .u64 %r375; .reg .u64 %r376; .reg .f64 %r377; .reg .f64 %r378; .reg .pred %r379; .reg .pred %r380; .reg .u64 %r383; .reg .u64 %r384; .reg .u64 %r385; .reg .u64 %r386; .reg .u64 %r387; .reg .u64 %r389; .reg .u64 %r390; .reg .u64 %r394; .reg .u32 %r395; .reg .u64 %r396; .reg .u64 %r397; .reg .f64 %r399; .reg .u32 %r400; .reg .f64 %r402; .reg .u32 %r403; .reg .f64 %r404; .reg .pred %r405; .reg .f64 %r408; .reg .f64 %r410; .reg .f64 %r411; .reg .f64 %r413; .reg .u64 %r415; .reg .u64 %r416; .reg .u64 %r417; .reg .u64 %r418; .reg .u32 %r419; .reg .u32 %r420; .reg .u32 %r425; .reg .u32 %r426; .reg .u32 %r428; .reg .u64 %r429; .reg .u64 %r430; .reg .u64 %r431; .reg .u32 %r433; .reg .pred %r434; .reg .pred %r435; .reg .pred %r437; .reg .pred %r438; .reg .pred %r440; .reg .pred %r441; .reg .u64 %r442; .reg .u64 %r443; .reg .u64 %r444; .reg .u32 %r446; .reg .u32 %r447; .reg .pred %r448; .reg .u64 %r449; .reg .u64 %r450; .reg .u64 %r451; .reg .u32 %r455; .reg .u32 %r456; .reg .u64 %r457; .reg .u64 %r458; .reg .u64 %r459; .reg .u32 %r462; .reg .u32 %r463; .reg .pred %r464; .reg .u64 %r468; .reg .u64 %r469; .reg .u64 %r470; .reg .u64 %r471; .reg .u32 %r476; .reg .u32 %r477; .reg .u64 %r478; .reg .u64 %r479; .reg .u64 %r480; .reg .u64 %r481; .reg .u32 %r486; .reg .u32 %r487; .reg .pred %r488; .reg .f64 %r489; .reg .pred %r490; .reg .f64 %r493; .reg .pred %r494; .reg .pred %r495; .reg .u64 %r498; .reg .u64 %r501; .reg .u32 %r502; .reg .u32 %r503; .reg .u64 %r504; .reg .u64 %r505; .reg .u32 %r506; .reg .pred %r507; .reg .pred %r508; .reg .u32 %r514; .reg .pred %r515; .reg .u32 %r516; .reg .pred %r517; .reg .u64 %r518; .reg .u64 %r519; .reg .u64 %r520; .reg .u64 %r521; .reg .u32 %r523; .reg .u64 %r524; .reg .u64 %r525; .reg .u64 %r526; .reg .u64 %r527; .reg .u64 %r528; .reg .u64 %r529; .reg .u64 %r533; .reg .u32 %r534; .reg .f64 %r537; .reg .pred %r538; .reg .pred %r539; .reg .u64 %r540; .reg .u64 %r541; .reg .u64 %r542; .reg .u32 %r544; .reg .pred %r545; .reg .u64 %r549; .reg .u32 %r550; .reg .pred %r551; .reg .u32 %r554; .reg .f64 %r555; .reg .pred %r556; .reg .f64 %r557; .reg .u64 %r559; .reg .u64 %r560; .reg .f64 %r562; .reg .f64 %r564; .reg .u32 %r565; .reg .u64 %r566; .reg .u64 %r567; .reg .u64 %r568; .reg .u64 %r571; .reg .u64 %r572; .reg .u32 %r574; .reg .f64 %r575; .reg .f64 %r577; .reg .pred %r578; .reg .f64 %r584; .reg .u32 %r585; .reg .f64 %r586; .reg .pred %r587; .reg .f64 %r588; .reg .pred %r589; .reg .pred %r590; .reg .pred %r591; .reg .pred %r593; .reg .pred %r594; .reg .f64 %r599; .reg .pred %r600; .reg .pred %r601; .reg .f64 %r606; .reg .pred %r607; .reg .f64 %r608; .reg .f64 %r610; .reg .pred %r611; .reg .f64 %r613; .reg .pred %r614; .reg .u64 %r617; .reg .u64 %r618; .reg .u64 %r622; .reg .u64 %r625; .reg .u32 %r626; .reg .u64 %r627; .reg .u64 %r628; .reg .f64 %r629; .reg .f64 %r630; .reg .pred %r631; .reg .u64 %r633; .reg .u64 %r634; .reg .u64 %r638; .reg .u32 %r639; .reg .u64 %r640; .reg .u64 %r642; .reg .f64 %r643; .reg .f64 %r644; .reg .pred %r645; .reg .u64 %r647; .reg .u64 %r648; .reg .f64 %r649; .reg .pred %r650; .reg .pred %r651; .reg .f64 %r652; .reg .f64 %r653; .reg .f64 %r654; .reg .u32 %r655; .reg .pred %r656; .reg .pred %r657; .reg .pred %r658; .reg .pred %r659; .reg .pred %r660; .reg .pred %r661; .reg .pred %r662; .reg .pred %r663; .reg .pred %r664; .reg .pred %r665; .reg .f64 %r666; .reg .pred %r667; .reg .u32 %r668; .reg .u64 %r669; .reg .u32 %r670; .reg .pred %r671; .reg .pred %r672; .reg .u64 %r673; .reg .pred %r674; .reg .pred %r675; .reg .u64 %r677; .reg .u64 %r678; .reg .u64 %r679; .reg .u64 %r680; .reg .f64 %r681; .reg .u64 %r682; .reg .u64 %r683; .reg .pred %r684; .reg .pred %r685; .reg .pred %r686; .reg .u64 %r687; .reg .u32 %r688; .reg .u64 %r689; .reg .u64 %r690; .reg .u64 %r691; .reg .u64 %r692; .reg .u64 %r693; .reg .pred %r694; .reg .u64 %r695; .reg .f64 %r696; mov.u64 %r345,%ar0; mov.u64 %r346,%ar1; mov.u32 %r347,%ar2; mov.u32 %r348,%ar3; mov.u32 %r349,%ar4; mov.u64 %r350,%ar5; .loc 1 176 5 cvta.const.u64 %r351,init_jk; cvt.s64.s32 %r352,%r349; shl.b64 %r353,%r352,2; add.u64 %r354,%r351,%r353; ld.u32 %r126,[%r354]; .loc 1 180 5 add.u32 %r670,%r348,-1; .loc 1 181 20 setp.lt.s32 %r355,%r347,-20; @ %r355 bra $L75; .loc 1 181 10 add.u32 %r356,%r347,-3; .loc 1 181 5 div.s32 %r103,%r356,24; add.u32 %r357,%r103,1; shl.b32 %r359,%r357,2; sub.u32 %r360,%r357,%r359; shl.b32 %r186,%r360,3; bra $L2; $L75: mov.u32 %r186,-24; .loc 1 181 29 mov.u32 %r103,0; $L2: .loc 1 182 5 add.u32 %r41,%r347,%r186; .loc 1 185 4 sub.u32 %r130,%r103,%r670; .loc 1 185 15 add.u32 %r128,%r126,%r670; .loc 1 186 2 setp.ge.s32 %r362,%r128,0; @ %r362 bra $L3; $L8: .loc 1 189 2 setp.lt.s32 %r675,%r126,0; @ %r675 bra $L4; mov.u64 %r326,%frame; mov.u32 %r327,%r670; add.u32 %r332,%r126,%r348; cvt.u64.u32 %r365,%r670; shl.b64 %r366,%r365,3; add.u64 %r367,%r345,8; add.u64 %r325,%r366,%r367; setp.ge.s32 %r674,%r670,0; add.u64 %r695,%frame,320; bra $L5; $L3: add.u64 %r333,%frame,320; cvt.s64.s32 %r368,%r130; shl.b64 %r369,%r368,2; add.u64 %r334,%r350,%r369; add.u32 %r370,%r128,1; add.u32 %r342,%r370,%r130; .loc 1 186 43 mov.f64 %r696,0d0000000000000000; $L7: setp.lt.s32 %r371,%r130,0; @ %r371 bra $L76; ld.u32 %r372,[%r334]; cvt.rn.f64.s32 %r122,%r372; bra $L6; $L76: mov.f64 %r122,%r696; $L6: .loc 1 186 29 st.f64 [%r333],%r122; .loc 1 186 20 add.u32 %r130,%r130,1; add.u64 %r333,%r333,8; add.u64 %r334,%r334,4; .loc 1 186 2 setp.ne.u32 %r373,%r130,%r342; @ %r373 bra $L7; bra $L8; $L10: cvt.s64.s32 %r375,%r327; shl.b64 %r376,%r375,3; add.u64 %r314,%r695,%r376; .loc 1 190 6 mov.u64 %r313,%r345; .loc 1 190 16 mov.f64 %r131,0d0000000000000000; $L9: .loc 1 190 35 ld.f64 %r377,[%r313]; ld.f64 %r378,[%r314]; fma.rn.f64 %r131,%r377,%r378,%r131; add.u64 %r313,%r313,8; add.u64 %r314,%r314,-8; .loc 1 190 6 setp.ne.u64 %r379,%r313,%r325; @ %r379 bra $L9; $L11: .loc 1 190 59 st.f64 [%r326],%r131; add.u64 %r326,%r326,8; add.u32 %r327,%r327,1; .loc 1 189 2 setp.eq.u32 %r380,%r327,%r332; @ %r380 bra $L4; $L5: .loc 1 190 6 @ %r674 bra $L10; .loc 1 190 16 mov.f64 %r131,0d0000000000000000; bra $L11; $L4: add.u64 %r679,%frame,480; cvt.s64.s32 %r383,%r126; shl.b64 %r384,%r383,2; add.u64 %r385,%r384,-8; add.u64 %r264,%r679,%r385; cvt.u64.u32 %r386,%r670; shl.b64 %r387,%r386,3; add.u64 %r235,%r345,%r387; .loc 1 176 5 mov.u32 %r102,%r126; setp.le.s32 %r667,%r41,0; add.u64 %r683,%frame,484; setp.eq.u32 %r684,%r41,1; setp.eq.u32 %r685,%r41,2; .loc 1 213 9 setp.ne.u32 %r686,%r41,0; add.u64 %r687,%frame,472; .loc 1 245 16 add.u32 %r688,%r126,-1; .loc 1 245 13 cvt.s64.s32 %r689,%r688; shl.b64 %r690,%r689,2; add.u64 %r691,%frame,%r690; add.u64 %r692,%r691,480; add.u64 %r693,%frame,320; setp.lt.s32 %r694,%r670,0; $L12: .loc 1 196 16 cvt.s64.s32 %r680,%r102; shl.b64 %r389,%r680,3; add.u64 %r390,%frame,%r389; ld.f64 %r43,[%r390]; .loc 1 196 2 setp.le.s32 %r671,%r102,0; @ %r671 bra $L13; mov.u64 %r299,%r679; add.u64 %r394,%r389,-8; add.u64 %r300,%frame,%r394; add.u32 %r395,%r102,-1; cvt.u64.u32 %r396,%r395; shl.b64 %r397,%r396,2; add.u64 %r312,%r397,%r683; $L14: .loc 1 197 42 mul.f64 %r399,%r43,0d3e70000000000000; .loc 1 197 24 cvt.rzi.s32.f64 %r400,%r399; .loc 1 197 12 cvt.rn.f64.s32 %r133,%r400; .loc 1 198 28 fma.rn.f64 %r402,%r133,0dc170000000000000,%r43; .loc 1 198 15 cvt.rzi.s32.f64 %r403,%r402; st.u32 [%r299],%r403; .loc 1 199 12 ld.f64 %r404,[%r300]; add.f64 %r43,%r133,%r404; add.u64 %r299,%r299,4; add.u64 %r300,%r300,-8; .loc 1 196 2 setp.ne.u64 %r405,%r299,%r312; @ %r405 bra $L14; $L13: .loc 1 203 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r43; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r41; call (%value_in),scalbn,(%out_arg1,%out_arg2); ld.param.f64 %r408,[%value_in]; } .loc 1 204 11 mul.f64 %r410,%r408,0d3fc0000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r410; call (%value_in),floor,(%out_arg1); ld.param.f64 %r411,[%value_in]; } .loc 1 204 4 fma.rn.f64 %r136,%r411,0dc020000000000000,%r408; .loc 1 205 5 cvt.rzi.s32.f64 %r105,%r136; .loc 1 206 7 cvt.rn.f64.s32 %r413,%r105; .loc 1 206 4 sub.f64 %r116,%r136,%r413; .loc 1 208 4 @ %r667 bra $L15; .loc 1 209 17 add.u32 %r38,%r102,-1; .loc 1 209 14 cvt.s64.s32 %r415,%r38; shl.b64 %r416,%r415,2; add.u64 %r417,%frame,%r416; add.u64 %r418,%r417,480; ld.u32 %r39,[%r418]; .loc 1 209 25 mov.u32 %r419,24; sub.u32 %r40,%r419,%r41; .loc 1 209 9 shr.s32 %r137,%r39,%r40; .loc 1 209 34 add.u32 %r105,%r105,%r137; .loc 1 210 19 shl.b32 %r420,%r137,%r40; .loc 1 210 15 sub.u32 %r45,%r39,%r420; st.u32 [%r418],%r45; .loc 1 211 24 mov.u32 %r426,23; sub.u32 %r425,%r426,%r41; .loc 1 211 9 shr.s32 %r114,%r45,%r425; bra $L16; $L15: .loc 1 213 9 @ %r686 bra $L17; .loc 1 213 27 add.u32 %r428,%r102,-1; .loc 1 213 24 cvt.s64.s32 %r429,%r428; shl.b64 %r430,%r429,2; add.u64 %r431,%frame,%r430; .loc 1 213 20 ld.u32 %r433,[%r431+480]; shr.s32 %r114,%r433,23; bra $L16; $L17: .loc 1 214 9 setp.ge.f64 %r434,%r116,0d3fe0000000000000; @ %r434 bra $L18; .loc 1 207 5 mov.u32 %r114,0; bra $L19; $L16: .loc 1 216 4 setp.le.s32 %r435,%r114,0; @ %r435 bra $L19; .loc 1 217 8 add.u32 %r105,%r105,1; .loc 1 218 6 @ ! %r671 bra $L74; bra $L77; $L85: .loc 1 214 20 mov.u32 %r114,2; $L74: .loc 1 219 5 ld.u32 %r138,[%frame+480]; .loc 1 221 9 setp.ne.u32 %r437,%r138,0; @ %r437 bra $L78; .loc 1 218 6 setp.eq.u32 %r438,%r102,1; @ %r438 bra $L20; add.u64 %r297,%frame,484; .loc 1 218 21 mov.u32 %r172,1; bra $L22; $L23: add.u64 %r297,%r297,4; mov.u32 %r172,%r202; .loc 1 218 6 setp.eq.u32 %r440,%r102,%r172; @ %r440 bra $L20; $L22: .loc 1 219 5 ld.u32 %r138,[%r297]; add.u32 %r202,%r172,1; .loc 1 221 9 setp.eq.u32 %r441,%r138,0; @ %r441 bra $L23; bra $L21; $L78: mov.u32 %r202,1; mov.u32 %r172,0; $L21: .loc 1 222 21 cvt.s64.s32 %r442,%r172; shl.b64 %r443,%r442,2; add.u64 %r444,%frame,%r443; .loc 1 222 32 mov.u32 %r447,16777216; sub.u32 %r446,%r447,%r138; .loc 1 222 21 st.u32 [%r444+480],%r446; .loc 1 218 6 setp.le.s32 %r448,%r102,%r202; @ %r448 bra $L79; .loc 1 219 5 cvt.s64.s32 %r449,%r202; shl.b64 %r450,%r449,2; add.u64 %r451,%frame,%r450; ld.u32 %r162,[%r451+480]; add.u64 %r283,%r679,%r450; add.u32 %r455,%r102,-1; sub.u32 %r456,%r455,%r202; cvt.u64.u32 %r457,%r456; add.u64 %r458,%r457,%r449; shl.b64 %r459,%r458,2; add.u64 %r295,%r459,%r683; .loc 1 224 28 mov.u32 %r463,16777215; $L24: sub.u32 %r462,%r463,%r162; .loc 1 224 17 st.u32 [%r283],%r462; add.u64 %r283,%r283,4; .loc 1 218 6 setp.eq.u64 %r464,%r283,%r295; @ %r464 bra $L80; .loc 1 219 5 ld.u32 %r162,[%r283]; bra $L24; $L77: .loc 1 217 20 mov.u32 %r138,0; bra $L20; $L79: .loc 1 222 10 mov.u32 %r138,1; bra $L20; $L80: mov.u32 %r138,1; $L20: .loc 1 226 8 @ %r667 bra $L25; @ %r684 bra $L26; @ %r685 bra $L27; bra $L25; $L26: .loc 1 229 19 add.u32 %r51,%r102,-1; cvt.s64.s32 %r468,%r51; shl.b64 %r469,%r468,2; add.u64 %r470,%frame,%r469; add.u64 %r471,%r470,480; ld.u32 %r477,[%r471]; and.b32 %r476,%r477,8388607; st.u32 [%r471],%r476; .loc 1 229 10 bra $L25; $L27: .loc 1 231 19 add.u32 %r55,%r102,-1; cvt.s64.s32 %r478,%r55; shl.b64 %r479,%r478,2; add.u64 %r480,%frame,%r479; add.u64 %r481,%r480,480; ld.u32 %r487,[%r481]; and.b32 %r486,%r487,4194303; st.u32 [%r481],%r486; $L25: .loc 1 234 8 setp.ne.u32 %r488,%r114,2; @ %r488 bra $L19; .loc 1 235 5 mov.f64 %r489,0d3ff0000000000000; sub.f64 %r116,%r489,%r116; .loc 1 236 5 setp.eq.u32 %r490,%r138,0; @ %r490 bra $L19; .loc 1 236 21 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r489; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r41; call (%value_in),scalbn,(%out_arg1,%out_arg2); ld.param.f64 %r493,[%value_in]; } .loc 1 236 18 sub.f64 %r116,%r116,%r493; $L19: .loc 1 241 4 setp.neu.f64 %r494,%r116,0d0000000000000000; @ %r494 bra $L28; .loc 1 243 12 add.u32 %r146,%r102,-1; .loc 1 243 6 setp.gt.s32 %r495,%r126,%r146; @ %r495 bra $L29; shl.b64 %r272,%r680,2; add.u64 %r498,%r272,-4; add.u64 %r270,%r679,%r498; add.u64 %r501,%r687,%r272; not.b32 %r502,%r126; add.u32 %r503,%r502,%r102; cvt.u64.u32 %r504,%r503; shl.b64 %r505,%r504,2; sub.u64 %r282,%r501,%r505; .loc 1 242 8 mov.u32 %r141,0; $L30: .loc 1 243 31 ld.u32 %r506,[%r270]; or.b32 %r141,%r141,%r506; add.u64 %r270,%r270,-4; .loc 1 243 6 setp.ne.u64 %r507,%r270,%r282; @ %r507 bra $L30; .loc 1 244 8 setp.ne.u32 %r508,%r141,0; @ %r508 bra $L31; $L29: .loc 1 245 3 ld.u32 %r514,[%r692]; setp.ne.u32 %r515,%r514,0; @ %r515 bra $L32; mov.u64 %r263,%r264; .loc 1 245 8 mov.u32 %r53,1; $L33: .loc 1 245 24 add.u32 %r53,%r53,1; add.u64 %r263,%r263,-4; .loc 1 245 3 ld.u32 %r516,[%r263+4]; setp.eq.u32 %r517,%r516,0; @ %r517 bra $L33; bra $L119; $L32: .loc 1 247 8 add.u32 %r668,%r102,1; mov.u32 %r145,%r668; .loc 1 247 19 mov.u32 %r165,%r668; bra $L35; $L119: .loc 1 247 8 add.u32 %r668,%r102,1; mov.u32 %r145,%r668; .loc 1 247 19 add.u32 %r165,%r102,%r53; $L35: cvt.s64.s32 %r518,%r103; cvt.s64.s32 %r519,%r668; add.u64 %r520,%r518,%r519; shl.b64 %r521,%r520,2; add.u64 %r237,%r350,%r521; add.u32 %r523,%r670,%r668; cvt.s64.s32 %r524,%r523; shl.b64 %r525,%r524,3; add.u64 %r244,%r693,%r525; add.u64 %r526,%r680,1; shl.b64 %r527,%r526,3; add.u64 %r249,%frame,%r527; cvt.s64.s32 %r528,%r348; add.u64 %r529,%r528,%r680; sub.u64 %r533,%r529,%r524; shl.b64 %r262,%r533,3; add.u64 %r682,%r262,-8; $L38: .loc 1 248 17 ld.u32 %r534,[%r237]; cvt.rn.f64.s32 %r200,%r534; .loc 1 248 15 st.f64 [%r244],%r200; .loc 1 249 7 @ %r694 bra $L81; add.u64 %r224,%r682,%r244; mov.u64 %r223,%r345; .loc 1 249 17 mov.f64 %r143,0d0000000000000000; $L37: .loc 1 249 36 ld.f64 %r537,[%r223]; fma.rn.f64 %r143,%r537,%r200,%r143; .loc 1 249 7 setp.eq.u64 %r538,%r223,%r235; @ %r538 bra $L36; ld.f64 %r200,[%r224]; add.u64 %r223,%r223,8; add.u64 %r224,%r224,-8; bra $L37; $L81: .loc 1 249 17 mov.f64 %r143,0d0000000000000000; $L36: .loc 1 250 12 st.f64 [%r249],%r143; .loc 1 247 23 add.u32 %r145,%r145,1; add.u64 %r237,%r237,4; add.u64 %r244,%r244,8; add.u64 %r249,%r249,8; .loc 1 247 3 setp.le.s32 %r539,%r145,%r165; @ %r539 bra $L38; mov.u32 %r102,%r165; bra $L12; $L31: .loc 1 259 18 add.u32 %r41,%r41,-24; .loc 1 260 14 cvt.s64.s32 %r540,%r146; shl.b64 %r541,%r540,2; add.u64 %r542,%frame,%r541; .loc 1 260 11 ld.u32 %r544,[%r542+480]; setp.ne.u32 %r545,%r544,0; @ %r545 bra $L39; add.u64 %r549,%r541,-4; add.u64 %r217,%r679,%r549; $L40: .loc 1 260 27 add.u32 %r146,%r146,-1; .loc 1 260 33 add.u32 %r41,%r41,-24; add.u64 %r217,%r217,-4; .loc 1 260 11 ld.u32 %r550,[%r217+4]; setp.eq.u32 %r551,%r550,0; @ %r551 bra $L40; bra $L39; $L28: .loc 1 262 10 neg.s32 %r554,%r41; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r116; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r554; call (%value_in),scalbn,(%out_arg1,%out_arg2); ld.param.f64 %r555,[%value_in]; } .loc 1 263 8 setp.ge.f64 %r556,%r555,0d4170000000000000; @ ! %r556 bra $L120; .loc 1 264 35 mul.f64 %r557,%r555,0d3e70000000000000; .loc 1 264 17 cvt.rzi.s32.f64 %r75,%r557; .loc 1 265 10 shl.b64 %r559,%r680,2; add.u64 %r560,%frame,%r559; .loc 1 264 6 cvt.rn.f64.s32 %r562,%r75; .loc 1 265 25 fma.rn.f64 %r564,%r562,0dc170000000000000,%r555; .loc 1 265 12 cvt.rzi.s32.f64 %r565,%r564; st.u32 [%r560+480],%r565; .loc 1 266 6 add.u32 %r146,%r102,1; .loc 1 266 15 add.u32 %r41,%r41,24; .loc 1 267 10 cvt.s64.s32 %r566,%r146; shl.b64 %r567,%r566,2; add.u64 %r568,%frame,%r567; st.u32 [%r568+480],%r75; bra $L39; $L120: .loc 1 268 20 shl.b64 %r571,%r680,2; add.u64 %r572,%frame,%r571; .loc 1 268 22 cvt.rzi.s32.f64 %r574,%r555; st.u32 [%r572+480],%r574; .loc 1 268 20 mov.u32 %r146,%r102; $L39: .loc 1 272 7 mov.f64 %r575,0d3ff0000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r575; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r41; call (%value_in),scalbn,(%out_arg1,%out_arg2); ld.param.f64 %r577,[%value_in]; } mov.f64 %r149,%r577; .loc 1 273 2 setp.lt.s32 %r578,%r146,0; @ %r578 bra $L43; cvt.s64.s32 %r204,%r146; shl.b64 %r205,%r204,2; add.u64 %r121,%r679,%r205; shl.b64 %r678,%r204,3; add.u64 %r82,%frame,%r678; add.u64 %r216,%frame,476; mov.u64 %r207,%r82; $L44: .loc 1 274 16 ld.u32 %r585,[%r121]; cvt.rn.f64.s32 %r584,%r585; .loc 1 274 15 mul.f64 %r586,%r584,%r149; .loc 1 274 11 st.f64 [%r207],%r586; .loc 1 274 33 mul.f64 %r149,%r149,0d3e70000000000000; add.u64 %r121,%r121,-4; add.u64 %r207,%r207,-8; .loc 1 273 2 setp.ne.u64 %r587,%r121,%r216; @ %r587 bra $L44; add.u64 %r677,%frame,160; mov.u64 %r71,%r677; mov.u32 %r201,0; .loc 1 279 6 mov.f64 %r681,0d3ff921fb40000000; bra $L45; $L47: .loc 1 279 44 ld.f64 %r588,[%r187]; fma.rn.f64 %r150,%r588,%r191,%r150; .loc 1 279 37 add.u32 %r42,%r42,1; .loc 1 279 6 setp.lt.s32 %r589,%r126,%r42; @ %r589 bra $L46; add.u64 %r187,%r187,8; add.u64 %r23,%r23,8; .loc 1 279 26 setp.gt.s32 %r590,%r42,%r201; @ %r590 bra $L46; ld.f64 %r191,[%r23]; bra $L47; $L82: .loc 1 279 12 mov.f64 %r150,0d0000000000000000; $L46: .loc 1 280 15 st.f64 [%r71],%r150; add.u32 %r99,%r201,1; add.u64 %r71,%r71,8; add.u64 %r82,%r82,-8; .loc 1 278 2 setp.eq.u32 %r591,%r201,%r146; @ %r591 bra $L48; mov.u32 %r201,%r99; $L45: .loc 1 279 6 @ %r675 bra $L82; cvta.const.u64 %r23,PIo2; mov.u64 %r187,%r82; mov.f64 %r191,%r681; .loc 1 279 12 mov.f64 %r150,0d0000000000000000; .loc 1 279 18 mov.u32 %r42,0; bra $L47; $L70: .loc 1 300 3 setp.gt.s32 %r593,%r146,0; @ %r593 bra $L49; .loc 1 310 10 mov.f64 %r160,0d0000000000000000; bra $L50; $L121: .loc 1 305 3 setp.gt.s32 %r594,%r146,1; @ %r594 bra $L51; .loc 1 310 10 mov.f64 %r160,0d0000000000000000; bra $L50; $L73: add.u64 %r181,%r677,%r678; add.u64 %r177,%r677,-8; .loc 1 278 2 mov.f64 %r151,0d0000000000000000; $L52: .loc 1 287 26 ld.f64 %r599,[%r181]; add.f64 %r151,%r151,%r599; add.u64 %r181,%r181,-8; .loc 1 287 3 setp.ne.u64 %r600,%r177,%r181; @ %r600 bra $L52; bra $L68; $L84: .loc 1 286 6 mov.f64 %r151,0d0000000000000000; $L68: .loc 1 288 21 setp.eq.u32 %r601,%r114,0; @ %r601 bra $L53; neg.f64 %r151,%r151; $L53: .loc 1 288 8 st.f64 [%r346],%r151; .loc 1 289 3 bra $L54; $L72: add.u64 %r173,%r677,%r678; add.u64 %r164,%r677,-8; .loc 1 292 6 mov.f64 %r152,0d0000000000000000; $L55: .loc 1 293 26 ld.f64 %r606,[%r173]; add.f64 %r152,%r152,%r606; add.u64 %r173,%r173,-8; .loc 1 293 3 setp.ne.u64 %r607,%r164,%r173; @ %r607 bra $L55; bra $L67; $L83: .loc 1 292 6 mov.f64 %r152,0d0000000000000000; $L67: ld.f64 %r608,[%frame+160]; sub.f64 %r156,%r608,%r152; .loc 1 294 21 setp.eq.u32 %r672,%r114,0; @ %r672 bra $L56; neg.f64 %r610,%r152; .loc 1 294 8 st.f64 [%r346],%r610; .loc 1 296 3 setp.le.s32 %r611,%r146,0; @ %r611 bra $L57; $L65: add.u64 %r175,%frame,168; .loc 1 292 6 mov.u32 %r157,1; $L58: .loc 1 296 26 ld.f64 %r613,[%r175]; add.f64 %r156,%r156,%r613; .loc 1 296 19 add.u32 %r157,%r157,1; add.u64 %r175,%r175,8; .loc 1 296 3 setp.ge.s32 %r614,%r146,%r157; @ %r614 bra $L58; .loc 1 297 21 @ %r672 bra $L59; $L57: neg.f64 %r156,%r156; $L59: .loc 1 297 8 st.f64 [%r346+8],%r156; .loc 1 298 3 bra $L54; $L49: cvt.s64.s32 %r669,%r146; shl.b64 %r617,%r669,3; add.u64 %r618,%frame,%r617; ld.f64 %r125,[%r618+160]; add.u64 %r677,%frame,160; add.u64 %r622,%r617,-8; add.u64 %r106,%r677,%r622; add.u64 %r673,%frame,144; add.u64 %r625,%r673,%r617; add.u32 %r626,%r146,-1; cvt.u64.u32 %r627,%r626; shl.b64 %r628,%r627,3; sub.u64 %r190,%r625,%r628; $L60: .loc 1 301 19 ld.f64 %r90,[%r106]; .loc 1 301 15 add.f64 %r158,%r90,%r125; .loc 1 302 24 sub.f64 %r629,%r90,%r158; .loc 1 302 14 add.f64 %r630,%r629,%r125; st.f64 [%r106+8],%r630; .loc 1 303 15 st.f64 [%r106],%r158; add.u64 %r106,%r106,-8; mov.f64 %r125,%r158; .loc 1 300 3 setp.ne.u64 %r631,%r106,%r190; @ %r631 bra $L60; bra $L121; $L51: shl.b64 %r633,%r669,3; add.u64 %r634,%frame,%r633; ld.f64 %r113,[%r634+160]; add.u64 %r638,%r633,-8; add.u64 %r123,%r677,%r638; add.u32 %r639,%r146,-2; cvt.u64.u32 %r640,%r639; shl.b64 %r109,%r640,3; add.u64 %r642,%r673,%r633; sub.u64 %r108,%r642,%r109; $L62: .loc 1 306 19 ld.f64 %r93,[%r123]; .loc 1 306 15 add.f64 %r159,%r93,%r113; .loc 1 307 24 sub.f64 %r643,%r93,%r159; .loc 1 307 14 add.f64 %r644,%r643,%r113; st.f64 [%r123+8],%r644; .loc 1 308 15 st.f64 [%r123],%r159; add.u64 %r123,%r123,-8; mov.f64 %r113,%r159; .loc 1 305 3 setp.ne.u64 %r645,%r108,%r123; @ %r645 bra $L62; add.u64 %r163,%r677,%r633; add.u64 %r647,%r677,-8; add.u64 %r648,%r647,%r633; sub.u64 %r124,%r648,%r109; .loc 1 310 10 mov.f64 %r160,0d0000000000000000; $L63: .loc 1 310 33 ld.f64 %r649,[%r163]; add.f64 %r160,%r160,%r649; add.u64 %r163,%r163,-8; .loc 1 310 3 setp.ne.u64 %r650,%r124,%r163; @ %r650 bra $L63; $L50: ld.f64 %r195,[%frame+160]; ld.f64 %r196,[%frame+168]; .loc 1 311 5 setp.ne.u32 %r651,%r114,0; @ %r651 bra $L64; .loc 1 312 12 st.f64 [%r346],%r195; .loc 1 312 27 st.f64 [%r346+8],%r196; .loc 1 312 42 st.f64 [%r346+16],%r160; bra $L54; $L64: .loc 1 314 14 neg.f64 %r652,%r195; .loc 1 314 12 st.f64 [%r346],%r652; .loc 1 314 29 neg.f64 %r653,%r196; .loc 1 314 27 st.f64 [%r346+8],%r653; .loc 1 314 44 neg.f64 %r654,%r160; .loc 1 314 42 st.f64 [%r346+16],%r654; $L54: .loc 1 317 10 and.b32 %r655,%r105,7; bra $L122; $L56: .loc 1 294 8 st.f64 [%r346],%r152; .loc 1 296 3 setp.gt.s32 %r656,%r146,0; @ %r656 bra $L65; bra $L59; $L43: setp.gt.s32 %r657,%r349,2; @ %r657 bra $L66; setp.gt.s32 %r658,%r349,0; @ %r658 bra $L83; setp.eq.u32 %r659,%r349,0; @ %r659 bra $L84; bra $L54; $L66: setp.eq.u32 %r660,%r349,3; @ %r660 bra $L70; bra $L54; $L48: setp.gt.s32 %r661,%r349,2; @ %r661 bra $L71; setp.gt.s32 %r662,%r349,0; @ %r662 bra $L72; setp.eq.u32 %r663,%r349,0; @ %r663 bra $L73; bra $L54; $L71: setp.eq.u32 %r664,%r349,3; @ %r664 bra $L70; bra $L54; $L18: .loc 1 217 8 add.u32 %r105,%r105,1; .loc 1 218 6 setp.gt.s32 %r665,%r102,0; @ %r665 bra $L85; .loc 1 235 5 mov.f64 %r666,0d3ff0000000000000; sub.f64 %r116,%r666,%r116; mov.u32 %r114,2; bra $L19; $L122: .loc 1 318 1 mov.u32 %value,%r655; st.param.u32 [%value_out],%value; ret; } lib_a-k_sin.o/ 1591654539 399 399 100644 2234 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r31; .reg .f64 %r33; .reg .f64 %r34; .reg .f64 %r35; .reg .f64 %r42; .reg .f64 %r43; .reg .f64 %r44; .reg .u32 %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .u32 %r48; .reg .pred %r49; .reg .u32 %r50; .reg .pred %r51; .reg .f64 %r52; .reg .f64 %r53; .reg .f64 %r54; .reg .pred %r55; .reg .f64 %r56; .reg .f64 %r57; .reg .f64 %r58; .reg .f64 %r59; .reg .f64 %r60; .reg .f64 %r61; .reg .f64 %r62; mov.f64 %r43,%ar0; mov.f64 %r44,%ar1; mov.u32 %r45,%ar2; .loc 1 68 2 mov.b64 %r46,%r43; shr.u64 %r47,%r46,32; cvt.u32.u64 %r31,%r47; .loc 1 69 5 and.b32 %r48,%r31,2147483647; .loc 1 70 4 setp.gt.s32 %r49,%r48,1044381695; @ %r49 bra $L2; .loc 1 71 9 cvt.rzi.s32.f64 %r50,%r43; .loc 1 71 8 setp.eq.u32 %r51,%r50,0; @ %r51 bra $L5; $L2: .loc 1 72 4 mul.f64 %r33,%r43,%r43; .loc 1 73 4 mul.f64 %r34,%r43,%r33; .loc 1 74 27 fma.rn.f64 %r52,%r33,0d3de5d93a5acfd57c,0dbe5ae5e68a2b9ceb; .loc 1 74 21 fma.rn.f64 %r53,%r52,%r33,0d3ec71de357b1fe7d; .loc 1 74 15 fma.rn.f64 %r54,%r53,%r33,0dbf2a01a019c161d5; .loc 1 74 4 fma.rn.f64 %r35,%r54,%r33,0d3f8111111110f8a6; .loc 1 75 4 setp.ne.u32 %r55,%r45,0; @ %r55 bra $L4; .loc 1 75 26 fma.rn.f64 %r56,%r33,%r35,0dbfc5555555555549; .loc 1 75 20 fma.rn.f64 %r42,%r56,%r34,%r43; bra $L1; $L4: .loc 1 76 34 mul.f64 %r57,%r34,%r35; .loc 1 76 32 neg.f64 %r58,%r57; fma.rn.f64 %r59,%r44,0d3fe0000000000000,%r58; .loc 1 76 37 neg.f64 %r60,%r44; fma.rn.f64 %r61,%r59,%r33,%r60; .loc 1 76 40 fma.rn.f64 %r62,%r34,0d3fc5555555555549,%r61; .loc 1 76 20 sub.f64 %r42,%r43,%r62; bra $L1; $L5: .loc 1 71 27 mov.f64 %r42,%r43; $L1: .loc 1 77 1 mov.f64 %value,%r42; st.param.f64 [%value_out],%value; ret; } /350 1591654539 399 399 100644 73013 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // 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); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[5] = {97,99,111,115,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[6] = {97,99,111,115,102,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[5] = {97,115,105,110,0 }; // BEGIN VAR DEF: $LC3 .const .align 1 .u8 $LC3[6] = {97,115,105,110,102,0 }; // BEGIN VAR DEF: $LC4 .const .align 1 .u8 $LC4[6] = {97,116,97,110,50,0 }; // BEGIN VAR DEF: $LC5 .const .align 1 .u8 $LC5[7] = {97,116,97,110,50,102,0 }; // BEGIN VAR DEF: $LC6 .const .align 1 .u8 $LC6[6] = {104,121,112,111,116,0 }; // BEGIN VAR DEF: $LC7 .const .align 1 .u8 $LC7[7] = {104,121,112,111,116,102,0 }; // BEGIN VAR DEF: $LC8 .const .align 1 .u8 $LC8[5] = {99,111,115,104,0 }; // BEGIN VAR DEF: $LC9 .const .align 1 .u8 $LC9[6] = {99,111,115,104,102,0 }; // BEGIN VAR DEF: $LC10 .const .align 1 .u8 $LC10[4] = {101,120,112,0 }; // BEGIN VAR DEF: $LC11 .const .align 1 .u8 $LC11[5] = {101,120,112,102,0 }; // BEGIN VAR DEF: $LC12 .const .align 1 .u8 $LC12[3] = {121,48,0 }; // BEGIN VAR DEF: $LC13 .const .align 1 .u8 $LC13[4] = {121,48,102,0 }; // BEGIN VAR DEF: $LC14 .const .align 1 .u8 $LC14[3] = {121,49,0 }; // BEGIN VAR DEF: $LC15 .const .align 1 .u8 $LC15[4] = {121,49,102,0 }; // BEGIN VAR DEF: $LC16 .const .align 1 .u8 $LC16[3] = {121,110,0 }; // BEGIN VAR DEF: $LC17 .const .align 1 .u8 $LC17[4] = {121,110,102,0 }; // BEGIN VAR DEF: $LC18 .const .align 1 .u8 $LC18[7] = {108,103,97,109,109,97,0 }; // BEGIN VAR DEF: $LC19 .const .align 1 .u8 $LC19[8] = {108,103,97,109,109,97,102,0 }; // BEGIN VAR DEF: $LC33 .const .align 1 .u8 $LC33[11] = {114,101,109,97,105,110,100,101,114,102,0 }; // BEGIN VAR DEF: $LC34 .const .align 1 .u8 $LC34[6] = {97,99,111,115,104,0 }; // BEGIN VAR DEF: $LC35 .const .align 1 .u8 $LC35[7] = {97,99,111,115,104,102,0 }; // BEGIN VAR DEF: $LC36 .const .align 1 .u8 $LC36[6] = {97,116,97,110,104,0 }; // BEGIN VAR DEF: $LC37 .const .align 1 .u8 $LC37[7] = {97,116,97,110,104,102,0 }; // BEGIN VAR DEF: $LC38 .const .align 1 .u8 $LC38[6] = {115,99,97,108,98,0 }; // BEGIN VAR DEF: $LC39 .const .align 1 .u8 $LC39[7] = {115,99,97,108,98,102,0 }; // BEGIN VAR DEF: $LC30 .const .align 1 .u8 $LC30[5] = {102,109,111,100,0 }; // BEGIN VAR DEF: $LC31 .const .align 1 .u8 $LC31[6] = {102,109,111,100,102,0 }; // BEGIN VAR DEF: $LC32 .const .align 1 .u8 $LC32[10] = {114,101,109,97,105,110,100,101,114,0 }; // BEGIN VAR DEF: $LC27 .const .align 1 .u8 $LC27[6] = {115,105,110,104,102,0 }; // BEGIN VAR DEF: $LC40 .const .align 1 .u8 $LC40[3] = {106,48,0 }; // BEGIN VAR DEF: $LC41 .const .align 1 .u8 $LC41[4] = {106,48,102,0 }; // BEGIN VAR DEF: $LC42 .const .align 1 .u8 $LC42[3] = {106,49,0 }; // BEGIN VAR DEF: $LC20 .const .align 1 .u8 $LC20[4] = {108,111,103,0 }; // BEGIN VAR DEF: $LC21 .const .align 1 .u8 $LC21[5] = {108,111,103,102,0 }; // BEGIN VAR DEF: $LC22 .const .align 1 .u8 $LC22[6] = {108,111,103,49,48,0 }; // BEGIN VAR DEF: $LC23 .const .align 1 .u8 $LC23[7] = {108,111,103,49,48,102,0 }; // BEGIN VAR DEF: $LC24 .const .align 1 .u8 $LC24[4] = {112,111,119,0 }; // BEGIN VAR DEF: $LC25 .const .align 1 .u8 $LC25[5] = {112,111,119,102,0 }; // BEGIN VAR DEF: $LC26 .const .align 1 .u8 $LC26[5] = {115,105,110,104,0 }; // BEGIN VAR DEF: $LC28 .const .align 1 .u8 $LC28[5] = {115,113,114,116,0 }; // BEGIN VAR DEF: $LC29 .const .align 1 .u8 $LC29[6] = {115,113,114,116,102,0 }; // BEGIN VAR DEF: $LC43 .const .align 1 .u8 $LC43[4] = {106,49,102,0 }; // BEGIN VAR DEF: $LC44 .const .align 1 .u8 $LC44[3] = {106,110,0 }; // BEGIN VAR DEF: $LC45 .const .align 1 .u8 $LC45[4] = {106,110,102,0 }; // BEGIN VAR DEF: $LC46 .const .align 1 .u8 $LC46[6] = {103,97,109,109,97,0 }; // BEGIN VAR DEF: $LC47 .const .align 1 .u8 $LC47[7] = {103,97,109,109,97,102,0 }; // 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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r34; .reg .u32 %r38; .reg .u32 %r42; .reg .u32 %r50; .reg .u32 %r54; .reg .u32 %r58; .reg .u32 %r62; .reg .u32 %r66; .reg .u32 %r70; .reg .u32 %r74; .reg .u32 %r78; .reg .u32 %r82; .reg .u32 %r86; .reg .u32 %r90; .reg .u32 %r94; .reg .u32 %r101; .reg .u32 %r111; .reg .u32 %r115; .reg .u32 %r120; .reg .u32 %r124; .reg .u32 %r129; .reg .u32 %r187; .reg .u32 %r191; .reg .u32 %r201; .reg .u64 %r202; .reg .u64 %r203; .reg .u64 %r204; .reg .u64 %r205; .reg .u64 %r206; .reg .u64 %r207; .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 %r216; .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 %r225; .reg .u64 %r226; .reg .f64 %r227; .reg .f64 %r228; .reg .u64 %r229; .reg .u64 %r230; .reg .u64 %r231; .reg .u64 %r232; .reg .u64 %r233; .reg .u64 %r234; .reg .u64 %r235; .reg .f64 %r236; .reg .u64 %r237; .reg .u64 %r238; .reg .u64 %r239; .reg .u64 %r240; .reg .u64 %r241; .reg .u64 %r242; .reg .u64 %r243; .reg .u64 %r244; .reg .u64 %r245; .reg .u64 %r246; .reg .u32 %r247; .reg .f64 %r248; .reg .u32 %r249; .reg .f64 %r250; .reg .f64 %r251; .reg .f64 %r252; .reg .u32 %r253; .reg .u32 %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 .pred %r263; .reg .pred %r264; .reg .pred %r265; .reg .pred %r266; .reg .pred %r267; .reg .pred %r268; .reg .pred %r269; .reg .pred %r270; .reg .pred %r271; .reg .pred %r272; .reg .pred %r273; .reg .pred %r274; .reg .pred %r275; .reg .pred %r276; .reg .pred %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 .pred %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 .pred %r311; .reg .pred %r312; .reg .pred %r313; .reg .pred %r314; .reg .pred %r315; .reg .pred %r316; .reg .pred %r317; .reg .pred %r318; .reg .pred %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 .pred %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 .pred %r353; .reg .pred %r354; .reg .pred %r355; .reg .pred %r356; .reg .pred %r357; .reg .pred %r358; .reg .pred %r359; .reg .pred %r360; .reg .u32 %r361; .reg .pred %r362; .reg .f64 %r363; .reg .u32 %r364; .reg .pred %r365; .reg .u64 %r366; .reg .u32 %r367; .reg .u32 %r369; .reg .pred %r370; .reg .u64 %r371; .reg .u32 %r372; .reg .u32 %r373; .reg .pred %r374; .reg .f64 %r375; .reg .u32 %r376; .reg .pred %r377; .reg .u64 %r378; .reg .u32 %r379; .reg .u32 %r381; .reg .pred %r382; .reg .u64 %r383; .reg .u32 %r384; .reg .u32 %r385; .reg .pred %r386; .reg .f64 %r387; .reg .u32 %r388; .reg .pred %r389; .reg .u64 %r390; .reg .u32 %r391; .reg .u32 %r393; .reg .pred %r394; .reg .u64 %r395; .reg .u32 %r396; .reg .u32 %r397; .reg .pred %r398; .reg .pred %r399; .reg .f64 %r400; .reg .f64 %r401; .reg .pred %r402; .reg .u64 %r403; .reg .u32 %r404; .reg .u32 %r406; .reg .pred %r407; .reg .u64 %r408; .reg .u32 %r409; .reg .u32 %r410; .reg .pred %r411; .reg .pred %r412; .reg .f64 %r413; .reg .f64 %r414; .reg .pred %r415; .reg .u64 %r416; .reg .u32 %r417; .reg .u32 %r419; .reg .pred %r420; .reg .u64 %r421; .reg .u32 %r422; .reg .u32 %r423; .reg .pred %r424; .reg .pred %r425; .reg .f64 %r426; .reg .f64 %r427; .reg .pred %r428; .reg .u64 %r429; .reg .u32 %r430; .reg .u32 %r432; .reg .pred %r433; .reg .u64 %r434; .reg .u32 %r435; .reg .u32 %r436; .reg .pred %r437; .reg .f64 %r438; .reg .u32 %r439; .reg .pred %r440; .reg .u64 %r441; .reg .u32 %r442; .reg .u32 %r444; .reg .pred %r445; .reg .u64 %r446; .reg .u32 %r447; .reg .u32 %r448; .reg .pred %r449; .reg .pred %r450; .reg .f64 %r451; .reg .f64 %r452; .reg .pred %r453; .reg .u64 %r454; .reg .u32 %r455; .reg .u32 %r457; .reg .pred %r458; .reg .u64 %r459; .reg .u32 %r460; .reg .u32 %r461; .reg .pred %r462; .reg .pred %r463; .reg .f64 %r464; .reg .f64 %r465; .reg .pred %r466; .reg .u64 %r467; .reg .u32 %r468; .reg .u32 %r470; .reg .pred %r471; .reg .u64 %r472; .reg .u32 %r473; .reg .u32 %r474; .reg .pred %r475; .reg .pred %r476; .reg .f64 %r477; .reg .f64 %r478; .reg .pred %r479; .reg .u64 %r480; .reg .u32 %r481; .reg .u32 %r483; .reg .pred %r484; .reg .u64 %r485; .reg .u32 %r486; .reg .u32 %r487; .reg .pred %r488; .reg .pred %r489; .reg .f64 %r490; .reg .f64 %r491; .reg .pred %r492; .reg .u64 %r493; .reg .u32 %r494; .reg .u32 %r496; .reg .pred %r497; .reg .u64 %r498; .reg .u32 %r499; .reg .u32 %r500; .reg .pred %r501; .reg .pred %r502; .reg .f64 %r503; .reg .f64 %r504; .reg .pred %r505; .reg .u64 %r506; .reg .u32 %r507; .reg .u32 %r509; .reg .pred %r510; .reg .u64 %r511; .reg .u32 %r512; .reg .u32 %r513; .reg .pred %r514; .reg .pred %r515; .reg .f64 %r516; .reg .f64 %r517; .reg .pred %r518; .reg .u64 %r519; .reg .u32 %r520; .reg .u32 %r522; .reg .pred %r523; .reg .u64 %r524; .reg .u32 %r525; .reg .u32 %r526; .reg .pred %r527; .reg .pred %r528; .reg .f64 %r529; .reg .f64 %r530; .reg .pred %r531; .reg .u64 %r532; .reg .u32 %r533; .reg .u32 %r535; .reg .pred %r536; .reg .u64 %r537; .reg .u32 %r538; .reg .u32 %r539; .reg .pred %r540; .reg .pred %r541; .reg .f64 %r542; .reg .f64 %r543; .reg .pred %r544; .reg .u64 %r545; .reg .u32 %r546; .reg .u32 %r548; .reg .pred %r549; .reg .u64 %r550; .reg .u32 %r551; .reg .u32 %r552; .reg .pred %r553; .reg .pred %r554; .reg .f64 %r555; .reg .f64 %r556; .reg .pred %r557; .reg .u64 %r558; .reg .u32 %r559; .reg .u32 %r561; .reg .pred %r562; .reg .u64 %r563; .reg .u32 %r564; .reg .u32 %r565; .reg .pred %r566; .reg .pred %r567; .reg .f64 %r568; .reg .f64 %r569; .reg .pred %r570; .reg .u64 %r571; .reg .u32 %r572; .reg .u32 %r574; .reg .pred %r575; .reg .u64 %r576; .reg .u32 %r577; .reg .u32 %r578; .reg .pred %r579; .reg .pred %r580; .reg .f64 %r581; .reg .f64 %r582; .reg .pred %r583; .reg .u64 %r584; .reg .u32 %r585; .reg .u32 %r587; .reg .pred %r588; .reg .u64 %r589; .reg .u32 %r590; .reg .u32 %r591; .reg .pred %r592; .reg .pred %r593; .reg .f64 %r594; .reg .f64 %r595; .reg .pred %r596; .reg .u64 %r597; .reg .u32 %r598; .reg .u32 %r600; .reg .pred %r601; .reg .u64 %r602; .reg .u32 %r603; .reg .u32 %r604; .reg .pred %r605; .reg .f64 %r606; .reg .u32 %r607; .reg .pred %r608; .reg .u32 %r610; .reg .pred %r611; .reg .u64 %r612; .reg .u32 %r613; .reg .u32 %r614; .reg .pred %r615; .reg .pred %r616; .reg .f64 %r617; .reg .pred %r618; .reg .f64 %r620; .reg .pred %r621; .reg .f64 %r622; .reg .f64 %r623; .reg .pred %r624; .reg .f64 %r626; .reg .pred %r627; .reg .f64 %r628; .reg .pred %r629; .reg .u64 %r630; .reg .u32 %r631; .reg .u32 %r633; .reg .pred %r634; .reg .u64 %r635; .reg .u32 %r636; .reg .u32 %r637; .reg .pred %r638; .reg .f64 %r639; .reg .u32 %r640; .reg .pred %r641; .reg .u64 %r642; .reg .u32 %r643; .reg .u32 %r645; .reg .pred %r646; .reg .u64 %r647; .reg .u32 %r648; .reg .u32 %r649; .reg .pred %r650; .reg .pred %r651; .reg .f64 %r652; .reg .f64 %r653; .reg .pred %r654; .reg .u64 %r655; .reg .u32 %r656; .reg .u32 %r658; .reg .pred %r659; .reg .u64 %r660; .reg .u32 %r661; .reg .u32 %r662; .reg .pred %r663; .reg .pred %r664; .reg .f64 %r665; .reg .f64 %r666; .reg .f64 %r667; .reg .pred %r668; .reg .u64 %r669; .reg .u32 %r670; .reg .u32 %r672; .reg .pred %r673; .reg .u64 %r674; .reg .u32 %r675; .reg .u32 %r676; .reg .pred %r677; .reg .pred %r678; .reg .pred %r679; .reg .pred %r680; .reg .pred %r681; .reg .u64 %r682; .reg .u32 %r683; .reg .u32 %r685; .reg .pred %r686; .reg .u64 %r687; .reg .u32 %r688; .reg .u32 %r689; .reg .pred %r690; .reg .pred %r691; .reg .f64 %r692; .reg .f64 %r693; .reg .f64 %r694; .reg .pred %r695; .reg .u64 %r696; .reg .u32 %r697; .reg .u32 %r699; .reg .pred %r700; .reg .u64 %r701; .reg .u32 %r702; .reg .u32 %r703; .reg .pred %r704; .reg .pred %r705; .reg .f64 %r706; .reg .f64 %r707; .reg .pred %r708; .reg .u64 %r709; .reg .u32 %r710; .reg .u32 %r712; .reg .pred %r713; .reg .u64 %r714; .reg .u32 %r715; .reg .u32 %r716; .reg .pred %r717; .reg .f64 %r718; .reg .f64 %r719; .reg .u32 %r720; .reg .pred %r721; .reg .u64 %r722; .reg .u32 %r723; .reg .u32 %r725; .reg .pred %r726; .reg .u64 %r727; .reg .u32 %r728; .reg .u32 %r729; .reg .pred %r730; .reg .f64 %r731; .reg .f64 %r732; .reg .u32 %r733; .reg .pred %r734; .reg .u64 %r735; .reg .u32 %r736; .reg .u32 %r738; .reg .pred %r739; .reg .u64 %r740; .reg .u32 %r741; .reg .u32 %r742; .reg .pred %r743; .reg .f64 %r744; .reg .f64 %r745; .reg .u32 %r746; .reg .pred %r747; .reg .u64 %r748; .reg .u32 %r749; .reg .u32 %r751; .reg .pred %r752; .reg .u64 %r753; .reg .u32 %r754; .reg .u32 %r755; .reg .pred %r756; .reg .f64 %r757; .reg .u32 %r758; .reg .pred %r759; .reg .u64 %r760; .reg .u32 %r761; .reg .u32 %r763; .reg .pred %r764; .reg .u64 %r765; .reg .u32 %r766; .reg .u32 %r767; .reg .pred %r768; .reg .pred %r769; .reg .u32 %r770; .reg .pred %r771; .reg .u64 %r772; .reg .u32 %r773; .reg .u32 %r775; .reg .pred %r776; .reg .u64 %r777; .reg .u32 %r778; .reg .u32 %r779; .reg .pred %r780; .reg .f64 %r781; .reg .f64 %r783; .reg .u32 %r784; .reg .pred %r785; .reg .u64 %r786; .reg .u32 %r787; .reg .u32 %r789; .reg .pred %r790; .reg .u64 %r791; .reg .u32 %r792; .reg .u32 %r793; .reg .pred %r794; .reg .f64 %r795; .reg .u32 %r796; .reg .pred %r797; .reg .u64 %r798; .reg .u32 %r799; .reg .u32 %r801; .reg .pred %r802; .reg .u64 %r803; .reg .u32 %r804; .reg .u32 %r805; .reg .pred %r806; .reg .f64 %r807; .reg .u32 %r808; .reg .pred %r809; .reg .u64 %r810; .reg .u32 %r811; .reg .u32 %r813; .reg .pred %r814; .reg .u64 %r815; .reg .u32 %r816; .reg .u32 %r817; .reg .pred %r818; .reg .f64 %r819; .reg .u32 %r820; .reg .pred %r821; .reg .u64 %r822; .reg .u32 %r823; .reg .u32 %r825; .reg .pred %r826; .reg .u64 %r827; .reg .u32 %r828; .reg .u32 %r829; .reg .pred %r830; .reg .f64 %r831; .reg .u32 %r832; .reg .pred %r833; .reg .u64 %r834; .reg .u32 %r835; .reg .u32 %r837; .reg .pred %r838; .reg .u64 %r839; .reg .u32 %r840; .reg .u32 %r841; .reg .pred %r842; .reg .f64 %r843; .reg .u32 %r844; .reg .pred %r845; .reg .u64 %r846; .reg .u32 %r847; .reg .u32 %r849; .reg .pred %r850; .reg .u64 %r851; .reg .u32 %r852; .reg .u32 %r853; .reg .pred %r854; .reg .f64 %r855; .reg .u32 %r856; .reg .pred %r857; .reg .u64 %r858; .reg .u32 %r859; .reg .u32 %r861; .reg .pred %r862; .reg .u64 %r863; .reg .u32 %r864; .reg .u32 %r865; .reg .pred %r866; .reg .pred %r867; .reg .f64 %r868; .reg .f64 %r869; .reg .pred %r870; .reg .u64 %r871; .reg .u32 %r872; .reg .u32 %r874; .reg .pred %r875; .reg .u64 %r876; .reg .u32 %r877; .reg .u32 %r878; .reg .pred %r879; .reg .pred %r880; .reg .f64 %r881; .reg .f64 %r882; .reg .pred %r883; .reg .u64 %r884; .reg .u32 %r885; .reg .u32 %r887; .reg .pred %r888; .reg .u64 %r889; .reg .u32 %r890; .reg .u32 %r891; .reg .pred %r892; .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 .u32 %r906; .reg .pred %r907; .reg .u64 %r908; .reg .u32 %r909; .reg .pred %r910; .reg .u64 %r911; mov.f64 %r251,%ar0; mov.f64 %r252,%ar1; mov.u32 %r253,%ar2; .loc 1 99 11 st.f64 [%frame+16],%r251; .loc 1 100 11 st.f64 [%frame+24],%r252; .loc 1 101 10 mov.u32 %r254,0; st.u32 [%frame+40],%r254; setp.eq.u32 %r255,%r253,42; @ %r255 bra $L2; setp.gt.s32 %r256,%r253,42; @ %r256 bra $L3; setp.eq.u32 %r257,%r253,21; @ %r257 bra $L4; setp.gt.s32 %r258,%r253,21; @ %r258 bra $L5; setp.eq.u32 %r259,%r253,10; @ %r259 bra $L6; setp.gt.s32 %r260,%r253,10; @ %r260 bra $L7; setp.eq.u32 %r261,%r253,5; @ %r261 bra $L8; setp.gt.s32 %r262,%r253,5; @ %r262 bra $L9; setp.eq.u32 %r263,%r253,2; @ %r263 bra $L10; setp.gt.s32 %r264,%r253,2; @ %r264 bra $L11; setp.eq.u32 %r265,%r253,1; @ %r265 bra $L12; bra $L498; $L11: setp.eq.u32 %r266,%r253,3; @ %r266 bra $L14; setp.eq.u32 %r267,%r253,4; @ %r267 bra $L15; bra $L498; $L9: setp.eq.u32 %r268,%r253,7; @ %r268 bra $L16; setp.lt.s32 %r269,%r253,7; @ %r269 bra $L17; setp.eq.u32 %r270,%r253,8; @ %r270 bra $L18; setp.eq.u32 %r271,%r253,9; @ %r271 bra $L19; bra $L498; $L7: setp.eq.u32 %r272,%r253,15; @ %r272 bra $L20; setp.gt.s32 %r273,%r253,15; @ %r273 bra $L21; setp.eq.u32 %r274,%r253,12; @ %r274 bra $L22; setp.lt.s32 %r275,%r253,12; @ %r275 bra $L23; setp.eq.u32 %r276,%r253,13; @ %r276 bra $L24; setp.eq.u32 %r277,%r253,14; @ %r277 bra $L25; bra $L498; $L21: setp.eq.u32 %r278,%r253,18; @ %r278 bra $L26; setp.gt.s32 %r279,%r253,18; @ %r279 bra $L27; setp.eq.u32 %r280,%r253,16; @ %r280 bra $L28; setp.eq.u32 %r281,%r253,17; @ %r281 bra $L29; bra $L498; $L27: setp.eq.u32 %r282,%r253,19; @ %r282 bra $L30; setp.eq.u32 %r283,%r253,20; @ %r283 bra $L31; bra $L498; $L5: setp.eq.u32 %r284,%r253,31; @ %r284 bra $L32; setp.gt.s32 %r285,%r253,31; @ %r285 bra $L33; setp.eq.u32 %r286,%r253,26; @ %r286 bra $L34; setp.gt.s32 %r287,%r253,26; @ %r287 bra $L35; setp.eq.u32 %r288,%r253,23; @ %r288 bra $L36; setp.lt.s32 %r289,%r253,23; @ %r289 bra $L37; setp.eq.u32 %r290,%r253,24; @ %r290 bra $L38; setp.eq.u32 %r291,%r253,25; @ %r291 bra $L39; bra $L498; $L35: setp.eq.u32 %r292,%r253,28; @ %r292 bra $L40; setp.lt.s32 %r293,%r253,28; @ %r293 bra $L41; setp.eq.u32 %r294,%r253,29; @ %r294 bra $L42; setp.eq.u32 %r295,%r253,30; @ %r295 bra $L43; bra $L498; $L33: setp.eq.u32 %r296,%r253,36; @ %r296 bra $L44; setp.gt.s32 %r297,%r253,36; @ %r297 bra $L45; setp.eq.u32 %r298,%r253,33; @ %r298 bra $L46; setp.lt.s32 %r299,%r253,33; @ %r299 bra $L47; setp.eq.u32 %r300,%r253,34; @ %r300 bra $L48; setp.eq.u32 %r301,%r253,35; @ %r301 bra $L49; bra $L498; $L45: setp.eq.u32 %r302,%r253,39; @ %r302 bra $L50; setp.gt.s32 %r303,%r253,39; @ %r303 bra $L51; setp.eq.u32 %r304,%r253,37; @ %r304 bra $L52; setp.eq.u32 %r305,%r253,38; @ %r305 bra $L53; bra $L498; $L51: setp.eq.u32 %r306,%r253,40; @ %r306 bra $L54; setp.eq.u32 %r307,%r253,41; @ %r307 bra $L55; bra $L498; $L3: setp.eq.u32 %r308,%r253,121; @ %r308 bra $L4; setp.gt.s32 %r309,%r253,121; @ %r309 bra $L56; setp.eq.u32 %r310,%r253,110; @ %r310 bra $L6; setp.gt.s32 %r311,%r253,110; @ %r311 bra $L57; setp.eq.u32 %r312,%r253,105; @ %r312 bra $L8; setp.gt.s32 %r313,%r253,105; @ %r313 bra $L58; setp.eq.u32 %r314,%r253,102; @ %r314 bra $L10; setp.gt.s32 %r315,%r253,102; @ %r315 bra $L59; setp.eq.u32 %r316,%r253,101; @ %r316 bra $L12; bra $L498; $L59: setp.eq.u32 %r317,%r253,103; @ %r317 bra $L14; setp.eq.u32 %r318,%r253,104; @ %r318 bra $L15; bra $L498; $L58: setp.eq.u32 %r319,%r253,107; @ %r319 bra $L16; setp.lt.s32 %r320,%r253,107; @ %r320 bra $L17; setp.eq.u32 %r321,%r253,108; @ %r321 bra $L18; setp.eq.u32 %r322,%r253,109; @ %r322 bra $L19; bra $L498; $L57: setp.eq.u32 %r323,%r253,115; @ %r323 bra $L20; setp.gt.s32 %r324,%r253,115; @ %r324 bra $L60; setp.eq.u32 %r325,%r253,112; @ %r325 bra $L22; setp.lt.s32 %r326,%r253,112; @ %r326 bra $L23; setp.eq.u32 %r327,%r253,113; @ %r327 bra $L24; setp.eq.u32 %r328,%r253,114; @ %r328 bra $L25; bra $L498; $L60: setp.eq.u32 %r329,%r253,118; @ %r329 bra $L26; setp.gt.s32 %r330,%r253,118; @ %r330 bra $L61; setp.eq.u32 %r331,%r253,116; @ %r331 bra $L28; setp.eq.u32 %r332,%r253,117; @ %r332 bra $L29; bra $L498; $L61: setp.eq.u32 %r333,%r253,119; @ %r333 bra $L30; setp.eq.u32 %r334,%r253,120; @ %r334 bra $L31; bra $L498; $L56: setp.eq.u32 %r335,%r253,132; @ %r335 bra $L47; setp.gt.s32 %r336,%r253,132; @ %r336 bra $L62; setp.eq.u32 %r337,%r253,126; @ %r337 bra $L34; setp.gt.s32 %r338,%r253,126; @ %r338 bra $L63; setp.eq.u32 %r339,%r253,123; @ %r339 bra $L36; setp.lt.s32 %r340,%r253,123; @ %r340 bra $L37; setp.eq.u32 %r341,%r253,124; @ %r341 bra $L38; setp.eq.u32 %r342,%r253,125; @ %r342 bra $L39; bra $L498; $L63: setp.eq.u32 %r343,%r253,129; @ %r343 bra $L42; setp.gt.s32 %r344,%r253,129; @ %r344 bra $L64; setp.eq.u32 %r345,%r253,127; @ %r345 bra $L41; setp.eq.u32 %r346,%r253,128; @ %r346 bra $L40; bra $L498; $L64: setp.eq.u32 %r347,%r253,130; @ %r347 bra $L43; setp.eq.u32 %r348,%r253,131; @ %r348 bra $L32; bra $L498; $L62: setp.eq.u32 %r349,%r253,137; @ %r349 bra $L52; setp.gt.s32 %r350,%r253,137; @ %r350 bra $L65; setp.eq.u32 %r351,%r253,134; @ %r351 bra $L48; setp.lt.s32 %r352,%r253,134; @ %r352 bra $L46; setp.eq.u32 %r353,%r253,135; @ %r353 bra $L49; setp.eq.u32 %r354,%r253,136; @ %r354 bra $L44; bra $L498; $L65: setp.eq.u32 %r355,%r253,140; @ %r355 bra $L54; setp.gt.s32 %r356,%r253,140; @ %r356 bra $L66; setp.eq.u32 %r357,%r253,138; @ %r357 bra $L53; setp.eq.u32 %r358,%r253,139; @ %r358 bra $L50; bra $L498; $L66: setp.eq.u32 %r359,%r253,141; @ %r359 bra $L55; setp.eq.u32 %r360,%r253,142; @ %r360 bra $L2; bra $L498; $L12: .loc 1 106 12 mov.u32 %r361,1; st.u32 [%frame],%r361; .loc 1 107 34 setp.le.s32 %r362,%r253,99; @ %r362 bra $L226; cvta.const.u64 %r202,$LC1; bra $L67; $L226: cvta.const.u64 %r202,$LC0; $L67: .loc 1 107 12 st.u64 [%frame+8],%r202; .loc 1 108 14 mov.f64 %r363,0d0000000000000000; st.f64 [%frame+32],%r363; .loc 1 109 6 ld.global.u32 %r364,[__fdlib_version]; setp.ne.u32 %r365,%r364,2; @ %r365 bra $L68; .loc 1 110 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r366,[%value_in]; } .loc 1 110 11 mov.u32 %r367,33; st.u32 [%r366],%r367; ld.u32 %r249,[%frame+40]; bra $L13; $L68: .loc 1 111 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r369,[%value_in]; } .loc 1 111 11 setp.eq.u32 %r370,%r369,0; @ %r370 bra $L69; ld.u32 %r249,[%frame+40]; bra $L13; $L69: .loc 1 115 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r371,[%value_in]; } .loc 1 115 11 mov.u32 %r372,33; st.u32 [%r371],%r372; ld.u32 %r249,[%frame+40]; bra $L13; $L10: .loc 1 121 12 mov.u32 %r373,1; st.u32 [%frame],%r373; .loc 1 122 34 setp.le.s32 %r374,%r253,99; @ %r374 bra $L227; cvta.const.u64 %r203,$LC3; bra $L70; $L227: cvta.const.u64 %r203,$LC2; $L70: .loc 1 122 12 st.u64 [%frame+8],%r203; .loc 1 123 14 mov.f64 %r375,0d0000000000000000; st.f64 [%frame+32],%r375; .loc 1 124 5 ld.global.u32 %r376,[__fdlib_version]; setp.ne.u32 %r377,%r376,2; @ %r377 bra $L71; .loc 1 125 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r378,[%value_in]; } .loc 1 125 11 mov.u32 %r379,33; st.u32 [%r378],%r379; ld.u32 %r249,[%frame+40]; bra $L13; $L71: .loc 1 126 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r381,[%value_in]; } .loc 1 126 11 setp.eq.u32 %r382,%r381,0; @ %r382 bra $L72; ld.u32 %r249,[%frame+40]; bra $L13; $L72: .loc 1 130 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r383,[%value_in]; } .loc 1 130 11 mov.u32 %r384,33; st.u32 [%r383],%r384; ld.u32 %r249,[%frame+40]; bra $L13; $L14: .loc 1 136 12 st.f64 [%frame+16],%r252; .loc 1 137 12 st.f64 [%frame+24],%r251; .loc 1 138 12 mov.u32 %r385,1; st.u32 [%frame],%r385; .loc 1 139 35 setp.le.s32 %r386,%r253,99; @ %r386 bra $L228; cvta.const.u64 %r204,$LC5; bra $L73; $L228: cvta.const.u64 %r204,$LC4; $L73: .loc 1 139 12 st.u64 [%frame+8],%r204; .loc 1 140 14 mov.f64 %r387,0d0000000000000000; st.f64 [%frame+32],%r387; .loc 1 141 5 ld.global.u32 %r388,[__fdlib_version]; setp.ne.u32 %r389,%r388,2; @ %r389 bra $L74; .loc 1 142 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r390,[%value_in]; } .loc 1 142 11 mov.u32 %r391,33; st.u32 [%r390],%r391; ld.u32 %r249,[%frame+40]; bra $L13; $L74: .loc 1 143 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r393,[%value_in]; } .loc 1 143 11 setp.eq.u32 %r394,%r393,0; @ %r394 bra $L75; ld.u32 %r249,[%frame+40]; bra $L13; $L75: .loc 1 147 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r395,[%value_in]; } .loc 1 147 11 mov.u32 %r396,33; st.u32 [%r395],%r396; ld.u32 %r249,[%frame+40]; bra $L13; $L15: .loc 1 153 12 mov.u32 %r397,3; st.u32 [%frame],%r397; .loc 1 154 35 setp.le.s32 %r398,%r253,99; @ %r398 bra $L229; cvta.const.u64 %r205,$LC7; bra $L76; $L229: cvta.const.u64 %r205,$LC6; $L76: .loc 1 154 12 st.u64 [%frame+8],%r205; .loc 1 155 20 ld.global.u32 %r34,[__fdlib_version]; .loc 1 155 6 setp.ne.u32 %r399,%r34,0; @ %r399 bra $L77; .loc 1 156 16 mov.f64 %r400,0d47efffffe0000000; st.f64 [%frame+32],%r400; bra $L78; $L77: .loc 1 158 16 mov.f64 %r401,0d7ff0000000000000; st.f64 [%frame+32],%r401; .loc 1 159 6 setp.ne.u32 %r402,%r34,2; @ %r402 bra $L78; .loc 1 160 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r403,[%value_in]; } .loc 1 160 11 mov.u32 %r404,34; st.u32 [%r403],%r404; ld.u32 %r249,[%frame+40]; bra $L13; $L78: .loc 1 161 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r406,[%value_in]; } .loc 1 161 11 setp.eq.u32 %r407,%r406,0; @ %r407 bra $L79; ld.u32 %r249,[%frame+40]; bra $L13; $L79: .loc 1 162 4 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r408,[%value_in]; } .loc 1 162 10 mov.u32 %r409,34; st.u32 [%r408],%r409; ld.u32 %r249,[%frame+40]; bra $L13; $L8: .loc 1 168 12 mov.u32 %r410,3; st.u32 [%frame],%r410; .loc 1 169 34 setp.le.s32 %r411,%r253,99; @ %r411 bra $L230; cvta.const.u64 %r206,$LC9; bra $L80; $L230: cvta.const.u64 %r206,$LC8; $L80: .loc 1 169 12 st.u64 [%frame+8],%r206; .loc 1 170 20 ld.global.u32 %r38,[__fdlib_version]; .loc 1 170 6 setp.ne.u32 %r412,%r38,0; @ %r412 bra $L81; .loc 1 171 16 mov.f64 %r413,0d47efffffe0000000; st.f64 [%frame+32],%r413; bra $L82; $L81: .loc 1 173 16 mov.f64 %r414,0d7ff0000000000000; st.f64 [%frame+32],%r414; .loc 1 174 6 setp.ne.u32 %r415,%r38,2; @ %r415 bra $L82; .loc 1 175 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r416,[%value_in]; } .loc 1 175 11 mov.u32 %r417,34; st.u32 [%r416],%r417; ld.u32 %r249,[%frame+40]; bra $L13; $L82: .loc 1 176 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r419,[%value_in]; } .loc 1 176 11 setp.eq.u32 %r420,%r419,0; @ %r420 bra $L83; ld.u32 %r249,[%frame+40]; bra $L13; $L83: .loc 1 177 4 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r421,[%value_in]; } .loc 1 177 10 mov.u32 %r422,34; st.u32 [%r421],%r422; ld.u32 %r249,[%frame+40]; bra $L13; $L17: .loc 1 183 12 mov.u32 %r423,3; st.u32 [%frame],%r423; .loc 1 184 33 setp.le.s32 %r424,%r253,99; @ %r424 bra $L231; cvta.const.u64 %r207,$LC11; bra $L84; $L231: cvta.const.u64 %r207,$LC10; $L84: .loc 1 184 12 st.u64 [%frame+8],%r207; .loc 1 185 20 ld.global.u32 %r42,[__fdlib_version]; .loc 1 185 6 setp.ne.u32 %r425,%r42,0; @ %r425 bra $L85; .loc 1 186 16 mov.f64 %r426,0d47efffffe0000000; st.f64 [%frame+32],%r426; bra $L86; $L85: .loc 1 188 16 mov.f64 %r427,0d7ff0000000000000; st.f64 [%frame+32],%r427; .loc 1 189 6 setp.ne.u32 %r428,%r42,2; @ %r428 bra $L86; .loc 1 190 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r429,[%value_in]; } .loc 1 190 11 mov.u32 %r430,34; st.u32 [%r429],%r430; ld.u32 %r249,[%frame+40]; bra $L13; $L86: .loc 1 191 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r432,[%value_in]; } .loc 1 191 11 setp.eq.u32 %r433,%r432,0; @ %r433 bra $L87; ld.u32 %r249,[%frame+40]; bra $L13; $L87: .loc 1 192 4 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r434,[%value_in]; } .loc 1 192 10 mov.u32 %r435,34; st.u32 [%r434],%r435; ld.u32 %r249,[%frame+40]; bra $L13; $L16: .loc 1 198 12 mov.u32 %r436,4; st.u32 [%frame],%r436; .loc 1 199 33 setp.le.s32 %r437,%r253,99; @ %r437 bra $L232; cvta.const.u64 %r208,$LC11; bra $L88; $L232: cvta.const.u64 %r208,$LC10; $L88: .loc 1 199 12 st.u64 [%frame+8],%r208; .loc 1 200 14 mov.f64 %r438,0d0000000000000000; st.f64 [%frame+32],%r438; .loc 1 201 6 ld.global.u32 %r439,[__fdlib_version]; setp.ne.u32 %r440,%r439,2; @ %r440 bra $L89; .loc 1 202 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r441,[%value_in]; } .loc 1 202 11 mov.u32 %r442,34; st.u32 [%r441],%r442; ld.u32 %r249,[%frame+40]; bra $L13; $L89: .loc 1 203 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r444,[%value_in]; } .loc 1 203 11 setp.eq.u32 %r445,%r444,0; @ %r445 bra $L90; ld.u32 %r249,[%frame+40]; bra $L13; $L90: .loc 1 204 4 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r446,[%value_in]; } .loc 1 204 10 mov.u32 %r447,34; st.u32 [%r446],%r447; ld.u32 %r249,[%frame+40]; bra $L13; $L18: .loc 1 210 12 mov.u32 %r448,1; st.u32 [%frame],%r448; .loc 1 211 32 setp.le.s32 %r449,%r253,99; @ %r449 bra $L233; cvta.const.u64 %r209,$LC13; bra $L91; $L233: cvta.const.u64 %r209,$LC12; $L91: .loc 1 211 12 st.u64 [%frame+8],%r209; .loc 1 212 20 ld.global.u32 %r50,[__fdlib_version]; .loc 1 212 6 setp.ne.u32 %r450,%r50,0; @ %r450 bra $L92; .loc 1 213 16 mov.f64 %r451,0dc7efffffe0000000; st.f64 [%frame+32],%r451; bra $L93; $L92: .loc 1 215 16 mov.f64 %r452,0dfff0000000000000; st.f64 [%frame+32],%r452; .loc 1 216 6 setp.ne.u32 %r453,%r50,2; @ %r453 bra $L93; .loc 1 217 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r454,[%value_in]; } .loc 1 217 11 mov.u32 %r455,33; st.u32 [%r454],%r455; ld.u32 %r249,[%frame+40]; bra $L13; $L93: .loc 1 218 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r457,[%value_in]; } .loc 1 218 11 setp.eq.u32 %r458,%r457,0; @ %r458 bra $L94; ld.u32 %r249,[%frame+40]; bra $L13; $L94: .loc 1 222 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r459,[%value_in]; } .loc 1 222 11 mov.u32 %r460,33; st.u32 [%r459],%r460; ld.u32 %r249,[%frame+40]; bra $L13; $L19: .loc 1 228 12 mov.u32 %r461,1; st.u32 [%frame],%r461; .loc 1 229 32 setp.le.s32 %r462,%r253,99; @ %r462 bra $L234; cvta.const.u64 %r210,$LC13; bra $L95; $L234: cvta.const.u64 %r210,$LC12; $L95: .loc 1 229 12 st.u64 [%frame+8],%r210; .loc 1 230 20 ld.global.u32 %r54,[__fdlib_version]; .loc 1 230 6 setp.ne.u32 %r463,%r54,0; @ %r463 bra $L96; .loc 1 231 16 mov.f64 %r464,0dc7efffffe0000000; st.f64 [%frame+32],%r464; bra $L97; $L96: .loc 1 233 16 mov.f64 %r465,0dfff0000000000000; st.f64 [%frame+32],%r465; .loc 1 234 6 setp.ne.u32 %r466,%r54,2; @ %r466 bra $L97; .loc 1 235 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r467,[%value_in]; } .loc 1 235 11 mov.u32 %r468,33; st.u32 [%r467],%r468; ld.u32 %r249,[%frame+40]; bra $L13; $L97: .loc 1 236 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r470,[%value_in]; } .loc 1 236 11 setp.eq.u32 %r471,%r470,0; @ %r471 bra $L98; ld.u32 %r249,[%frame+40]; bra $L13; $L98: .loc 1 240 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r472,[%value_in]; } .loc 1 240 11 mov.u32 %r473,33; st.u32 [%r472],%r473; ld.u32 %r249,[%frame+40]; bra $L13; $L6: .loc 1 246 12 mov.u32 %r474,1; st.u32 [%frame],%r474; .loc 1 247 32 setp.le.s32 %r475,%r253,99; @ %r475 bra $L235; cvta.const.u64 %r211,$LC15; bra $L99; $L235: cvta.const.u64 %r211,$LC14; $L99: .loc 1 247 12 st.u64 [%frame+8],%r211; .loc 1 248 20 ld.global.u32 %r58,[__fdlib_version]; .loc 1 248 6 setp.ne.u32 %r476,%r58,0; @ %r476 bra $L100; .loc 1 249 16 mov.f64 %r477,0dc7efffffe0000000; st.f64 [%frame+32],%r477; bra $L101; $L100: .loc 1 251 16 mov.f64 %r478,0dfff0000000000000; st.f64 [%frame+32],%r478; .loc 1 252 6 setp.ne.u32 %r479,%r58,2; @ %r479 bra $L101; .loc 1 253 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r480,[%value_in]; } .loc 1 253 11 mov.u32 %r481,33; st.u32 [%r480],%r481; ld.u32 %r249,[%frame+40]; bra $L13; $L101: .loc 1 254 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r483,[%value_in]; } .loc 1 254 11 setp.eq.u32 %r484,%r483,0; @ %r484 bra $L102; ld.u32 %r249,[%frame+40]; bra $L13; $L102: .loc 1 258 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r485,[%value_in]; } .loc 1 258 11 mov.u32 %r486,33; st.u32 [%r485],%r486; ld.u32 %r249,[%frame+40]; bra $L13; $L23: .loc 1 264 12 mov.u32 %r487,1; st.u32 [%frame],%r487; .loc 1 265 32 setp.le.s32 %r488,%r253,99; @ %r488 bra $L236; cvta.const.u64 %r212,$LC15; bra $L103; $L236: cvta.const.u64 %r212,$LC14; $L103: .loc 1 265 12 st.u64 [%frame+8],%r212; .loc 1 266 20 ld.global.u32 %r62,[__fdlib_version]; .loc 1 266 6 setp.ne.u32 %r489,%r62,0; @ %r489 bra $L104; .loc 1 267 16 mov.f64 %r490,0dc7efffffe0000000; st.f64 [%frame+32],%r490; bra $L105; $L104: .loc 1 269 16 mov.f64 %r491,0dfff0000000000000; st.f64 [%frame+32],%r491; .loc 1 270 6 setp.ne.u32 %r492,%r62,2; @ %r492 bra $L105; .loc 1 271 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r493,[%value_in]; } .loc 1 271 11 mov.u32 %r494,33; st.u32 [%r493],%r494; ld.u32 %r249,[%frame+40]; bra $L13; $L105: .loc 1 272 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r496,[%value_in]; } .loc 1 272 11 setp.eq.u32 %r497,%r496,0; @ %r497 bra $L106; ld.u32 %r249,[%frame+40]; bra $L13; $L106: .loc 1 276 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r498,[%value_in]; } .loc 1 276 11 mov.u32 %r499,33; st.u32 [%r498],%r499; ld.u32 %r249,[%frame+40]; bra $L13; $L22: .loc 1 282 12 mov.u32 %r500,1; st.u32 [%frame],%r500; .loc 1 283 32 setp.le.s32 %r501,%r253,99; @ %r501 bra $L237; cvta.const.u64 %r213,$LC17; bra $L107; $L237: cvta.const.u64 %r213,$LC16; $L107: .loc 1 283 12 st.u64 [%frame+8],%r213; .loc 1 284 20 ld.global.u32 %r66,[__fdlib_version]; .loc 1 284 6 setp.ne.u32 %r502,%r66,0; @ %r502 bra $L108; .loc 1 285 16 mov.f64 %r503,0dc7efffffe0000000; st.f64 [%frame+32],%r503; bra $L109; $L108: .loc 1 287 16 mov.f64 %r504,0dfff0000000000000; st.f64 [%frame+32],%r504; .loc 1 288 6 setp.ne.u32 %r505,%r66,2; @ %r505 bra $L109; .loc 1 289 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r506,[%value_in]; } .loc 1 289 11 mov.u32 %r507,33; st.u32 [%r506],%r507; ld.u32 %r249,[%frame+40]; bra $L13; $L109: .loc 1 290 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r509,[%value_in]; } .loc 1 290 11 setp.eq.u32 %r510,%r509,0; @ %r510 bra $L110; ld.u32 %r249,[%frame+40]; bra $L13; $L110: .loc 1 294 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r511,[%value_in]; } .loc 1 294 11 mov.u32 %r512,33; st.u32 [%r511],%r512; ld.u32 %r249,[%frame+40]; bra $L13; $L24: .loc 1 300 12 mov.u32 %r513,1; st.u32 [%frame],%r513; .loc 1 301 32 setp.le.s32 %r514,%r253,99; @ %r514 bra $L238; cvta.const.u64 %r214,$LC17; bra $L111; $L238: cvta.const.u64 %r214,$LC16; $L111: .loc 1 301 12 st.u64 [%frame+8],%r214; .loc 1 302 20 ld.global.u32 %r70,[__fdlib_version]; .loc 1 302 6 setp.ne.u32 %r515,%r70,0; @ %r515 bra $L112; .loc 1 303 16 mov.f64 %r516,0dc7efffffe0000000; st.f64 [%frame+32],%r516; bra $L113; $L112: .loc 1 305 16 mov.f64 %r517,0dfff0000000000000; st.f64 [%frame+32],%r517; .loc 1 306 6 setp.ne.u32 %r518,%r70,2; @ %r518 bra $L113; .loc 1 307 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r519,[%value_in]; } .loc 1 307 11 mov.u32 %r520,33; st.u32 [%r519],%r520; ld.u32 %r249,[%frame+40]; bra $L13; $L113: .loc 1 308 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r522,[%value_in]; } .loc 1 308 11 setp.eq.u32 %r523,%r522,0; @ %r523 bra $L114; ld.u32 %r249,[%frame+40]; bra $L13; $L114: .loc 1 312 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r524,[%value_in]; } .loc 1 312 11 mov.u32 %r525,33; st.u32 [%r524],%r525; ld.u32 %r249,[%frame+40]; bra $L13; $L25: .loc 1 318 12 mov.u32 %r526,3; st.u32 [%frame],%r526; .loc 1 319 36 setp.le.s32 %r527,%r253,99; @ %r527 bra $L239; cvta.const.u64 %r215,$LC19; bra $L115; $L239: cvta.const.u64 %r215,$LC18; $L115: .loc 1 319 12 st.u64 [%frame+8],%r215; .loc 1 320 34 ld.global.u32 %r74,[__fdlib_version]; .loc 1 320 20 setp.ne.u32 %r528,%r74,0; @ %r528 bra $L116; .loc 1 321 30 mov.f64 %r529,0d47efffffe0000000; st.f64 [%frame+32],%r529; bra $L117; $L116: .loc 1 323 30 mov.f64 %r530,0d7ff0000000000000; st.f64 [%frame+32],%r530; .loc 1 324 20 setp.ne.u32 %r531,%r74,2; @ %r531 bra $L117; .loc 1 325 4 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r532,[%value_in]; } .loc 1 325 10 mov.u32 %r533,34; st.u32 [%r532],%r533; ld.u32 %r249,[%frame+40]; bra $L13; $L117: .loc 1 326 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r535,[%value_in]; } .loc 1 326 25 setp.eq.u32 %r536,%r535,0; @ %r536 bra $L118; ld.u32 %r249,[%frame+40]; bra $L13; $L118: .loc 1 327 25 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r537,[%value_in]; } .loc 1 327 31 mov.u32 %r538,34; st.u32 [%r537],%r538; ld.u32 %r249,[%frame+40]; bra $L13; $L20: .loc 1 333 12 mov.u32 %r539,2; st.u32 [%frame],%r539; .loc 1 334 36 setp.le.s32 %r540,%r253,99; @ %r540 bra $L240; cvta.const.u64 %r216,$LC19; bra $L119; $L240: cvta.const.u64 %r216,$LC18; $L119: .loc 1 334 12 st.u64 [%frame+8],%r216; .loc 1 335 34 ld.global.u32 %r78,[__fdlib_version]; .loc 1 335 20 setp.ne.u32 %r541,%r78,0; @ %r541 bra $L120; .loc 1 336 30 mov.f64 %r542,0d47efffffe0000000; st.f64 [%frame+32],%r542; bra $L121; $L120: .loc 1 338 30 mov.f64 %r543,0d7ff0000000000000; st.f64 [%frame+32],%r543; .loc 1 339 6 setp.ne.u32 %r544,%r78,2; @ %r544 bra $L121; .loc 1 340 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r545,[%value_in]; } .loc 1 340 11 mov.u32 %r546,33; st.u32 [%r545],%r546; ld.u32 %r249,[%frame+40]; bra $L13; $L121: .loc 1 341 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r548,[%value_in]; } .loc 1 341 11 setp.eq.u32 %r549,%r548,0; @ %r549 bra $L122; ld.u32 %r249,[%frame+40]; bra $L13; $L122: .loc 1 345 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r550,[%value_in]; } .loc 1 345 11 mov.u32 %r551,33; st.u32 [%r550],%r551; ld.u32 %r249,[%frame+40]; bra $L13; $L28: .loc 1 351 12 mov.u32 %r552,2; st.u32 [%frame],%r552; .loc 1 352 33 setp.le.s32 %r553,%r253,99; @ %r553 bra $L241; cvta.const.u64 %r217,$LC21; bra $L123; $L241: cvta.const.u64 %r217,$LC20; $L123: .loc 1 352 12 st.u64 [%frame+8],%r217; .loc 1 353 20 ld.global.u32 %r82,[__fdlib_version]; .loc 1 353 6 setp.ne.u32 %r554,%r82,0; @ %r554 bra $L124; .loc 1 354 16 mov.f64 %r555,0dc7efffffe0000000; st.f64 [%frame+32],%r555; bra $L125; $L124: .loc 1 356 16 mov.f64 %r556,0dfff0000000000000; st.f64 [%frame+32],%r556; .loc 1 357 6 setp.ne.u32 %r557,%r82,2; @ %r557 bra $L125; .loc 1 358 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r558,[%value_in]; } .loc 1 358 11 mov.u32 %r559,34; st.u32 [%r558],%r559; ld.u32 %r249,[%frame+40]; bra $L13; $L125: .loc 1 359 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r561,[%value_in]; } .loc 1 359 11 setp.eq.u32 %r562,%r561,0; @ %r562 bra $L126; ld.u32 %r249,[%frame+40]; bra $L13; $L126: .loc 1 363 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r563,[%value_in]; } .loc 1 363 11 mov.u32 %r564,33; st.u32 [%r563],%r564; ld.u32 %r249,[%frame+40]; bra $L13; $L29: .loc 1 369 12 mov.u32 %r565,1; st.u32 [%frame],%r565; .loc 1 370 33 setp.le.s32 %r566,%r253,99; @ %r566 bra $L242; cvta.const.u64 %r218,$LC21; bra $L127; $L242: cvta.const.u64 %r218,$LC20; $L127: .loc 1 370 12 st.u64 [%frame+8],%r218; .loc 1 371 20 ld.global.u32 %r86,[__fdlib_version]; .loc 1 371 6 setp.ne.u32 %r567,%r86,0; @ %r567 bra $L128; .loc 1 372 16 mov.f64 %r568,0dc7efffffe0000000; st.f64 [%frame+32],%r568; bra $L129; $L128: .loc 1 374 16 mov.f64 %r569,0dfff0000000000000; st.f64 [%frame+32],%r569; .loc 1 375 6 setp.ne.u32 %r570,%r86,2; @ %r570 bra $L129; .loc 1 376 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r571,[%value_in]; } .loc 1 376 11 mov.u32 %r572,33; st.u32 [%r571],%r572; ld.u32 %r249,[%frame+40]; bra $L13; $L129: .loc 1 377 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r574,[%value_in]; } .loc 1 377 11 setp.eq.u32 %r575,%r574,0; @ %r575 bra $L130; ld.u32 %r249,[%frame+40]; bra $L13; $L130: .loc 1 381 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r576,[%value_in]; } .loc 1 381 11 mov.u32 %r577,33; st.u32 [%r576],%r577; ld.u32 %r249,[%frame+40]; bra $L13; $L26: .loc 1 387 12 mov.u32 %r578,2; st.u32 [%frame],%r578; .loc 1 388 35 setp.le.s32 %r579,%r253,99; @ %r579 bra $L243; cvta.const.u64 %r219,$LC23; bra $L131; $L243: cvta.const.u64 %r219,$LC22; $L131: .loc 1 388 12 st.u64 [%frame+8],%r219; .loc 1 389 20 ld.global.u32 %r90,[__fdlib_version]; .loc 1 389 6 setp.ne.u32 %r580,%r90,0; @ %r580 bra $L132; .loc 1 390 16 mov.f64 %r581,0dc7efffffe0000000; st.f64 [%frame+32],%r581; bra $L133; $L132: .loc 1 392 16 mov.f64 %r582,0dfff0000000000000; st.f64 [%frame+32],%r582; .loc 1 393 6 setp.ne.u32 %r583,%r90,2; @ %r583 bra $L133; .loc 1 394 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r584,[%value_in]; } .loc 1 394 11 mov.u32 %r585,34; st.u32 [%r584],%r585; ld.u32 %r249,[%frame+40]; bra $L13; $L133: .loc 1 395 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r587,[%value_in]; } .loc 1 395 11 setp.eq.u32 %r588,%r587,0; @ %r588 bra $L134; ld.u32 %r249,[%frame+40]; bra $L13; $L134: .loc 1 399 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r589,[%value_in]; } .loc 1 399 11 mov.u32 %r590,33; st.u32 [%r589],%r590; ld.u32 %r249,[%frame+40]; bra $L13; $L30: .loc 1 405 12 mov.u32 %r591,1; st.u32 [%frame],%r591; .loc 1 406 35 setp.le.s32 %r592,%r253,99; @ %r592 bra $L244; cvta.const.u64 %r220,$LC23; bra $L135; $L244: cvta.const.u64 %r220,$LC22; $L135: .loc 1 406 12 st.u64 [%frame+8],%r220; .loc 1 407 20 ld.global.u32 %r94,[__fdlib_version]; .loc 1 407 6 setp.ne.u32 %r593,%r94,0; @ %r593 bra $L136; .loc 1 408 16 mov.f64 %r594,0dc7efffffe0000000; st.f64 [%frame+32],%r594; bra $L137; $L136: .loc 1 410 16 mov.f64 %r595,0dfff0000000000000; st.f64 [%frame+32],%r595; .loc 1 411 6 setp.ne.u32 %r596,%r94,2; @ %r596 bra $L137; .loc 1 412 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r597,[%value_in]; } .loc 1 412 11 mov.u32 %r598,33; st.u32 [%r597],%r598; ld.u32 %r249,[%frame+40]; bra $L13; $L137: .loc 1 413 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r600,[%value_in]; } .loc 1 413 11 setp.eq.u32 %r601,%r600,0; @ %r601 bra $L138; ld.u32 %r249,[%frame+40]; bra $L13; $L138: .loc 1 417 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r602,[%value_in]; } .loc 1 417 11 mov.u32 %r603,33; st.u32 [%r602],%r603; ld.u32 %r249,[%frame+40]; bra $L13; $L31: .loc 1 424 12 mov.u32 %r604,1; st.u32 [%frame],%r604; .loc 1 425 33 setp.le.s32 %r605,%r253,99; @ %r605 bra $L245; cvta.const.u64 %r221,$LC25; bra $L139; $L245: cvta.const.u64 %r221,$LC24; $L139: .loc 1 425 12 st.u64 [%frame+8],%r221; .loc 1 426 14 mov.f64 %r606,0d0000000000000000; st.f64 [%frame+32],%r606; .loc 1 427 6 ld.global.u32 %r607,[__fdlib_version]; setp.eq.u32 %r608,%r607,0; @ %r608 bra $L140; $L223: .loc 1 101 10 mov.f64 %r250,0d3ff0000000000000; bra $L1; $L140: .loc 1 428 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r610,[%value_in]; } .loc 1 428 11 setp.eq.u32 %r611,%r610,0; @ %r611 bra $L142; ld.u32 %r249,[%frame+40]; bra $L13; $L142: .loc 1 430 4 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r612,[%value_in]; } .loc 1 430 10 mov.u32 %r613,33; st.u32 [%r612],%r613; ld.u32 %r249,[%frame+40]; bra $L13; $L4: .loc 1 436 12 mov.u32 %r614,3; st.u32 [%frame],%r614; .loc 1 437 33 setp.le.s32 %r615,%r253,99; @ %r615 bra $L246; cvta.const.u64 %r222,$LC25; bra $L143; $L246: cvta.const.u64 %r222,$LC24; $L143: .loc 1 437 12 st.u64 [%frame+8],%r222; .loc 1 438 20 ld.global.u32 %r101,[__fdlib_version]; mul.f64 %r248,%r252,0d3fe0000000000000; .loc 1 438 6 setp.ne.u32 %r616,%r101,0; @ %r616 bra $L144; .loc 1 439 16 mov.f64 %r617,0d47efffffe0000000; st.f64 [%frame+32],%r617; .loc 1 441 7 setp.lt.f64 %r618,%r251,0d0000000000000000; @ ! %r618 bra $L145; .loc 1 441 16 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r248; call (%value_in),rint,(%out_arg1); ld.param.f64 %r620,[%value_in]; } .loc 1 441 14 setp.neu.f64 %r621,%r620,%r248; @ %r621 bra $L147; ld.global.u32 %r101,[__fdlib_version]; bra $L148; $L147: .loc 1 441 39 mov.f64 %r622,0dc7efffffe0000000; st.f64 [%frame+32],%r622; ld.global.u32 %r101,[__fdlib_version]; bra $L148; $L144: .loc 1 443 16 mov.f64 %r623,0d7ff0000000000000; st.f64 [%frame+32],%r623; .loc 1 445 7 setp.lt.f64 %r624,%r251,0d0000000000000000; @ ! %r624 bra $L148; .loc 1 445 16 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r248; call (%value_in),rint,(%out_arg1); ld.param.f64 %r626,[%value_in]; } .loc 1 445 14 setp.neu.f64 %r627,%r626,%r248; @ %r627 bra $L150; ld.global.u32 %r101,[__fdlib_version]; bra $L148; $L150: .loc 1 445 39 mov.f64 %r628,0dfff0000000000000; st.f64 [%frame+32],%r628; ld.global.u32 %r101,[__fdlib_version]; $L148: .loc 1 447 6 setp.ne.u32 %r629,%r101,2; @ %r629 bra $L145; .loc 1 448 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r630,[%value_in]; } .loc 1 448 11 mov.u32 %r631,34; st.u32 [%r630],%r631; ld.u32 %r249,[%frame+40]; bra $L13; $L145: .loc 1 449 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r633,[%value_in]; } .loc 1 449 11 setp.eq.u32 %r634,%r633,0; @ %r634 bra $L151; ld.u32 %r249,[%frame+40]; bra $L13; $L151: .loc 1 450 4 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r635,[%value_in]; } .loc 1 450 10 mov.u32 %r636,34; st.u32 [%r635],%r636; ld.u32 %r249,[%frame+40]; bra $L13; $L37: .loc 1 456 12 mov.u32 %r637,4; st.u32 [%frame],%r637; .loc 1 457 33 setp.le.s32 %r638,%r253,99; @ %r638 bra $L247; cvta.const.u64 %r223,$LC25; bra $L152; $L247: cvta.const.u64 %r223,$LC24; $L152: .loc 1 457 12 st.u64 [%frame+8],%r223; .loc 1 458 14 mov.f64 %r639,0d0000000000000000; st.f64 [%frame+32],%r639; .loc 1 459 6 ld.global.u32 %r640,[__fdlib_version]; setp.ne.u32 %r641,%r640,2; @ %r641 bra $L153; .loc 1 460 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r642,[%value_in]; } .loc 1 460 11 mov.u32 %r643,34; st.u32 [%r642],%r643; ld.u32 %r249,[%frame+40]; bra $L13; $L153: .loc 1 461 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r645,[%value_in]; } .loc 1 461 11 setp.eq.u32 %r646,%r645,0; @ %r646 bra $L154; ld.u32 %r249,[%frame+40]; bra $L13; $L154: .loc 1 462 4 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r647,[%value_in]; } .loc 1 462 10 mov.u32 %r648,34; st.u32 [%r647],%r648; ld.u32 %r249,[%frame+40]; bra $L13; $L36: .loc 1 468 12 mov.u32 %r649,1; st.u32 [%frame],%r649; .loc 1 469 33 setp.le.s32 %r650,%r253,99; @ %r650 bra $L248; cvta.const.u64 %r224,$LC25; bra $L155; $L248: cvta.const.u64 %r224,$LC24; $L155: .loc 1 469 12 st.u64 [%frame+8],%r224; .loc 1 470 20 ld.global.u32 %r111,[__fdlib_version]; .loc 1 470 6 setp.ne.u32 %r651,%r111,0; @ %r651 bra $L156; .loc 1 471 16 mov.f64 %r652,0d0000000000000000; st.f64 [%frame+32],%r652; bra $L157; $L156: .loc 1 473 16 mov.f64 %r653,0dfff0000000000000; st.f64 [%frame+32],%r653; .loc 1 474 6 setp.ne.u32 %r654,%r111,2; @ %r654 bra $L157; .loc 1 475 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r655,[%value_in]; } .loc 1 475 11 mov.u32 %r656,33; st.u32 [%r655],%r656; ld.u32 %r249,[%frame+40]; bra $L13; $L157: .loc 1 476 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r658,[%value_in]; } .loc 1 476 11 setp.eq.u32 %r659,%r658,0; @ %r659 bra $L158; ld.u32 %r249,[%frame+40]; bra $L13; $L158: .loc 1 480 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r660,[%value_in]; } .loc 1 480 11 mov.u32 %r661,33; st.u32 [%r660],%r661; ld.u32 %r249,[%frame+40]; bra $L13; $L38: .loc 1 486 12 mov.u32 %r662,1; st.u32 [%frame],%r662; .loc 1 487 33 setp.le.s32 %r663,%r253,99; @ %r663 bra $L249; cvta.const.u64 %r225,$LC25; bra $L159; $L249: cvta.const.u64 %r225,$LC24; $L159: .loc 1 487 12 st.u64 [%frame+8],%r225; .loc 1 488 20 ld.global.u32 %r115,[__fdlib_version]; .loc 1 488 6 setp.ne.u32 %r664,%r115,0; @ %r664 bra $L160; .loc 1 489 18 mov.f64 %r665,0d0000000000000000; st.f64 [%frame+32],%r665; bra $L161; $L160: .loc 1 491 24 mov.f64 %r667,0d0000000000000000; div.rn.f64 %r666,%r667,0d0000000000000000; .loc 1 491 18 st.f64 [%frame+32],%r666; .loc 1 492 6 setp.ne.u32 %r668,%r115,2; @ %r668 bra $L161; .loc 1 493 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r669,[%value_in]; } .loc 1 493 12 mov.u32 %r670,33; st.u32 [%r669],%r670; ld.u32 %r249,[%frame+40]; bra $L13; $L161: .loc 1 494 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r672,[%value_in]; } .loc 1 494 11 setp.eq.u32 %r673,%r672,0; @ %r673 bra $L162; ld.u32 %r249,[%frame+40]; bra $L13; $L162: .loc 1 498 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r674,[%value_in]; } .loc 1 498 11 mov.u32 %r675,33; st.u32 [%r674],%r675; ld.u32 %r249,[%frame+40]; bra $L13; $L39: .loc 1 504 12 mov.u32 %r676,3; st.u32 [%frame],%r676; .loc 1 505 34 setp.le.s32 %r677,%r253,99; @ %r677 bra $L250; cvta.const.u64 %r226,$LC27; bra $L163; $L250: cvta.const.u64 %r226,$LC26; $L163: .loc 1 505 12 st.u64 [%frame+8],%r226; .loc 1 506 20 ld.global.u32 %r120,[__fdlib_version]; .loc 1 506 6 setp.ne.u32 %r678,%r120,0; @ %r678 bra $L164; .loc 1 507 36 setp.gt.f64 %r679,%r251,0d0000000000000000; selp.f64 %r227,0d47efffffe0000000,0dc7efffffe0000000,%r679; .loc 1 507 16 st.f64 [%frame+32],%r227; bra $L166; $L164: .loc 1 509 40 setp.gt.f64 %r680,%r251,0d0000000000000000; selp.f64 %r228,0d7ff0000000000000,0dfff0000000000000,%r680; .loc 1 509 16 st.f64 [%frame+32],%r228; .loc 1 510 6 setp.ne.u32 %r681,%r120,2; @ %r681 bra $L166; .loc 1 511 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r682,[%value_in]; } .loc 1 511 11 mov.u32 %r683,34; st.u32 [%r682],%r683; ld.u32 %r249,[%frame+40]; bra $L13; $L166: .loc 1 512 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r685,[%value_in]; } .loc 1 512 11 setp.eq.u32 %r686,%r685,0; @ %r686 bra $L168; ld.u32 %r249,[%frame+40]; bra $L13; $L168: .loc 1 513 4 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r687,[%value_in]; } .loc 1 513 10 mov.u32 %r688,34; st.u32 [%r687],%r688; ld.u32 %r249,[%frame+40]; bra $L13; $L34: .loc 1 519 12 mov.u32 %r689,1; st.u32 [%frame],%r689; .loc 1 520 34 setp.le.s32 %r690,%r253,99; @ %r690 bra $L253; cvta.const.u64 %r229,$LC29; bra $L169; $L253: cvta.const.u64 %r229,$LC28; $L169: .loc 1 520 12 st.u64 [%frame+8],%r229; .loc 1 521 20 ld.global.u32 %r124,[__fdlib_version]; .loc 1 521 6 setp.ne.u32 %r691,%r124,0; @ %r691 bra $L170; .loc 1 522 16 mov.f64 %r692,0d0000000000000000; st.f64 [%frame+32],%r692; bra $L171; $L170: .loc 1 524 22 mov.f64 %r694,0d0000000000000000; div.rn.f64 %r693,%r694,0d0000000000000000; .loc 1 524 16 st.f64 [%frame+32],%r693; .loc 1 525 6 setp.ne.u32 %r695,%r124,2; @ %r695 bra $L171; .loc 1 526 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r696,[%value_in]; } .loc 1 526 11 mov.u32 %r697,33; st.u32 [%r696],%r697; ld.u32 %r249,[%frame+40]; bra $L13; $L171: .loc 1 527 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r699,[%value_in]; } .loc 1 527 11 setp.eq.u32 %r700,%r699,0; @ %r700 bra $L172; ld.u32 %r249,[%frame+40]; bra $L13; $L172: .loc 1 531 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r701,[%value_in]; } .loc 1 531 11 mov.u32 %r702,33; st.u32 [%r701],%r702; ld.u32 %r249,[%frame+40]; bra $L13; $L41: .loc 1 537 26 mov.u32 %r703,1; st.u32 [%frame],%r703; .loc 1 538 48 setp.le.s32 %r704,%r253,99; @ %r704 bra $L254; cvta.const.u64 %r230,$LC31; bra $L173; $L254: cvta.const.u64 %r230,$LC30; $L173: .loc 1 538 26 st.u64 [%frame+8],%r230; .loc 1 539 34 ld.global.u32 %r129,[__fdlib_version]; .loc 1 539 20 setp.ne.u32 %r705,%r129,0; @ %r705 bra $L174; .loc 1 540 32 st.f64 [%frame+32],%r251; bra $L175; $L174: .loc 1 542 24 mov.f64 %r707,0d0000000000000000; div.rn.f64 %r706,%r707,0d0000000000000000; .loc 1 542 18 st.f64 [%frame+32],%r706; .loc 1 543 20 setp.ne.u32 %r708,%r129,2; @ %r708 bra $L175; .loc 1 544 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r709,[%value_in]; } .loc 1 544 25 mov.u32 %r710,33; st.u32 [%r709],%r710; ld.u32 %r249,[%frame+40]; bra $L13; $L175: .loc 1 545 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r712,[%value_in]; } .loc 1 545 25 setp.eq.u32 %r713,%r712,0; @ %r713 bra $L176; ld.u32 %r249,[%frame+40]; bra $L13; $L176: .loc 1 549 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r714,[%value_in]; } .loc 1 549 25 mov.u32 %r715,33; st.u32 [%r714],%r715; ld.u32 %r249,[%frame+40]; bra $L13; $L40: .loc 1 555 26 mov.u32 %r716,1; st.u32 [%frame],%r716; .loc 1 556 53 setp.le.s32 %r717,%r253,99; @ %r717 bra $L255; cvta.const.u64 %r231,$LC33; bra $L177; $L255: cvta.const.u64 %r231,$LC32; $L177: .loc 1 556 26 st.u64 [%frame+8],%r231; .loc 1 557 34 mov.f64 %r719,0d0000000000000000; div.rn.f64 %r718,%r719,0d0000000000000000; .loc 1 557 28 st.f64 [%frame+32],%r718; .loc 1 558 20 ld.global.u32 %r720,[__fdlib_version]; setp.ne.u32 %r721,%r720,2; @ %r721 bra $L178; .loc 1 559 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r722,[%value_in]; } .loc 1 559 25 mov.u32 %r723,33; st.u32 [%r722],%r723; ld.u32 %r249,[%frame+40]; bra $L13; $L178: .loc 1 560 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r725,[%value_in]; } .loc 1 560 25 setp.eq.u32 %r726,%r725,0; @ %r726 bra $L179; ld.u32 %r249,[%frame+40]; bra $L13; $L179: .loc 1 564 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r727,[%value_in]; } .loc 1 564 25 mov.u32 %r728,33; st.u32 [%r727],%r728; ld.u32 %r249,[%frame+40]; bra $L13; $L42: .loc 1 570 26 mov.u32 %r729,1; st.u32 [%frame],%r729; .loc 1 571 49 setp.le.s32 %r730,%r253,99; @ %r730 bra $L256; cvta.const.u64 %r232,$LC35; bra $L180; $L256: cvta.const.u64 %r232,$LC34; $L180: .loc 1 571 26 st.u64 [%frame+8],%r232; .loc 1 572 34 mov.f64 %r732,0d0000000000000000; div.rn.f64 %r731,%r732,0d0000000000000000; .loc 1 572 28 st.f64 [%frame+32],%r731; .loc 1 573 20 ld.global.u32 %r733,[__fdlib_version]; setp.ne.u32 %r734,%r733,2; @ %r734 bra $L181; .loc 1 574 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r735,[%value_in]; } .loc 1 574 25 mov.u32 %r736,33; st.u32 [%r735],%r736; ld.u32 %r249,[%frame+40]; bra $L13; $L181: .loc 1 575 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r738,[%value_in]; } .loc 1 575 25 setp.eq.u32 %r739,%r738,0; @ %r739 bra $L182; ld.u32 %r249,[%frame+40]; bra $L13; $L182: .loc 1 579 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r740,[%value_in]; } .loc 1 579 25 mov.u32 %r741,33; st.u32 [%r740],%r741; ld.u32 %r249,[%frame+40]; bra $L13; $L43: .loc 1 585 26 mov.u32 %r742,1; st.u32 [%frame],%r742; .loc 1 586 49 setp.le.s32 %r743,%r253,99; @ %r743 bra $L257; cvta.const.u64 %r233,$LC37; bra $L183; $L257: cvta.const.u64 %r233,$LC36; $L183: .loc 1 586 26 st.u64 [%frame+8],%r233; .loc 1 587 34 mov.f64 %r745,0d0000000000000000; div.rn.f64 %r744,%r745,0d0000000000000000; .loc 1 587 28 st.f64 [%frame+32],%r744; .loc 1 588 20 ld.global.u32 %r746,[__fdlib_version]; setp.ne.u32 %r747,%r746,2; @ %r747 bra $L184; .loc 1 589 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r748,[%value_in]; } .loc 1 589 25 mov.u32 %r749,33; st.u32 [%r748],%r749; ld.u32 %r249,[%frame+40]; bra $L13; $L184: .loc 1 590 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r751,[%value_in]; } .loc 1 590 25 setp.eq.u32 %r752,%r751,0; @ %r752 bra $L185; ld.u32 %r249,[%frame+40]; bra $L13; $L185: .loc 1 594 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r753,[%value_in]; } .loc 1 594 25 mov.u32 %r754,33; st.u32 [%r753],%r754; ld.u32 %r249,[%frame+40]; bra $L13; $L32: .loc 1 600 26 mov.u32 %r755,2; st.u32 [%frame],%r755; .loc 1 601 49 setp.le.s32 %r756,%r253,99; @ %r756 bra $L258; cvta.const.u64 %r234,$LC37; bra $L186; $L258: cvta.const.u64 %r234,$LC36; $L186: .loc 1 601 26 st.u64 [%frame+8],%r234; .loc 1 602 17 div.rn.f64 %r757,%r251,0d0000000000000000; .loc 1 602 14 st.f64 [%frame+32],%r757; .loc 1 603 20 ld.global.u32 %r758,[__fdlib_version]; setp.ne.u32 %r759,%r758,2; @ %r759 bra $L187; .loc 1 604 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r760,[%value_in]; } .loc 1 604 25 mov.u32 %r761,33; st.u32 [%r760],%r761; ld.u32 %r249,[%frame+40]; bra $L13; $L187: .loc 1 605 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r763,[%value_in]; } .loc 1 605 25 setp.eq.u32 %r764,%r763,0; @ %r764 bra $L188; ld.u32 %r249,[%frame+40]; bra $L13; $L188: .loc 1 609 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r765,[%value_in]; } .loc 1 609 25 mov.u32 %r766,33; st.u32 [%r765],%r766; ld.u32 %r249,[%frame+40]; bra $L13; $L47: .loc 1 615 12 mov.u32 %r767,3; st.u32 [%frame],%r767; .loc 1 616 35 setp.le.s32 %r768,%r253,99; @ %r768 bra $L259; cvta.const.u64 %r235,$LC39; bra $L189; $L259: cvta.const.u64 %r235,$LC38; $L189: .loc 1 616 12 st.u64 [%frame+8],%r235; .loc 1 617 36 setp.gt.f64 %r769,%r251,0d0000000000000000; selp.f64 %r236,0d7ff0000000000000,0dfff0000000000000,%r769; .loc 1 617 14 st.f64 [%frame+32],%r236; .loc 1 618 6 ld.global.u32 %r770,[__fdlib_version]; setp.ne.u32 %r771,%r770,2; @ %r771 bra $L191; .loc 1 619 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r772,[%value_in]; } .loc 1 619 11 mov.u32 %r773,34; st.u32 [%r772],%r773; ld.u32 %r249,[%frame+40]; bra $L13; $L191: .loc 1 620 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r775,[%value_in]; } .loc 1 620 11 setp.eq.u32 %r776,%r775,0; @ %r776 bra $L192; ld.u32 %r249,[%frame+40]; bra $L13; $L192: .loc 1 621 4 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r777,[%value_in]; } .loc 1 621 10 mov.u32 %r778,34; st.u32 [%r777],%r778; ld.u32 %r249,[%frame+40]; bra $L13; $L46: .loc 1 627 12 mov.u32 %r779,4; st.u32 [%frame],%r779; .loc 1 628 35 setp.le.s32 %r780,%r253,99; @ %r780 bra $L261; cvta.const.u64 %r237,$LC39; bra $L193; $L261: cvta.const.u64 %r237,$LC38; $L193: .loc 1 628 12 st.u64 [%frame+8],%r237; .loc 1 629 16 mov.f64 %r781,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r781; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r251; call (%value_in),copysign,(%out_arg1,%out_arg2); ld.param.f64 %r783,[%value_in]; } .loc 1 629 14 st.f64 [%frame+32],%r783; .loc 1 630 6 ld.global.u32 %r784,[__fdlib_version]; setp.ne.u32 %r785,%r784,2; @ %r785 bra $L194; .loc 1 631 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r786,[%value_in]; } .loc 1 631 11 mov.u32 %r787,34; st.u32 [%r786],%r787; ld.u32 %r249,[%frame+40]; bra $L13; $L194: .loc 1 632 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r789,[%value_in]; } .loc 1 632 11 setp.eq.u32 %r790,%r789,0; @ %r790 bra $L195; ld.u32 %r249,[%frame+40]; bra $L13; $L195: .loc 1 633 4 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r791,[%value_in]; } .loc 1 633 10 mov.u32 %r792,34; st.u32 [%r791],%r792; ld.u32 %r249,[%frame+40]; bra $L13; $L48: .loc 1 639 26 mov.u32 %r793,5; st.u32 [%frame],%r793; .loc 1 640 46 setp.le.s32 %r794,%r253,99; @ %r794 bra $L262; cvta.const.u64 %r238,$LC41; bra $L196; $L262: cvta.const.u64 %r238,$LC40; $L196: .loc 1 640 26 st.u64 [%frame+8],%r238; .loc 1 641 28 mov.f64 %r795,0d0000000000000000; st.f64 [%frame+32],%r795; .loc 1 642 20 ld.global.u32 %r796,[__fdlib_version]; setp.ne.u32 %r797,%r796,2; @ %r797 bra $L197; .loc 1 643 25 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r798,[%value_in]; } .loc 1 643 31 mov.u32 %r799,34; st.u32 [%r798],%r799; ld.u32 %r249,[%frame+40]; bra $L13; $L197: .loc 1 644 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r801,[%value_in]; } .loc 1 644 25 setp.eq.u32 %r802,%r801,0; @ %r802 bra $L198; ld.u32 %r249,[%frame+40]; bra $L13; $L198: .loc 1 649 25 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r803,[%value_in]; } .loc 1 649 31 mov.u32 %r804,34; st.u32 [%r803],%r804; ld.u32 %r249,[%frame+40]; bra $L13; $L49: .loc 1 655 26 mov.u32 %r805,5; st.u32 [%frame],%r805; .loc 1 656 46 setp.le.s32 %r806,%r253,99; @ %r806 bra $L263; cvta.const.u64 %r239,$LC13; bra $L199; $L263: cvta.const.u64 %r239,$LC12; $L199: .loc 1 656 26 st.u64 [%frame+8],%r239; .loc 1 657 28 mov.f64 %r807,0d0000000000000000; st.f64 [%frame+32],%r807; .loc 1 658 20 ld.global.u32 %r808,[__fdlib_version]; setp.ne.u32 %r809,%r808,2; @ %r809 bra $L200; .loc 1 659 25 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r810,[%value_in]; } .loc 1 659 31 mov.u32 %r811,34; st.u32 [%r810],%r811; ld.u32 %r249,[%frame+40]; bra $L13; $L200: .loc 1 660 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r813,[%value_in]; } .loc 1 660 25 setp.eq.u32 %r814,%r813,0; @ %r814 bra $L201; ld.u32 %r249,[%frame+40]; bra $L13; $L201: .loc 1 665 25 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r815,[%value_in]; } .loc 1 665 31 mov.u32 %r816,34; st.u32 [%r815],%r816; ld.u32 %r249,[%frame+40]; bra $L13; $L44: .loc 1 671 26 mov.u32 %r817,5; st.u32 [%frame],%r817; .loc 1 672 46 setp.le.s32 %r818,%r253,99; @ %r818 bra $L264; cvta.const.u64 %r240,$LC43; bra $L202; $L264: cvta.const.u64 %r240,$LC42; $L202: .loc 1 672 26 st.u64 [%frame+8],%r240; .loc 1 673 28 mov.f64 %r819,0d0000000000000000; st.f64 [%frame+32],%r819; .loc 1 674 20 ld.global.u32 %r820,[__fdlib_version]; setp.ne.u32 %r821,%r820,2; @ %r821 bra $L203; .loc 1 675 25 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r822,[%value_in]; } .loc 1 675 31 mov.u32 %r823,34; st.u32 [%r822],%r823; ld.u32 %r249,[%frame+40]; bra $L13; $L203: .loc 1 676 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r825,[%value_in]; } .loc 1 676 25 setp.eq.u32 %r826,%r825,0; @ %r826 bra $L204; ld.u32 %r249,[%frame+40]; bra $L13; $L204: .loc 1 681 25 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r827,[%value_in]; } .loc 1 681 31 mov.u32 %r828,34; st.u32 [%r827],%r828; ld.u32 %r249,[%frame+40]; bra $L13; $L52: .loc 1 687 26 mov.u32 %r829,5; st.u32 [%frame],%r829; .loc 1 688 46 setp.le.s32 %r830,%r253,99; @ %r830 bra $L265; cvta.const.u64 %r241,$LC15; bra $L205; $L265: cvta.const.u64 %r241,$LC14; $L205: .loc 1 688 26 st.u64 [%frame+8],%r241; .loc 1 689 28 mov.f64 %r831,0d0000000000000000; st.f64 [%frame+32],%r831; .loc 1 690 20 ld.global.u32 %r832,[__fdlib_version]; setp.ne.u32 %r833,%r832,2; @ %r833 bra $L206; .loc 1 691 25 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r834,[%value_in]; } .loc 1 691 31 mov.u32 %r835,34; st.u32 [%r834],%r835; ld.u32 %r249,[%frame+40]; bra $L13; $L206: .loc 1 692 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r837,[%value_in]; } .loc 1 692 25 setp.eq.u32 %r838,%r837,0; @ %r838 bra $L207; ld.u32 %r249,[%frame+40]; bra $L13; $L207: .loc 1 697 25 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r839,[%value_in]; } .loc 1 697 31 mov.u32 %r840,34; st.u32 [%r839],%r840; ld.u32 %r249,[%frame+40]; bra $L13; $L53: .loc 1 703 26 mov.u32 %r841,5; st.u32 [%frame],%r841; .loc 1 704 46 setp.le.s32 %r842,%r253,99; @ %r842 bra $L266; cvta.const.u64 %r242,$LC45; bra $L208; $L266: cvta.const.u64 %r242,$LC44; $L208: .loc 1 704 26 st.u64 [%frame+8],%r242; .loc 1 705 28 mov.f64 %r843,0d0000000000000000; st.f64 [%frame+32],%r843; .loc 1 706 20 ld.global.u32 %r844,[__fdlib_version]; setp.ne.u32 %r845,%r844,2; @ %r845 bra $L209; .loc 1 707 25 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r846,[%value_in]; } .loc 1 707 31 mov.u32 %r847,34; st.u32 [%r846],%r847; ld.u32 %r249,[%frame+40]; bra $L13; $L209: .loc 1 708 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r849,[%value_in]; } .loc 1 708 25 setp.eq.u32 %r850,%r849,0; @ %r850 bra $L210; ld.u32 %r249,[%frame+40]; bra $L13; $L210: .loc 1 713 25 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r851,[%value_in]; } .loc 1 713 31 mov.u32 %r852,34; st.u32 [%r851],%r852; ld.u32 %r249,[%frame+40]; bra $L13; $L50: .loc 1 719 26 mov.u32 %r853,5; st.u32 [%frame],%r853; .loc 1 720 46 setp.le.s32 %r854,%r253,99; @ %r854 bra $L267; cvta.const.u64 %r243,$LC17; bra $L211; $L267: cvta.const.u64 %r243,$LC16; $L211: .loc 1 720 26 st.u64 [%frame+8],%r243; .loc 1 721 28 mov.f64 %r855,0d0000000000000000; st.f64 [%frame+32],%r855; .loc 1 722 20 ld.global.u32 %r856,[__fdlib_version]; setp.ne.u32 %r857,%r856,2; @ %r857 bra $L212; .loc 1 723 25 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r858,[%value_in]; } .loc 1 723 31 mov.u32 %r859,34; st.u32 [%r858],%r859; ld.u32 %r249,[%frame+40]; bra $L13; $L212: .loc 1 724 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r861,[%value_in]; } .loc 1 724 25 setp.eq.u32 %r862,%r861,0; @ %r862 bra $L213; ld.u32 %r249,[%frame+40]; bra $L13; $L213: .loc 1 729 25 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r863,[%value_in]; } .loc 1 729 31 mov.u32 %r864,34; st.u32 [%r863],%r864; ld.u32 %r249,[%frame+40]; bra $L13; $L54: .loc 1 735 12 mov.u32 %r865,3; st.u32 [%frame],%r865; .loc 1 736 35 setp.le.s32 %r866,%r253,99; @ %r866 bra $L268; cvta.const.u64 %r244,$LC47; bra $L214; $L268: cvta.const.u64 %r244,$LC46; $L214: .loc 1 736 12 st.u64 [%frame+8],%r244; .loc 1 737 34 ld.global.u32 %r187,[__fdlib_version]; .loc 1 737 20 setp.ne.u32 %r867,%r187,0; @ %r867 bra $L215; .loc 1 738 30 mov.f64 %r868,0d47efffffe0000000; st.f64 [%frame+32],%r868; bra $L216; $L215: .loc 1 740 30 mov.f64 %r869,0d7ff0000000000000; st.f64 [%frame+32],%r869; .loc 1 741 20 setp.ne.u32 %r870,%r187,2; @ %r870 bra $L216; .loc 1 742 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r871,[%value_in]; } .loc 1 742 11 mov.u32 %r872,34; st.u32 [%r871],%r872; ld.u32 %r249,[%frame+40]; bra $L13; $L216: .loc 1 743 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r874,[%value_in]; } .loc 1 743 25 setp.eq.u32 %r875,%r874,0; @ %r875 bra $L217; ld.u32 %r249,[%frame+40]; bra $L13; $L217: .loc 1 744 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r876,[%value_in]; } .loc 1 744 25 mov.u32 %r877,34; st.u32 [%r876],%r877; ld.u32 %r249,[%frame+40]; bra $L13; $L55: .loc 1 750 12 mov.u32 %r878,2; st.u32 [%frame],%r878; .loc 1 751 35 setp.le.s32 %r879,%r253,99; @ %r879 bra $L269; cvta.const.u64 %r245,$LC47; bra $L218; $L269: cvta.const.u64 %r245,$LC46; $L218: .loc 1 751 12 st.u64 [%frame+8],%r245; .loc 1 752 34 ld.global.u32 %r191,[__fdlib_version]; .loc 1 752 20 setp.ne.u32 %r880,%r191,0; @ %r880 bra $L219; .loc 1 753 30 mov.f64 %r881,0d47efffffe0000000; st.f64 [%frame+32],%r881; bra $L220; $L219: .loc 1 755 30 mov.f64 %r882,0d7ff0000000000000; st.f64 [%frame+32],%r882; .loc 1 756 6 setp.ne.u32 %r883,%r191,2; @ %r883 bra $L220; .loc 1 757 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r884,[%value_in]; } .loc 1 757 11 mov.u32 %r885,33; st.u32 [%r884],%r885; ld.u32 %r249,[%frame+40]; bra $L13; $L220: .loc 1 758 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r887,[%value_in]; } .loc 1 758 11 setp.eq.u32 %r888,%r887,0; @ %r888 bra $L221; ld.u32 %r249,[%frame+40]; bra $L13; $L221: .loc 1 762 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r889,[%value_in]; } .loc 1 762 11 mov.u32 %r890,33; st.u32 [%r889],%r890; ld.u32 %r249,[%frame+40]; bra $L13; $L2: .loc 1 769 12 mov.u32 %r891,1; st.u32 [%frame],%r891; .loc 1 770 33 setp.le.s32 %r892,%r253,99; @ %r892 bra $L270; cvta.const.u64 %r246,$LC25; bra $L222; $L270: cvta.const.u64 %r246,$LC24; $L222: .loc 1 770 12 st.u64 [%frame+8],%r246; .loc 1 771 14 st.f64 [%frame+32],%r251; .loc 1 772 30 ld.global.u32 %r247,[__fdlib_version]; set.u32.eq.u32 %r894,%r247,-1; neg.s32 %r895,%r894; set.u32.eq.u32 %r897,%r247,2; neg.s32 %r898,%r897; cvt.u16.u32 %r900,%r895; cvt.u16.u32 %r901,%r898; or.b16 %r899,%r900,%r901; .loc 1 772 6 cvt.u32.u16 %r902,%r899; cvt.u16.u8 %r903,%r902; setp.ne.u16 %r904,%r903,0; @ %r904 bra $L223; .loc 1 774 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r906,[%value_in]; } .loc 1 774 11 setp.eq.u32 %r907,%r906,0; @ %r907 bra $L224; ld.u32 %r249,[%frame+40]; bra $L13; $L224: .loc 1 775 4 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r908,[%value_in]; } .loc 1 775 10 mov.u32 %r909,33; st.u32 [%r908],%r909; ld.u32 %r249,[%frame+40]; $L13: .loc 1 779 5 setp.ne.u32 %r910,%r249,0; @ %r910 bra $L225; $L498: ld.f64 %r250,[%frame+32]; bra $L1; $L225: .loc 1 780 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r911,[%value_in]; } .loc 1 780 17 ld.u32 %r201,[%frame+40]; .loc 1 780 12 st.u32 [%r911],%r201; ld.f64 %r250,[%frame+32]; $L1: .loc 1 782 1 mov.f64 %value,%r250; st.param.f64 [%value_out],%value; ret; } lib_a-k_tan.o/ 1591654539 399 399 100644 5380 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r39; .reg .u32 %r52; .reg .u32 %r53; .reg .f64 %r54; .reg .f64 %r57; .reg .f64 %r58; .reg .f64 %r60; .reg .f64 %r61; .reg .f64 %r62; .reg .f64 %r63; .reg .f64 %r64; .reg .f64 %r66; .reg .f64 %r67; .reg .u64 %r71; .reg .u64 %r72; .reg .f64 %r73; .reg .f64 %r74; .reg .f64 %r75; .reg .u32 %r76; .reg .u64 %r77; .reg .u64 %r78; .reg .pred %r79; .reg .u32 %r80; .reg .pred %r81; .reg .u32 %r82; .reg .u32 %r84; .reg .u32 %r85; .reg .u32 %r86; .reg .pred %r87; .reg .f64 %r89; .reg .f64 %r90; .reg .pred %r91; .reg .f64 %r92; .reg .pred %r94; .reg .f64 %r95; .reg .f64 %r96; .reg .f64 %r97; .reg .f64 %r98; .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 .f64 %r110; .reg .f64 %r111; .reg .f64 %r112; .reg .f64 %r113; .reg .f64 %r114; .reg .f64 %r116; .reg .u32 %r117; .reg .u32 %r118; .reg .u32 %r119; .reg .u32 %r120; .reg .f64 %r121; .reg .pred %r122; .reg .u64 %r123; .reg .f64 %r124; .reg .u64 %r125; .reg .f64 %r126; .reg .f64 %r127; .reg .f64 %r128; .reg .f64 %r129; .reg .pred %r131; mov.f64 %r74,%ar0; mov.f64 %r75,%ar1; mov.u32 %r76,%ar2; .loc 1 85 2 mov.b64 %r77,%r74; shr.u64 %r78,%r77,32; cvt.u32.u64 %r52,%r78; .loc 1 86 5 and.b32 %r53,%r52,2147483647; .loc 1 87 4 setp.gt.s32 %r79,%r53,1043333119; @ %r79 bra $L2; .loc 1 88 10 cvt.rzi.s32.f64 %r80,%r74; .loc 1 88 9 setp.ne.u32 %r81,%r80,0; @ ! %r81 bra $L13; setp.le.s32 %r131,%r53,1072010279; bra $L3; $L13: .loc 1 91 19 add.u32 %r82,%r76,1; .loc 1 91 15 cvt.u32.u64 %r85,%r77; or.b32 %r84,%r82,%r85; or.b32 %r86,%r84,%r53; .loc 1 91 5 setp.ne.u32 %r87,%r86,0; @ %r87 bra $L4; .loc 1 91 39 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r74; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r89,[%value_in]; } .loc 1 91 38 mov.f64 %r90,0d3ff0000000000000; div.rn.f64 %r73,%r90,%r89; bra $L1; $L4: .loc 1 92 25 setp.eq.u32 %r91,%r76,1; @ %r91 bra $L8; mov.f64 %r92,0dbff0000000000000; div.rn.f64 %r73,%r92,%r74; bra $L1; $L2: .loc 1 95 4 setp.le.s32 %r131,%r53,1072010279; @ %r131 bra $L3; .loc 1 96 8 setp.ge.s32 %r94,%r52,0; @ %r94 bra $L6; .loc 1 96 18 neg.f64 %r74,%r74; .loc 1 96 26 neg.f64 %r75,%r75; $L6: .loc 1 97 8 mov.f64 %r95,0d3fe921fb54442d18; sub.f64 %r54,%r95,%r74; .loc 1 98 8 mov.f64 %r97,0d3c81a62633145c07; sub.f64 %r96,%r97,%r75; .loc 1 99 8 add.f64 %r74,%r96,%r54; .loc 1 99 17 mov.f64 %r75,0d0000000000000000; $L3: .loc 1 101 4 mul.f64 %r57,%r74,%r74; .loc 1 102 5 mul.f64 %r58,%r57,%r57; .loc 1 109 4 mul.f64 %r60,%r74,%r57; .loc 1 108 46 fma.rn.f64 %r98,%r58,0d3efb2a7074bf7ad4,0d3f12b80f32f0a7e9; .loc 1 108 37 fma.rn.f64 %r99,%r98,%r58,0d3f3026f71a8d1068; .loc 1 108 29 fma.rn.f64 %r100,%r99,%r58,0d3f57dbc8fee08315; .loc 1 108 21 fma.rn.f64 %r101,%r100,%r58,0d3f8226e3e96e8493; .loc 1 108 13 fma.rn.f64 %r102,%r101,%r58,0d3faba1ba1bb341fe; .loc 1 107 42 fma.rn.f64 %r103,%r58,0dbef375cbdb605373,0d3f147e88a03792a6; .loc 1 107 34 fma.rn.f64 %r104,%r103,%r58,0d3f4344d8f2f26501; .loc 1 107 26 fma.rn.f64 %r105,%r104,%r58,0d3f6d6d22c9560328; .loc 1 107 18 fma.rn.f64 %r106,%r105,%r58,0d3f9664f48406d637; .loc 1 107 4 fma.rn.f64 %r107,%r106,%r58,0d3fc111111110fe7a; .loc 1 110 17 fma.rn.f64 %r108,%r102,%r57,%r107; .loc 1 110 20 fma.rn.f64 %r39,%r108,%r60,%r75; .loc 1 110 4 fma.rn.f64 %r61,%r39,%r57,%r75; .loc 1 111 4 fma.rn.f64 %r62,%r60,0d3fd5555555555563,%r61; .loc 1 112 4 add.f64 %r73,%r74,%r62; .loc 1 113 4 @ %r131 bra $L7; .loc 1 114 8 cvt.rn.f64.s32 %r63,%r76; .loc 1 115 50 mul.f64 %r110,%r73,%r73; .loc 1 115 55 add.f64 %r111,%r73,%r63; .loc 1 115 52 div.rn.f64 %r112,%r110,%r111; .loc 1 115 58 sub.f64 %r113,%r112,%r62; .loc 1 115 47 sub.f64 %r114,%r74,%r113; .loc 1 115 40 fma.rn.f64 %r116,%r114,0dc000000000000000,%r63; .loc 1 115 28 shr.s32 %r117,%r52,30; .loc 1 115 33 and.b32 %r118,%r117,2; .loc 1 115 23 mov.u32 %r120,1; sub.u32 %r119,%r120,%r118; .loc 1 115 13 cvt.rn.f64.s32 %r121,%r119; .loc 1 115 37 mul.f64 %r73,%r116,%r121; bra $L1; $L7: .loc 1 117 4 setp.eq.u32 %r122,%r76,1; @ %r122 bra $L1; .loc 1 123 6 mov.b64 %r71,%r73; and.b64 %r123,%r71,-4294967296; mov.b64 %r64,%r123; .loc 1 125 13 mov.f64 %r124,0dbff0000000000000; div.rn.f64 %r66,%r124,%r73; .loc 1 126 6 mov.b64 %r72,%r66; and.b64 %r125,%r72,-4294967296; mov.b64 %r67,%r125; .loc 1 124 16 sub.f64 %r126,%r64,%r74; .loc 1 124 9 sub.f64 %r127,%r62,%r126; .loc 1 127 9 fma.rn.f64 %r128,%r64,%r67,0d3ff0000000000000; .loc 1 128 19 fma.rn.f64 %r129,%r127,%r67,%r128; .loc 1 128 14 fma.rn.f64 %r73,%r129,%r66,%r67; bra $L1; $L8: .loc 1 92 25 mov.f64 %r73,%r74; $L1: .loc 1 130 1 mov.f64 %value,%r73; st.param.f64 [%value_out],%value; ret; } lib_a-kf_cos.o/ 1591654539 399 399 100644 3049 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .f32 %r45; .reg .f32 %r51; .reg .f32 %r53; .reg .f32 %r56; .reg .f32 %r57; .reg .f32 %r58; .reg .pred %r59; .reg .u32 %r60; .reg .pred %r61; .reg .f32 %r62; .reg .f32 %r63; .reg .f32 %r64; .reg .f32 %r65; .reg .f32 %r66; .reg .pred %r67; .reg .f32 %r68; .reg .f32 %r69; .reg .f32 %r70; .reg .f32 %r71; .reg .f32 %r72; .reg .f32 %r73; .reg .pred %r74; .reg .u32 %r75; .reg .f32 %r76; .reg .f32 %r77; .reg .f32 %r78; .reg .f32 %r79; .reg .f32 %r80; .reg .f32 %r81; .reg .f32 %r82; .reg .f32 %r84; .reg .f32 %r85; .reg .f32 %r86; .reg .f32 %r87; .reg .f32 %r88; mov.f32 %r57,%ar0; mov.f32 %r58,%ar1; .loc 1 40 2 mov.b32 %r36,%r57; .loc 1 41 5 and.b32 %r37,%r36,2147483647; .loc 1 42 4 setp.gt.s32 %r59,%r37,838860799; @ %r59 bra $L2; .loc 1 43 10 cvt.rzi.s32.f32 %r60,%r57; .loc 1 43 8 setp.eq.u32 %r61,%r60,0; @ ! %r61 bra $L10; bra $L8; $L2: .loc 1 45 5 mul.f32 %r45,%r57,%r57; .loc 1 46 36 fma.rn.f32 %r62,%r45,0fad47d74e,0f310f74f6; .loc 1 46 30 fma.rn.f32 %r63,%r62,%r45,0fb493f27c; .loc 1 46 24 fma.rn.f32 %r64,%r63,%r45,0f37d00d01; .loc 1 46 18 fma.rn.f32 %r65,%r64,%r45,0fbab60b61; .loc 1 46 12 fma.rn.f32 %r66,%r65,%r45,0f3d2aaaab; .loc 1 46 5 mul.f32 %r51,%r66,%r45; .loc 1 47 4 setp.gt.s32 %r67,%r37,1050253721; @ %r67 bra $L5; $L7: .loc 1 48 43 mul.f32 %r68,%r57,%r58; .loc 1 48 40 neg.f32 %r69,%r68; fma.rn.f32 %r70,%r45,%r51,%r69; .loc 1 48 33 neg.f32 %r71,%r70; fma.rn.f32 %r72,%r45,0f3f000000,%r71; .loc 1 48 17 mov.f32 %r73,0f3f800000; sub.f32 %r56,%r73,%r72; bra $L1; $L5: .loc 1 50 8 setp.gt.s32 %r74,%r37,1061683200; @ %r74 bra $L9; .loc 1 53 10 add.u32 %r75,%r37,-16777216; mov.b32 %r35,%r75; mov.f32 %r76,0f3f800000; sub.f32 %r53,%r76,%r35; bra $L6; $L9: mov.f32 %r53,0f3f380000; .loc 1 51 6 mov.f32 %r35,0f3e900000; $L6: .loc 1 55 9 neg.f32 %r77,%r35; fma.rn.f32 %r78,%r45,0f3f000000,%r77; .loc 1 57 29 mul.f32 %r79,%r57,%r58; .loc 1 57 27 neg.f32 %r80,%r79; fma.rn.f32 %r81,%r45,%r51,%r80; .loc 1 57 21 sub.f32 %r82,%r78,%r81; .loc 1 57 15 sub.f32 %r56,%r53,%r82; bra $L1; $L8: .loc 1 43 29 mov.f32 %r56,0f3f800000; bra $L1; $L10: .loc 1 45 5 mul.f32 %r45,%r57,%r57; .loc 1 46 36 fma.rn.f32 %r84,%r45,0fad47d74e,0f310f74f6; .loc 1 46 30 fma.rn.f32 %r85,%r45,%r84,0fb493f27c; .loc 1 46 24 fma.rn.f32 %r86,%r45,%r85,0f37d00d01; .loc 1 46 18 fma.rn.f32 %r87,%r45,%r86,0fbab60b61; .loc 1 46 12 fma.rn.f32 %r88,%r45,%r87,0f3d2aaaab; .loc 1 46 5 mul.f32 %r51,%r88,%r45; bra $L7; $L1: .loc 1 59 1 mov.f32 %value,%r56; st.param.f32 [%value_out],%value; ret; } /370 1591654539 399 399 100644 25362 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .f32 %r42; .reg .u32 %r44; .reg .u32 %r50; .reg .u32 %r52; .reg .u32 %r54; .reg .u64 %r69; .reg .u64 %r84; .reg .f32 %r90; .reg .f32 %r93; .reg .u32 %r99; .reg .u32 %r102; .reg .u32 %r103; .reg .u32 %r105; .reg .u64 %r106; .reg .u64 %r108; .reg .u64 %r109; .reg .f32 %r111; .reg .f32 %r114; .reg .u32 %r115; .reg .f32 %r117; .reg .f32 %r123; .reg .u64 %r124; .reg .u64 %r125; .reg .u32 %r127; .reg .u32 %r129; .reg .u32 %r131; .reg .f32 %r132; .reg .f32 %r134; .reg .f32 %r137; .reg .u32 %r138; .reg .u32 %r139; .reg .u32 %r142; .reg .f32 %r144; .reg .u32 %r145; .reg .u32 %r146; .reg .u32 %r147; .reg .f32 %r149; .reg .f32 %r150; .reg .u32 %r151; .reg .f32 %r152; .reg .f32 %r153; .reg .f32 %r154; .reg .f32 %r158; .reg .u32 %r159; .reg .f32 %r160; .reg .f32 %r161; .reg .f32 %r162; .reg .u32 %r164; .reg .u64 %r165; .reg .u64 %r166; .reg .u32 %r167; .reg .u32 %r173; .reg .u64 %r175; .reg .u64 %r177; .reg .u64 %r179; .reg .u64 %r184; .reg .u64 %r187; .reg .u32 %r190; .reg .u64 %r191; .reg .u64 %r194; .reg .f32 %r195; .reg .f32 %r199; .reg .f32 %r200; .reg .f32 %r203; .reg .u32 %r205; .reg .u64 %r208; .reg .u64 %r210; .reg .u64 %r214; .reg .u64 %r220; .reg .u64 %r221; .reg .u64 %r232; .reg .u64 %r234; .reg .u64 %r241; .reg .u64 %r246; .reg .u64 %r259; .reg .u64 %r260; .reg .u64 %r261; .reg .u64 %r267; .reg .u64 %r269; .reg .u64 %r279; .reg .u64 %r280; .reg .u64 %r292; .reg .u64 %r294; .reg .u64 %r296; .reg .u64 %r297; .reg .u64 %r309; .reg .u64 %r310; .reg .u64 %r311; .reg .u64 %r322; .reg .u64 %r323; .reg .u32 %r324; .reg .u32 %r329; .reg .u64 %r330; .reg .u64 %r331; .reg .u32 %r339; .reg .u64 %r342; .reg .u64 %r343; .reg .u32 %r344; .reg .u32 %r345; .reg .u32 %r346; .reg .u64 %r347; .reg .u64 %r348; .reg .u64 %r349; .reg .u64 %r350; .reg .u64 %r351; .reg .pred %r352; .reg .u32 %r353; .reg .u32 %r356; .reg .u32 %r357; .reg .u32 %r358; .reg .u32 %r360; .reg .pred %r361; .reg .u64 %r364; .reg .u64 %r365; .reg .u64 %r366; .reg .u64 %r367; .reg .u64 %r368; .reg .u32 %r369; .reg .pred %r370; .reg .u32 %r371; .reg .pred %r372; .reg .u64 %r374; .reg .u64 %r375; .reg .f32 %r376; .reg .f32 %r377; .reg .pred %r378; .reg .pred %r379; .reg .u64 %r382; .reg .u64 %r383; .reg .u64 %r384; .reg .u64 %r385; .reg .u64 %r386; .reg .u64 %r388; .reg .u64 %r389; .reg .u64 %r393; .reg .u32 %r394; .reg .u64 %r395; .reg .u64 %r396; .reg .f32 %r398; .reg .u32 %r399; .reg .f32 %r401; .reg .u32 %r402; .reg .f32 %r403; .reg .pred %r404; .reg .f32 %r407; .reg .f32 %r409; .reg .f32 %r410; .reg .f32 %r412; .reg .u64 %r414; .reg .u64 %r415; .reg .u64 %r416; .reg .u64 %r417; .reg .u32 %r418; .reg .u32 %r419; .reg .u32 %r424; .reg .u32 %r425; .reg .u32 %r427; .reg .u64 %r428; .reg .u64 %r429; .reg .u64 %r430; .reg .u32 %r432; .reg .pred %r433; .reg .pred %r434; .reg .pred %r436; .reg .pred %r437; .reg .pred %r439; .reg .pred %r440; .reg .u64 %r441; .reg .u64 %r442; .reg .u64 %r443; .reg .u32 %r445; .reg .u32 %r446; .reg .pred %r447; .reg .u64 %r448; .reg .u64 %r449; .reg .u64 %r450; .reg .u32 %r454; .reg .u32 %r455; .reg .u64 %r456; .reg .u64 %r457; .reg .u64 %r458; .reg .u32 %r461; .reg .u32 %r462; .reg .pred %r463; .reg .u64 %r467; .reg .u64 %r468; .reg .u64 %r469; .reg .u64 %r470; .reg .u32 %r475; .reg .u32 %r476; .reg .u64 %r477; .reg .u64 %r478; .reg .u64 %r479; .reg .u64 %r480; .reg .u32 %r485; .reg .u32 %r486; .reg .pred %r487; .reg .f32 %r488; .reg .pred %r489; .reg .f32 %r492; .reg .pred %r493; .reg .pred %r494; .reg .u64 %r497; .reg .u64 %r500; .reg .u32 %r501; .reg .u32 %r502; .reg .u64 %r503; .reg .u64 %r504; .reg .u32 %r505; .reg .pred %r506; .reg .pred %r507; .reg .u32 %r513; .reg .pred %r514; .reg .u32 %r515; .reg .pred %r516; .reg .u64 %r517; .reg .u64 %r518; .reg .u64 %r519; .reg .u64 %r520; .reg .u32 %r522; .reg .u64 %r523; .reg .u64 %r524; .reg .u64 %r525; .reg .u64 %r526; .reg .u64 %r527; .reg .u64 %r528; .reg .u64 %r532; .reg .u32 %r533; .reg .f32 %r536; .reg .pred %r537; .reg .pred %r538; .reg .u64 %r539; .reg .u64 %r540; .reg .u64 %r541; .reg .u32 %r543; .reg .pred %r544; .reg .u64 %r548; .reg .u32 %r549; .reg .pred %r550; .reg .u32 %r553; .reg .f32 %r554; .reg .pred %r555; .reg .f32 %r556; .reg .u32 %r557; .reg .u64 %r559; .reg .u64 %r560; .reg .f32 %r563; .reg .u32 %r564; .reg .u64 %r565; .reg .u64 %r566; .reg .u64 %r567; .reg .u32 %r569; .reg .u64 %r571; .reg .u64 %r572; .reg .u32 %r574; .reg .f32 %r575; .reg .f32 %r577; .reg .pred %r578; .reg .f32 %r581; .reg .u32 %r582; .reg .f32 %r583; .reg .pred %r584; .reg .f32 %r585; .reg .pred %r586; .reg .pred %r587; .reg .pred %r588; .reg .pred %r590; .reg .pred %r591; .reg .u64 %r593; .reg .u64 %r594; .reg .u64 %r596; .reg .f32 %r597; .reg .pred %r598; .reg .pred %r599; .reg .u64 %r601; .reg .u64 %r602; .reg .u64 %r604; .reg .f32 %r605; .reg .pred %r606; .reg .f32 %r607; .reg .f32 %r609; .reg .pred %r610; .reg .f32 %r612; .reg .pred %r613; .reg .u64 %r616; .reg .u64 %r617; .reg .u64 %r621; .reg .u64 %r624; .reg .u32 %r625; .reg .u64 %r626; .reg .u64 %r627; .reg .f32 %r628; .reg .f32 %r629; .reg .pred %r630; .reg .u64 %r632; .reg .u64 %r633; .reg .u64 %r637; .reg .u32 %r638; .reg .u64 %r639; .reg .u64 %r641; .reg .f32 %r642; .reg .f32 %r643; .reg .pred %r644; .reg .u64 %r646; .reg .u64 %r647; .reg .f32 %r648; .reg .pred %r649; .reg .pred %r650; .reg .f32 %r651; .reg .f32 %r652; .reg .f32 %r653; .reg .u32 %r654; .reg .pred %r655; .reg .pred %r656; .reg .pred %r657; .reg .pred %r658; .reg .pred %r659; .reg .pred %r660; .reg .pred %r661; .reg .pred %r662; .reg .pred %r663; .reg .pred %r664; .reg .f32 %r665; .reg .u64 %r666; .reg .u64 %r667; .reg .u64 %r668; .reg .pred %r669; .reg .u64 %r670; .reg .u64 %r671; .reg .u32 %r672; .reg .u32 %r673; .reg .pred %r674; .reg .pred %r675; .reg .pred %r676; .reg .pred %r677; .reg .f32 %r679; .reg .u64 %r680; .reg .u64 %r681; .reg .pred %r682; .reg .pred %r683; .reg .pred %r684; .reg .u64 %r685; .reg .u32 %r686; .reg .u64 %r687; .reg .u64 %r688; .reg .u64 %r689; .reg .u64 %r690; .reg .u64 %r691; .reg .pred %r692; .reg .u64 %r693; .reg .f32 %r694; mov.u64 %r342,%ar0; mov.u64 %r343,%ar1; mov.u32 %r344,%ar2; mov.u32 %r345,%ar3; mov.u32 %r346,%ar4; mov.u64 %r347,%ar5; .loc 1 66 5 cvta.const.u64 %r348,init_jk; cvt.s64.s32 %r349,%r346; shl.b64 %r350,%r349,2; add.u64 %r351,%r348,%r350; ld.u32 %r127,[%r351]; .loc 1 70 5 add.u32 %r672,%r345,-1; .loc 1 71 19 setp.lt.s32 %r352,%r344,-4; @ %r352 bra $L75; .loc 1 71 10 add.u32 %r353,%r344,-3; .loc 1 71 5 shr.s32 %r356,%r353,31; and.b32 %r357,%r356,7; add.u32 %r358,%r357,%r353; shr.s32 %r103,%r358,3; add.u32 %r360,%r103,1; shl.b32 %r190,%r360,3; bra $L2; $L75: mov.u32 %r190,8; .loc 1 71 28 mov.u32 %r103,0; $L2: .loc 1 72 5 sub.u32 %r40,%r344,%r190; .loc 1 75 4 sub.u32 %r131,%r103,%r672; .loc 1 75 15 add.u32 %r129,%r127,%r672; .loc 1 76 2 setp.ge.s32 %r361,%r129,0; @ %r361 bra $L3; $L8: .loc 1 79 2 setp.lt.s32 %r677,%r127,0; @ %r677 bra $L4; mov.u64 %r323,%frame; mov.u32 %r324,%r672; add.u32 %r329,%r127,%r345; cvt.u64.u32 %r364,%r672; shl.b64 %r365,%r364,2; add.u64 %r366,%r342,4; add.u64 %r322,%r365,%r366; setp.ge.s32 %r676,%r672,0; add.u64 %r693,%frame,160; bra $L5; $L3: add.u64 %r330,%frame,160; cvt.s64.s32 %r367,%r131; shl.b64 %r368,%r367,2; add.u64 %r331,%r347,%r368; add.u32 %r369,%r129,1; add.u32 %r339,%r369,%r131; .loc 1 76 43 mov.f32 %r694,0f00000000; $L7: setp.lt.s32 %r370,%r131,0; @ %r370 bra $L76; ld.u32 %r371,[%r331]; cvt.rn.f32.s32 %r123,%r371; bra $L6; $L76: mov.f32 %r123,%r694; $L6: .loc 1 76 29 st.f32 [%r330],%r123; .loc 1 76 20 add.u32 %r131,%r131,1; add.u64 %r330,%r330,4; add.u64 %r331,%r331,4; .loc 1 76 2 setp.ne.u32 %r372,%r131,%r339; @ %r372 bra $L7; bra $L8; $L10: cvt.s64.s32 %r374,%r324; shl.b64 %r375,%r374,2; add.u64 %r311,%r693,%r375; .loc 1 80 6 mov.u64 %r310,%r342; .loc 1 80 16 mov.f32 %r132,0f00000000; $L9: .loc 1 80 35 ld.f32 %r376,[%r310]; ld.f32 %r377,[%r311]; fma.rn.f32 %r132,%r376,%r377,%r132; add.u64 %r310,%r310,4; add.u64 %r311,%r311,-4; .loc 1 80 6 setp.ne.u64 %r378,%r310,%r322; @ %r378 bra $L9; $L11: .loc 1 80 59 st.f32 [%r323],%r132; add.u64 %r323,%r323,4; add.u32 %r324,%r324,1; .loc 1 79 2 setp.eq.u32 %r379,%r324,%r329; @ %r379 bra $L4; $L5: .loc 1 80 6 @ %r676 bra $L10; .loc 1 80 16 mov.f32 %r132,0f00000000; bra $L11; $L4: add.u64 %r666,%frame,240; cvt.s64.s32 %r382,%r127; shl.b64 %r383,%r382,2; add.u64 %r384,%r383,-8; add.u64 %r261,%r666,%r384; cvt.u64.u32 %r385,%r672; shl.b64 %r386,%r385,2; add.u64 %r232,%r342,%r386; .loc 1 66 5 mov.u32 %r102,%r127; setp.le.s32 %r669,%r40,0; add.u64 %r681,%frame,244; setp.eq.u32 %r682,%r40,1; setp.eq.u32 %r683,%r40,2; .loc 1 103 9 setp.ne.u32 %r684,%r40,0; add.u64 %r685,%frame,232; .loc 1 135 16 add.u32 %r686,%r127,-1; .loc 1 135 13 cvt.s64.s32 %r687,%r686; shl.b64 %r688,%r687,2; add.u64 %r689,%frame,%r688; add.u64 %r690,%r689,240; add.u64 %r691,%frame,160; setp.lt.s32 %r692,%r672,0; $L12: .loc 1 86 16 cvt.s64.s32 %r667,%r102; shl.b64 %r388,%r667,2; add.u64 %r389,%frame,%r388; ld.f32 %r42,[%r389]; .loc 1 86 2 setp.le.s32 %r674,%r102,0; @ %r674 bra $L13; mov.u64 %r296,%r666; add.u64 %r393,%r388,-4; add.u64 %r297,%frame,%r393; add.u32 %r394,%r102,-1; cvt.u64.u32 %r395,%r394; shl.b64 %r396,%r395,2; add.u64 %r309,%r396,%r681; $L14: .loc 1 87 40 mul.f32 %r398,%r42,0f3b800000; .loc 1 87 23 cvt.rzi.s32.f32 %r399,%r398; .loc 1 87 12 cvt.rn.f32.s32 %r134,%r399; .loc 1 88 28 fma.rn.f32 %r401,%r134,0fc3800000,%r42; .loc 1 88 15 cvt.rzi.s32.f32 %r402,%r401; st.u32 [%r296],%r402; .loc 1 89 12 ld.f32 %r403,[%r297]; add.f32 %r42,%r134,%r403; add.u64 %r296,%r296,4; add.u64 %r297,%r297,-4; .loc 1 86 2 setp.ne.u64 %r404,%r296,%r309; @ %r404 bra $L14; $L13: .loc 1 93 7 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r42; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r40; call (%value_in),scalbnf,(%out_arg1,%out_arg2); ld.param.f32 %r407,[%value_in]; } .loc 1 94 18 mul.f32 %r409,%r407,0f3e000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r409; call (%value_in),floorf,(%out_arg1); ld.param.f32 %r410,[%value_in]; } .loc 1 94 4 fma.rn.f32 %r137,%r410,0fc1000000,%r407; .loc 1 95 5 cvt.rzi.s32.f32 %r105,%r137; .loc 1 96 7 cvt.rn.f32.s32 %r412,%r105; .loc 1 96 4 sub.f32 %r117,%r137,%r412; .loc 1 98 4 @ %r669 bra $L15; .loc 1 99 17 add.u32 %r37,%r102,-1; .loc 1 99 14 cvt.s64.s32 %r414,%r37; shl.b64 %r415,%r414,2; add.u64 %r416,%frame,%r415; add.u64 %r417,%r416,240; ld.u32 %r38,[%r417]; .loc 1 99 24 mov.u32 %r418,8; sub.u32 %r39,%r418,%r40; .loc 1 99 9 shr.s32 %r138,%r38,%r39; .loc 1 99 33 add.u32 %r105,%r105,%r138; .loc 1 100 19 shl.b32 %r419,%r138,%r39; .loc 1 100 15 sub.u32 %r44,%r38,%r419; st.u32 [%r417],%r44; .loc 1 101 23 mov.u32 %r425,7; sub.u32 %r424,%r425,%r40; .loc 1 101 9 shr.s32 %r115,%r44,%r424; bra $L16; $L15: .loc 1 103 9 @ %r684 bra $L17; .loc 1 103 27 add.u32 %r427,%r102,-1; .loc 1 103 24 cvt.s64.s32 %r428,%r427; shl.b64 %r429,%r428,2; add.u64 %r430,%frame,%r429; .loc 1 103 20 ld.u32 %r432,[%r430+240]; shr.s32 %r115,%r432,8; bra $L16; $L17: .loc 1 104 9 setp.ge.f32 %r433,%r117,0f3f000000; @ %r433 bra $L18; .loc 1 97 5 mov.u32 %r115,0; bra $L19; $L16: .loc 1 106 4 setp.le.s32 %r434,%r115,0; @ %r434 bra $L19; .loc 1 107 8 add.u32 %r105,%r105,1; .loc 1 108 6 @ ! %r674 bra $L74; bra $L77; $L85: .loc 1 104 27 mov.u32 %r115,2; $L74: .loc 1 109 5 ld.u32 %r139,[%frame+240]; .loc 1 111 9 setp.ne.u32 %r436,%r139,0; @ %r436 bra $L78; .loc 1 108 6 setp.eq.u32 %r437,%r102,1; @ %r437 bra $L20; add.u64 %r294,%frame,244; .loc 1 108 21 mov.u32 %r173,1; bra $L22; $L23: add.u64 %r294,%r294,4; mov.u32 %r173,%r205; .loc 1 108 6 setp.eq.u32 %r439,%r102,%r173; @ %r439 bra $L20; $L22: .loc 1 109 5 ld.u32 %r139,[%r294]; add.u32 %r205,%r173,1; .loc 1 111 9 setp.eq.u32 %r440,%r139,0; @ %r440 bra $L23; bra $L21; $L78: mov.u32 %r205,1; mov.u32 %r173,0; $L21: .loc 1 112 21 cvt.s64.s32 %r441,%r173; shl.b64 %r442,%r441,2; add.u64 %r443,%frame,%r442; .loc 1 112 28 mov.u32 %r446,256; sub.u32 %r445,%r446,%r139; .loc 1 112 21 st.u32 [%r443+240],%r445; .loc 1 108 6 setp.le.s32 %r447,%r102,%r205; @ %r447 bra $L79; .loc 1 109 5 cvt.s64.s32 %r448,%r205; shl.b64 %r449,%r448,2; add.u64 %r450,%frame,%r449; ld.u32 %r164,[%r450+240]; add.u64 %r280,%r666,%r449; add.u32 %r454,%r102,-1; sub.u32 %r455,%r454,%r205; cvt.u64.u32 %r456,%r455; add.u64 %r457,%r456,%r448; shl.b64 %r458,%r457,2; add.u64 %r292,%r458,%r681; .loc 1 114 24 mov.u32 %r462,255; $L24: sub.u32 %r461,%r462,%r164; .loc 1 114 17 st.u32 [%r280],%r461; add.u64 %r280,%r280,4; .loc 1 108 6 setp.eq.u64 %r463,%r280,%r292; @ %r463 bra $L80; .loc 1 109 5 ld.u32 %r164,[%r280]; bra $L24; $L77: .loc 1 107 20 mov.u32 %r139,0; bra $L20; $L79: .loc 1 112 10 mov.u32 %r139,1; bra $L20; $L80: mov.u32 %r139,1; $L20: .loc 1 116 8 @ %r669 bra $L25; @ %r682 bra $L26; @ %r683 bra $L27; bra $L25; $L26: .loc 1 119 19 add.u32 %r50,%r102,-1; cvt.s64.s32 %r467,%r50; shl.b64 %r468,%r467,2; add.u64 %r469,%frame,%r468; add.u64 %r470,%r469,240; ld.u32 %r476,[%r470]; and.b32 %r475,%r476,127; st.u32 [%r470],%r475; .loc 1 119 10 bra $L25; $L27: .loc 1 121 19 add.u32 %r54,%r102,-1; cvt.s64.s32 %r477,%r54; shl.b64 %r478,%r477,2; add.u64 %r479,%frame,%r478; add.u64 %r480,%r479,240; ld.u32 %r486,[%r480]; and.b32 %r485,%r486,63; st.u32 [%r480],%r485; $L25: .loc 1 124 8 setp.ne.u32 %r487,%r115,2; @ %r487 bra $L19; .loc 1 125 5 mov.f32 %r488,0f3f800000; sub.f32 %r117,%r488,%r117; .loc 1 126 5 setp.eq.u32 %r489,%r139,0; @ %r489 bra $L19; .loc 1 126 21 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r488; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r40; call (%value_in),scalbnf,(%out_arg1,%out_arg2); ld.param.f32 %r492,[%value_in]; } .loc 1 126 18 sub.f32 %r117,%r117,%r492; $L19: .loc 1 131 4 setp.neu.f32 %r493,%r117,0f00000000; @ %r493 bra $L28; .loc 1 133 12 add.u32 %r147,%r102,-1; .loc 1 133 6 setp.gt.s32 %r494,%r127,%r147; @ %r494 bra $L29; shl.b64 %r269,%r667,2; add.u64 %r497,%r269,-4; add.u64 %r267,%r666,%r497; add.u64 %r500,%r685,%r269; not.b32 %r501,%r127; add.u32 %r502,%r501,%r102; cvt.u64.u32 %r503,%r502; shl.b64 %r504,%r503,2; sub.u64 %r279,%r500,%r504; .loc 1 132 8 mov.u32 %r142,0; $L30: .loc 1 133 31 ld.u32 %r505,[%r267]; or.b32 %r142,%r142,%r505; add.u64 %r267,%r267,-4; .loc 1 133 6 setp.ne.u64 %r506,%r267,%r279; @ %r506 bra $L30; .loc 1 134 8 setp.ne.u32 %r507,%r142,0; @ %r507 bra $L31; $L29: .loc 1 135 3 ld.u32 %r513,[%r690]; setp.ne.u32 %r514,%r513,0; @ %r514 bra $L32; mov.u64 %r260,%r261; .loc 1 135 8 mov.u32 %r52,1; $L33: .loc 1 135 24 add.u32 %r52,%r52,1; add.u64 %r260,%r260,-4; .loc 1 135 3 ld.u32 %r515,[%r260+4]; setp.eq.u32 %r516,%r515,0; @ %r516 bra $L33; bra $L119; $L32: .loc 1 137 8 add.u32 %r673,%r102,1; mov.u32 %r145,%r673; .loc 1 137 19 mov.u32 %r167,%r673; bra $L35; $L119: .loc 1 137 8 add.u32 %r673,%r102,1; mov.u32 %r145,%r673; .loc 1 137 19 add.u32 %r167,%r102,%r52; $L35: cvt.s64.s32 %r517,%r103; cvt.s64.s32 %r518,%r673; add.u64 %r519,%r517,%r518; shl.b64 %r520,%r519,2; add.u64 %r234,%r347,%r520; add.u32 %r522,%r672,%r673; cvt.s64.s32 %r523,%r522; shl.b64 %r524,%r523,2; add.u64 %r241,%r691,%r524; add.u64 %r525,%r667,1; shl.b64 %r526,%r525,2; add.u64 %r246,%frame,%r526; cvt.s64.s32 %r527,%r345; add.u64 %r528,%r527,%r667; sub.u64 %r532,%r528,%r523; shl.b64 %r259,%r532,2; add.u64 %r680,%r259,-4; $L38: .loc 1 138 17 ld.u32 %r533,[%r234]; cvt.rn.f32.s32 %r203,%r533; .loc 1 138 15 st.f32 [%r241],%r203; .loc 1 139 7 @ %r692 bra $L81; add.u64 %r221,%r680,%r241; mov.u64 %r220,%r342; .loc 1 139 17 mov.f32 %r144,0f00000000; $L37: .loc 1 139 36 ld.f32 %r536,[%r220]; fma.rn.f32 %r144,%r536,%r203,%r144; .loc 1 139 7 setp.eq.u64 %r537,%r220,%r232; @ %r537 bra $L36; ld.f32 %r203,[%r221]; add.u64 %r220,%r220,4; add.u64 %r221,%r221,-4; bra $L37; $L81: .loc 1 139 17 mov.f32 %r144,0f00000000; $L36: .loc 1 140 12 st.f32 [%r246],%r144; .loc 1 137 23 add.u32 %r145,%r145,1; add.u64 %r234,%r234,4; add.u64 %r241,%r241,4; add.u64 %r246,%r246,4; .loc 1 137 3 setp.le.s32 %r538,%r145,%r167; @ %r538 bra $L38; mov.u32 %r102,%r167; bra $L12; $L31: .loc 1 149 18 add.u32 %r40,%r40,-8; .loc 1 150 14 cvt.s64.s32 %r539,%r147; shl.b64 %r540,%r539,2; add.u64 %r541,%frame,%r540; .loc 1 150 11 ld.u32 %r543,[%r541+240]; setp.ne.u32 %r544,%r543,0; @ %r544 bra $L39; add.u64 %r548,%r540,-4; add.u64 %r214,%r666,%r548; $L40: .loc 1 150 27 add.u32 %r147,%r147,-1; .loc 1 150 33 add.u32 %r40,%r40,-8; add.u64 %r214,%r214,-4; .loc 1 150 11 ld.u32 %r549,[%r214+4]; setp.eq.u32 %r550,%r549,0; @ %r550 bra $L40; bra $L39; $L28: .loc 1 152 10 sub.u32 %r553,%r190,%r344; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r117; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r553; call (%value_in),scalbnf,(%out_arg1,%out_arg2); ld.param.f32 %r554,[%value_in]; } .loc 1 153 8 setp.ge.f32 %r555,%r554,0f43800000; @ ! %r555 bra $L120; .loc 1 154 33 mul.f32 %r556,%r554,0f3b800000; .loc 1 154 16 cvt.rzi.s32.f32 %r557,%r556; .loc 1 154 6 cvt.rn.f32.s32 %r149,%r557; .loc 1 155 10 shl.b64 %r559,%r667,2; add.u64 %r560,%frame,%r559; .loc 1 155 25 fma.rn.f32 %r563,%r149,0fc3800000,%r554; .loc 1 155 12 cvt.rzi.s32.f32 %r564,%r563; st.u32 [%r560+240],%r564; .loc 1 156 6 add.u32 %r147,%r102,1; .loc 1 156 15 add.u32 %r40,%r40,8; .loc 1 157 10 cvt.s64.s32 %r565,%r147; shl.b64 %r566,%r565,2; add.u64 %r567,%frame,%r566; .loc 1 157 12 cvt.rzi.s32.f32 %r569,%r149; st.u32 [%r567+240],%r569; bra $L39; $L120: .loc 1 158 20 shl.b64 %r571,%r667,2; add.u64 %r572,%frame,%r571; .loc 1 158 22 cvt.rzi.s32.f32 %r574,%r554; st.u32 [%r572+240],%r574; .loc 1 158 20 mov.u32 %r147,%r102; $L39: .loc 1 162 7 mov.f32 %r575,0f3f800000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r575; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r40; call (%value_in),scalbnf,(%out_arg1,%out_arg2); ld.param.f32 %r577,[%value_in]; } mov.f32 %r150,%r577; .loc 1 163 2 setp.lt.s32 %r578,%r147,0; @ %r578 bra $L43; cvt.s64.s32 %r668,%r147; shl.b64 %r208,%r668,2; add.u64 %r187,%r666,%r208; add.u64 %r84,%frame,%r208; mov.u64 %r210,%r84; mov.u32 %r151,%r147; $L44: .loc 1 164 16 ld.u32 %r582,[%r187]; cvt.rn.f32.s32 %r581,%r582; .loc 1 164 15 mul.f32 %r583,%r581,%r150; .loc 1 164 11 st.f32 [%r210],%r583; .loc 1 164 32 mul.f32 %r150,%r150,0f3b800000; .loc 1 163 17 add.u32 %r151,%r151,-1; add.u64 %r187,%r187,-4; add.u64 %r210,%r210,-4; .loc 1 163 2 setp.ne.u32 %r584,%r151,-1; @ %r584 bra $L44; add.u64 %r671,%frame,80; mov.u64 %r69,%r671; mov.u32 %r99,0; .loc 1 169 6 mov.f32 %r679,0f3fc90000; bra $L45; $L47: .loc 1 169 44 ld.f32 %r585,[%r191]; fma.rn.f32 %r152,%r585,%r195,%r152; .loc 1 169 37 add.u32 %r41,%r41,1; .loc 1 169 6 setp.lt.s32 %r586,%r127,%r41; @ %r586 bra $L46; add.u64 %r191,%r191,4; .loc 1 169 26 setp.lt.s32 %r587,%r99,%r41; @ %r587 bra $L46; ld.f32 %r195,[%r23]; add.u64 %r23,%r23,4; bra $L47; $L82: .loc 1 169 12 mov.f32 %r152,0f00000000; $L46: .loc 1 170 15 st.f32 [%r69],%r152; add.u32 %r146,%r99,1; add.u64 %r69,%r69,4; add.u64 %r84,%r84,-4; .loc 1 168 2 setp.eq.u32 %r588,%r99,%r147; @ %r588 bra $L48; mov.u32 %r99,%r146; $L45: .loc 1 169 6 @ %r677 bra $L82; cvta.const.u64 %r23,PIo2+4; mov.u64 %r191,%r84; mov.f32 %r195,%r679; .loc 1 169 12 mov.f32 %r152,0f00000000; .loc 1 169 18 mov.u32 %r41,0; bra $L47; $L70: .loc 1 190 3 setp.gt.s32 %r590,%r147,0; @ %r590 bra $L49; .loc 1 200 10 mov.f32 %r162,0f00000000; bra $L50; $L121: .loc 1 195 3 setp.gt.s32 %r591,%r147,1; @ %r591 bra $L51; .loc 1 200 10 mov.f32 %r162,0f00000000; bra $L50; $L73: add.u64 %r184,%r671,%r208; add.u64 %r593,%r671,-4; add.u64 %r594,%r593,%r208; shl.b64 %r596,%r668,2; sub.u64 %r179,%r594,%r596; .loc 1 168 2 mov.f32 %r153,0f00000000; $L52: .loc 1 177 26 ld.f32 %r597,[%r184]; add.f32 %r153,%r153,%r597; add.u64 %r184,%r184,-4; .loc 1 177 3 setp.ne.u64 %r598,%r179,%r184; @ %r598 bra $L52; bra $L68; $L84: .loc 1 176 6 mov.f32 %r153,0f00000000; $L68: .loc 1 178 21 setp.eq.u32 %r599,%r115,0; @ %r599 bra $L53; neg.f32 %r153,%r153; $L53: .loc 1 178 8 st.f32 [%r343],%r153; .loc 1 179 3 bra $L54; $L72: add.u64 %r175,%r671,%r208; add.u64 %r601,%r671,-4; add.u64 %r602,%r601,%r208; shl.b64 %r604,%r668,2; sub.u64 %r166,%r602,%r604; .loc 1 182 6 mov.f32 %r154,0f00000000; $L55: .loc 1 183 26 ld.f32 %r605,[%r175]; add.f32 %r154,%r154,%r605; add.u64 %r175,%r175,-4; .loc 1 183 3 setp.ne.u64 %r606,%r166,%r175; @ %r606 bra $L55; bra $L67; $L83: .loc 1 182 6 mov.f32 %r154,0f00000000; $L67: ld.f32 %r607,[%frame+80]; sub.f32 %r158,%r607,%r154; .loc 1 184 21 setp.eq.u32 %r675,%r115,0; @ %r675 bra $L56; neg.f32 %r609,%r154; .loc 1 184 8 st.f32 [%r343],%r609; .loc 1 186 3 setp.le.s32 %r610,%r147,0; @ %r610 bra $L57; $L65: add.u64 %r177,%frame,84; .loc 1 182 6 mov.u32 %r159,1; $L58: .loc 1 186 26 ld.f32 %r612,[%r177]; add.f32 %r158,%r158,%r612; .loc 1 186 19 add.u32 %r159,%r159,1; add.u64 %r177,%r177,4; .loc 1 186 3 setp.ge.s32 %r613,%r147,%r159; @ %r613 bra $L58; .loc 1 187 21 @ %r675 bra $L59; $L57: neg.f32 %r158,%r158; $L59: .loc 1 187 8 st.f32 [%r343+4],%r158; .loc 1 188 3 bra $L54; $L49: cvt.s64.s32 %r668,%r147; shl.b64 %r616,%r668,2; add.u64 %r617,%frame,%r616; ld.f32 %r111,[%r617+80]; add.u64 %r671,%frame,80; add.u64 %r621,%r616,-4; add.u64 %r106,%r671,%r621; add.u64 %r670,%frame,72; add.u64 %r624,%r670,%r616; add.u32 %r625,%r147,-1; cvt.u64.u32 %r626,%r625; shl.b64 %r627,%r626,2; sub.u64 %r194,%r624,%r627; $L60: .loc 1 191 19 ld.f32 %r90,[%r106]; .loc 1 191 15 add.f32 %r160,%r90,%r111; .loc 1 192 24 sub.f32 %r628,%r90,%r160; .loc 1 192 14 add.f32 %r629,%r628,%r111; st.f32 [%r106+4],%r629; .loc 1 193 15 st.f32 [%r106],%r160; add.u64 %r106,%r106,-4; mov.f32 %r111,%r160; .loc 1 190 3 setp.ne.u64 %r630,%r106,%r194; @ %r630 bra $L60; bra $L121; $L51: shl.b64 %r632,%r668,2; add.u64 %r633,%frame,%r632; ld.f32 %r114,[%r633+80]; add.u64 %r637,%r632,-4; add.u64 %r124,%r671,%r637; add.u32 %r638,%r147,-2; cvt.u64.u32 %r639,%r638; shl.b64 %r109,%r639,2; add.u64 %r641,%r670,%r632; sub.u64 %r108,%r641,%r109; $L62: .loc 1 196 19 ld.f32 %r93,[%r124]; .loc 1 196 15 add.f32 %r161,%r93,%r114; .loc 1 197 24 sub.f32 %r642,%r93,%r161; .loc 1 197 14 add.f32 %r643,%r642,%r114; st.f32 [%r124+4],%r643; .loc 1 198 15 st.f32 [%r124],%r161; add.u64 %r124,%r124,-4; mov.f32 %r114,%r161; .loc 1 195 3 setp.ne.u64 %r644,%r108,%r124; @ %r644 bra $L62; add.u64 %r165,%r671,%r632; add.u64 %r646,%r671,-4; add.u64 %r647,%r646,%r632; sub.u64 %r125,%r647,%r109; .loc 1 200 10 mov.f32 %r162,0f00000000; $L63: .loc 1 200 33 ld.f32 %r648,[%r165]; add.f32 %r162,%r162,%r648; add.u64 %r165,%r165,-4; .loc 1 200 3 setp.ne.u64 %r649,%r125,%r165; @ %r649 bra $L63; $L50: ld.f32 %r199,[%frame+80]; ld.f32 %r200,[%frame+84]; .loc 1 201 5 setp.ne.u32 %r650,%r115,0; @ %r650 bra $L64; .loc 1 202 12 st.f32 [%r343],%r199; .loc 1 202 27 st.f32 [%r343+4],%r200; .loc 1 202 42 st.f32 [%r343+8],%r162; bra $L54; $L64: .loc 1 204 14 neg.f32 %r651,%r199; .loc 1 204 12 st.f32 [%r343],%r651; .loc 1 204 29 neg.f32 %r652,%r200; .loc 1 204 27 st.f32 [%r343+4],%r652; .loc 1 204 44 neg.f32 %r653,%r162; .loc 1 204 42 st.f32 [%r343+8],%r653; $L54: .loc 1 207 10 and.b32 %r654,%r105,7; bra $L122; $L56: .loc 1 184 8 st.f32 [%r343],%r154; .loc 1 186 3 setp.gt.s32 %r655,%r147,0; @ %r655 bra $L65; bra $L59; $L43: setp.gt.s32 %r656,%r346,2; @ %r656 bra $L66; setp.gt.s32 %r657,%r346,0; @ %r657 bra $L83; setp.eq.u32 %r658,%r346,0; @ %r658 bra $L84; bra $L54; $L66: setp.eq.u32 %r659,%r346,3; @ %r659 bra $L70; bra $L54; $L48: setp.gt.s32 %r660,%r346,2; @ %r660 bra $L71; setp.gt.s32 %r661,%r346,0; @ %r661 bra $L72; setp.eq.u32 %r662,%r346,0; @ %r662 bra $L73; bra $L54; $L71: setp.eq.u32 %r663,%r346,3; @ %r663 bra $L70; bra $L54; $L18: .loc 1 107 8 add.u32 %r105,%r105,1; .loc 1 108 6 setp.gt.s32 %r664,%r102,0; @ %r664 bra $L85; .loc 1 125 5 mov.f32 %r665,0f3f800000; sub.f32 %r117,%r665,%r117; mov.u32 %r115,2; bra $L19; $L122: .loc 1 208 1 mov.u32 %value,%r654; st.param.u32 [%value_out],%value; ret; } lib_a-kf_sin.o/ 1591654539 399 399 100644 2097 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r31; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r42; .reg .f32 %r43; .reg .f32 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .pred %r47; .reg .u32 %r48; .reg .pred %r49; .reg .f32 %r50; .reg .f32 %r51; .reg .f32 %r52; .reg .pred %r53; .reg .f32 %r54; .reg .f32 %r55; .reg .f32 %r56; .reg .f32 %r57; .reg .f32 %r58; .reg .f32 %r59; .reg .f32 %r60; mov.f32 %r43,%ar0; mov.f32 %r44,%ar1; mov.u32 %r45,%ar2; .loc 1 40 2 mov.b32 %r31,%r43; .loc 1 41 5 and.b32 %r46,%r31,2147483647; .loc 1 42 4 setp.gt.s32 %r47,%r46,838860799; @ %r47 bra $L2; .loc 1 43 9 cvt.rzi.s32.f32 %r48,%r43; .loc 1 43 8 setp.eq.u32 %r49,%r48,0; @ %r49 bra $L5; $L2: .loc 1 44 4 mul.f32 %r34,%r43,%r43; .loc 1 45 4 mul.f32 %r35,%r43,%r34; .loc 1 46 27 fma.rn.f32 %r50,%r34,0f2f2ec9d3,0fb2d72f34; .loc 1 46 21 fma.rn.f32 %r51,%r50,%r34,0f3638ef1b; .loc 1 46 15 fma.rn.f32 %r52,%r51,%r34,0fb9500d01; .loc 1 46 4 fma.rn.f32 %r36,%r52,%r34,0f3c088889; .loc 1 47 4 setp.ne.u32 %r53,%r45,0; @ %r53 bra $L4; .loc 1 47 26 fma.rn.f32 %r54,%r34,%r36,0fbe2aaaab; .loc 1 47 20 fma.rn.f32 %r42,%r54,%r35,%r43; bra $L1; $L4: .loc 1 48 34 mul.f32 %r55,%r35,%r36; .loc 1 48 32 neg.f32 %r56,%r55; fma.rn.f32 %r57,%r44,0f3f000000,%r56; .loc 1 48 37 neg.f32 %r58,%r44; fma.rn.f32 %r59,%r57,%r34,%r58; .loc 1 48 40 fma.rn.f32 %r60,%r35,0f3e2aaaab,%r59; .loc 1 48 20 sub.f32 %r42,%r43,%r60; bra $L1; $L5: .loc 1 43 27 mov.f32 %r42,%r43; $L1: .loc 1 49 1 mov.f32 %value,%r42; st.param.f32 [%value_out],%value; ret; } lib_a-kf_tan.o/ 1591654539 399 399 100644 4995 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r36; .reg .u32 %r51; .reg .u32 %r52; .reg .f32 %r55; .reg .f32 %r58; .reg .f32 %r59; .reg .f32 %r61; .reg .f32 %r62; .reg .f32 %r63; .reg .f32 %r64; .reg .f32 %r65; .reg .f32 %r67; .reg .f32 %r68; .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 .f32 %r83; .reg .pred %r84; .reg .f32 %r85; .reg .pred %r87; .reg .f32 %r88; .reg .f32 %r89; .reg .f32 %r90; .reg .f32 %r91; .reg .f32 %r92; .reg .f32 %r93; .reg .f32 %r94; .reg .f32 %r95; .reg .f32 %r96; .reg .f32 %r97; .reg .f32 %r98; .reg .f32 %r99; .reg .f32 %r100; .reg .f32 %r101; .reg .f32 %r103; .reg .f32 %r104; .reg .f32 %r105; .reg .f32 %r106; .reg .f32 %r107; .reg .f32 %r109; .reg .u32 %r110; .reg .u32 %r111; .reg .u32 %r112; .reg .u32 %r113; .reg .f32 %r114; .reg .pred %r115; .reg .u32 %r116; .reg .u32 %r117; .reg .f32 %r118; .reg .u32 %r119; .reg .u32 %r120; .reg .f32 %r121; .reg .f32 %r122; .reg .f32 %r123; .reg .f32 %r124; .reg .pred %r126; 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 %r126,%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 mov.f32 %r83,0f3f800000; div.rn.f32 %r71,%r83,%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 %r126,%r52,1059889471; @ %r126 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 72 4 mul.f32 %r61,%r72,%r58; .loc 1 71 46 fma.rn.f32 %r91,%r59,0f37d95384,0f3895c07a; .loc 1 71 37 fma.rn.f32 %r92,%r91,%r59,0f398137b9; .loc 1 71 29 fma.rn.f32 %r93,%r92,%r59,0f3abede48; .loc 1 71 21 fma.rn.f32 %r94,%r93,%r59,0f3c11371f; .loc 1 71 13 fma.rn.f32 %r95,%r94,%r59,0f3d5d0dd1; .loc 1 70 42 fma.rn.f32 %r96,%r59,0fb79bae5f,0f38a3f445; .loc 1 70 34 fma.rn.f32 %r97,%r96,%r59,0f3a1a26c8; .loc 1 70 26 fma.rn.f32 %r98,%r97,%r59,0f3b6b6916; .loc 1 70 18 fma.rn.f32 %r99,%r98,%r59,0f3cb327a4; .loc 1 70 4 fma.rn.f32 %r100,%r99,%r59,0f3e088889; .loc 1 73 17 fma.rn.f32 %r101,%r95,%r58,%r100; .loc 1 73 20 fma.rn.f32 %r36,%r101,%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 @ %r126 bra $L7; .loc 1 77 8 cvt.rn.f32.s32 %r64,%r74; .loc 1 78 56 mul.f32 %r103,%r71,%r71; .loc 1 78 61 add.f32 %r104,%r71,%r64; .loc 1 78 58 div.rn.f32 %r105,%r103,%r104; .loc 1 78 64 sub.f32 %r106,%r105,%r63; .loc 1 78 53 sub.f32 %r107,%r72,%r106; .loc 1 78 39 fma.rn.f32 %r109,%r107,0fc0000000,%r64; .loc 1 78 27 shr.s32 %r110,%r51,30; .loc 1 78 32 and.b32 %r111,%r110,2; .loc 1 78 22 mov.u32 %r113,1; sub.u32 %r112,%r113,%r111; .loc 1 78 13 cvt.rn.f32.s32 %r114,%r112; .loc 1 78 36 mul.f32 %r71,%r109,%r114; bra $L1; $L7: .loc 1 80 4 setp.eq.u32 %r115,%r74,1; @ %r115 bra $L1; .loc 1 88 6 mov.b32 %r117,%r71; and.b32 %r116,%r117,-4096; mov.b32 %r65,%r116; .loc 1 90 13 mov.f32 %r118,0fbf800000; div.rn.f32 %r67,%r118,%r71; .loc 1 92 6 mov.b32 %r120,%r67; and.b32 %r119,%r120,-4096; mov.b32 %r68,%r119; .loc 1 89 16 sub.f32 %r121,%r65,%r72; .loc 1 89 9 sub.f32 %r122,%r63,%r121; .loc 1 93 9 fma.rn.f32 %r123,%r65,%r68,0f3f800000; .loc 1 94 19 fma.rn.f32 %r124,%r122,%r68,%r123; .loc 1 94 14 fma.rn.f32 %r71,%r124,%r67,%r68; 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/ 1591654539 399 399 100644 1008 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/1591654539 399 399 100644 809 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/1591654539 399 399 100644 809 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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: llrint .extern .func (.param .u64 %value_out) llrint (.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 %r25; 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),llrint,(%out_arg1); ld.param.u64 %r25,[%value_in]; } .loc 1 40 1 mov.u64 %value,%r25; st.param.u64 [%value_out],%value; ret; } /391 1591654539 399 399 100644 817 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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: llround .extern .func (.param .u64 %value_out) llround (.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 %r25; 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),llround,(%out_arg1); ld.param.u64 %r25,[%value_in]; } .loc 1 40 1 mov.u64 %value,%r25; st.param.u64 [%value_out],%value; ret; } lib_a-log10l.o/ 1591654539 399 399 100644 801 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654539 399 399 100644 801 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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-logl.o/ 1591654539 399 399 100644 785 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654539 399 399 100644 801 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r25; 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 %r25,[%value_in]; } .loc 1 40 1 mov.u64 %value,%r25; st.param.u64 [%value_out],%value; ret; } lib_a-lroundl.o/1591654539 399 399 100644 809 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r25; 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 %r25,[%value_in]; } .loc 1 40 1 mov.u64 %value,%r25; st.param.u64 [%value_out],%value; ret; } lib_a-modfl.o/ 1591654539 399 399 100644 1000 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654539 399 399 100644 785 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } /409 1591654539 399 399 100644 833 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 DECL: nearbyint .extern .func (.param .f64 %value_out) nearbyint (.param .f64 %in_ar0); // 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; .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),nearbyint,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } /429 1591654539 399 399 100644 1040 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } lib_a-powl.o/ 1591654539 399 399 100644 992 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } /449 1591654539 399 399 100644 1040 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/1591654539 399 399 100644 1223 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654539 399 399 100644 793 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654539 399 399 100644 801 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/1591654539 399 399 100644 3969 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r36; .reg .u32 %r37; .reg .f64 %r39; .reg .f64 %r41; .reg .f64 %r42; .reg .u64 %r43; .reg .u64 %r44; .reg .pred %r45; .reg .pred %r46; .reg .f64 %r47; .reg .pred %r48; .reg .pred %r49; .reg .f64 %r51; .reg .f64 %r53; .reg .pred %r54; .reg .f64 %r56; .reg .f64 %r58; .reg .f64 %r59; .reg .f64 %r61; .reg .f64 %r62; .reg .f64 %r63; .reg .f64 %r64; .reg .f64 %r65; .reg .f64 %r67; .reg .f64 %r69; .reg .f64 %r70; .reg .f64 %r72; .reg .f64 %r73; .reg .f64 %r74; .reg .f64 %r75; .reg .pred %r76; mov.f64 %r42,%ar0; .loc 1 89 2 mov.b64 %r43,%r42; shr.u64 %r44,%r43,32; cvt.u32.u64 %r36,%r44; .loc 1 90 5 and.b32 %r37,%r36,2147483647; .loc 1 91 4 setp.le.s32 %r45,%r37,2146435071; @ %r45 bra $L2; .loc 1 91 29 add.f64 %r41,%r42,%r42; bra $L1; $L2: .loc 1 92 4 setp.gt.s32 %r46,%r37,1043333119; @ %r46 bra $L4; .loc 1 93 13 add.f64 %r47,%r42,0d7e37e43c8800759c; .loc 1 93 8 setp.gt.f64 %r48,%r47,0d3ff0000000000000; @ ! %r48 bra $L5; bra $L8; $L4: .loc 1 95 4 setp.le.s32 %r49,%r37,1102053376; @ %r49 bra $L6; .loc 1 96 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r42; 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),__ieee754_log,(%out_arg1); ld.param.f64 %r53,[%value_in]; } .loc 1 96 8 add.f64 %r41,%r53,0d3fe62e42fefa39ef; bra $L7; $L6: .loc 1 97 12 setp.le.s32 %r54,%r37,1073741824; @ %r54 bra $L5; .loc 1 98 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r42; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r56,[%value_in]; } .loc 1 99 35 fma.rn.f64 %r58,%r42,%r42,0d3ff0000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r58; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r59,[%value_in]; } .loc 1 99 58 add.f64 %r61,%r59,%r56; .loc 1 99 33 mov.f64 %r63,0d3ff0000000000000; div.rn.f64 %r62,%r63,%r61; .loc 1 99 10 fma.rn.f64 %r64,%r56,0d4000000000000000,%r62; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r64; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r65,[%value_in]; } mov.f64 %r41,%r65; bra $L7; $L5: .loc 1 101 8 mul.f64 %r39,%r42,%r42; .loc 1 102 15 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r42; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r67,[%value_in]; } .loc 1 102 30 add.f64 %r69,%r39,0d3ff0000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r69; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r70,[%value_in]; } .loc 1 102 29 add.f64 %r72,%r70,0d3ff0000000000000; .loc 1 102 24 div.rn.f64 %r73,%r39,%r72; .loc 1 102 9 add.f64 %r74,%r73,%r67; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r74; call (%value_in),log1p,(%out_arg1); ld.param.f64 %r75,[%value_in]; } mov.f64 %r41,%r75; $L7: .loc 1 104 4 setp.gt.s32 %r76,%r36,0; @ %r76 bra $L1; .loc 1 104 33 neg.f64 %r41,%r41; bra $L1; $L8: .loc 1 93 28 mov.f64 %r41,%r42; $L1: .loc 1 105 1 mov.f64 %value,%r41; st.param.f64 [%value_out],%value; ret; } lib_a-s_atan.o/ 1591654539 399 399 100644 5478 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .f64 %r51; .reg .f64 %r52; .reg .f64 %r60; .reg .f64 %r61; .reg .f64 %r62; .reg .u64 %r63; .reg .u64 %r64; .reg .pred %r65; .reg .pred %r66; .reg .u32 %r68; .reg .u32 %r69; .reg .u32 %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .u16 %r75; .reg .u16 %r76; .reg .u16 %r77; .reg .u32 %r78; .reg .u16 %r79; .reg .pred %r80; .reg .pred %r81; .reg .pred %r82; .reg .pred %r83; .reg .f64 %r84; .reg .pred %r85; .reg .f64 %r87; .reg .pred %r88; .reg .pred %r89; .reg .f64 %r90; .reg .pred %r91; .reg .f64 %r92; .reg .f64 %r93; .reg .f64 %r94; .reg .f64 %r95; .reg .f64 %r96; .reg .f64 %r97; .reg .f64 %r98; .reg .f64 %r99; .reg .f64 %r100; .reg .f64 %r101; .reg .f64 %r102; .reg .f64 %r103; .reg .f64 %r104; .reg .pred %r105; .reg .u64 %r106; .reg .u64 %r107; .reg .u64 %r108; .reg .u64 %r109; .reg .u64 %r110; .reg .u64 %r113; .reg .f64 %r114; .reg .f64 %r115; .reg .f64 %r116; .reg .f64 %r117; .reg .pred %r118; mov.f64 %r62,%ar0; .loc 1 138 2 mov.b64 %r63,%r62; shr.u64 %r64,%r63,32; cvt.u32.u64 %r46,%r64; .loc 1 139 5 and.b32 %r47,%r46,2147483647; .loc 1 140 4 setp.le.s32 %r65,%r47,1141899263; @ %r65 bra $L2; .loc 1 143 8 setp.gt.s32 %r66,%r47,2146435072; @ %r66 bra $L3; .loc 1 144 6 set.u32.eq.u32 %r68,%r47,2146435072; neg.s32 %r69,%r68; .loc 1 144 24 cvt.u32.u64 %r72,%r63; set.u32.ne.u32 %r73,%r72,0; neg.s32 %r74,%r73; .loc 1 144 18 cvt.u16.u32 %r76,%r69; cvt.u16.u32 %r77,%r74; and.b16 %r75,%r76,%r77; .loc 1 143 22 cvt.u32.u16 %r78,%r75; cvt.u16.u8 %r79,%r78; setp.eq.u16 %r80,%r79,0; @ %r80 bra $L4; $L3: .loc 1 145 11 add.f64 %r61,%r62,%r62; bra $L1; $L4: .loc 1 146 8 setp.gt.s32 %r81,%r46,0; .loc 1 147 32 selp.f64 %r61,0d3ff921fb54442d18,0dbff921fb54442d18,%r81; bra $L1; $L2: .loc 1 148 7 setp.gt.s32 %r82,%r47,1071382527; @ %r82 bra $L6; .loc 1 149 9 setp.gt.s32 %r83,%r47,1042284543; @ %r83 bra $L13; .loc 1 150 10 add.f64 %r84,%r62,0d7e37e43c8800759c; .loc 1 150 5 setp.gt.f64 %r85,%r84,0d3ff0000000000000; @ %r85 bra $L14; .loc 1 152 9 mov.u32 %r45,-1; bra $L7; $L6: .loc 1 154 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r62; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r87,[%value_in]; } .loc 1 155 5 setp.gt.s32 %r88,%r47,1072889855; @ %r88 bra $L8; .loc 1 156 9 setp.gt.s32 %r89,%r47,1072037887; @ %r89 bra $L9; .loc 1 157 21 fma.rn.f64 %r26,%r87,0d4000000000000000,0dbff0000000000000; .loc 1 157 31 add.f64 %r27,%r87,0d4000000000000000; .loc 1 157 13 div.rn.f64 %r62,%r26,%r27; .loc 1 157 6 mov.u32 %r45,0; bra $L7; $L9: .loc 1 159 18 mov.f64 %r90,0d3ff0000000000000; sub.f64 %r28,%r87,%r90; .loc 1 159 26 add.f64 %r29,%r87,0d3ff0000000000000; .loc 1 159 14 div.rn.f64 %r62,%r28,%r29; .loc 1 159 6 mov.u32 %r45,1; bra $L7; $L8: .loc 1 162 9 setp.gt.s32 %r91,%r47,1073971199; @ %r91 bra $L10; .loc 1 163 18 mov.f64 %r92,0d3ff8000000000000; sub.f64 %r30,%r87,%r92; .loc 1 163 28 fma.rn.f64 %r31,%r87,0d3ff8000000000000,0d3ff0000000000000; .loc 1 163 14 div.rn.f64 %r62,%r30,%r31; .loc 1 163 6 mov.u32 %r45,2; bra $L7; $L10: .loc 1 165 14 mov.f64 %r93,0dbff0000000000000; div.rn.f64 %r62,%r93,%r87; .loc 1 165 6 mov.u32 %r45,3; bra $L7; $L13: .loc 1 152 9 mov.u32 %r45,-1; $L7: .loc 1 169 4 mul.f64 %r51,%r62,%r62; .loc 1 170 4 mul.f64 %r52,%r51,%r51; .loc 1 172 51 fma.rn.f64 %r94,%r52,0d3f90ad3ae322da11,0d3fa97b4b24760deb; .loc 1 172 42 fma.rn.f64 %r95,%r94,%r52,0d3fb10d66a0d03d51; .loc 1 172 33 fma.rn.f64 %r96,%r95,%r52,0d3fb745cdc54c206e; .loc 1 172 24 fma.rn.f64 %r97,%r96,%r52,0d3fc24924920083ff; .loc 1 172 15 fma.rn.f64 %r98,%r97,%r52,0d3fd555555555550d; .loc 1 173 42 fma.rn.f64 %r99,%r52,0dbfa2b4442c6a6c2f,0dbfadde2d52defd9a; .loc 1 173 33 fma.rn.f64 %r100,%r99,%r52,0dbfb3b0f2af749a6d; .loc 1 173 24 fma.rn.f64 %r101,%r100,%r52,0dbfbc71c6fe231671; .loc 1 173 15 fma.rn.f64 %r102,%r101,%r52,0dbfc999999998ebc4; .loc 1 173 5 mul.f64 %r103,%r102,%r52; fma.rn.f64 %r104,%r98,%r51,%r103; mul.f64 %r60,%r104,%r62; .loc 1 174 5 setp.ne.u32 %r105,%r45,-1; @ %r105 bra $L11; .loc 1 174 21 sub.f64 %r61,%r62,%r60; bra $L1; $L11: .loc 1 176 16 cvta.const.u64 %r106,atanhi; cvt.s64.s32 %r107,%r45; shl.b64 %r108,%r107,3; add.u64 %r109,%r106,%r108; .loc 1 176 43 cvta.const.u64 %r110,atanlo; add.u64 %r113,%r110,%r108; .loc 1 176 35 ld.f64 %r115,[%r113]; sub.f64 %r114,%r60,%r115; .loc 1 176 49 sub.f64 %r116,%r114,%r62; .loc 1 176 8 ld.f64 %r117,[%r109]; sub.f64 %r61,%r117,%r116; .loc 1 177 23 setp.ge.s32 %r118,%r46,0; @ %r118 bra $L1; neg.f64 %r61,%r61; bra $L1; $L14: .loc 1 150 25 mov.f64 %r61,%r62; $L1: .loc 1 179 1 mov.f64 %value,%r61; st.param.f64 [%value_out],%value; ret; } lib_a-s_cbrt.o/ 1591654539 399 399 100644 3814 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r43; .reg .f64 %r45; .reg .f64 %r47; .reg .f64 %r49; .reg .f64 %r51; .reg .f64 %r53; .reg .u32 %r54; .reg .u64 %r61; .reg .u64 %r64; .reg .f64 %r65; .reg .f64 %r66; .reg .u64 %r67; .reg .u64 %r68; .reg .pred %r69; .reg .u32 %r71; .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 %r83; .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 %r66,%ar0; mov.b64 %r67,%r66; shr.u64 %r68,%r67,32; cvt.u32.u64 %r54,%r68; .loc 1 84 6 and.b32 %r22,%r54,2147483647; .loc 1 85 4 setp.le.u32 %r69,%r22,2146435071; @ %r69 bra $L2; .loc 1 85 29 add.f64 %r65,%r66,%r66; bra $L1; $L2: .loc 1 87 8 cvt.u32.u64 %r72,%r67; or.b32 %r71,%r22,%r72; .loc 1 87 4 setp.eq.u32 %r73,%r71,0; @ %r73 bra $L6; .loc 1 90 2 cvt.u64.u32 %r74,%r22; shl.b64 %r75,%r74,32; and.b64 %r76,%r67,4294967295; or.b64 %r77,%r76,%r75; mov.b64 %r43,%r77; .loc 1 92 4 and.b32 %r78,%r54,2146435072; setp.ne.u32 %r79,%r78,0; @ %r79 bra $L4; .loc 1 94 6 mul.f64 %r45,%r43,0d4350000000000000; .loc 1 94 34 mov.b64 %r61,%r45; shr.u64 %r81,%r61,32; cvt.u32.u64 %r83,%r81; div.u32 %r84,%r83,3; add.u32 %r85,%r84,696219795; cvt.u64.u32 %r86,%r85; shl.b64 %r87,%r86,32; and.b64 %r88,%r61,4294967295; or.b64 %r89,%r88,%r87; mov.b64 %r39,%r89; bra $L5; $L4: .loc 1 97 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 101 5 mul.f64 %r99,%r39,%r39; .loc 1 101 3 div.rn.f64 %r100,%r99,%r43; .loc 1 102 3 fma.rn.f64 %r47,%r39,%r100,0d3fe15f15f15f15f1; .loc 1 103 11 add.f64 %r101,%r47,0d3ff6a0ea0ea0ea0f; .loc 1 103 15 mov.f64 %r103,0dbfe691de2532c834; div.rn.f64 %r102,%r103,%r47; .loc 1 103 13 add.f64 %r104,%r101,%r102; .loc 1 103 8 mov.f64 %r106,0d3ff9b6db6db6db6e; div.rn.f64 %r105,%r106,%r104; .loc 1 103 6 add.f64 %r107,%r105,0d3fd6db6db6db6db7; .loc 1 103 3 mul.f64 %r108,%r107,%r39; .loc 1 107 2 mov.b64 %r109,%r108; shr.u64 %r110,%r109,32; cvt.u32.u64 %r112,%r110; add.u32 %r111,%r112,1; cvt.u64.u32 %r113,%r111; shl.b64 %r117,%r113,32; mov.b64 %r49,%r117; .loc 1 111 3 mul.f64 %r118,%r49,%r49; .loc 1 112 3 div.rn.f64 %r51,%r43,%r118; .loc 1 114 6 sub.f64 %r36,%r51,%r49; .loc 1 114 12 fma.rn.f64 %r37,%r49,0d4000000000000000,%r51; .loc 1 114 3 div.rn.f64 %r119,%r36,%r37; .loc 1 115 3 fma.rn.f64 %r53,%r49,%r119,%r49; .loc 1 119 2 mov.b64 %r64,%r53; .loc 1 83 6 and.b32 %r120,%r54,-2147483648; .loc 1 119 2 shr.u64 %r122,%r64,32; cvt.u32.u64 %r124,%r122; or.b32 %r123,%r120,%r124; cvt.u64.u32 %r125,%r123; shl.b64 %r126,%r125,32; and.b64 %r127,%r64,4294967295; or.b64 %r128,%r127,%r126; mov.b64 %r65,%r128; .loc 1 120 8 bra $L1; $L6: .loc 1 88 12 mov.f64 %r65,%r66; $L1: .loc 1 121 1 mov.f64 %value,%r65; st.param.f64 [%value_out],%value; ret; } lib_a-s_ceil.o/ 1591654539 399 399 100644 3839 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r41; .reg .u32 %r42; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r47; .reg .u32 %r49; .reg .f64 %r51; .reg .f64 %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .u32 %r56; .reg .pred %r57; .reg .pred %r58; .reg .f64 %r59; .reg .pred %r60; .reg .pred %r61; .reg .u32 %r62; .reg .pred %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .pred %r67; .reg .f64 %r68; .reg .pred %r69; .reg .pred %r70; .reg .u32 %r71; .reg .u32 %r72; .reg .u32 %r73; .reg .pred %r74; .reg .pred %r75; .reg .u32 %r76; .reg .u32 %r77; .reg .u32 %r78; .reg .pred %r79; .reg .f64 %r80; .reg .pred %r81; .reg .pred %r82; .reg .pred %r83; .reg .u32 %r84; .reg .u32 %r85; .reg .u32 %r86; .reg .u32 %r87; .reg .pred %r88; .reg .u32 %r89; .reg .u64 %r90; .reg .u64 %r94; .reg .u64 %r95; .reg .u64 %r96; mov.f64 %r52,%ar0; mov.b64 %r53,%r52; shr.u64 %r54,%r53,32; cvt.u32.u64 %r49,%r54; cvt.u32.u64 %r45,%r53; .loc 1 43 11 shr.s32 %r56,%r49,20; .loc 1 43 16 and.b32 %r23,%r56,2047; .loc 1 43 5 add.u32 %r41,%r23,-1023; .loc 1 44 4 setp.gt.s32 %r57,%r41,19; @ %r57 bra $L2; .loc 1 45 8 setp.ge.s32 %r58,%r41,0; @ %r58 bra $L3; .loc 1 46 10 add.f64 %r59,%r52,0d7e37e43c8800759c; .loc 1 46 5 setp.gt.f64 %r60,%r59,0d0000000000000000; @ ! %r60 bra $L4; .loc 1 47 9 setp.lt.s32 %r61,%r49,0; @ %r61 bra $L13; .loc 1 48 18 or.b32 %r62,%r49,%r45; .loc 1 48 14 setp.eq.u32 %r63,%r62,0; @ %r63 bra $L14; mov.u32 %r45,0; mov.u32 %r49,1072693248; bra $L4; $L3: .loc 1 51 19 mov.u32 %r64,1048575; shr.s32 %r42,%r64,%r41; .loc 1 52 10 and.b32 %r65,%r42,%r49; .loc 1 52 13 or.b32 %r66,%r65,%r45; .loc 1 52 5 setp.eq.u32 %r67,%r66,0; @ %r67 bra $L15; .loc 1 53 10 add.f64 %r68,%r52,0d7e37e43c8800759c; .loc 1 53 5 setp.gt.f64 %r69,%r68,0d0000000000000000; @ ! %r69 bra $L4; .loc 1 54 9 setp.le.s32 %r70,%r49,0; @ %r70 bra $L8; .loc 1 54 34 mov.u32 %r72,1048576; shr.s32 %r71,%r72,%r41; .loc 1 54 19 add.u32 %r49,%r71,%r49; $L8: .loc 1 55 14 not.b32 %r73,%r42; .loc 1 55 10 and.b32 %r49,%r49,%r73; mov.u32 %r45,0; bra $L4; $L2: .loc 1 58 12 setp.le.s32 %r74,%r41,51; @ %r74 bra $L9; .loc 1 59 8 setp.ne.u32 %r75,%r41,1024; @ %r75 bra $L16; .loc 1 59 28 add.f64 %r51,%r52,%r52; bra $L1; $L9: .loc 1 62 41 add.u32 %r76,%r23,-1043; .loc 1 62 8 mov.u32 %r77,-1; shr.u32 %r44,%r77,%r76; .loc 1 63 12 and.b32 %r78,%r44,%r45; .loc 1 63 8 setp.eq.u32 %r79,%r78,0; @ %r79 bra $L17; .loc 1 64 13 add.f64 %r80,%r52,0d7e37e43c8800759c; .loc 1 64 8 setp.gt.f64 %r81,%r80,0d0000000000000000; @ ! %r81 bra $L4; .loc 1 65 5 setp.le.s32 %r82,%r49,0; @ %r82 bra $L11; .loc 1 66 9 setp.ne.u32 %r83,%r41,20; @ %r83 bra $L12; .loc 1 66 20 add.u32 %r49,%r49,1; bra $L11; $L12: .loc 1 68 20 mov.u32 %r85,52; sub.u32 %r84,%r85,%r41; .loc 1 68 15 mov.u32 %r87,1; shl.b32 %r86,%r87,%r84; .loc 1 68 11 add.u32 %r47,%r86,%r45; .loc 1 69 6 setp.le.u32 %r88,%r45,%r47; @ %r88 bra $L18; .loc 1 69 15 add.u32 %r49,%r49,1; mov.u32 %r45,%r47; bra $L11; $L18: mov.u32 %r45,%r47; $L11: .loc 1 73 10 not.b32 %r89,%r44; .loc 1 73 6 and.b32 %r45,%r45,%r89; bra $L4; $L13: mov.u32 %r45,0; mov.u32 %r49,-2147483648; bra $L4; $L14: mov.u32 %r45,%r62; mov.u32 %r49,%r45; $L4: .loc 1 76 2 cvt.u64.u32 %r90,%r49; cvt.u64.u32 %r94,%r45; shl.b64 %r95,%r90,32; or.b64 %r96,%r95,%r94; mov.b64 %r51,%r96; .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; } /469 1591654539 399 399 100644 1183 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 78 2 mov.b64 %r27,%r29; shr.u64 %r32,%r27,32; cvt.u32.u64 %r34,%r32; and.b32 %r33,%r34,2147483647; mov.b64 %r35,%r30; shr.u64 %r36,%r35,32; cvt.u32.u64 %r38,%r36; and.b32 %r37,%r38,-2147483648; or.b32 %r39,%r33,%r37; 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 80 1 st.param.f64 [%value_out],%value; ret; } lib_a-s_cos.o/ 1591654539 399 399 100644 3875 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r33; .reg .u32 %r34; .reg .f64 %r37; .reg .f64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .pred %r41; .reg .f64 %r43; .reg .f64 %r44; .reg .pred %r45; .reg .u32 %r48; .reg .pred %r49; .reg .pred %r50; .reg .pred %r51; .reg .f64 %r52; .reg .f64 %r54; .reg .f64 %r55; .reg .f64 %r56; .reg .f64 %r59; .reg .f64 %r60; .reg .f64 %r61; .reg .f64 %r63; .reg .f64 %r64; .reg .f64 %r65; .reg .u32 %r67; .reg .f64 %r68; .reg .f64 %r69; mov.f64 %r38,%ar0; .loc 1 60 2 mov.b64 %r39,%r38; shr.u64 %r40,%r39,32; cvt.u32.u64 %r33,%r40; .loc 1 63 5 and.b32 %r34,%r33,2147483647; .loc 1 64 4 setp.gt.s32 %r41,%r34,1072243195; @ %r41 bra $L2; .loc 1 64 30 mov.f64 %r43,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r43; call (%value_in),__kernel_cos,(%out_arg1,%out_arg2); ld.param.f64 %r44,[%value_in]; } mov.f64 %r37,%r44; bra $L1; $L2: .loc 1 67 10 setp.le.s32 %r45,%r34,2146435071; @ %r45 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 %r48,[%value_in]; } .loc 1 72 14 and.b32 %r22,%r48,3; setp.eq.u32 %r49,%r22,1; @ %r49 bra $L5; setp.eq.u32 %r50,%r22,2; @ %r50 bra $L6; setp.ne.u32 %r51,%r22,0; @ %r51 bra $L7; .loc 1 73 19 ld.f64 %r54,[%frame+8]; ld.f64 %r52,[%frame]; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r52; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r54; call (%value_in),__kernel_cos,(%out_arg1,%out_arg2); ld.param.f64 %r55,[%value_in]; } mov.f64 %r37,%r55; bra $L1; $L5: .loc 1 74 19 ld.f64 %r59,[%frame+8]; ld.f64 %r56,[%frame]; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r56; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r59; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r22; call (%value_in),__kernel_sin,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r60,[%value_in]; } .loc 1 74 18 neg.f64 %r37,%r60; bra $L1; $L6: .loc 1 75 19 ld.f64 %r63,[%frame+8]; ld.f64 %r61,[%frame]; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r61; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r63; call (%value_in),__kernel_cos,(%out_arg1,%out_arg2); ld.param.f64 %r64,[%value_in]; } .loc 1 75 18 neg.f64 %r37,%r64; bra $L1; $L7: .loc 1 77 19 ld.f64 %r68,[%frame+8]; mov.u32 %r67,1; ld.f64 %r65,[%frame]; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r65; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r68; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r67; call (%value_in),__kernel_sin,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r69,[%value_in]; } mov.f64 %r37,%r69; $L1: .loc 1 80 1 mov.f64 %value,%r37; st.param.f64 [%value_out],%value; ret; } lib_a-s_erf.o/ 1591654539 399 399 100644 18067 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 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 %r84; .reg .f64 %r85; .reg .u32 %r86; .reg .u32 %r87; .reg .f64 %r89; .reg .f64 %r93; .reg .f64 %r94; .reg .f64 %r95; .reg .u32 %r96; .reg .f64 %r98; .reg .f64 %r100; .reg .f64 %r101; .reg .u64 %r122; .reg .f64 %r123; .reg .f64 %r124; .reg .u64 %r125; .reg .u64 %r126; .reg .pred %r127; .reg .u32 %r128; .reg .u32 %r129; .reg .u32 %r130; .reg .u32 %r131; .reg .f64 %r132; .reg .f64 %r133; .reg .f64 %r134; .reg .pred %r135; .reg .pred %r136; .reg .u32 %r137; .reg .pred %r138; .reg .f64 %r139; .reg .f64 %r140; .reg .f64 %r141; .reg .f64 %r142; .reg .f64 %r143; .reg .f64 %r144; .reg .f64 %r145; .reg .f64 %r146; .reg .f64 %r147; .reg .f64 %r148; .reg .f64 %r149; .reg .f64 %r150; .reg .pred %r151; .reg .f64 %r153; .reg .f64 %r154; .reg .f64 %r155; .reg .f64 %r156; .reg .f64 %r157; .reg .f64 %r158; .reg .f64 %r159; .reg .f64 %r160; .reg .f64 %r161; .reg .f64 %r162; .reg .f64 %r163; .reg .f64 %r164; .reg .pred %r165; .reg .f64 %r166; .reg .f64 %r167; .reg .f64 %r168; .reg .pred %r169; .reg .pred %r170; .reg .f64 %r172; .reg .f64 %r173; .reg .f64 %r174; .reg .pred %r175; .reg .f64 %r176; .reg .f64 %r177; .reg .f64 %r178; .reg .f64 %r179; .reg .f64 %r180; .reg .f64 %r181; .reg .f64 %r182; .reg .f64 %r183; .reg .f64 %r184; .reg .f64 %r185; .reg .f64 %r186; .reg .f64 %r187; .reg .f64 %r188; .reg .f64 %r189; .reg .f64 %r190; .reg .f64 %r191; .reg .f64 %r192; .reg .f64 %r193; .reg .f64 %r194; .reg .f64 %r195; .reg .f64 %r196; .reg .f64 %r197; .reg .f64 %r198; .reg .f64 %r199; .reg .u64 %r200; .reg .f64 %r202; .reg .f64 %r203; .reg .f64 %r204; .reg .f64 %r206; .reg .f64 %r207; .reg .f64 %r208; .reg .f64 %r209; .reg .f64 %r210; .reg .pred %r211; .reg .f64 %r212; .reg .f64 %r213; .reg .f64 %r214; .reg .f64 %r215; mov.f64 %r124,%ar0; mov.b64 %r125,%r124; shr.u64 %r126,%r125,32; cvt.u32.u64 %r96,%r126; .loc 1 260 2 cvt.u32.u64 %r86,%r126; .loc 1 261 5 and.b32 %r87,%r96,2147483647; .loc 1 262 4 setp.le.s32 %r127,%r87,2146435071; @ %r127 bra $L2; .loc 1 263 25 shr.u32 %r128,%r96,31; .loc 1 263 30 add.u32 %r129,%r128,%r128; .loc 1 264 23 mov.u32 %r131,1; sub.u32 %r130,%r131,%r129; .loc 1 264 13 cvt.rn.f64.s32 %r132,%r130; .loc 1 264 30 mov.f64 %r134,0d3ff0000000000000; div.rn.f64 %r133,%r134,%r124; .loc 1 264 26 add.f64 %r123,%r132,%r133; bra $L1; $L2: .loc 1 267 4 setp.gt.s32 %r135,%r87,1072365567; @ %r135 bra $L4; .loc 1 268 8 setp.gt.s32 %r136,%r87,1043333119; @ %r136 bra $L5; .loc 1 269 13 and.b32 %r137,%r96,2139095040; setp.ne.u32 %r138,%r137,0; @ %r138 bra $L6; .loc 1 270 31 mul.f64 %r139,%r124,0d3ff06eba8214db69; .loc 1 270 26 fma.rn.f64 %r140,%r124,0d4020000000000000,%r139; .loc 1 270 19 mul.f64 %r123,%r140,0d3fc0000000000000; bra $L1; $L6: .loc 1 271 12 fma.rn.f64 %r123,%r124,0d3fc06eba8214db69,%r124; bra $L1; $L5: .loc 1 273 8 mul.f64 %r89,%r124,%r124; .loc 1 274 34 fma.rn.f64 %r141,%r89,0dbef8ead6120016ac,0dbf77a291236668e4; .loc 1 274 27 fma.rn.f64 %r142,%r141,%r89,0dbf9d2a51dbd7194f; .loc 1 274 20 fma.rn.f64 %r143,%r142,%r89,0dbfd4cd7d691cb913; .loc 1 274 8 fma.rn.f64 %r144,%r143,%r89,0d3fc06eba8214db68; .loc 1 275 41 fma.rn.f64 %r145,%r89,0dbed09c4342a26120,0d3f215dc9221c1a10; .loc 1 275 34 fma.rn.f64 %r146,%r145,%r89,0d3f74d022c4d36b0f; .loc 1 275 27 fma.rn.f64 %r147,%r146,%r89,0d3fb0a54c5536ceba; .loc 1 275 20 fma.rn.f64 %r148,%r147,%r89,0d3fd97779cddadc09; .loc 1 275 8 fma.rn.f64 %r149,%r148,%r89,0d3ff0000000000000; .loc 1 276 8 div.rn.f64 %r150,%r144,%r149; .loc 1 277 15 fma.rn.f64 %r123,%r124,%r150,%r124; bra $L1; $L4: .loc 1 279 4 setp.gt.s32 %r151,%r87,1072955391; @ %r151 bra $L7; .loc 1 280 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r124; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r153,[%value_in]; } .loc 1 280 8 mov.f64 %r154,0d3ff0000000000000; sub.f64 %r93,%r153,%r154; .loc 1 281 48 fma.rn.f64 %r155,%r93,0dbf61bf380a96073f,0d3fa22a36599795eb; .loc 1 281 41 fma.rn.f64 %r156,%r155,%r93,0dbfbc63983d3e28ec; .loc 1 281 34 fma.rn.f64 %r157,%r156,%r93,0d3fd45fca805120e4; .loc 1 281 27 fma.rn.f64 %r158,%r157,%r93,0dbfd7d240fbb8c3f1; .loc 1 281 20 fma.rn.f64 %r159,%r158,%r93,0d3fda8d00ad92b34d; .loc 1 281 8 fma.rn.f64 %r94,%r159,%r93,0dbf6359b8bef77538; .loc 1 282 48 fma.rn.f64 %r160,%r93,0d3f888b545735151d,0d3f8bedc26b51dd1c; .loc 1 282 41 fma.rn.f64 %r161,%r160,%r93,0d3fc02660e763351f; .loc 1 282 34 fma.rn.f64 %r162,%r161,%r93,0d3fb2635cd99fe9a7; .loc 1 282 27 fma.rn.f64 %r163,%r162,%r93,0d3fe14af092eb6f33; .loc 1 282 20 fma.rn.f64 %r164,%r163,%r93,0d3fbb3e6618eee323; .loc 1 282 8 fma.rn.f64 %r95,%r164,%r93,0d3ff0000000000000; .loc 1 283 8 setp.lt.s32 %r165,%r96,0; @ %r165 bra $L8; .loc 1 283 30 div.rn.f64 %r166,%r94,%r95; .loc 1 283 27 add.f64 %r123,%r166,0d3feb0ac160000000; bra $L1; $L8: .loc 1 283 54 div.rn.f64 %r167,%r94,%r95; .loc 1 283 51 mov.f64 %r168,0dbfeb0ac160000000; sub.f64 %r123,%r168,%r167; bra $L1; $L7: .loc 1 285 5 setp.le.s32 %r169,%r87,1075314687; @ %r169 bra $L9; .loc 1 286 8 setp.ge.s32 %r170,%r96,0; .loc 1 286 49 selp.f64 %r123,0d3ff0000000000000,0dbff0000000000000,%r170; bra $L1; $L9: .loc 1 288 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r124; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r172,[%value_in]; } .loc 1 289 13 mul.f64 %r173,%r172,%r172; .loc 1 289 5 mov.f64 %r174,0d3ff0000000000000; div.rn.f64 %r98,%r174,%r173; .loc 1 290 4 setp.gt.s32 %r175,%r87,1074191213; @ %r175 bra $L10; .loc 1 292 15 fma.rn.f64 %r176,%r98,0dc023a0efc69ac25c,0dc054526557e4d2f2; .loc 1 292 8 fma.rn.f64 %r177,%r176,%r98,0dc067135cebccabb2; .loc 1 291 39 fma.rn.f64 %r178,%r177,%r98,0dc0644cb184282266; .loc 1 291 32 fma.rn.f64 %r179,%r178,%r98,0dc04f300ae4cba38d; .loc 1 291 25 fma.rn.f64 %r180,%r179,%r98,0dc0251e0441b0e726; .loc 1 291 18 fma.rn.f64 %r181,%r180,%r98,0dbfe63416e4ba7360; .loc 1 291 7 fma.rn.f64 %r84,%r181,%r98,0dbf843412600d6435; .loc 1 294 22 fma.rn.f64 %r182,%r98,0dbfaeeff2ee749a62,0d401a47ef8e484a93; .loc 1 294 15 fma.rn.f64 %r183,%r182,%r98,0d405b28a3ee48ae2c; .loc 1 294 8 fma.rn.f64 %r184,%r183,%r98,0d407ad02157700314; .loc 1 293 39 fma.rn.f64 %r185,%r184,%r98,0d40842b1921ec2868; .loc 1 293 32 fma.rn.f64 %r186,%r185,%r98,0d407b290dd58a1a71; .loc 1 293 25 fma.rn.f64 %r187,%r186,%r98,0d4061350c526ae721; .loc 1 293 18 fma.rn.f64 %r188,%r187,%r98,0d4033a6b9bd707687; .loc 1 293 7 fma.rn.f64 %r85,%r188,%r98,0d3ff0000000000000; bra $L11; $L10: .loc 1 297 8 fma.rn.f64 %r189,%r98,0dc07e384e9bdc383f,0dc09004616a2e5992; .loc 1 296 39 fma.rn.f64 %r190,%r189,%r98,0dc083ec881375f228; .loc 1 296 32 fma.rn.f64 %r191,%r190,%r98,0dc064145d43c5ed98; .loc 1 296 25 fma.rn.f64 %r192,%r191,%r98,0dc031c209555f995a; .loc 1 296 18 fma.rn.f64 %r193,%r192,%r98,0dbfe993ba70c285de; .loc 1 296 7 fma.rn.f64 %r84,%r193,%r98,0dbf84341239e86f4a; .loc 1 299 15 fma.rn.f64 %r194,%r98,0dc03670e242712d62,0d407da874e79fe763; .loc 1 299 8 fma.rn.f64 %r195,%r194,%r98,0d40a3f219cedf3be6; .loc 1 298 39 fma.rn.f64 %r196,%r195,%r98,0d40a8ffb7688c246a; .loc 1 298 32 fma.rn.f64 %r197,%r196,%r98,0d409802eb189d5118; .loc 1 298 25 fma.rn.f64 %r198,%r197,%r98,0d40745cae221b9f0a; .loc 1 298 18 fma.rn.f64 %r199,%r198,%r98,0d403e568b261d5190; .loc 1 298 7 fma.rn.f64 %r85,%r199,%r98,0d3ff0000000000000; $L11: .loc 1 302 2 mov.b64 %r122,%r172; and.b64 %r200,%r122,-4294967296; mov.b64 %r100,%r200; .loc 1 303 22 neg.f64 %r202,%r100; .loc 1 303 8 fma.rn.f64 %r203,%r202,%r100,0dbfe2000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r203; call (%value_in),__ieee754_exp,(%out_arg1); ld.param.f64 %r204,[%value_in]; } .loc 1 303 51 sub.f64 %r206,%r100,%r172; .loc 1 303 62 div.rn.f64 %r207,%r84,%r85; .loc 1 303 57 add.f64 %r208,%r172,%r100; .loc 1 303 35 fma.rn.f64 %r209,%r206,%r208,%r207; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r209; call (%value_in),__ieee754_exp,(%out_arg1); ld.param.f64 %r210,[%value_in]; } .loc 1 303 5 mul.f64 %r101,%r204,%r210; .loc 1 304 4 setp.lt.s32 %r211,%r86,0; @ %r211 bra $L12; .loc 1 304 24 div.rn.f64 %r212,%r101,%r172; .loc 1 304 22 mov.f64 %r213,0d3ff0000000000000; sub.f64 %r123,%r213,%r212; bra $L1; $L12: .loc 1 304 42 div.rn.f64 %r214,%r101,%r172; .loc 1 304 44 mov.f64 %r215,0d3ff0000000000000; sub.f64 %r123,%r214,%r215; $L1: .loc 1 305 1 mov.f64 %value,%r123; 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 %r86; .reg .f64 %r87; .reg .u32 %r88; .reg .u32 %r89; .reg .f64 %r90; .reg .f64 %r96; .reg .f64 %r97; .reg .f64 %r98; .reg .f64 %r101; .reg .f64 %r102; .reg .f64 %r103; .reg .u32 %r104; .reg .f64 %r113; .reg .u64 %r125; .reg .f64 %r126; .reg .f64 %r127; .reg .u64 %r128; .reg .u64 %r129; .reg .pred %r130; .reg .u32 %r131; .reg .u32 %r132; .reg .f64 %r133; .reg .f64 %r134; .reg .f64 %r135; .reg .pred %r136; .reg .pred %r137; .reg .f64 %r138; .reg .f64 %r139; .reg .f64 %r140; .reg .f64 %r141; .reg .f64 %r142; .reg .f64 %r143; .reg .f64 %r144; .reg .f64 %r145; .reg .f64 %r146; .reg .f64 %r147; .reg .f64 %r148; .reg .pred %r149; .reg .f64 %r150; .reg .f64 %r151; .reg .f64 %r152; .reg .f64 %r153; .reg .f64 %r154; .reg .pred %r156; .reg .f64 %r158; .reg .f64 %r159; .reg .f64 %r160; .reg .f64 %r161; .reg .f64 %r162; .reg .f64 %r163; .reg .f64 %r164; .reg .f64 %r165; .reg .f64 %r166; .reg .f64 %r167; .reg .f64 %r168; .reg .f64 %r169; .reg .pred %r170; .reg .f64 %r171; .reg .f64 %r172; .reg .f64 %r173; .reg .f64 %r174; .reg .pred %r175; .reg .f64 %r177; .reg .f64 %r178; .reg .f64 %r179; .reg .pred %r180; .reg .f64 %r181; .reg .f64 %r182; .reg .f64 %r183; .reg .f64 %r184; .reg .f64 %r185; .reg .f64 %r186; .reg .f64 %r187; .reg .f64 %r188; .reg .f64 %r189; .reg .f64 %r190; .reg .f64 %r191; .reg .f64 %r192; .reg .f64 %r193; .reg .u32 %r195; .reg .u32 %r197; .reg .u32 %r198; .reg .u16 %r200; .reg .u16 %r201; .reg .u16 %r202; .reg .u32 %r203; .reg .u16 %r204; .reg .pred %r205; .reg .f64 %r206; .reg .f64 %r207; .reg .f64 %r208; .reg .f64 %r209; .reg .f64 %r210; .reg .f64 %r211; .reg .f64 %r212; .reg .f64 %r213; .reg .f64 %r214; .reg .f64 %r215; .reg .f64 %r216; .reg .u64 %r217; .reg .f64 %r219; .reg .f64 %r220; .reg .f64 %r221; .reg .f64 %r223; .reg .f64 %r224; .reg .f64 %r225; .reg .f64 %r226; .reg .f64 %r227; .reg .pred %r228; .reg .f64 %r229; .reg .f64 %r230; .reg .pred %r231; mov.f64 %r127,%ar0; mov.b64 %r128,%r127; shr.u64 %r129,%r128,32; cvt.u32.u64 %r104,%r129; .loc 1 316 2 cvt.u32.u64 %r88,%r129; .loc 1 317 5 and.b32 %r89,%r104,2147483647; .loc 1 318 4 setp.le.s32 %r130,%r89,2146435071; @ %r130 bra $L15; .loc 1 320 37 shr.u32 %r131,%r104,31; .loc 1 320 42 add.u32 %r132,%r131,%r131; .loc 1 320 13 cvt.rn.f64.s32 %r133,%r132; .loc 1 320 50 mov.f64 %r135,0d3ff0000000000000; div.rn.f64 %r134,%r135,%r127; .loc 1 320 46 add.f64 %r126,%r133,%r134; bra $L14; $L15: .loc 1 323 4 setp.gt.s32 %r136,%r89,1072365567; @ %r136 bra $L17; .loc 1 324 8 setp.gt.s32 %r137,%r89,1013972991; @ %r137 bra $L18; .loc 1 325 13 mov.f64 %r138,0d3ff0000000000000; sub.f64 %r126,%r138,%r127; bra $L14; $L18: .loc 1 326 8 mul.f64 %r90,%r127,%r127; .loc 1 327 34 fma.rn.f64 %r139,%r90,0dbef8ead6120016ac,0dbf77a291236668e4; .loc 1 327 27 fma.rn.f64 %r140,%r139,%r90,0dbf9d2a51dbd7194f; .loc 1 327 20 fma.rn.f64 %r141,%r140,%r90,0dbfd4cd7d691cb913; .loc 1 327 8 fma.rn.f64 %r142,%r141,%r90,0d3fc06eba8214db68; .loc 1 328 41 fma.rn.f64 %r143,%r90,0dbed09c4342a26120,0d3f215dc9221c1a10; .loc 1 328 34 fma.rn.f64 %r144,%r143,%r90,0d3f74d022c4d36b0f; .loc 1 328 27 fma.rn.f64 %r145,%r144,%r90,0d3fb0a54c5536ceba; .loc 1 328 20 fma.rn.f64 %r146,%r145,%r90,0d3fd97779cddadc09; .loc 1 328 8 fma.rn.f64 %r147,%r146,%r90,0d3ff0000000000000; .loc 1 329 8 div.rn.f64 %r148,%r142,%r147; mul.f64 %r113,%r148,%r127; .loc 1 330 8 setp.gt.s32 %r149,%r104,1070596095; @ %r149 bra $L19; .loc 1 331 16 add.f64 %r150,%r127,%r113; .loc 1 331 13 mov.f64 %r151,0d3ff0000000000000; sub.f64 %r126,%r151,%r150; bra $L14; $L19: .loc 1 334 10 mov.f64 %r153,0d3fe0000000000000; sub.f64 %r152,%r127,%r153; .loc 1 334 5 add.f64 %r154,%r152,%r113; .loc 1 335 22 sub.f64 %r126,%r153,%r154; bra $L14; $L17: .loc 1 338 4 setp.gt.s32 %r156,%r89,1072955391; @ %r156 bra $L20; .loc 1 339 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r127; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r158,[%value_in]; } .loc 1 339 8 mov.f64 %r159,0d3ff0000000000000; sub.f64 %r96,%r158,%r159; .loc 1 340 48 fma.rn.f64 %r160,%r96,0dbf61bf380a96073f,0d3fa22a36599795eb; .loc 1 340 41 fma.rn.f64 %r161,%r160,%r96,0dbfbc63983d3e28ec; .loc 1 340 34 fma.rn.f64 %r162,%r161,%r96,0d3fd45fca805120e4; .loc 1 340 27 fma.rn.f64 %r163,%r162,%r96,0dbfd7d240fbb8c3f1; .loc 1 340 20 fma.rn.f64 %r164,%r163,%r96,0d3fda8d00ad92b34d; .loc 1 340 8 fma.rn.f64 %r97,%r164,%r96,0dbf6359b8bef77538; .loc 1 341 48 fma.rn.f64 %r165,%r96,0d3f888b545735151d,0d3f8bedc26b51dd1c; .loc 1 341 41 fma.rn.f64 %r166,%r165,%r96,0d3fc02660e763351f; .loc 1 341 34 fma.rn.f64 %r167,%r166,%r96,0d3fb2635cd99fe9a7; .loc 1 341 27 fma.rn.f64 %r168,%r167,%r96,0d3fe14af092eb6f33; .loc 1 341 20 fma.rn.f64 %r169,%r168,%r96,0d3fbb3e6618eee323; .loc 1 341 8 fma.rn.f64 %r98,%r169,%r96,0d3ff0000000000000; .loc 1 342 8 setp.lt.s32 %r170,%r104,0; @ %r170 bra $L21; .loc 1 343 36 div.rn.f64 %r171,%r97,%r98; .loc 1 343 33 mov.f64 %r172,0d3fc3d4fa80000000; sub.f64 %r126,%r172,%r171; bra $L14; $L21: .loc 1 345 12 div.rn.f64 %r173,%r97,%r98; .loc 1 345 5 add.f64 %r174,%r173,0d3feb0ac160000000; .loc 1 345 26 add.f64 %r126,%r174,0d3ff0000000000000; bra $L14; $L20: .loc 1 348 5 setp.gt.s32 %r175,%r89,1077673983; @ %r175 bra $L22; .loc 1 349 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r127; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r177,[%value_in]; } .loc 1 350 17 mul.f64 %r178,%r177,%r177; .loc 1 350 9 mov.f64 %r179,0d3ff0000000000000; div.rn.f64 %r101,%r179,%r178; .loc 1 351 8 setp.gt.s32 %r180,%r89,1074191212; @ %r180 bra $L23; .loc 1 353 15 fma.rn.f64 %r181,%r101,0dc023a0efc69ac25c,0dc054526557e4d2f2; .loc 1 353 8 fma.rn.f64 %r182,%r181,%r101,0dc067135cebccabb2; .loc 1 352 43 fma.rn.f64 %r183,%r182,%r101,0dc0644cb184282266; .loc 1 352 36 fma.rn.f64 %r184,%r183,%r101,0dc04f300ae4cba38d; .loc 1 352 29 fma.rn.f64 %r185,%r184,%r101,0dc0251e0441b0e726; .loc 1 352 22 fma.rn.f64 %r186,%r185,%r101,0dbfe63416e4ba7360; .loc 1 352 11 fma.rn.f64 %r86,%r186,%r101,0dbf843412600d6435; .loc 1 355 22 fma.rn.f64 %r187,%r101,0dbfaeeff2ee749a62,0d401a47ef8e484a93; .loc 1 355 15 fma.rn.f64 %r188,%r187,%r101,0d405b28a3ee48ae2c; .loc 1 355 8 fma.rn.f64 %r189,%r188,%r101,0d407ad02157700314; .loc 1 354 43 fma.rn.f64 %r190,%r189,%r101,0d40842b1921ec2868; .loc 1 354 36 fma.rn.f64 %r191,%r190,%r101,0d407b290dd58a1a71; .loc 1 354 29 fma.rn.f64 %r192,%r191,%r101,0d4061350c526ae721; .loc 1 354 22 fma.rn.f64 %r193,%r192,%r101,0d4033a6b9bd707687; .loc 1 354 11 fma.rn.f64 %r87,%r193,%r101,0d3ff0000000000000; bra $L24; $L23: .loc 1 357 8 shr.u32 %r195,%r88,31; .loc 1 357 14 set.u32.gt.s32 %r197,%r89,1075314687; neg.s32 %r198,%r197; .loc 1 357 10 cvt.u16.u32 %r201,%r195; cvt.u16.u32 %r202,%r198; and.b16 %r200,%r201,%r202; .loc 1 357 5 cvt.u32.u16 %r203,%r200; cvt.u16.u8 %r204,%r203; setp.eq.u16 %r205,%r204,0; @ %r205 bra $L25; $L27: .loc 1 357 38 mov.f64 %r126,0d4000000000000000; bra $L14; $L25: .loc 1 359 8 fma.rn.f64 %r206,%r101,0dc07e384e9bdc383f,0dc09004616a2e5992; .loc 1 358 43 fma.rn.f64 %r207,%r206,%r101,0dc083ec881375f228; .loc 1 358 36 fma.rn.f64 %r208,%r207,%r101,0dc064145d43c5ed98; .loc 1 358 29 fma.rn.f64 %r209,%r208,%r101,0dc031c209555f995a; .loc 1 358 22 fma.rn.f64 %r210,%r209,%r101,0dbfe993ba70c285de; .loc 1 358 11 fma.rn.f64 %r86,%r210,%r101,0dbf84341239e86f4a; .loc 1 361 15 fma.rn.f64 %r211,%r101,0dc03670e242712d62,0d407da874e79fe763; .loc 1 361 8 fma.rn.f64 %r212,%r211,%r101,0d40a3f219cedf3be6; .loc 1 360 43 fma.rn.f64 %r213,%r212,%r101,0d40a8ffb7688c246a; .loc 1 360 36 fma.rn.f64 %r214,%r213,%r101,0d409802eb189d5118; .loc 1 360 29 fma.rn.f64 %r215,%r214,%r101,0d40745cae221b9f0a; .loc 1 360 22 fma.rn.f64 %r216,%r215,%r101,0d403e568b261d5190; .loc 1 360 11 fma.rn.f64 %r87,%r216,%r101,0d3ff0000000000000; $L24: .loc 1 364 6 mov.b64 %r125,%r177; and.b64 %r217,%r125,-4294967296; mov.b64 %r102,%r217; .loc 1 365 26 neg.f64 %r219,%r102; .loc 1 365 12 fma.rn.f64 %r220,%r219,%r102,0dbfe2000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r220; call (%value_in),__ieee754_exp,(%out_arg1); ld.param.f64 %r221,[%value_in]; } .loc 1 366 20 sub.f64 %r223,%r102,%r177; .loc 1 366 31 div.rn.f64 %r224,%r86,%r87; .loc 1 366 26 add.f64 %r225,%r177,%r102; .loc 1 366 4 fma.rn.f64 %r226,%r223,%r225,%r224; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r226; call (%value_in),__ieee754_exp,(%out_arg1); ld.param.f64 %r227,[%value_in]; } .loc 1 365 9 mul.f64 %r103,%r221,%r227; .loc 1 367 8 setp.le.s32 %r228,%r88,0; @ %r228 bra $L26; .loc 1 367 23 div.rn.f64 %r126,%r103,%r177; bra $L14; $L26: .loc 1 367 44 div.rn.f64 %r229,%r103,%r177; .loc 1 367 42 mov.f64 %r230,0d4000000000000000; sub.f64 %r126,%r230,%r229; bra $L14; $L22: .loc 1 369 8 setp.le.s32 %r231,%r104,0; @ %r231 bra $L27; .loc 1 369 26 mov.f64 %r126,0d0000000000000000; $L14: .loc 1 371 1 mov.f64 %value,%r126; st.param.f64 [%value_out],%value; ret; } lib_a-s_exp10.o/1591654539 399 399 100644 926 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 77 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 78 1 mov.f64 %value,%r26; st.param.f64 [%value_out],%value; ret; } lib_a-s_expm1.o/1591654539 399 399 100644 8306 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 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 .u32 %r22; .reg .f64 %r37; .reg .f64 %r56; .reg .f64 %r57; .reg .f64 %r58; .reg .u32 %r59; .reg .f64 %r60; .reg .u32 %r61; .reg .u32 %r62; .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 %r74; .reg .f64 %r76; .reg .f64 %r77; .reg .f64 %r78; .reg .f64 %r79; .reg .f64 %r80; .reg .f64 %r91; .reg .u32 %r93; .reg .u64 %r94; .reg .u64 %r96; .reg .u64 %r98; .reg .f64 %r99; .reg .f64 %r100; .reg .u64 %r101; .reg .u64 %r102; .reg .pred %r103; .reg .pred %r104; .reg .pred %r105; .reg .u32 %r106; .reg .u32 %r108; .reg .u32 %r109; .reg .pred %r110; .reg .pred %r111; .reg .pred %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 .f64 %r130; .reg .f64 %r131; .reg .f64 %r132; .reg .f64 %r133; .reg .f64 %r134; .reg .f64 %r135; .reg .pred %r136; .reg .f64 %r137; .reg .f64 %r138; .reg .f64 %r139; .reg .pred %r140; .reg .f64 %r141; .reg .pred %r142; .reg .pred %r143; .reg .f64 %r144; .reg .f64 %r145; .reg .f64 %r146; .reg .u32 %r147; .reg .pred %r148; .reg .f64 %r149; .reg .f64 %r150; .reg .u64 %r152; .reg .u32 %r153; .reg .u32 %r154; .reg .u64 %r155; .reg .u64 %r156; .reg .u64 %r157; .reg .u64 %r158; .reg .pred %r160; .reg .u32 %r161; .reg .u32 %r162; .reg .u32 %r163; .reg .u32 %r164; .reg .u64 %r165; .reg .u64 %r166; .reg .f64 %r169; .reg .u64 %r171; .reg .u32 %r172; .reg .u32 %r173; .reg .u64 %r174; .reg .u64 %r175; .reg .u64 %r176; .reg .u64 %r177; .reg .u32 %r178; .reg .u32 %r179; .reg .u32 %r180; .reg .u64 %r181; .reg .u64 %r182; .reg .f64 %r185; .reg .u64 %r187; .reg .u32 %r188; .reg .u32 %r189; .reg .u64 %r190; .reg .u64 %r191; .reg .u64 %r192; .reg .u64 %r193; mov.f64 %r100,%ar0; mov.b64 %r101,%r100; shr.u64 %r102,%r101,32; cvt.u32.u64 %r62,%r102; .loc 1 187 10 cvt.u32.u64 %r22,%r102; .loc 1 189 5 and.b32 %r61,%r62,2147483647; .loc 1 192 4 setp.le.u32 %r103,%r61,1078159481; @ %r103 bra $L2; .loc 1 193 8 setp.le.u32 %r104,%r61,1082535489; @ %r104 bra $L3; .loc 1 194 19 setp.le.u32 %r105,%r61,2146435071; @ %r105 bra $L4; .loc 1 197 14 and.b32 %r106,%r62,1048575; .loc 1 197 23 cvt.u32.u64 %r109,%r101; or.b32 %r108,%r106,%r109; .loc 1 197 9 setp.eq.u32 %r110,%r108,0; @ %r110 bra $L5; .loc 1 198 20 add.f64 %r99,%r100,%r100; bra $L1; $L5: .loc 1 199 30 setp.lt.s32 %r111,%r62,0; selp.f64 %r99,0dbff0000000000000,%r100,%r111; bra $L1; $L4: .loc 1 201 12 setp.gt.f64 %r112,%r100,0d40862e42fefa39ef; @ ! %r112 bra $L3; .loc 1 201 41 mov.f64 %r113,0d7e37e43c8800759c; mul.f64 %r99,%r113,0d7e37e43c8800759c; bra $L1; $L3: .loc 1 203 8 setp.ge.s32 %r114,%r22,0; @ %r114 bra $L8; .loc 1 204 7 add.f64 %r115,%r100,0d01a56e1fc2f8f359; .loc 1 204 5 setp.lt.f64 %r116,%r115,0d0000000000000000; @ ! %r116 bra $L29; bra $L24; $L2: .loc 1 210 4 setp.le.u32 %r117,%r61,1071001154; @ %r117 bra $L10; .loc 1 211 8 setp.gt.u32 %r118,%r61,1072734897; @ %r118 bra $L11; .loc 1 212 5 setp.lt.s32 %r119,%r62,0; @ %r119 bra $L12; .loc 1 213 11 mov.f64 %r120,0d3fe62e42fee00000; sub.f64 %r56,%r100,%r120; .loc 1 213 42 mov.u32 %r59,1; .loc 1 213 28 mov.f64 %r57,0d3dea39ef35793c76; bra $L13; $L12: .loc 1 215 11 add.f64 %r56,%r100,0d3fe62e42fee00000; .loc 1 215 42 mov.u32 %r59,-1; .loc 1 215 28 mov.f64 %r57,0dbdea39ef35793c76; bra $L13; $L11: .loc 1 217 14 mul.f64 %r91,%r100,0d3ff71547652b82fe; .loc 1 217 30 setp.ge.s32 %r121,%r62,0; selp.f64 %r60,0d3fe0000000000000,0dbfe0000000000000,%r121; $L14: .loc 1 217 16 add.f64 %r122,%r60,%r91; .loc 1 217 6 cvt.rzi.s32.f64 %r59,%r122; .loc 1 218 6 cvt.rn.f64.s32 %r64,%r59; .loc 1 219 6 fma.rn.f64 %r56,%r64,0dbfe62e42fee00000,%r100; .loc 1 220 6 mul.f64 %r57,%r64,0d3dea39ef35793c76; $L13: .loc 1 222 9 sub.f64 %r100,%r56,%r57; .loc 1 223 14 sub.f64 %r124,%r56,%r100; .loc 1 223 9 sub.f64 %r58,%r124,%r57; bra $L15; $L10: .loc 1 225 9 setp.gt.u32 %r125,%r61,1016070143; @ %r125 bra $L26; .loc 1 226 8 add.f64 %r65,%r100,0d7e37e43c8800759c; .loc 1 227 19 sub.f64 %r126,%r65,%r65; .loc 1 227 15 sub.f64 %r99,%r100,%r126; bra $L1; $L26: .loc 1 229 9 mov.u32 %r59,0; $L15: .loc 1 232 6 mul.f64 %r66,%r100,0d3fe0000000000000; .loc 1 233 6 mul.f64 %r67,%r100,%r66; .loc 1 234 42 fma.rn.f64 %r127,%r67,0dbe8afdb76e09c32d,0d3ed0cfca86e65239; .loc 1 234 34 fma.rn.f64 %r128,%r127,%r67,0dbf14ce199eaadbb7; .loc 1 234 26 fma.rn.f64 %r129,%r128,%r67,0d3f5a01a019fe5585; .loc 1 234 18 fma.rn.f64 %r130,%r129,%r67,0dbfa11111111110f4; .loc 1 234 5 fma.rn.f64 %r68,%r130,%r67,0d3ff0000000000000; .loc 1 235 5 neg.f64 %r131,%r66; fma.rn.f64 %r69,%r131,%r68,0d4008000000000000; .loc 1 236 15 sub.f64 %r132,%r68,%r69; .loc 1 236 24 neg.f64 %r133,%r100; fma.rn.f64 %r134,%r133,%r69,0d4018000000000000; .loc 1 236 18 div.rn.f64 %r135,%r132,%r134; .loc 1 236 5 mul.f64 %r70,%r135,%r67; .loc 1 237 4 setp.ne.u32 %r136,%r59,0; @ %r136 bra $L16; .loc 1 237 26 neg.f64 %r137,%r67; fma.rn.f64 %r138,%r100,%r70,%r137; .loc 1 237 20 sub.f64 %r99,%r100,%r138; bra $L1; $L16: .loc 1 239 16 sub.f64 %r37,%r70,%r58; .loc 1 239 9 neg.f64 %r139,%r58; fma.rn.f64 %r71,%r37,%r100,%r139; .loc 1 240 8 sub.f64 %r72,%r71,%r67; .loc 1 241 8 setp.ne.u32 %r140,%r59,-1; @ %r140 bra $L17; .loc 1 241 30 sub.f64 %r141,%r100,%r72; .loc 1 241 33 fma.rn.f64 %r99,%r141,0d3fe0000000000000,0dbfe0000000000000; bra $L1; $L17: .loc 1 242 13 setp.ne.u32 %r142,%r59,1; @ %r142 bra $L18; .loc 1 243 12 setp.lt.f64 %r143,%r100,0dbfd0000000000000; @ ! %r143 bra $L30; .loc 1 243 41 add.f64 %r144,%r100,0d3fe0000000000000; .loc 1 243 38 sub.f64 %r145,%r72,%r144; .loc 1 243 35 mul.f64 %r99,%r145,0dc000000000000000; bra $L1; $L30: .loc 1 244 40 sub.f64 %r146,%r100,%r72; .loc 1 244 33 fma.rn.f64 %r99,%r146,0d4000000000000000,0d3ff0000000000000; bra $L1; $L18: shl.b32 %r93,%r59,20; .loc 1 246 18 add.u32 %r147,%r59,1; .loc 1 246 9 setp.le.u32 %r148,%r147,57; @ %r148 bra $L21; .loc 1 248 20 sub.f64 %r149,%r72,%r100; .loc 1 248 12 mov.f64 %r150,0d3ff0000000000000; sub.f64 %r73,%r150,%r149; .loc 1 250 3 mov.b64 %r94,%r73; shr.u64 %r152,%r94,32; cvt.u32.u64 %r154,%r152; add.u32 %r153,%r93,%r154; cvt.u64.u32 %r155,%r153; shl.b64 %r156,%r155,32; and.b64 %r157,%r94,4294967295; or.b64 %r158,%r157,%r156; mov.b64 %r74,%r158; .loc 1 251 18 sub.f64 %r99,%r74,%r150; bra $L1; $L21: .loc 1 254 8 setp.gt.s32 %r160,%r59,19; @ %r160 bra $L22; .loc 1 256 10 mov.u32 %r162,2097152; shr.s32 %r161,%r162,%r59; mov.u32 %r164,1072693248; sub.u32 %r163,%r164,%r161; cvt.u64.u32 %r165,%r163; shl.b64 %r166,%r165,32; mov.b64 %r76,%r166; .loc 1 257 18 sub.f64 %r169,%r72,%r100; .loc 1 257 12 sub.f64 %r77,%r76,%r169; .loc 1 259 3 mov.b64 %r96,%r77; shr.u64 %r171,%r96,32; cvt.u32.u64 %r173,%r171; add.u32 %r172,%r93,%r173; cvt.u64.u32 %r174,%r172; shl.b64 %r175,%r174,32; and.b64 %r176,%r96,4294967295; or.b64 %r177,%r176,%r175; mov.b64 %r99,%r177; bra $L1; $L22: .loc 1 262 3 mov.u32 %r179,1023; sub.u32 %r178,%r179,%r59; shl.b32 %r180,%r178,20; cvt.u64.u32 %r181,%r180; shl.b64 %r182,%r181,32; mov.b64 %r78,%r182; .loc 1 263 18 add.f64 %r185,%r72,%r78; .loc 1 263 12 sub.f64 %r79,%r100,%r185; .loc 1 264 12 add.f64 %r80,%r79,0d3ff0000000000000; .loc 1 266 3 mov.b64 %r98,%r80; shr.u64 %r187,%r98,32; cvt.u32.u64 %r189,%r187; add.u32 %r188,%r93,%r189; cvt.u64.u32 %r190,%r188; shl.b64 %r191,%r190,32; and.b64 %r192,%r98,4294967295; or.b64 %r193,%r192,%r191; mov.b64 %r99,%r193; bra $L1; $L24: .loc 1 199 30 mov.f64 %r99,0dbff0000000000000; bra $L1; $L29: .loc 1 217 14 mul.f64 %r91,%r100,0d3ff71547652b82fe; .loc 1 217 30 mov.f64 %r60,0dbfe0000000000000; bra $L14; $L8: .loc 1 217 14 mul.f64 %r91,%r100,0d3ff71547652b82fe; .loc 1 217 30 mov.f64 %r60,0d3fe0000000000000; bra $L14; $L1: .loc 1 270 1 mov.f64 %value,%r99; st.param.f64 [%value_out],%value; ret; } lib_a-s_fabs.o/ 1591654539 399 399 100644 841 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r28; .reg .u32 %r29; .reg .u32 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r34; mov.f64 %r26,%ar0; .loc 1 69 2 mov.b64 %r24,%r26; shr.u64 %r28,%r24,32; cvt.u32.u64 %r30,%r28; and.b32 %r29,%r30,2147483647; cvt.u64.u32 %r31,%r29; shl.b64 %r32,%r31,32; and.b64 %r33,%r24,4294967295; or.b64 %r34,%r33,%r32; mov.b64 %value,%r34; .loc 1 71 1 st.param.f64 [%value_out],%value; ret; } lib_a-s_fdim.o/ 1591654539 399 399 100644 1606 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; .reg .pred %r34; mov.f64 %r25,%ar0; mov.f64 %r26,%ar1; .loc 1 52 11 { .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 53 6 setp.eq.u32 %r29,%r28,0; @ %r29 bra $L2; .loc 1 54 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 54 6 setp.eq.u32 %r32,%r31,0; @ %r32 bra $L4; .loc 1 55 6 setp.eq.u32 %r33,%r28,1; @ %r33 bra $L5; .loc 1 58 24 setp.gt.f64 %r34,%r25,%r26; @ ! %r34 bra $L11; sub.f64 %r25,%r25,%r26; bra $L2; $L4: .loc 1 54 42 mov.f64 %r25,%r26; bra $L2; $L5: .loc 1 56 12 mov.f64 %r25,0d7ff0000000000000; bra $L2; $L11: .loc 1 58 24 mov.f64 %r25,0d0000000000000000; $L2: .loc 1 59 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } /489 1591654539 399 399 100644 780 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; .loc 1 32 32 cvt.u32.u64 %r34,%r32; and.b32 %r33,%r34,2147483647; .loc 1 32 44 add.u32 %r35,%r33,-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/1591654539 399 399 100644 3876 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r42; .reg .u32 %r43; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r48; .reg .u32 %r50; .reg .f64 %r52; .reg .f64 %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .u32 %r57; .reg .pred %r58; .reg .pred %r59; .reg .f64 %r60; .reg .pred %r61; .reg .pred %r62; .reg .u32 %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 %r53,%ar0; mov.b64 %r54,%r53; shr.u64 %r55,%r54,32; cvt.u32.u64 %r50,%r55; cvt.u32.u64 %r46,%r54; .loc 1 96 11 shr.s32 %r57,%r50,20; .loc 1 96 16 and.b32 %r23,%r57,2047; .loc 1 96 5 add.u32 %r42,%r23,-1023; .loc 1 97 4 setp.gt.s32 %r58,%r42,19; @ %r58 bra $L2; .loc 1 98 8 setp.ge.s32 %r59,%r42,0; @ %r59 bra $L3; .loc 1 99 10 add.f64 %r60,%r53,0d7e37e43c8800759c; .loc 1 99 5 setp.gt.f64 %r61,%r60,0d0000000000000000; @ ! %r61 bra $L4; .loc 1 100 9 setp.ge.s32 %r62,%r50,0; @ %r62 bra $L13; .loc 1 101 19 and.b32 %r63,%r50,2147483647; .loc 1 101 31 or.b32 %r64,%r63,%r46; .loc 1 101 14 setp.eq.u32 %r65,%r64,0; mov.u32 %r46,0; selp.u32 %r50,%r50,-1074790400,%r65; bra $L4; $L3: .loc 1 105 19 mov.u32 %r66,1048575; shr.s32 %r43,%r66,%r42; .loc 1 106 10 and.b32 %r67,%r43,%r50; .loc 1 106 13 or.b32 %r68,%r67,%r46; .loc 1 106 5 setp.eq.u32 %r69,%r68,0; @ %r69 bra $L15; .loc 1 107 10 add.f64 %r70,%r53,0d7e37e43c8800759c; .loc 1 107 5 setp.gt.f64 %r71,%r70,0d0000000000000000; @ ! %r71 bra $L4; .loc 1 108 9 setp.ge.s32 %r72,%r50,0; @ %r72 bra $L8; .loc 1 108 34 mov.u32 %r74,1048576; shr.s32 %r73,%r74,%r42; .loc 1 108 19 add.u32 %r50,%r73,%r50; $L8: .loc 1 109 14 not.b32 %r75,%r43; .loc 1 109 10 and.b32 %r50,%r50,%r75; mov.u32 %r46,0; bra $L4; $L2: .loc 1 112 12 setp.le.s32 %r76,%r42,51; @ %r76 bra $L9; .loc 1 113 8 setp.ne.u32 %r77,%r42,1024; @ %r77 bra $L16; .loc 1 113 28 add.f64 %r52,%r53,%r53; bra $L1; $L9: .loc 1 116 41 add.u32 %r78,%r23,-1043; .loc 1 116 8 mov.u32 %r79,-1; shr.u32 %r45,%r79,%r78; .loc 1 117 12 and.b32 %r80,%r45,%r46; .loc 1 117 8 setp.eq.u32 %r81,%r80,0; @ %r81 bra $L17; .loc 1 118 13 add.f64 %r82,%r53,0d7e37e43c8800759c; .loc 1 118 8 setp.gt.f64 %r83,%r82,0d0000000000000000; @ ! %r83 bra $L4; .loc 1 119 5 setp.ge.s32 %r84,%r50,0; @ %r84 bra $L11; .loc 1 120 9 setp.ne.u32 %r85,%r42,20; @ %r85 bra $L12; .loc 1 120 20 add.u32 %r50,%r50,1; bra $L11; $L12: .loc 1 122 18 mov.u32 %r87,52; sub.u32 %r86,%r87,%r42; .loc 1 122 13 mov.u32 %r89,1; shl.b32 %r88,%r89,%r86; .loc 1 122 10 add.u32 %r48,%r88,%r46; .loc 1 123 6 setp.le.u32 %r90,%r46,%r48; @ %r90 bra $L18; .loc 1 123 16 add.u32 %r50,%r50,1; mov.u32 %r46,%r48; bra $L11; $L18: mov.u32 %r46,%r48; $L11: .loc 1 127 10 not.b32 %r91,%r45; .loc 1 127 6 and.b32 %r46,%r46,%r91; bra $L4; $L13: mov.u32 %r46,0; mov.u32 %r50,%r46; $L4: .loc 1 130 2 cvt.u64.u32 %r92,%r50; cvt.u64.u32 %r96,%r46; shl.b64 %r97,%r92,32; or.b64 %r98,%r97,%r96; mov.b64 %r52,%r98; .loc 1 131 9 bra $L1; $L15: .loc 1 106 29 mov.f64 %r52,%r53; bra $L1; $L16: mov.f64 %r52,%r53; bra $L1; $L17: mov.f64 %r52,%r53; $L1: .loc 1 132 1 mov.f64 %value,%r52; st.param.f64 [%value_out],%value; ret; } lib_a-s_fma.o/ 1591654539 399 399 100644 776 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 53 18 fma.rn.f64 %value,%r23,%r24,%r25; .loc 1 54 1 st.param.f64 [%value_out],%value; ret; } lib_a-s_fmax.o/ 1591654539 399 399 100644 1460 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654539 399 399 100644 1460 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } /507 1591654539 399 399 100644 2084 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r27; .reg .u32 %r28; .reg .u32 %r31; .reg .u32 %r33; .reg .f64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u32 %r38; .reg .pred %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u32 %r42; .reg .u32 %r44; .reg .u32 %r45; .reg .u16 %r46; .reg .u16 %r47; .reg .u16 %r48; .reg .u32 %r49; .reg .u16 %r50; .reg .pred %r51; .reg .u32 %r52; .reg .pred %r53; .reg .u32 %r54; .reg .pred %r55; .reg .u32 %r57; .reg .u32 %r58; .reg .u16 %r59; .reg .u16 %r60; .reg .u32 %r62; mov.f64 %r34,%ar0; mov.b64 %r35,%r34; shr.u64 %r36,%r35,32; cvt.u32.u64 %r28,%r36; cvt.u32.u64 %r27,%r35; .loc 1 16 26 or.b32 %r38,%r27,%r28; .loc 1 16 6 setp.eq.u32 %r39,%r38,0; @ %r39 bra $L3; .loc 1 17 33 set.u32.eq.u32 %r41,%r27,0; neg.s32 %r42,%r41; cvt.u32.u32 %r40,%r42; .loc 1 17 12 set.u32.eq.u32 %r44,%r28,-2147483648; neg.s32 %r45,%r44; .loc 1 17 26 cvt.u16.u32 %r47,%r45; cvt.u16.u8 %r48,%r40; and.b16 %r46,%r47,%r48; .loc 1 16 48 cvt.u32.u16 %r49,%r46; cvt.u16.u8 %r50,%r49; setp.ne.u16 %r51,%r50,0; @ %r51 bra $L4; .loc 1 19 31 and.b32 %r31,%r28,2147483647; add.u32 %r52,%r31,-1048576; .loc 1 19 11 setp.le.u32 %r53,%r52,2145386495; @ %r53 bra $L5; .loc 1 22 31 and.b32 %r54,%r28,2146435072; .loc 1 22 11 setp.eq.u32 %r55,%r54,0; @ %r55 bra $L6; .loc 1 26 17 set.u32.eq.u32 %r57,%r31,2146435072; neg.s32 %r58,%r57; .loc 1 26 53 cvt.u16.u32 %r60,%r58; and.b16 %r59,%r60,%r48; .loc 1 18 12 cvt.u32.u16 %r62,%r59; cvt.u32.u8 %r33,%r62; 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/1591654539 399 399 100644 2042 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r42; .reg .pred %r43; .reg .u32 %r45; .reg .u32 %r46; .reg .pred %r47; .reg .u32 %r48; .reg .pred %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .u32 %r56; .reg .u64 %r57; .reg .u64 %r58; .reg .u64 %r59; .reg .u64 %r60; mov.f64 %r38,%ar0; mov.u64 %r39,%ar1; mov.b64 %r40,%r38; shr.u64 %r41,%r40,32; cvt.u32.u64 %r33,%r41; .loc 1 99 5 and.b32 %r28,%r33,2147483647; .loc 1 100 8 mov.u32 %r42,0; st.u32 [%r39],%r42; .loc 1 101 4 setp.gt.s32 %r43,%r28,2146435071; @ %r43 bra $L2; .loc 1 101 25 cvt.u32.u64 %r46,%r40; or.b32 %r45,%r28,%r46; .loc 1 101 19 setp.eq.u32 %r47,%r45,0; @ %r47 bra $L2; .loc 1 102 5 and.b32 %r48,%r33,2146435072; setp.ne.u32 %r49,%r48,0; @ %r49 bra $L4; .loc 1 103 8 mul.f64 %r38,%r38,0d4350000000000000; mov.b64 %r50,%r38; shr.u64 %r51,%r50,32; cvt.u32.u64 %r33,%r51; .loc 1 105 9 and.b32 %r28,%r33,2147483647; mov.u32 %r35,-54; bra $L3; $L4: mov.u32 %r35,%r42; $L3: .loc 1 108 14 shr.s32 %r52,%r28,20; .loc 1 108 19 add.u32 %r53,%r52,-1022; .loc 1 108 8 add.u32 %r54,%r53,%r35; st.u32 [%r39],%r54; .loc 1 110 2 mov.b64 %r36,%r38; .loc 1 109 10 and.b32 %r55,%r33,-2146435073; .loc 1 109 22 or.b32 %r56,%r55,1071644672; .loc 1 110 2 cvt.u64.u32 %r57,%r56; shl.b64 %r58,%r57,32; and.b64 %r59,%r36,4294967295; or.b64 %r60,%r59,%r58; mov.b64 %r38,%r60; $L2: .loc 1 112 1 mov.f64 %value,%r38; st.param.f64 [%value_out],%value; ret; } lib_a-s_ilogb.o/1591654539 399 399 100644 2029 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r24; .reg .u32 %r25; .reg .u32 %r27; .reg .u32 %r28; .reg .u32 %r31; .reg .f64 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u32 %r35; .reg .pred %r36; .reg .u32 %r38; .reg .pred %r39; .reg .pred %r40; .reg .pred %r41; .reg .pred %r43; .reg .pred %r44; .reg .pred %r46; .reg .pred %r47; .reg .u32 %r48; mov.f64 %r32,%ar0; .loc 1 86 2 mov.b64 %r33,%r32; shr.u64 %r34,%r33,32; cvt.u32.u64 %r24,%r34; .loc 1 87 5 and.b32 %r25,%r24,2147483647; .loc 1 88 4 and.b32 %r35,%r24,2146435072; setp.ne.u32 %r36,%r35,0; @ %r36 bra $L2; .loc 1 86 2 cvt.u32.u64 %r27,%r33; .loc 1 89 12 or.b32 %r38,%r27,%r25; .loc 1 89 8 setp.eq.u32 %r39,%r38,0; @ %r39 bra $L7; .loc 1 92 5 setp.ne.u32 %r40,%r25,0; @ %r40 bra $L4; .loc 1 93 7 setp.le.s32 %r41,%r27,0; @ %r41 bra $L8; .loc 1 93 15 mov.u32 %r31,-1043; $L5: .loc 1 93 41 add.u32 %r31,%r31,-1; .loc 1 93 32 add.u32 %r27,%r27,%r27; .loc 1 93 7 setp.gt.s32 %r43,%r27,0; @ %r43 bra $L5; bra $L1; $L4: .loc 1 95 25 shl.b32 %r28,%r25,11; .loc 1 95 7 setp.le.s32 %r44,%r28,0; @ %r44 bra $L9; .loc 1 95 15 mov.u32 %r31,-1022; $L6: .loc 1 95 49 add.u32 %r31,%r31,-1; .loc 1 95 40 add.u32 %r28,%r28,%r28; .loc 1 95 7 setp.gt.s32 %r46,%r28,0; @ %r46 bra $L6; bra $L1; $L2: .loc 1 99 10 setp.gt.s32 %r47,%r25,2146435071; @ %r47 bra $L10; .loc 1 99 36 shr.s32 %r48,%r25,20; .loc 1 99 41 add.u32 %r31,%r48,-1023; bra $L1; $L7: .loc 1 90 10 mov.u32 %r31,-2147483647; bra $L1; $L8: .loc 1 93 15 mov.u32 %r31,-1043; bra $L1; $L9: .loc 1 95 15 mov.u32 %r31,-1022; bra $L1; $L10: .loc 1 103 14 mov.u32 %r31,2147483647; $L1: .loc 1 104 1 mov.u32 %value,%r31; st.param.u32 [%value_out],%value; ret; } /529 1591654539 399 399 100644 393 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // BEGIN GLOBAL VAR DEF: __infinity .visible .const .align 8 .u64 __infinity[1] = {9218868437227405312 }; // END PREAMBLE // BEGIN GLOBAL VAR DEF: __infinityld .visible .const .align 8 .u64 __infinityld[2] = {9218868437227405312 }; // BEGIN GLOBAL VAR DEF: __infinityf .visible .const .align 4 .u32 __infinityf[1] = {2139095040 }; /549 1591654539 399 399 100644 433 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 45 2 mov.f64 %value,0d7ff0000000000000; .loc 1 47 1 st.param.f64 [%value_out],%value; ret; } lib_a-s_isinf.o/1591654539 399 399 100644 1245 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r27; .reg .u32 %r33; .reg .u32 %r34; .reg .f64 %r41; .reg .u64 %r42; .reg .u64 %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 %r41,%ar0; .loc 1 22 2 mov.b64 %r42,%r41; shr.u64 %r43,%r42,32; cvt.u32.u64 %r33,%r43; cvt.u32.u64 %r34,%r42; .loc 1 24 25 neg.s32 %r45,%r34; .loc 1 24 23 or.b32 %r46,%r45,%r34; .loc 1 24 30 shr.u32 %r47,%r46,31; .loc 1 23 5 and.b32 %r48,%r33,2147483647; .loc 1 24 5 or.b32 %r27,%r47,%r48; .loc 1 26 36 add.u32 %r50,%r27,-2146435072; .loc 1 25 5 mov.u32 %r52,2146435072; sub.u32 %r51,%r52,%r27; .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; } /569 1591654539 399 399 100644 1258 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r27; .reg .u32 %r33; .reg .u32 %r34; .reg .f64 %r41; .reg .u64 %r42; .reg .u64 %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 %r41,%ar0; .loc 1 16 2 mov.b64 %r42,%r41; shr.u64 %r43,%r42,32; cvt.u32.u64 %r33,%r43; cvt.u32.u64 %r34,%r42; .loc 1 18 25 neg.s32 %r45,%r34; .loc 1 18 23 or.b32 %r46,%r45,%r34; .loc 1 18 30 shr.u32 %r47,%r46,31; .loc 1 17 5 and.b32 %r48,%r33,2147483647; .loc 1 18 5 or.b32 %r27,%r47,%r48; .loc 1 20 36 add.u32 %r50,%r27,-2146435072; .loc 1 19 5 mov.u32 %r52,2146435072; sub.u32 %r51,%r52,%r27; .loc 1 20 34 or.b32 %r53,%r50,%r51; .loc 1 20 41 shr.u32 %r54,%r53,31; .loc 1 20 11 mov.u32 %r55,1; sub.u32 %value,%r55,%r54; .loc 1 21 1 st.param.u32 [%value_out],%value; ret; } lib_a-s_isnan.o/1591654539 399 399 100644 1057 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r27; .reg .u32 %r30; .reg .u32 %r31; .reg .f64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r47; .reg .u32 %r48; mov.f64 %r38,%ar0; .loc 1 199 2 mov.b64 %r39,%r38; shr.u64 %r40,%r39,32; cvt.u32.u64 %r30,%r40; cvt.u32.u64 %r31,%r39; .loc 1 201 25 neg.s32 %r42,%r31; .loc 1 201 23 or.b32 %r43,%r42,%r31; .loc 1 201 30 shr.u32 %r44,%r43,31; .loc 1 200 5 and.b32 %r45,%r30,2147483647; .loc 1 201 5 or.b32 %r27,%r44,%r45; .loc 1 202 5 mov.u32 %r48,2146435072; sub.u32 %r47,%r48,%r27; .loc 1 203 33 shr.u32 %value,%r47,31; .loc 1 204 1 st.param.u32 [%value_out],%value; ret; } /587 1591654539 399 399 100644 1070 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r27; .reg .u32 %r30; .reg .u32 %r31; .reg .f64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r47; .reg .u32 %r48; mov.f64 %r38,%ar0; .loc 1 115 2 mov.b64 %r39,%r38; shr.u64 %r40,%r39,32; cvt.u32.u64 %r30,%r40; cvt.u32.u64 %r31,%r39; .loc 1 117 25 neg.s32 %r42,%r31; .loc 1 117 23 or.b32 %r43,%r42,%r31; .loc 1 117 30 shr.u32 %r44,%r43,31; .loc 1 116 5 and.b32 %r45,%r30,2147483647; .loc 1 117 5 or.b32 %r27,%r44,%r45; .loc 1 118 5 mov.u32 %r48,2146435072; sub.u32 %r47,%r48,%r27; .loc 1 119 33 shr.u32 %value,%r47,31; .loc 1 120 1 st.param.u32 [%value_out],%value; ret; } lib_a-s_ldexp.o/1591654539 399 399 100644 2687 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r37; .reg .u32 %r38; .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 %r54; .reg .u32 %r55; .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; mov.f64 %r32,%ar0; mov.u32 %r33,%ar1; .loc 1 75 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 75 19 set.u32.eq.f64 %r37,%r32,0d0000000000000000; neg.s32 %r38,%r37; .loc 1 75 4 set.u32.eq.u32 %r40,%r35,0; neg.s32 %r41,%r40; .loc 1 75 19 cvt.u16.u32 %r43,%r38; cvt.u16.u32 %r44,%r41; 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 76 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 77 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 77 19 set.u32.eq.f64 %r54,%r32,0d0000000000000000; neg.s32 %r55,%r54; .loc 1 77 4 set.u32.eq.u32 %r57,%r52,0; neg.s32 %r58,%r57; .loc 1 77 19 cvt.u16.u32 %r60,%r55; cvt.u16.u32 %r61,%r58; 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 77 33 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r65,[%value_in]; } .loc 1 77 39 mov.u32 %r66,34; st.u32 [%r65],%r66; $L2: .loc 1 79 1 mov.f64 %value,%r32; st.param.f64 [%value_out],%value; ret; } /605 1591654539 399 399 100644 177 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL VAR DEF: __fdlib_version .visible .global .align 4 .u32 __fdlib_version[1] = {1 }; /624 1591654539 399 399 100644 4300 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r55; .reg .u32 %r57; .reg .f64 %r59; .reg .u32 %r60; .reg .u32 %r62; .reg .u32 %r65; .reg .u64 %r70; .reg .f64 %r71; .reg .u64 %r72; .reg .u64 %r73; .reg .u32 %r74; .reg .pred %r75; .reg .pred %r76; .reg .u64 %r77; .reg .u64 %r78; .reg .u64 %r79; .reg .u64 %r80; .reg .f64 %r81; .reg .u64 %r82; .reg .u64 %r83; .reg .u32 %r84; .reg .pred %r85; .reg .u32 %r86; .reg .u32 %r87; .reg .u32 %r88; .reg .u32 %r90; .reg .u32 %r91; .reg .u32 %r92; .reg .pred %r93; .reg .pred %r94; .reg .u32 %r95; .reg .u32 %r96; .reg .u64 %r97; .reg .u32 %r98; .reg .u64 %r99; .reg .u32 %r101; .reg .u32 %r102; .reg .u32 %r103; .reg .u64 %r104; .reg .u64 %r105; .reg .u64 %r106; .reg .u64 %r107; .reg .u64 %r108; .reg .u64 %r109; .reg .u64 %r110; .reg .u32 %r111; .reg .u32 %r112; .reg .u64 %r113; .reg .u32 %r114; .reg .u32 %r116; .reg .pred %r117; .reg .u32 %r119; .reg .u32 %r120; .reg .u64 %r121; .reg .pred %r122; mov.f64 %r71,%ar0; mov.b64 %r72,%r71; shr.u64 %r73,%r72,32; cvt.u32.u64 %r65,%r73; .loc 1 60 16 shr.u32 %r22,%r65,31; .loc 1 63 27 shr.s32 %r74,%r65,20; and.b32 %r24,%r74,2047; .loc 1 63 6 add.u32 %r53,%r24,-1023; .loc 1 66 5 setp.gt.s32 %r75,%r53,19; @ %r75 bra $L2; .loc 1 69 9 setp.ge.s32 %r76,%r53,-1; @ %r76 bra $L3; $L5: .loc 1 70 16 mov.u64 %r70,0; bra $L1; $L3: .loc 1 75 20 cvta.const.u64 %r77,TWO52; cvt.s64.s32 %r78,%r22; shl.b64 %r79,%r78,3; add.u64 %r80,%r77,%r79; ld.f64 %r25,[%r80]; .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 %r81,%r27,%r25; .loc 1 77 11 mov.b64 %r82,%r81; shr.u64 %r83,%r82,32; cvt.u32.u64 %r55,%r83; .loc 1 80 19 and.b32 %r84,%r55,2147483647; .loc 1 80 14 setp.eq.u32 %r85,%r84,0; @ %r85 bra $L5; .loc 1 84 14 and.b32 %r57,%r55,1048575; .loc 1 85 14 or.b32 %r86,%r57,1048576; .loc 1 83 35 shr.s32 %r87,%r55,20; and.b32 %r88,%r87,2047; .loc 1 87 30 mov.u32 %r91,1043; sub.u32 %r90,%r91,%r88; .loc 1 87 23 shr.s32 %r92,%r86,%r90; .loc 1 87 18 cvt.s64.s32 %r70,%r92; bra $L6; $L2: .loc 1 90 11 setp.gt.s32 %r93,%r53,62; @ %r93 bra $L7; .loc 1 93 10 setp.le.s32 %r94,%r53,51; @ %r94 bra $L8; .loc 1 96 54 and.b32 %r95,%r65,983039; or.b32 %r96,%r95,65536; .loc 1 96 19 cvt.s64.s32 %r97,%r96; .loc 1 96 74 add.u32 %r98,%r24,-1043; .loc 1 96 67 shl.b64 %r99,%r97,%r98; .loc 1 98 31 add.u32 %r101,%r24,-1075; .loc 1 98 24 cvt.u32.u64 %r103,%r72; shl.b32 %r102,%r103,%r101; cvt.u64.u32 %r104,%r102; .loc 1 96 16 or.b64 %r70,%r99,%r104; bra $L6; $L8: .loc 1 102 20 cvta.const.u64 %r105,TWO52; cvt.s64.s32 %r106,%r22; shl.b64 %r107,%r106,3; add.u64 %r108,%r105,%r107; ld.f64 %r41,[%r108]; .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 %r59,%r43,%r41; .loc 1 104 11 mov.b64 %r109,%r59; shr.u64 %r110,%r109,32; cvt.u32.u64 %r60,%r110; .loc 1 105 35 shr.s32 %r111,%r60,20; and.b32 %r45,%r111,2047; .loc 1 106 14 and.b32 %r62,%r60,1048575; .loc 1 107 14 or.b32 %r112,%r62,1048576; .loc 1 112 21 cvt.s64.s32 %r113,%r112; .loc 1 112 47 add.u32 %r114,%r45,-1043; .loc 1 112 40 shl.b64 %r70,%r113,%r114; .loc 1 113 6 mov.u32 %r116,1075; sub.u32 %r48,%r116,%r45; setp.gt.u32 %r117,%r48,31; @ %r117 bra $L6; cvt.u32.u64 %r120,%r109; shr.u32 %r119,%r120,%r48; cvt.u64.u32 %r121,%r119; or.b64 %r70,%r70,%r121; bra $L6; $L7: .loc 1 118 14 cvt.rzi.s64.f64 %r70,%r71; bra $L1; $L6: .loc 1 121 23 setp.eq.u32 %r122,%r22,0; @ %r122 bra $L1; neg.s64 %r70,%r70; $L1: .loc 1 122 1 mov.u64 %value,%r70; st.param.u64 [%value_out],%value; ret; } /642 1591654539 399 399 100644 2935 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r46; .reg .u32 %r49; .reg .u32 %r50; .reg .u32 %r51; .reg .u64 %r53; .reg .f64 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .pred %r57; .reg .u32 %r58; .reg .pred %r59; .reg .pred %r60; .reg .pred %r61; .reg .u32 %r62; .reg .u32 %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .u32 %r67; .reg .pred %r68; .reg .pred %r70; .reg .u32 %r71; .reg .u32 %r72; .reg .u64 %r73; .reg .u64 %r74; .reg .u64 %r75; .reg .u32 %r76; .reg .u32 %r77; .reg .pred %r78; .reg .u64 %r79; .reg .u32 %r80; .reg .pred %r81; .reg .u32 %r82; .reg .u64 %r83; .reg .u64 %r84; 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 %r57,%r49,0; selp.u32 %r42,-1,1,%r57; .loc 1 30 44 shr.u32 %r58,%r49,20; and.b32 %r24,%r58,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 %r59,%r43,19; @ %r59 bra $L3; .loc 1 38 10 setp.ge.s32 %r60,%r43,0; @ %r60 bra $L4; .loc 1 40 14 setp.ne.u32 %r61,%r43,-1; @ %r61 bra $L12; .loc 1 43 20 cvt.s64.s32 %r53,%r42; bra $L1; $L4: .loc 1 49 26 mov.u32 %r63,524288; shr.s32 %r62,%r63,%r43; .loc 1 49 15 add.u32 %r64,%r62,%r40; .loc 1 51 31 mov.u32 %r66,20; sub.u32 %r65,%r66,%r43; .loc 1 51 24 shr.u32 %r67,%r64,%r65; .loc 1 51 18 cvt.u64.u32 %r41,%r67; bra $L6; $L3: .loc 1 54 11 setp.gt.u32 %r68,%r43,62; @ %r68 bra $L7; cvt.u32.u64 %r50,%r55; add.u32 %r51,%r24,-1043; .loc 1 57 10 setp.le.s32 %r70,%r43,51; @ %r70 bra $L8; .loc 1 62 51 add.u32 %r71,%r24,-1075; .loc 1 62 28 shl.b32 %r72,%r50,%r71; cvt.u64.u32 %r73,%r72; .loc 1 60 19 cvt.u64.u32 %r74,%r40; .loc 1 60 39 shl.b64 %r75,%r74,%r51; .loc 1 60 16 or.b64 %r41,%r73,%r75; bra $L6; $L8: .loc 1 68 35 mov.u32 %r77,-2147483648; shr.u32 %r76,%r77,%r51; .loc 1 66 24 add.u32 %r46,%r76,%r50; .loc 1 69 14 setp.ge.u32 %r78,%r46,%r50; @ %r78 bra $L9; .loc 1 70 13 add.u32 %r40,%r40,1; $L9: .loc 1 72 21 cvt.u64.u32 %r79,%r40; .loc 1 72 41 shl.b64 %r41,%r79,%r51; .loc 1 74 23 mov.u32 %r80,52; sub.u32 %r37,%r80,%r43; setp.eq.u32 %r81,%r37,32; @ %r81 bra $L6; shr.u32 %r82,%r46,%r37; cvt.u64.u32 %r83,%r82; or.b64 %r41,%r41,%r83; bra $L6; $L7: .loc 1 79 12 cvt.rzi.s64.f64 %r53,%r54; bra $L1; $L6: .loc 1 81 15 cvt.s64.s32 %r84,%r42; mul.lo.u64 %r53,%r84,%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/1591654539 399 399 100644 7163 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 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 .f64 %r22; .reg .u32 %r34; .reg .f64 %r36; .reg .f64 %r38; .reg .f64 %r50; .reg .f64 %r55; .reg .f64 %r56; .reg .f64 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .u32 %r60; .reg .f64 %r61; .reg .u32 %r63; .reg .u32 %r64; .reg .f64 %r66; .reg .f64 %r68; .reg .f64 %r69; .reg .f64 %r70; .reg .f64 %r78; .reg .u64 %r80; .reg .u64 %r81; .reg .f64 %r82; .reg .f64 %r83; .reg .u64 %r84; .reg .u64 %r85; .reg .pred %r86; .reg .pred %r87; .reg .pred %r88; .reg .pred %r89; .reg .f64 %r90; .reg .pred %r91; .reg .f64 %r92; .reg .u32 %r94; .reg .u32 %r95; .reg .u32 %r97; .reg .u32 %r98; .reg .u16 %r99; .reg .u16 %r100; .reg .u16 %r101; .reg .u32 %r102; .reg .u16 %r103; .reg .pred %r104; .reg .f64 %r105; .reg .u32 %r107; .reg .pred %r108; .reg .f64 %r109; .reg .pred %r110; .reg .u64 %r111; .reg .u64 %r112; .reg .u32 %r113; .reg .pred %r114; .reg .f64 %r115; .reg .f64 %r116; .reg .f64 %r117; .reg .f64 %r118; .reg .u32 %r119; .reg .pred %r120; .reg .u32 %r121; .reg .u64 %r122; .reg .u64 %r123; .reg .u64 %r124; .reg .u64 %r125; .reg .u32 %r126; .reg .u64 %r127; .reg .u64 %r128; .reg .u64 %r129; .reg .u64 %r130; .reg .u32 %r131; .reg .f64 %r132; .reg .f64 %r133; .reg .pred %r134; .reg .pred %r135; .reg .pred %r136; .reg .f64 %r137; .reg .f64 %r139; .reg .pred %r140; .reg .f64 %r141; .reg .f64 %r142; .reg .f64 %r143; .reg .f64 %r144; .reg .f64 %r145; .reg .f64 %r146; .reg .f64 %r147; .reg .f64 %r148; .reg .f64 %r149; .reg .f64 %r150; .reg .f64 %r151; .reg .f64 %r152; .reg .pred %r153; .reg .f64 %r154; .reg .f64 %r155; .reg .f64 %r156; .reg .f64 %r157; .reg .f64 %r158; .reg .f64 %r159; mov.f64 %r83,%ar0; mov.b64 %r84,%r83; shr.u64 %r85,%r84,32; cvt.u32.u64 %r64,%r85; .loc 1 159 2 cvt.u32.u64 %r59,%r85; .loc 1 163 5 setp.le.s32 %r86,%r59,1071284857; @ %r86 bra $L2; .loc 1 178 5 setp.gt.s32 %r87,%r59,2146435071; @ ! %r87 bra $L22; bra $L3; $L2: .loc 1 160 5 and.b32 %r63,%r64,2147483647; .loc 1 164 8 setp.le.s32 %r88,%r63,1072693247; @ %r88 bra $L5; .loc 1 165 5 setp.neu.f64 %r89,%r83,0dbff0000000000000; @ %r89 bra $L6; .loc 1 165 28 mov.f64 %r90,0dc350000000000000; div.rn.f64 %r82,%r90,0d0000000000000000; bra $L1; $L6: .loc 1 166 17 sub.f64 %r22,%r83,%r83; .loc 1 166 20 div.rn.f64 %r82,%r22,%r22; bra $L1; $L5: .loc 1 168 8 setp.gt.s32 %r91,%r63,1042284543; @ %r91 bra $L8; .loc 1 169 11 add.f64 %r92,%r83,0d4350000000000000; .loc 1 169 5 set.u32.gt.f64 %r94,%r92,0d0000000000000000; neg.s32 %r95,%r94; .loc 1 170 14 set.u32.le.s32 %r97,%r63,1016070143; neg.s32 %r98,%r97; cvt.u16.u32 %r100,%r95; cvt.u16.u32 %r101,%r98; and.b16 %r99,%r100,%r101; cvt.u32.u16 %r102,%r99; cvt.u16.u8 %r103,%r102; setp.ne.u16 %r104,%r103,0; @ %r104 bra $L20; .loc 1 173 19 mul.f64 %r105,%r83,%r83; .loc 1 173 16 fma.rn.f64 %r82,%r105,0dbfe0000000000000,%r83; bra $L1; $L8: .loc 1 175 13 add.u32 %r107,%r64,1076707644; .loc 1 175 8 setp.le.u32 %r108,%r107,1076707644; @ %r108 bra $L9; .loc 1 202 10 mul.f64 %r109,%r83,0d3fe0000000000000; .loc 1 202 6 mul.f64 %r66,%r109,%r83; .loc 1 176 4 mov.u32 %r58,0; bra $L10; $L3: .loc 1 178 32 add.f64 %r82,%r83,%r83; bra $L1; $L22: .loc 1 180 8 setp.gt.s32 %r110,%r59,1128267775; @ %r110 bra $L11; $L9: .loc 1 181 6 add.f64 %r56,%r83,0d3ff0000000000000; .loc 1 182 3 mov.b64 %r111,%r56; shr.u64 %r112,%r111,32; cvt.u32.u64 %r59,%r112; .loc 1 183 18 shr.s32 %r113,%r59,20; .loc 1 183 13 add.u32 %r58,%r113,-1023; .loc 1 184 31 setp.le.s32 %r114,%r58,0; @ %r114 bra $L12; .loc 1 184 28 sub.f64 %r115,%r56,%r83; .loc 1 184 31 mov.f64 %r116,0d3ff0000000000000; sub.f64 %r61,%r116,%r115; bra $L13; $L12: .loc 1 184 36 mov.f64 %r118,0d3ff0000000000000; sub.f64 %r117,%r56,%r118; .loc 1 184 31 sub.f64 %r61,%r83,%r117; $L13: .loc 1 185 5 div.rn.f64 %r55,%r61,%r56; bra $L14; $L11: .loc 1 189 18 shr.s32 %r119,%r59,20; .loc 1 189 13 add.u32 %r58,%r119,-1023; .loc 1 187 6 mov.f64 %r56,%r83; .loc 1 190 6 mov.f64 %r55,0d0000000000000000; $L14: .loc 1 192 9 and.b32 %r60,%r59,1048575; .loc 1 193 8 setp.gt.s32 %r120,%r60,434333; @ %r120 bra $L15; .loc 1 194 10 mov.b64 %r80,%r56; or.b32 %r121,%r60,1072693248; cvt.u64.u32 %r122,%r121; shl.b64 %r123,%r122,32; and.b64 %r124,%r80,4294967295; or.b64 %r125,%r124,%r123; mov.b64 %r57,%r125; bra $L16; $L15: .loc 1 196 12 add.u32 %r58,%r58,1; .loc 1 197 3 mov.b64 %r81,%r56; or.b32 %r126,%r60,1071644672; cvt.u64.u32 %r127,%r126; shl.b64 %r128,%r127,32; and.b64 %r129,%r81,4294967295; or.b64 %r130,%r129,%r128; mov.b64 %r57,%r130; .loc 1 198 26 mov.u32 %r131,1048576; sub.u32 %r34,%r131,%r60; .loc 1 198 13 shr.s32 %r60,%r34,2; $L16: .loc 1 200 8 mov.f64 %r132,0d3ff0000000000000; sub.f64 %r83,%r57,%r132; .loc 1 202 10 mul.f64 %r133,%r83,0d3fe0000000000000; .loc 1 202 6 mul.f64 %r66,%r133,%r83; .loc 1 203 4 setp.ne.u32 %r134,%r60,0; @ %r134 bra $L10; .loc 1 204 13 setp.neu.f64 %r135,%r83,0d0000000000000000; @ %r135 bra $L17; .loc 1 204 27 setp.eq.u32 %r136,%r58,0; @ %r136 bra $L21; .loc 1 205 35 cvt.rn.f64.s32 %r36,%r58; .loc 1 205 31 fma.rn.f64 %r137,%r36,0d3dea39ef35793c76,%r55; .loc 1 205 59 fma.rn.f64 %r82,%r36,0d3fe62e42fee00000,%r137; bra $L1; $L17: .loc 1 206 19 fma.rn.f64 %r139,%r83,0dbfe5555555555555,0d3ff0000000000000; .loc 1 206 8 mul.f64 %r68,%r139,%r66; .loc 1 207 8 setp.ne.u32 %r140,%r58,0; @ %r140 bra $L18; .loc 1 207 23 sub.f64 %r82,%r83,%r68; bra $L1; $L18: .loc 1 208 20 cvt.rn.f64.s32 %r38,%r58; .loc 1 208 41 fma.rn.f64 %r141,%r38,0d3dea39ef35793c76,%r55; .loc 1 208 31 sub.f64 %r142,%r68,%r141; .loc 1 208 45 sub.f64 %r143,%r142,%r83; .loc 1 208 27 neg.f64 %r144,%r143; fma.rn.f64 %r82,%r38,0d3fe62e42fee00000,%r144; bra $L1; $L10: .loc 1 210 13 add.f64 %r145,%r83,0d4000000000000000; .loc 1 210 5 div.rn.f64 %r69,%r83,%r145; .loc 1 211 4 mul.f64 %r70,%r69,%r69; .loc 1 212 47 fma.rn.f64 %r146,%r70,0d3fc2f112df3e5244,0d3fc39a09d078c69f; .loc 1 212 40 fma.rn.f64 %r147,%r146,%r70,0d3fc7466496cb03de; .loc 1 212 33 fma.rn.f64 %r148,%r147,%r70,0d3fcc71c51d8e78af; .loc 1 212 26 fma.rn.f64 %r149,%r148,%r70,0d3fd2492494229359; .loc 1 212 19 fma.rn.f64 %r150,%r149,%r70,0d3fd999999997fa04; .loc 1 212 12 fma.rn.f64 %r151,%r150,%r70,0d3fe5555555555593; fma.rn.f64 %r152,%r151,%r70,%r66; mul.f64 %r78,%r152,%r69; .loc 1 213 4 setp.ne.u32 %r153,%r58,0; @ %r153 bra $L19; .loc 1 213 25 sub.f64 %r154,%r66,%r78; .loc 1 213 19 sub.f64 %r82,%r83,%r154; bra $L1; $L19: .loc 1 214 12 cvt.rn.f64.s32 %r50,%r58; .loc 1 214 48 fma.rn.f64 %r155,%r50,0d3dea39ef35793c76,%r55; .loc 1 214 38 add.f64 %r156,%r155,%r78; .loc 1 214 26 sub.f64 %r157,%r66,%r156; .loc 1 214 53 sub.f64 %r158,%r157,%r83; .loc 1 214 19 neg.f64 %r159,%r158; fma.rn.f64 %r82,%r50,0d3fe62e42fee00000,%r159; bra $L1; $L20: .loc 1 171 14 mov.f64 %r82,%r83; bra $L1; $L21: .loc 1 204 41 mov.f64 %r82,0d0000000000000000; $L1: .loc 1 215 1 mov.f64 %value,%r82; st.param.f64 [%value_out],%value; ret; } lib_a-s_log2.o/ 1591654539 399 399 100644 822 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 82 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 82 18 div.rn.f64 %value,%r26,0d3fe62e42fefa39ef; .loc 1 83 1 st.param.f64 [%value_out],%value; ret; } lib_a-s_logb.o/ 1591654539 399 399 100644 2716 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r29; .reg .u32 %r30; .reg .u32 %r33; .reg .u32 %r34; .reg .u32 %r35; .reg .u32 %r36; .reg .f64 %r39; .reg .f64 %r40; .reg .u64 %r41; .reg .u64 %r42; .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 %r60; .reg .u32 %r61; .reg .u32 %r63; .reg .u32 %r64; .reg .u16 %r65; .reg .u16 %r66; .reg .u16 %r67; .reg .u32 %r68; .reg .u16 %r69; .reg .pred %r70; mov.f64 %r40,%ar0; .loc 1 88 2 mov.b64 %r41,%r40; shr.u64 %r42,%r41,32; cvt.u32.u64 %r29,%r42; cvt.u32.u64 %r34,%r41; .loc 1 89 5 and.b32 %r30,%r29,2147483647; .loc 1 90 4 and.b32 %r44,%r29,2146435072; setp.ne.u32 %r45,%r44,0; @ %r45 bra $L2; .loc 1 91 12 or.b32 %r46,%r34,%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 %r39,%r48,0d0000000000000000; bra $L1; $L3: .loc 1 98 5 setp.ne.u32 %r49,%r30,0; @ %r49 bra $L5; .loc 1 99 7 setp.le.s32 %r50,%r34,0; @ %r50 bra $L10; .loc 1 99 15 mov.u32 %r33,-1043; $L7: .loc 1 99 41 add.u32 %r33,%r33,-1; .loc 1 99 32 add.u32 %r34,%r34,%r34; .loc 1 99 7 setp.gt.s32 %r52,%r34,0; @ %r52 bra $L7; cvt.rn.f64.s32 %r39,%r33; bra $L1; $L5: .loc 1 101 25 shl.b32 %r36,%r30,11; .loc 1 101 7 setp.le.s32 %r53,%r36,0; @ %r53 bra $L11; .loc 1 101 15 mov.u32 %r35,-1022; $L8: .loc 1 101 49 add.u32 %r35,%r35,-1; .loc 1 101 40 add.u32 %r36,%r36,%r36; .loc 1 101 7 setp.gt.s32 %r55,%r36,0; @ %r55 bra $L8; cvt.rn.f64.s32 %r39,%r35; bra $L1; $L10: .loc 1 99 7 mov.f64 %r39,0dc0904c0000000000; bra $L1; $L11: .loc 1 101 7 mov.f64 %r39,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 %r39,%r58; bra $L1; $L9: .loc 1 106 13 set.u32.gt.s32 %r60,%r30,2146435072; neg.s32 %r61,%r60; .loc 1 106 25 set.u32.ne.u32 %r63,%r34,0; neg.s32 %r64,%r63; cvt.u16.u32 %r66,%r61; cvt.u16.u32 %r67,%r64; or.b16 %r65,%r66,%r67; .loc 1 106 10 cvt.u32.u16 %r68,%r65; cvt.u16.u8 %r69,%r68; setp.ne.u16 %r70,%r69,0; .loc 1 107 15 selp.f64 %r39,%r40,0d7ff0000000000000,%r70; $L1: .loc 1 108 1 mov.f64 %value,%r39; st.param.f64 [%value_out],%value; ret; } lib_a-s_lrint.o/1591654539 399 399 100644 4369 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r56; .reg .u32 %r58; .reg .f64 %r60; .reg .u32 %r61; .reg .u32 %r63; .reg .u32 %r66; .reg .u64 %r71; .reg .f64 %r72; .reg .u64 %r73; .reg .u64 %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 .u64 %r85; .reg .u64 %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 .u32 %r104; .reg .u32 %r105; .reg .u64 %r106; .reg .u64 %r107; .reg .u64 %r108; .reg .u64 %r109; .reg .u64 %r110; .reg .u64 %r111; .reg .u64 %r112; .reg .u32 %r113; .reg .u32 %r114; .reg .u64 %r115; .reg .u32 %r116; .reg .u32 %r118; .reg .pred %r119; .reg .u32 %r121; .reg .u32 %r122; .reg .u64 %r123; .reg .pred %r124; mov.f64 %r72,%ar0; mov.b64 %r73,%r72; shr.u64 %r74,%r73,32; cvt.u32.u64 %r66,%r74; .loc 1 97 16 shr.u32 %r22,%r66,31; .loc 1 100 27 shr.s32 %r75,%r66,20; and.b32 %r24,%r75,2047; .loc 1 100 6 add.u32 %r54,%r24,-1023; .loc 1 103 5 setp.gt.s32 %r76,%r54,19; @ %r76 bra $L2; .loc 1 106 9 setp.ge.s32 %r77,%r54,-1; @ %r77 bra $L3; $L5: .loc 1 107 16 mov.u64 %r71,0; bra $L1; $L3: .loc 1 112 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 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 %r82,%r27,%r25; .loc 1 114 11 mov.b64 %r83,%r82; shr.u64 %r84,%r83,32; cvt.u32.u64 %r56,%r84; .loc 1 117 19 cvt.s64.s32 %r85,%r56; and.b64 %r86,%r85,-2147483649; .loc 1 117 14 setp.eq.u64 %r87,%r86,0; @ %r87 bra $L5; .loc 1 121 14 and.b32 %r58,%r56,1048575; .loc 1 122 14 or.b32 %r88,%r58,1048576; .loc 1 120 35 shr.s32 %r89,%r56,20; and.b32 %r90,%r89,2047; .loc 1 124 30 mov.u32 %r93,1043; sub.u32 %r92,%r93,%r90; .loc 1 124 23 shr.s32 %r94,%r88,%r92; .loc 1 124 18 cvt.s64.s32 %r71,%r94; bra $L6; $L2: .loc 1 127 11 setp.gt.s32 %r95,%r54,62; @ %r95 bra $L7; .loc 1 131 10 setp.le.s32 %r96,%r54,51; @ %r96 bra $L8; .loc 1 134 49 and.b32 %r97,%r66,983039; or.b32 %r98,%r97,65536; .loc 1 134 19 cvt.s64.s32 %r99,%r98; .loc 1 134 69 add.u32 %r100,%r24,-1043; .loc 1 134 62 shl.b64 %r101,%r99,%r100; .loc 1 136 31 add.u32 %r103,%r24,-1075; .loc 1 136 24 cvt.u32.u64 %r105,%r73; shl.b32 %r104,%r105,%r103; cvt.u64.u32 %r106,%r104; .loc 1 134 16 or.b64 %r71,%r101,%r106; bra $L6; $L8: .loc 1 141 20 cvta.const.u64 %r107,TWO52; cvt.s64.s32 %r108,%r22; shl.b64 %r109,%r108,3; add.u64 %r110,%r107,%r109; ld.f64 %r42,[%r110]; .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 %r60,%r44,%r42; .loc 1 143 11 mov.b64 %r111,%r60; shr.u64 %r112,%r111,32; cvt.u32.u64 %r61,%r112; .loc 1 144 35 shr.s32 %r113,%r61,20; and.b32 %r46,%r113,2047; .loc 1 145 14 and.b32 %r63,%r61,1048575; .loc 1 146 14 or.b32 %r114,%r63,1048576; .loc 1 154 21 cvt.s64.s32 %r115,%r114; .loc 1 154 42 add.u32 %r116,%r46,-1043; .loc 1 154 35 shl.b64 %r71,%r115,%r116; .loc 1 155 6 mov.u32 %r118,1075; sub.u32 %r49,%r118,%r46; setp.gt.u32 %r119,%r49,31; @ %r119 bra $L6; cvt.u32.u64 %r122,%r111; shr.u32 %r121,%r122,%r49; cvt.u64.u32 %r123,%r121; or.b64 %r71,%r71,%r123; bra $L6; $L7: .loc 1 160 14 cvt.rzi.s64.f64 %r71,%r72; bra $L1; $L6: .loc 1 163 23 setp.eq.u32 %r124,%r22,0; @ %r124 bra $L1; neg.s64 %r71,%r71; $L1: .loc 1 164 1 mov.u64 %value,%r71; st.param.u64 [%value_out],%value; ret; } /661 1591654539 399 399 100644 2945 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r46; .reg .u32 %r49; .reg .u32 %r50; .reg .u32 %r51; .reg .u64 %r53; .reg .f64 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .pred %r57; .reg .u32 %r58; .reg .pred %r59; .reg .pred %r60; .reg .pred %r61; .reg .u32 %r62; .reg .u32 %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .u32 %r67; .reg .pred %r68; .reg .pred %r70; .reg .u32 %r71; .reg .u32 %r72; .reg .u64 %r73; .reg .u64 %r74; .reg .u64 %r75; .reg .u32 %r76; .reg .u32 %r77; .reg .pred %r78; .reg .u64 %r79; .reg .u32 %r80; .reg .pred %r81; .reg .u32 %r82; .reg .u64 %r83; .reg .u64 %r84; 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 %r57,%r49,0; selp.u32 %r42,-1,1,%r57; .loc 1 71 44 shr.u32 %r58,%r49,20; and.b32 %r24,%r58,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 %r59,%r43,19; @ %r59 bra $L3; .loc 1 78 10 setp.ge.s32 %r60,%r43,0; @ %r60 bra $L4; .loc 1 80 14 setp.ne.u32 %r61,%r43,-1; @ %r61 bra $L12; .loc 1 83 20 cvt.s64.s32 %r53,%r42; bra $L1; $L4: .loc 1 89 26 mov.u32 %r63,524288; shr.s32 %r62,%r63,%r43; .loc 1 89 15 add.u32 %r64,%r62,%r40; .loc 1 91 31 mov.u32 %r66,20; sub.u32 %r65,%r66,%r43; .loc 1 91 24 shr.u32 %r67,%r64,%r65; .loc 1 91 18 cvt.u64.u32 %r41,%r67; bra $L6; $L3: .loc 1 94 11 setp.gt.u32 %r68,%r43,62; @ %r68 bra $L7; cvt.u32.u64 %r50,%r55; add.u32 %r51,%r24,-1043; .loc 1 98 10 setp.le.s32 %r70,%r43,51; @ %r70 bra $L8; .loc 1 103 47 add.u32 %r71,%r24,-1075; .loc 1 103 24 shl.b32 %r72,%r50,%r71; cvt.u64.u32 %r73,%r72; .loc 1 101 19 cvt.u64.u32 %r74,%r40; .loc 1 101 34 shl.b64 %r75,%r74,%r51; .loc 1 101 16 or.b64 %r41,%r73,%r75; bra $L6; $L8: .loc 1 111 35 mov.u32 %r77,-2147483648; shr.u32 %r76,%r77,%r51; .loc 1 108 24 add.u32 %r46,%r76,%r50; .loc 1 112 14 setp.ge.u32 %r78,%r46,%r50; @ %r78 bra $L9; .loc 1 113 13 add.u32 %r40,%r40,1; $L9: .loc 1 116 21 cvt.u64.u32 %r79,%r40; .loc 1 116 36 shl.b64 %r41,%r79,%r51; .loc 1 119 23 mov.u32 %r80,52; sub.u32 %r37,%r80,%r43; setp.eq.u32 %r81,%r37,32; @ %r81 bra $L6; shr.u32 %r82,%r46,%r37; cvt.u64.u32 %r83,%r82; or.b64 %r41,%r41,%r83; bra $L6; $L7: .loc 1 124 12 cvt.rzi.s64.f64 %r53,%r54; bra $L1; $L6: .loc 1 126 15 cvt.s64.s32 %r84,%r42; mul.lo.u64 %r53,%r84,%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; } /679 1591654539 399 399 100644 489 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: matherr .visible .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libm/common/s_matherr.c" // BEGIN GLOBAL FUNCTION DEF: matherr .visible .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; mov.u32 %value,0; .loc 1 123 1 st.param.u32 [%value_out],%value; ret; } lib_a-s_modf.o/ 1591654539 399 399 100644 3230 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 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 .u32 %r38; .reg .f64 %r40; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .f64 %r52; .reg .f64 %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u32 %r58; .reg .pred %r59; .reg .pred %r60; .reg .u32 %r61; .reg .u64 %r62; .reg .u64 %r66; .reg .f64 %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .u32 %r70; .reg .pred %r71; .reg .u32 %r72; .reg .u64 %r73; .reg .u64 %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .u64 %r80; .reg .u64 %r84; .reg .pred %r85; .reg .u32 %r86; .reg .u64 %r87; .reg .u64 %r91; .reg .u32 %r92; .reg .u32 %r93; .reg .u32 %r94; .reg .pred %r95; .reg .u32 %r96; .reg .u64 %r97; .reg .u64 %r101; .reg .u64 %r102; .reg .u32 %r106; .reg .u32 %r107; .reg .u64 %r108; .reg .u64 %r109; .reg .u64 %r110; mov.f64 %r53,%ar0; mov.u64 %r54,%ar1; mov.b64 %r55,%r53; shr.u64 %r56,%r55,32; cvt.u32.u64 %r38,%r56; cvt.u32.u64 %r45,%r55; .loc 1 92 11 shr.s32 %r58,%r38,20; .loc 1 92 16 and.b32 %r23,%r58,2047; .loc 1 92 5 add.u32 %r42,%r23,-1023; .loc 1 93 4 setp.gt.s32 %r59,%r42,19; @ %r59 bra $L2; .loc 1 94 8 setp.ge.s32 %r60,%r42,0; @ %r60 bra $L3; .loc 1 95 10 and.b32 %r61,%r38,-2147483648; cvt.u64.u32 %r62,%r61; shl.b64 %r66,%r62,32; mov.b64 %r67,%r66; st.f64 [%r54],%r67; .loc 1 96 10 mov.f64 %r52,%r53; bra $L1; $L3: .loc 1 98 19 mov.u32 %r68,1048575; shr.s32 %r43,%r68,%r42; .loc 1 99 10 and.b32 %r69,%r38,%r43; .loc 1 99 13 or.b32 %r70,%r69,%r45; .loc 1 99 5 setp.ne.u32 %r71,%r70,0; @ %r71 bra $L5; .loc 1 101 13 st.f64 [%r54],%r53; .loc 1 103 7 and.b32 %r72,%r38,-2147483648; cvt.u64.u32 %r73,%r72; shl.b64 %r77,%r73,32; mov.b64 %r52,%r77; .loc 1 104 14 bra $L1; $L5: .loc 1 106 7 not.b32 %r78,%r43; and.b32 %r79,%r78,%r38; cvt.u64.u32 %r80,%r79; shl.b64 %r84,%r80,32; mov.b64 %r32,%r84; st.f64 [%r54],%r32; .loc 1 107 16 sub.f64 %r52,%r53,%r32; bra $L1; $L2: .loc 1 110 12 setp.le.s32 %r85,%r42,51; @ %r85 bra $L6; .loc 1 112 12 st.f64 [%r54],%r53; .loc 1 114 6 and.b32 %r86,%r38,-2147483648; cvt.u64.u32 %r87,%r86; shl.b64 %r91,%r87,32; mov.b64 %r52,%r91; .loc 1 115 13 bra $L1; $L6: .loc 1 117 41 add.u32 %r92,%r23,-1043; .loc 1 117 8 mov.u32 %r93,-1; shr.u32 %r44,%r93,%r92; .loc 1 118 12 and.b32 %r94,%r44,%r45; .loc 1 118 8 setp.ne.u32 %r95,%r94,0; @ %r95 bra $L7; .loc 1 120 9 st.f64 [%r54],%r53; .loc 1 122 3 and.b32 %r96,%r38,-2147483648; cvt.u64.u32 %r97,%r96; shl.b64 %r101,%r97,32; mov.b64 %r52,%r101; .loc 1 123 10 bra $L1; $L7: .loc 1 125 10 cvt.u64.u32 %r102,%r38; not.b32 %r106,%r44; and.b32 %r107,%r106,%r45; cvt.u64.u32 %r108,%r107; shl.b64 %r109,%r102,32; or.b64 %r110,%r109,%r108; mov.b64 %r40,%r110; st.f64 [%r54],%r40; .loc 1 126 12 sub.f64 %r52,%r53,%r40; $L1: .loc 1 129 1 mov.f64 %value,%r52; st.param.f64 [%value_out],%value; ret; } lib_a-s_nan.o/ 1591654539 399 399 100644 497 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 49 9 mov.f64 %value,0d7ff8000000000000; .loc 1 50 1 st.param.f64 [%value_out],%value; ret; } /698 1591654539 399 399 100644 815 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } /719 1591654539 399 399 100644 5485 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .f64 %r46; .reg .u32 %r48; .reg .u32 %r50; .reg .u32 %r51; .reg .f64 %r56; .reg .f64 %r57; .reg .f64 %r58; .reg .u64 %r59; .reg .u64 %r60; .reg .u64 %r62; .reg .u64 %r63; .reg .pred %r65; .reg .u32 %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 .u32 %r76; .reg .u64 %r77; .reg .u64 %r81; .reg .u64 %r82; .reg .pred %r83; .reg .pred %r84; .reg .pred %r85; .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 .pred %r98; .reg .pred %r99; .reg .u32 %r101; .reg .u32 %r102; .reg .u32 %r104; .reg .u32 %r105; .reg .u16 %r107; .reg .u16 %r108; .reg .u16 %r109; .reg .u32 %r110; .reg .u16 %r111; .reg .pred %r112; .reg .u32 %r114; .reg .u32 %r115; .reg .u32 %r117; .reg .u32 %r118; .reg .u16 %r119; .reg .u16 %r120; .reg .u16 %r121; .reg .u32 %r122; .reg .u16 %r123; .reg .pred %r124; .reg .pred %r125; .reg .pred %r126; .reg .pred %r127; .reg .pred %r128; .reg .f64 %r129; .reg .pred %r130; .reg .u64 %r131; .reg .u64 %r135; .reg .u64 %r136; .reg .u64 %r137; .reg .u64 %r138; .reg .u64 %r142; .reg .u64 %r143; .reg .u64 %r144; mov.f64 %r57,%ar0; mov.f64 %r58,%ar1; .loc 1 77 2 mov.b64 %r59,%r57; shr.u64 %r60,%r59,32; cvt.u32.u64 %r40,%r60; cvt.u32.u64 %r45,%r59; mov.b64 %r62,%r58; shr.u64 %r63,%r62,32; cvt.u32.u64 %r50,%r63; .loc 1 78 2 cvt.u32.u64 %r42,%r63; cvt.u32.u64 %r51,%r62; .loc 1 79 5 and.b32 %r43,%r40,2147483647; .loc 1 80 5 and.b32 %r44,%r50,2147483647; .loc 1 82 4 setp.le.s32 %r65,%r43,2146435071; @ %r65 bra $L2; .loc 1 82 28 add.u32 %r66,%r43,-2146435072; .loc 1 82 40 or.b32 %r67,%r66,%r45; .loc 1 82 22 setp.ne.u32 %r68,%r67,0; @ %r68 bra $L3; $L2: .loc 1 82 49 setp.le.s32 %r69,%r44,2146435071; @ %r69 bra $L4; .loc 1 83 28 add.u32 %r70,%r44,-2146435072; .loc 1 83 40 or.b32 %r71,%r70,%r51; .loc 1 83 22 setp.eq.u32 %r72,%r71,0; @ %r72 bra $L4; $L3: .loc 1 84 13 add.f64 %r56,%r57,%r58; bra $L1; $L4: .loc 1 85 4 setp.eq.f64 %r73,%r57,%r58; @ %r73 bra $L17; .loc 1 86 8 or.b32 %r74,%r43,%r45; .loc 1 86 4 setp.ne.u32 %r75,%r74,0; @ %r75 bra $L6; .loc 1 87 6 and.b32 %r76,%r50,-2147483648; cvt.u64.u32 %r77,%r76; shl.b64 %r81,%r77,32; or.b64 %r82,%r81,1; mov.b64 %r46,%r82; .loc 1 88 8 mul.f64 %r56,%r46,%r46; .loc 1 89 8 setp.eq.f64 %r83,%r46,%r56; .loc 1 89 37 selp.f64 %r56,%r56,%r46,%r83; bra $L1; $L6: .loc 1 91 4 setp.lt.s32 %r84,%r40,0; @ %r84 bra $L7; .loc 1 92 8 setp.gt.s32 %r85,%r40,%r42; @ %r85 bra $L8; .loc 1 92 20 set.u32.eq.u32 %r87,%r40,%r42; neg.s32 %r88,%r87; .loc 1 92 30 set.u32.gt.u32 %r90,%r45,%r51; neg.s32 %r91,%r90; .loc 1 92 25 cvt.u16.u32 %r93,%r88; cvt.u16.u32 %r94,%r91; and.b16 %r92,%r93,%r94; .loc 1 92 14 cvt.u32.u16 %r95,%r92; cvt.u16.u8 %r96,%r95; setp.ne.u16 %r97,%r96,0; @ %r97 bra $L9; bra $L21; $L8: .loc 1 93 5 setp.ne.u32 %r98,%r45,0; @ %r98 bra $L9; .loc 1 93 16 add.u32 %r40,%r40,-1; $L9: .loc 1 94 6 add.u32 %r41,%r45,-1; bra $L11; $L21: .loc 1 96 6 add.u32 %r41,%r45,1; .loc 1 97 5 setp.ne.u32 %r99,%r41,0; @ %r99 bra $L11; .loc 1 97 16 add.u32 %r40,%r40,1; bra $L11; $L7: .loc 1 100 11 not.b32 %r101,%r42; shr.u32 %r102,%r101,31; .loc 1 100 18 set.u32.gt.s32 %r104,%r40,%r42; neg.s32 %r105,%r104; .loc 1 100 14 cvt.u16.u32 %r108,%r102; cvt.u16.u32 %r109,%r105; or.b16 %r107,%r108,%r109; .loc 1 100 8 cvt.u32.u16 %r110,%r107; cvt.u16.u8 %r111,%r110; setp.ne.u16 %r112,%r111,0; @ %r112 bra $L12; .loc 1 100 27 set.u32.eq.u32 %r114,%r40,%r42; neg.s32 %r115,%r114; .loc 1 100 37 set.u32.gt.u32 %r117,%r45,%r51; neg.s32 %r118,%r117; .loc 1 100 32 cvt.u16.u32 %r120,%r115; cvt.u16.u32 %r121,%r118; and.b16 %r119,%r120,%r121; .loc 1 100 21 cvt.u32.u16 %r122,%r119; cvt.u16.u8 %r123,%r122; setp.ne.u16 %r124,%r123,0; @ %r124 bra $L13; bra $L22; $L12: .loc 1 101 5 setp.ne.u32 %r125,%r45,0; @ %r125 bra $L13; .loc 1 101 16 add.u32 %r40,%r40,-1; $L13: .loc 1 102 6 add.u32 %r41,%r45,-1; bra $L11; $L22: .loc 1 104 6 add.u32 %r41,%r45,1; .loc 1 105 5 setp.ne.u32 %r126,%r41,0; @ %r126 bra $L11; .loc 1 105 16 add.u32 %r40,%r40,1; $L11: .loc 1 108 5 and.b32 %r48,%r40,2146435072; .loc 1 109 4 setp.ne.u32 %r127,%r48,2146435072; @ %r127 bra $L15; .loc 1 109 29 add.f64 %r56,%r57,%r57; bra $L1; $L15: .loc 1 110 4 setp.gt.s32 %r128,%r48,1048575; @ %r128 bra $L16; .loc 1 111 8 mul.f64 %r129,%r57,%r57; .loc 1 112 8 setp.eq.f64 %r130,%r57,%r129; @ %r130 bra $L16; .loc 1 113 10 cvt.u64.u32 %r131,%r40; cvt.u64.u32 %r135,%r41; shl.b64 %r136,%r131,32; or.b64 %r137,%r136,%r135; mov.b64 %r56,%r137; .loc 1 114 10 bra $L1; $L16: .loc 1 117 2 cvt.u64.u32 %r138,%r40; cvt.u64.u32 %r142,%r41; shl.b64 %r143,%r138,32; or.b64 %r144,%r143,%r142; mov.b64 %r56,%r144; .loc 1 118 9 bra $L1; $L17: .loc 1 85 18 mov.f64 %r56,%r57; $L1: .loc 1 119 1 mov.f64 %value,%r56; st.param.f64 [%value_out],%value; ret; } lib_a-s_pow10.o/1591654539 399 399 100644 926 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 76 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 77 1 mov.f64 %value,%r26; st.param.f64 [%value_out],%value; ret; } /740 1591654539 399 399 100644 13858 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // 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 .u32 %r22; .reg .f64 %r29; .reg .u32 %r37; .reg .u32 %r45; .reg .u32 %r70; .reg .u32 %r73; .reg .u32 %r80; .reg .f64 %r84; .reg .f64 %r86; .reg .f64 %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 %r112; .reg .u32 %r113; .reg .u32 %r115; .reg .u32 %r117; .reg .u32 %r118; .reg .u32 %r120; .reg .u32 %r121; .reg .u32 %r123; .reg .u32 %r124; .reg .u32 %r126; .reg .u32 %r127; .reg .u32 %r128; .reg .u32 %r131; .reg .u32 %r132; .reg .u64 %r134; .reg .f64 %r135; .reg .f64 %r136; .reg .f64 %r137; .reg .u64 %r138; .reg .u64 %r139; .reg .u64 %r140; .reg .u64 %r141; .reg .u64 %r142; .reg .u32 %r144; .reg .u32 %r146; .reg .u32 %r147; .reg .u32 %r149; .reg .u32 %r150; .reg .u16 %r151; .reg .u16 %r152; .reg .u16 %r153; .reg .u32 %r154; .reg .u16 %r155; .reg .pred %r156; .reg .u32 %r157; .reg .u32 %r158; .reg .u32 %r159; .reg .u32 %r160; .reg .pred %r161; .reg .u32 %r162; .reg .pred %r164; .reg .u32 %r166; .reg .u32 %r167; .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 .pred %r178; .reg .u64 %r179; .reg .u32 %r180; .reg .u64 %r181; .reg .u64 %r182; .reg .u64 %r183; .reg .u32 %r184; .reg .pred %r185; .reg .pred %r186; .reg .pred %r187; .reg .pred %r189; .reg .pred %r190; .reg .pred %r192; .reg .u32 %r193; .reg .u32 %r194; .reg .pred %r195; .reg .pred %r196; .reg .pred %r197; .reg .pred %r199; .reg .pred %r200; .reg .pred %r202; .reg .u32 %r203; .reg .pred %r204; .reg .u32 %r205; .reg .pred %r206; .reg .u32 %r207; .reg .u32 %r208; .reg .u32 %r209; .reg .u32 %r210; .reg .u32 %r211; .reg .u32 %r213; .reg .pred %r214; .reg .u32 %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 .f64 %r267; .reg .pred %r268; .reg .pred %r269; .reg .pred %r270; .reg .u32 %r271; .reg .pred %r272; .reg .pred %r273; .reg .pred %r274; .reg .u32 %r275; .reg .pred %r276; .reg .u64 %r278; .reg .u32 %r279; .reg .u32 %r280; .reg .u64 %r281; .reg .u64 %r282; .reg .u64 %r283; .reg .u64 %r284; .reg .pred %r285; .reg .pred %r287; mov.f64 %r136,%ar0; mov.f64 %r137,%ar1; mov.u64 %r138,%ar2; .loc 1 88 2 mov.b64 %r139,%r136; shr.u64 %r140,%r139,32; cvt.u32.u64 %r105,%r140; .loc 1 89 2 mov.b64 %r141,%r137; shr.u64 %r142,%r141,32; cvt.u32.u64 %r106,%r142; cvt.u32.u64 %r100,%r141; .loc 1 92 5 and.b32 %r93,%r105,2147483647; .loc 1 93 5 and.b32 %r108,%r106,2147483647; .loc 1 96 8 or.b32 %r144,%r108,%r100; .loc 1 96 4 set.u32.eq.u32 %r146,%r144,0; neg.s32 %r147,%r146; .loc 1 96 15 set.u32.gt.s32 %r149,%r93,2146435071; neg.s32 %r150,%r149; cvt.u16.u32 %r152,%r147; cvt.u16.u32 %r153,%r150; or.b16 %r151,%r152,%r153; cvt.u32.u16 %r154,%r151; cvt.u16.u8 %r155,%r154; setp.ne.u16 %r156,%r155,0; @ %r156 bra $L2; .loc 1 97 14 neg.s32 %r157,%r100; .loc 1 97 13 or.b32 %r158,%r157,%r100; .loc 1 97 18 shr.u32 %r159,%r158,31; .loc 1 97 8 or.b32 %r160,%r159,%r108; .loc 1 96 33 setp.le.u32 %r161,%r160,2146435072; @ %r161 bra $L3; $L2: .loc 1 98 11 mov.u32 %r162,0; st.u32 [%r138],%r162; .loc 1 99 15 mul.f64 %r29,%r136,%r137; .loc 1 99 18 div.rn.f64 %r135,%r29,%r29; bra $L1; $L3: cvt.u32.u64 %r99,%r139; .loc 1 90 12 xor.b32 %r22,%r105,%r106; .loc 1 91 5 and.b32 %r107,%r105,-2147483648; .loc 1 101 4 setp.gt.s32 %r164,%r93,%r108; @ %r164 bra $L5; .loc 1 102 12 set.u32.lt.s32 %r166,%r93,%r108; neg.s32 %r167,%r166; .loc 1 102 21 set.u32.lt.u32 %r169,%r99,%r100; neg.s32 %r170,%r169; .loc 1 102 16 cvt.u16.u32 %r172,%r167; cvt.u16.u32 %r173,%r170; or.b16 %r171,%r172,%r173; .loc 1 102 8 cvt.u32.u16 %r174,%r171; cvt.u16.u8 %r175,%r174; setp.ne.u16 %r176,%r175,0; @ %r176 bra $L48; .loc 1 106 8 setp.ne.u32 %r177,%r99,%r100; @ %r177 bra $L5; .loc 1 107 20 setp.lt.s32 %r178,%r22,0; selp.u32 %r102,-1,1,%r178; .loc 1 107 8 st.u32 [%r138],%r102; .loc 1 108 14 cvta.const.u64 %r179,Zero; .loc 1 108 29 shr.u32 %r180,%r107,31; .loc 1 108 14 cvt.u64.u32 %r181,%r180; shl.b64 %r182,%r181,3; add.u64 %r183,%r179,%r182; ld.f64 %r135,[%r183]; bra $L1; $L5: .loc 1 113 4 and.b32 %r184,%r105,2146435072; setp.ne.u32 %r185,%r184,0; @ %r185 bra $L8; .loc 1 114 8 setp.ne.u32 %r186,%r93,0; @ %r186 bra $L9; .loc 1 115 21 mov.u32 %r112,%r99; .loc 1 115 3 setp.le.s32 %r187,%r99,0; @ %r187 bra $L50; .loc 1 115 11 mov.u32 %r98,-1043; $L11: .loc 1 115 41 add.u32 %r98,%r98,-1; .loc 1 115 32 add.u32 %r112,%r112,%r112; .loc 1 115 3 setp.gt.s32 %r189,%r112,0; @ %r189 bra $L11; bra $L10; $L9: .loc 1 117 20 shl.b32 %r113,%r93,11; .loc 1 117 3 setp.le.s32 %r190,%r113,0; @ %r190 bra $L51; .loc 1 117 11 mov.u32 %r98,-1022; $L12: .loc 1 117 46 add.u32 %r98,%r98,-1; .loc 1 117 37 add.u32 %r113,%r113,%r113; .loc 1 117 3 setp.gt.s32 %r192,%r113,0; @ %r192 bra $L12; bra $L10; $L8: .loc 1 119 17 shr.s32 %r193,%r93,20; .loc 1 119 12 add.u32 %r98,%r193,-1023; bra $L10; $L50: .loc 1 115 11 mov.u32 %r98,-1043; bra $L10; $L51: .loc 1 117 11 mov.u32 %r98,-1022; $L10: .loc 1 122 4 and.b32 %r194,%r106,2146435072; setp.ne.u32 %r195,%r194,0; @ %r195 bra $L13; .loc 1 123 8 setp.ne.u32 %r196,%r108,0; @ %r196 bra $L14; .loc 1 124 21 mov.u32 %r115,%r100; .loc 1 124 3 setp.le.s32 %r197,%r100,0; @ %r197 bra $L52; .loc 1 124 11 mov.u32 %r127,-1043; $L16: .loc 1 124 41 add.u32 %r127,%r127,-1; .loc 1 124 32 add.u32 %r115,%r115,%r115; .loc 1 124 3 setp.gt.s32 %r199,%r115,0; @ %r199 bra $L16; bra $L15; $L14: .loc 1 126 20 shl.b32 %r117,%r108,11; .loc 1 126 3 setp.le.s32 %r200,%r117,0; @ %r200 bra $L53; .loc 1 126 11 mov.u32 %r127,-1022; $L17: .loc 1 126 46 add.u32 %r127,%r127,-1; .loc 1 126 37 add.u32 %r117,%r117,%r117; .loc 1 126 3 setp.gt.s32 %r202,%r117,0; @ %r202 bra $L17; bra $L15; $L13: .loc 1 128 17 shr.s32 %r203,%r108,20; .loc 1 128 12 add.u32 %r127,%r203,-1023; bra $L15; $L52: .loc 1 124 11 mov.u32 %r127,-1043; bra $L15; $L53: .loc 1 126 11 mov.u32 %r127,-1022; $L15: .loc 1 131 4 setp.lt.s32 %r204,%r98,-1022; @ %r204 bra $L18; .loc 1 132 33 and.b32 %r37,%r105,1048575; .loc 1 132 9 or.b32 %r92,%r37,1048576; bra $L19; $L18: .loc 1 134 8 mov.u32 %r205,-1022; sub.u32 %r118,%r205,%r98; .loc 1 135 8 setp.gt.s32 %r206,%r118,31; @ %r206 bra $L20; .loc 1 136 31 add.u32 %r207,%r98,1054; .loc 1 136 26 shr.u32 %r208,%r99,%r207; .loc 1 136 18 shl.b32 %r209,%r93,%r118; .loc 1 136 22 or.b32 %r92,%r208,%r209; .loc 1 137 13 shl.b32 %r99,%r99,%r118; bra $L19; $L20: .loc 1 139 14 mov.u32 %r211,-1054; sub.u32 %r210,%r211,%r98; .loc 1 139 10 shl.b32 %r92,%r99,%r210; .loc 1 140 6 mov.u32 %r99,0; $L19: .loc 1 143 4 setp.lt.s32 %r287,%r127,-1022; @ %r287 bra $L21; .loc 1 144 33 and.b32 %r45,%r106,1048575; .loc 1 144 9 or.b32 %r94,%r45,1048576; sub.u32 %r97,%r99,%r100; bra $L22; $L21: .loc 1 146 8 mov.u32 %r213,-1022; sub.u32 %r120,%r213,%r127; .loc 1 147 8 setp.gt.s32 %r214,%r120,31; @ %r214 bra $L23; .loc 1 148 31 add.u32 %r215,%r127,1054; .loc 1 148 26 shr.u32 %r216,%r100,%r215; .loc 1 148 18 shl.b32 %r217,%r108,%r120; .loc 1 148 22 or.b32 %r94,%r216,%r217; .loc 1 149 13 shl.b32 %r100,%r100,%r120; sub.u32 %r97,%r99,%r100; bra $L22; $L23: .loc 1 151 14 mov.u32 %r219,-1054; sub.u32 %r218,%r219,%r127; .loc 1 151 10 shl.b32 %r94,%r100,%r218; .loc 1 157 4 sub.u32 %r132,%r98,%r127; .loc 1 159 9 add.u32 %r124,%r132,-1; .loc 1 159 7 setp.ne.u32 %r220,%r132,0; @ %r220 bra $L54; bra $L70; $L22: .loc 1 157 4 sub.u32 %r121,%r98,%r127; .loc 1 159 9 add.u32 %r124,%r121,-1; .loc 1 159 7 setp.eq.u32 %r221,%r121,0; @ ! %r221 bra $L24; bra $L55; $L54: .loc 1 152 6 mov.u32 %r100,0; $L24: mov.u32 %r101,0; $L30: .loc 1 160 8 sub.u32 %r95,%r92,%r94; .loc 1 160 27 setp.ge.u32 %r222,%r99,%r100; @ %r222 bra $L27; .loc 1 160 38 add.u32 %r95,%r95,-1; $L27: .loc 1 161 8 setp.ge.s32 %r223,%r95,0; @ %r223 bra $L28; .loc 1 161 22 add.u32 %r224,%r92,%r92; .loc 1 161 29 shr.u32 %r225,%r99,31; .loc 1 161 25 add.u32 %r92,%r224,%r225; .loc 1 161 39 add.u32 %r99,%r99,%r99; bra $L29; $L28: .loc 1 160 17 sub.u32 %r123,%r99,%r100; .loc 1 162 19 add.u32 %r227,%r95,%r95; .loc 1 162 26 shr.u32 %r228,%r123,31; .loc 1 162 22 add.u32 %r92,%r227,%r228; .loc 1 162 36 add.u32 %r99,%r123,%r123; .loc 1 162 46 add.u32 %r101,%r101,1; $L29: .loc 1 163 8 add.u32 %r101,%r101,%r101; .loc 1 159 9 add.u32 %r124,%r124,-1; .loc 1 159 7 setp.ne.u32 %r231,%r124,-1; @ %r231 bra $L30; sub.u32 %r97,%r99,%r100; bra $L26; $L55: .loc 1 158 4 mov.u32 %r101,%r121; $L26: .loc 1 165 4 sub.u32 %r96,%r92,%r94; .loc 1 165 23 setp.ge.u32 %r232,%r99,%r100; @ %r232 bra $L31; .loc 1 165 34 add.u32 %r96,%r96,-1; $L31: .loc 1 166 4 setp.lt.s32 %r233,%r96,0; @ %r233 bra $L32; .loc 1 166 26 add.u32 %r101,%r101,1; mov.u32 %r99,%r97; mov.u32 %r92,%r96; $L32: .loc 1 169 8 or.b32 %r234,%r92,%r99; .loc 1 169 4 setp.eq.u32 %r235,%r234,0; @ %r235 bra $L33; .loc 1 174 7 setp.le.s32 %r236,%r92,1048575; @ %r236 bra $L34; bra $L35; $L33: .loc 1 170 8 and.b32 %r126,%r101,2147483647; .loc 1 171 23 setp.ge.s32 %r237,%r22,0; @ %r237 bra $L36; .loc 1 171 20 neg.s32 %r103,%r126; bra $L37; $L36: .loc 1 171 23 mov.u32 %r103,%r126; $L37: .loc 1 171 11 st.u32 [%r138],%r103; .loc 1 172 17 cvta.const.u64 %r238,Zero; .loc 1 172 32 shr.u32 %r239,%r107,31; .loc 1 172 17 cvt.u64.u32 %r240,%r239; shl.b64 %r241,%r240,3; add.u64 %r242,%r238,%r241; ld.f64 %r135,[%r242]; bra $L1; $L34: .loc 1 175 13 add.u32 %r243,%r92,%r92; .loc 1 175 20 shr.u32 %r244,%r99,31; .loc 1 175 16 add.u32 %r92,%r243,%r244; .loc 1 175 30 add.u32 %r99,%r99,%r99; .loc 1 176 9 add.u32 %r127,%r127,-1; .loc 1 174 7 setp.le.s32 %r246,%r92,1048575; @ %r246 bra $L34; setp.lt.s32 %r287,%r127,-1022; $L35: .loc 1 178 4 @ %r287 bra $L38; .loc 1 179 15 add.u32 %r70,%r92,-1048576; .loc 1 179 32 add.u32 %r248,%r127,1023; .loc 1 179 38 shl.b32 %r249,%r248,20; .loc 1 179 9 or.b32 %r93,%r249,%r70; bra $L6; $L38: .loc 1 181 8 mov.u32 %r250,-1022; sub.u32 %r128,%r250,%r127; .loc 1 182 8 setp.gt.s32 %r251,%r128,20; @ %r251 bra $L39; .loc 1 183 11 shr.u32 %r73,%r99,%r128; .loc 1 183 36 add.u32 %r252,%r127,1054; .loc 1 183 31 shl.b32 %r253,%r92,%r252; .loc 1 183 6 or.b32 %r99,%r253,%r73; .loc 1 184 6 shr.s32 %r93,%r92,%r128; bra $L6; $L39: .loc 1 185 16 setp.gt.s32 %r254,%r128,31; @ %r254 bra $L40; .loc 1 186 24 shr.u32 %r80,%r99,%r128; .loc 1 186 16 add.u32 %r255,%r127,1054; .loc 1 186 11 shl.b32 %r256,%r92,%r255; .loc 1 186 6 or.b32 %r99,%r256,%r80; .loc 1 186 33 mov.u32 %r93,%r107; bra $L6; $L40: .loc 1 188 14 mov.u32 %r258,-1054; sub.u32 %r257,%r258,%r127; .loc 1 188 10 shr.s32 %r99,%r92,%r257; .loc 1 188 23 mov.u32 %r93,%r107; bra $L6; $L48: .loc 1 103 5 mov.u32 %r101,0; $L6: .loc 1 192 2 cvt.u64.u32 %r259,%r93; cvt.u64.u32 %r263,%r99; shl.b64 %r264,%r259,32; or.b64 %r265,%r264,%r263; mov.b64 %r91,%r265; .loc 1 193 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r137; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r267,[%value_in]; } .loc 1 194 5 setp.lt.f64 %r268,%r267,0d0020000000000000; @ ! %r268 bra $L71; .loc 1 195 11 add.f64 %r84,%r91,%r91; .loc 1 195 9 setp.gt.f64 %r269,%r84,%r267; @ %r269 bra $L43; .loc 1 195 16 setp.neu.f64 %r270,%r84,%r267; @ %r270 bra $L44; .loc 1 195 33 and.b32 %r271,%r101,1; .loc 1 195 27 setp.eq.u32 %r272,%r271,0; @ %r272 bra $L44; $L43: .loc 1 196 4 add.u32 %r101,%r101,1; .loc 1 197 4 sub.f64 %r91,%r91,%r267; bra $L44; $L71: .loc 1 199 18 mul.f64 %r86,%r267,0d3fe0000000000000; .loc 1 199 12 setp.lt.f64 %r273,%r86,%r91; @ %r273 bra $L45; .loc 1 199 21 setp.neu.f64 %r274,%r86,%r91; @ %r274 bra $L44; .loc 1 199 40 and.b32 %r275,%r101,1; .loc 1 199 34 setp.eq.u32 %r276,%r275,0; @ %r276 bra $L44; $L45: .loc 1 200 7 add.u32 %r101,%r101,1; .loc 1 201 7 sub.f64 %r91,%r91,%r267; $L44: .loc 1 204 2 mov.b64 %r134,%r91; .loc 1 203 2 shr.u64 %r278,%r134,32; .loc 1 204 2 cvt.u32.u64 %r280,%r278; xor.b32 %r279,%r107,%r280; cvt.u64.u32 %r281,%r279; shl.b64 %r282,%r281,32; and.b64 %r283,%r134,4294967295; or.b64 %r284,%r283,%r282; mov.b64 %r135,%r284; .loc 1 205 4 and.b32 %r131,%r101,2147483647; .loc 1 206 19 setp.ge.s32 %r285,%r22,0; @ %r285 bra $L46; .loc 1 206 16 neg.s32 %r104,%r131; bra $L47; $L46: .loc 1 206 19 mov.u32 %r104,%r131; $L47: .loc 1 206 7 st.u32 [%r138],%r104; .loc 1 207 9 bra $L1; $L70: .loc 1 165 4 sub.u32 %r96,%r92,%r94; mov.u32 %r97,%r99; .loc 1 158 4 mov.u32 %r101,%r132; bra $L31; $L1: .loc 1 208 1 mov.f64 %value,%r135; st.param.f64 [%value_out],%value; ret; } lib_a-s_rint.o/ 1591654539 399 399 100644 5549 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r34; .reg .f64 %r35; .reg .f64 %r36; .reg .u32 %r42; .reg .u32 %r45; .reg .u32 %r52; .reg .f64 %r59; .reg .f64 %r60; .reg .f64 %r61; .reg .u32 %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .f64 %r67; .reg .f64 %r68; .reg .u32 %r70; .reg .u32 %r71; .reg .u32 %r73; .reg .u32 %r74; .reg .f64 %r75; .reg .u64 %r77; .reg .f64 %r79; .reg .f64 %r80; .reg .u64 %r81; .reg .u64 %r82; .reg .u32 %r84; .reg .pred %r85; .reg .pred %r86; .reg .u32 %r87; .reg .u32 %r88; .reg .pred %r89; .reg .u32 %r90; .reg .u32 %r91; .reg .u32 %r92; .reg .u32 %r93; .reg .u32 %r94; .reg .u32 %r95; .reg .u32 %r96; .reg .u64 %r97; .reg .u64 %r98; .reg .u64 %r99; .reg .u64 %r100; .reg .u64 %r101; .reg .u64 %r102; .reg .u64 %r103; .reg .u64 %r104; .reg .u64 %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 .u32 %r116; .reg .u32 %r117; .reg .pred %r118; .reg .u32 %r119; .reg .u32 %r120; .reg .pred %r121; .reg .pred %r122; .reg .u32 %r123; .reg .u32 %r124; .reg .u32 %r125; .reg .u32 %r126; .reg .pred %r127; .reg .pred %r128; .reg .u32 %r129; .reg .u32 %r130; .reg .pred %r131; .reg .u32 %r132; .reg .pred %r133; .reg .u32 %r134; .reg .u32 %r135; .reg .u32 %r136; .reg .u32 %r137; .reg .u64 %r138; .reg .u64 %r142; .reg .u64 %r143; .reg .u64 %r144; .reg .u64 %r145; .reg .u64 %r146; .reg .u64 %r147; .reg .u64 %r148; mov.f64 %r80,%ar0; mov.b64 %r81,%r80; shr.u64 %r82,%r81,32; cvt.u32.u64 %r42,%r82; cvt.u32.u64 %r45,%r81; .loc 1 94 15 shr.u32 %r63,%r42,31; .loc 1 95 11 shr.s32 %r84,%r42,20; .loc 1 95 16 and.b32 %r24,%r84,2047; .loc 1 95 5 add.u32 %r64,%r24,-1023; .loc 1 96 4 setp.gt.s32 %r85,%r64,19; @ %r85 bra $L2; .loc 1 97 8 setp.ge.s32 %r86,%r64,0; @ %r86 bra $L3; .loc 1 98 10 and.b32 %r87,%r42,2147483647; .loc 1 98 22 or.b32 %r88,%r87,%r45; .loc 1 98 5 setp.eq.u32 %r89,%r88,0; @ %r89 bra $L8; .loc 1 99 12 and.b32 %r90,%r42,1048575; .loc 1 99 6 or.b32 %r65,%r90,%r45; .loc 1 101 14 neg.s32 %r91,%r65; .loc 1 101 13 or.b32 %r92,%r91,%r65; .loc 1 101 18 shr.u32 %r93,%r92,12; .loc 1 101 23 and.b32 %r94,%r93,524288; .loc 1 100 6 and.b32 %r95,%r42,-131072; .loc 1 101 6 or.b32 %r96,%r94,%r95; .loc 1 102 3 cvt.u64.u32 %r97,%r96; shl.b64 %r98,%r97,32; and.b64 %r99,%r81,4294967295; or.b64 %r100,%r99,%r98; mov.b64 %r67,%r100; .loc 1 103 19 cvta.const.u64 %r101,TWO52; cvt.s64.s32 %r102,%r63; shl.b64 %r103,%r102,3; add.u64 %r104,%r101,%r103; ld.f64 %r34,[%r104]; .loc 1 103 23 add.f64 %r35,%r34,%r67; .loc 1 103 12 st.f64 [%frame],%r35; .loc 1 104 16 ld.f64 %r36,[%frame]; .loc 1 104 12 sub.f64 %r68,%r36,%r34; .loc 1 106 3 mov.b64 %r77,%r68; .loc 1 105 3 shr.u64 %r106,%r77,32; .loc 1 106 3 cvt.u32.u64 %r108,%r106; and.b32 %r107,%r108,2147483647; shl.b32 %r109,%r63,31; or.b32 %r110,%r107,%r109; cvt.u64.u32 %r111,%r110; shl.b64 %r112,%r111,32; and.b64 %r113,%r77,4294967295; or.b64 %r114,%r113,%r112; mov.b64 %r79,%r114; .loc 1 107 17 bra $L1; $L3: .loc 1 109 19 mov.u32 %r115,1048575; shr.s32 %r70,%r115,%r64; .loc 1 110 10 and.b32 %r116,%r42,%r70; .loc 1 110 13 or.b32 %r117,%r116,%r45; .loc 1 110 5 setp.eq.u32 %r118,%r117,0; @ %r118 bra $L9; .loc 1 111 4 shr.u32 %r71,%r70,1; .loc 1 112 10 and.b32 %r119,%r42,%r71; .loc 1 112 13 or.b32 %r120,%r119,%r45; .loc 1 112 5 setp.eq.u32 %r121,%r120,0; @ %r121 bra $L10; .loc 1 114 9 setp.eq.u32 %r122,%r64,19; .loc 1 114 43 selp.u32 %r45,-2147483648,0,%r122; .loc 1 115 17 not.b32 %r123,%r71; .loc 1 115 15 and.b32 %r124,%r123,%r42; .loc 1 115 32 mov.u32 %r126,262144; shr.s32 %r125,%r126,%r64; .loc 1 115 21 or.b32 %r42,%r124,%r125; bra $L5; $L2: .loc 1 118 12 setp.le.s32 %r127,%r64,51; @ %r127 bra $L7; .loc 1 119 8 setp.ne.u32 %r128,%r64,1024; @ %r128 bra $L12; .loc 1 119 28 add.f64 %r79,%r80,%r80; bra $L1; $L7: .loc 1 122 41 add.u32 %r52,%r24,-1043; .loc 1 122 8 mov.u32 %r129,-1; shr.u32 %r73,%r129,%r52; .loc 1 123 12 and.b32 %r130,%r45,%r73; .loc 1 123 8 setp.eq.u32 %r131,%r130,0; @ %r131 bra $L13; .loc 1 124 7 shr.u32 %r74,%r73,1; .loc 1 125 12 and.b32 %r132,%r45,%r74; .loc 1 125 8 setp.eq.u32 %r133,%r132,0; @ %r133 bra $L5; .loc 1 125 30 not.b32 %r134,%r74; .loc 1 125 28 and.b32 %r135,%r134,%r45; .loc 1 125 48 mov.u32 %r137,1073741824; shr.s32 %r136,%r137,%r52; .loc 1 125 23 or.b32 %r45,%r135,%r136; bra $L5; $L10: mov.u32 %r45,%r120; $L5: .loc 1 127 2 cvt.u64.u32 %r138,%r42; cvt.u64.u32 %r142,%r45; shl.b64 %r143,%r138,32; or.b64 %r144,%r143,%r142; mov.b64 %r75,%r144; .loc 1 128 11 cvta.const.u64 %r145,TWO52; cvt.s64.s32 %r146,%r63; shl.b64 %r147,%r146,3; add.u64 %r148,%r145,%r147; ld.f64 %r59,[%r148]; .loc 1 128 15 add.f64 %r60,%r59,%r75; .loc 1 128 4 st.f64 [%frame],%r60; .loc 1 129 10 ld.f64 %r61,[%frame]; sub.f64 %r79,%r61,%r59; bra $L1; $L8: .loc 1 98 38 mov.f64 %r79,%r80; bra $L1; $L9: mov.f64 %r79,%r80; bra $L1; $L12: mov.f64 %r79,%r80; bra $L1; $L13: mov.f64 %r79,%r80; $L1: .loc 1 130 1 mov.f64 %value,%r79; st.param.f64 [%value_out],%value; ret; } lib_a-s_round.o/1591654539 399 399 100644 3021 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r25; .reg .u32 %r31; .reg .u32 %r38; .reg .u32 %r40; .reg .u32 %r41; .reg .u32 %r43; .reg .u32 %r45; .reg .u32 %r46; .reg .f64 %r49; .reg .f64 %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .u32 %r54; .reg .pred %r55; .reg .pred %r56; .reg .pred %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .u32 %r60; .reg .pred %r61; .reg .u32 %r62; .reg .u32 %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .pred %r66; .reg .pred %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .u32 %r70; .reg .pred %r71; .reg .u32 %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .pred %r76; .reg .u32 %r77; .reg .u64 %r78; .reg .u64 %r82; .reg .u64 %r83; .reg .u64 %r84; mov.f64 %r50,%ar0; mov.b64 %r51,%r50; shr.u64 %r52,%r51,32; cvt.u32.u64 %r31,%r52; cvt.u32.u64 %r25,%r51; .loc 1 62 44 shr.s32 %r54,%r31,20; and.b32 %r23,%r54,2047; .loc 1 62 22 add.u32 %r40,%r23,-1023; .loc 1 64 6 setp.gt.s32 %r55,%r40,19; @ %r55 bra $L2; .loc 1 66 10 setp.ge.s32 %r56,%r40,0; @ %r56 bra $L3; .loc 1 68 15 and.b32 %r41,%r31,-2147483648; .loc 1 69 14 setp.eq.u32 %r57,%r40,-1; @ %r57 bra $L4; mov.u32 %r31,%r41; .loc 1 72 15 mov.u32 %r38,0; bra $L5; $L4: .loc 1 71 17 or.b32 %r31,%r41,1072693248; .loc 1 72 15 mov.u32 %r38,0; bra $L5; $L3: .loc 1 76 49 mov.u32 %r58,1048575; shr.s32 %r43,%r58,%r40; .loc 1 77 20 and.b32 %r59,%r43,%r31; .loc 1 77 42 or.b32 %r60,%r59,%r25; .loc 1 77 14 setp.eq.u32 %r61,%r60,0; @ %r61 bra $L9; .loc 1 81 29 mov.u32 %r63,524288; shr.s32 %r62,%r63,%r40; .loc 1 81 15 add.u32 %r64,%r62,%r31; .loc 1 82 18 not.b32 %r65,%r43; .loc 1 82 15 and.b32 %r31,%r64,%r65; .loc 1 83 15 mov.u32 %r38,0; bra $L5; $L2: .loc 1 86 11 setp.le.s32 %r66,%r40,51; @ %r66 bra $L7; .loc 1 88 10 setp.ne.u32 %r67,%r40,1024; @ %r67 bra $L10; .loc 1 90 18 add.f64 %r49,%r50,%r50; bra $L1; $L7: .loc 1 96 68 add.u32 %r68,%r23,-1043; .loc 1 96 18 mov.u32 %r69,-1; shr.u32 %r45,%r69,%r68; .loc 1 99 16 and.b32 %r70,%r25,%r45; .loc 1 99 10 setp.eq.u32 %r71,%r70,0; @ %r71 bra $L11; .loc 1 103 29 mov.u32 %r73,51; sub.u32 %r72,%r73,%r40; .loc 1 103 22 mov.u32 %r75,1; shl.b32 %r74,%r75,%r72; .loc 1 103 11 add.u32 %r46,%r74,%r25; .loc 1 104 10 setp.le.u32 %r76,%r25,%r46; @ %r76 bra $L8; .loc 1 105 13 add.u32 %r31,%r31,1; $L8: .loc 1 108 14 not.b32 %r77,%r45; .loc 1 108 11 and.b32 %r38,%r77,%r46; $L5: .loc 1 110 3 cvt.u64.u32 %r78,%r31; cvt.u64.u32 %r82,%r38; shl.b64 %r83,%r78,32; or.b64 %r84,%r83,%r82; mov.b64 %r49,%r84; .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; } /758 1591654539 399 399 100644 4544 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 DECL: copysign .extern .func (.param .f64 %value_out) copysign (.param .f64 %in_ar0, .param .f64 %in_ar1); // 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 .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 %r62; .reg .pred %r63; .reg .u32 %r64; .reg .u32 %r66; .reg .u32 %r67; .reg .pred %r68; .reg .u64 %r69; .reg .u64 %r70; .reg .u32 %r71; .reg .u32 %r72; .reg .pred %r73; .reg .u32 %r74; .reg .u32 %r76; .reg .u32 %r77; .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 .f64 %r87; .reg .f64 %r89; .reg .pred %r90; .reg .f64 %r91; .reg .f64 %r93; .reg .pred %r94; .reg .u32 %r95; .reg .u32 %r96; .reg .u32 %r97; .reg .u64 %r98; .reg .u64 %r99; .reg .u64 %r100; .reg .u64 %r101; .reg .pred %r102; .reg .f64 %r103; .reg .f64 %r105; .reg .u32 %r106; .reg .u32 %r107; .reg .u32 %r108; .reg .u32 %r109; .reg .u64 %r110; .reg .u64 %r111; .reg .u64 %r112; .reg .u64 %r113; 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 %r62,%r46,20; .loc 1 43 11 and.b32 %r48,%r62,2047; .loc 1 44 12 setp.ne.u32 %r63,%r48,0; @ %r63 bra $L2; .loc 1 45 24 and.b32 %r64,%r46,2147483647; .loc 1 45 20 cvt.u32.u64 %r67,%r60; or.b32 %r66,%r64,%r67; .loc 1 45 16 setp.eq.u32 %r68,%r66,0; @ %r68 bra $L9; .loc 1 46 8 mul.f64 %r58,%r58,0d4350000000000000; .loc 1 47 6 mov.b64 %r69,%r58; shr.u64 %r70,%r69,32; cvt.u32.u64 %r46,%r70; .loc 1 48 26 shr.s32 %r71,%r46,20; and.b32 %r72,%r71,2047; .loc 1 48 8 add.u32 %r48,%r72,-54; bra $L4; $L2: .loc 1 50 12 setp.ne.u32 %r73,%r48,2047; @ %r73 bra $L4; .loc 1 50 31 add.f64 %r57,%r58,%r58; bra $L1; $L4: .loc 1 51 14 cvt.u32.u64 %r74,%r59; add.u32 %r29,%r48,%r74; .loc 1 52 14 set.u32.gt.s64 %r76,%r59,50000; neg.s32 %r77,%r76; .loc 1 52 27 set.u32.gt.s32 %r79,%r29,2046; neg.s32 %r80,%r79; .loc 1 52 22 cvt.u16.u32 %r82,%r77; cvt.u16.u32 %r83,%r80; or.b16 %r81,%r82,%r83; .loc 1 52 12 cvt.u32.u16 %r84,%r81; cvt.u16.u8 %r85,%r84; setp.eq.u16 %r86,%r85,0; @ %r86 bra $L5; .loc 1 53 16 mov.f64 %r87,0d7e37e43c8800759c; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r87; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r58; call (%value_in),copysign,(%out_arg1,%out_arg2); ld.param.f64 %r89,[%value_in]; } .loc 1 53 15 mul.f64 %r57,%r89,0d7e37e43c8800759c; bra $L1; $L5: .loc 1 54 5 setp.ge.s64 %r90,%r59,-50000; @ %r90 bra $L6; .loc 1 54 29 mov.f64 %r91,0d01a56e1fc2f8f359; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r91; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r58; call (%value_in),copysign,(%out_arg1,%out_arg2); ld.param.f64 %r93,[%value_in]; } .loc 1 54 28 mul.f64 %r57,%r93,0d01a56e1fc2f8f359; bra $L1; $L6: .loc 1 55 12 setp.le.s32 %r94,%r29,0; @ %r94 bra $L7; .loc 1 56 7 mov.b64 %r55,%r58; and.b32 %r95,%r46,-2146435073; shl.b32 %r96,%r29,20; or.b32 %r97,%r95,%r96; cvt.u64.u32 %r98,%r97; shl.b64 %r99,%r98,32; and.b64 %r100,%r55,4294967295; or.b64 %r101,%r100,%r99; mov.b64 %r57,%r101; .loc 1 56 56 bra $L1; $L7: .loc 1 57 12 setp.ge.s32 %r102,%r29,-53; @ %r102 bra $L8; .loc 1 58 16 mov.f64 %r103,0d01a56e1fc2f8f359; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r103; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r58; call (%value_in),copysign,(%out_arg1,%out_arg2); ld.param.f64 %r105,[%value_in]; } .loc 1 58 15 mul.f64 %r57,%r105,0d01a56e1fc2f8f359; bra $L1; $L8: .loc 1 60 2 mov.b64 %r56,%r58; .loc 1 59 11 add.u32 %r106,%r29,54; .loc 1 60 2 shl.b32 %r107,%r106,20; and.b32 %r108,%r46,-2146435073; or.b32 %r109,%r107,%r108; cvt.u64.u32 %r110,%r109; shl.b64 %r111,%r110,32; and.b64 %r112,%r56,4294967295; or.b64 %r113,%r112,%r111; mov.b64 %r51,%r113; .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; } /777 1591654539 399 399 100644 4211 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 DECL: copysign .extern .func (.param .f64 %value_out) copysign (.param .f64 %in_ar0, .param .f64 %in_ar1); // 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 .u32 %r40; .reg .u32 %r42; .reg .u32 %r43; .reg .f64 %r45; .reg .u64 %r49; .reg .u64 %r50; .reg .f64 %r51; .reg .f64 %r52; .reg .u32 %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .u32 %r56; .reg .pred %r57; .reg .u32 %r58; .reg .u32 %r60; .reg .u32 %r61; .reg .pred %r62; .reg .pred %r63; .reg .pred %r64; .reg .u64 %r65; .reg .u64 %r66; .reg .u32 %r67; .reg .u32 %r68; .reg .pred %r69; .reg .f64 %r70; .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 .pred %r82; .reg .f64 %r83; .reg .f64 %r85; .reg .f64 %r86; .reg .f64 %r88; .reg .u32 %r89; .reg .u32 %r90; .reg .u32 %r91; .reg .u32 %r92; .reg .u64 %r93; .reg .u64 %r94; .reg .u64 %r95; .reg .u64 %r96; mov.f64 %r52,%ar0; mov.u32 %r53,%ar1; .loc 1 86 2 mov.b64 %r54,%r52; shr.u64 %r55,%r54,32; cvt.u32.u64 %r40,%r55; .loc 1 87 28 shr.s32 %r56,%r40,20; .loc 1 87 11 and.b32 %r42,%r56,2047; .loc 1 88 12 setp.ne.u32 %r57,%r42,0; @ %r57 bra $L2; .loc 1 89 24 and.b32 %r58,%r40,2147483647; .loc 1 89 20 cvt.u32.u64 %r61,%r54; or.b32 %r60,%r58,%r61; .loc 1 89 16 setp.eq.u32 %r62,%r60,0; @ %r62 bra $L10; .loc 1 90 8 mul.f64 %r52,%r52,0d4350000000000000; .loc 1 93 16 setp.ge.s32 %r63,%r53,-50000; @ %r63 bra $L4; .loc 1 93 39 mul.f64 %r51,%r52,0d01a56e1fc2f8f359; bra $L1; $L2: .loc 1 95 12 setp.ne.u32 %r64,%r42,2047; @ %r64 bra $L5; .loc 1 95 31 add.f64 %r51,%r52,%r52; bra $L1; $L4: .loc 1 91 6 mov.b64 %r65,%r52; shr.u64 %r66,%r65,32; cvt.u32.u64 %r40,%r66; .loc 1 92 26 shr.s32 %r67,%r40,20; and.b32 %r68,%r67,2047; .loc 1 92 8 add.u32 %r42,%r68,-54; $L5: .loc 1 96 11 add.u32 %r43,%r53,%r42; .loc 1 97 12 setp.le.s32 %r69,%r43,2046; @ %r69 bra $L6; .loc 1 97 37 mov.f64 %r70,0d7e37e43c8800759c; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r70; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r52; call (%value_in),copysign,(%out_arg1,%out_arg2); ld.param.f64 %r72,[%value_in]; } .loc 1 97 36 mul.f64 %r51,%r72,0d7e37e43c8800759c; bra $L1; $L6: .loc 1 98 12 setp.le.s32 %r73,%r43,0; @ %r73 bra $L7; .loc 1 99 7 mov.b64 %r49,%r52; and.b32 %r74,%r40,-2146435073; shl.b32 %r75,%r43,20; or.b32 %r76,%r74,%r75; cvt.u64.u32 %r77,%r76; shl.b64 %r78,%r77,32; and.b64 %r79,%r49,4294967295; or.b64 %r80,%r79,%r78; mov.b64 %r51,%r80; .loc 1 99 56 bra $L1; $L7: .loc 1 100 12 setp.ge.s32 %r81,%r43,-53; @ %r81 bra $L8; .loc 1 101 16 setp.le.s32 %r82,%r53,50000; @ %r82 bra $L9; .loc 1 102 15 mov.f64 %r83,0d7e37e43c8800759c; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r83; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r52; call (%value_in),copysign,(%out_arg1,%out_arg2); ld.param.f64 %r85,[%value_in]; } .loc 1 102 14 mul.f64 %r51,%r85,0d7e37e43c8800759c; bra $L1; $L9: .loc 1 103 23 mov.f64 %r86,0d01a56e1fc2f8f359; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r86; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r52; call (%value_in),copysign,(%out_arg1,%out_arg2); ld.param.f64 %r88,[%value_in]; } .loc 1 103 22 mul.f64 %r51,%r88,0d01a56e1fc2f8f359; bra $L1; $L8: .loc 1 106 2 mov.b64 %r50,%r52; .loc 1 105 11 add.u32 %r89,%r43,54; .loc 1 106 2 shl.b32 %r90,%r89,20; and.b32 %r91,%r40,-2146435073; or.b32 %r92,%r90,%r91; cvt.u64.u32 %r93,%r92; shl.b64 %r94,%r93,32; and.b64 %r95,%r50,4294967295; or.b64 %r96,%r95,%r94; mov.b64 %r45,%r96; .loc 1 107 17 mul.f64 %r51,%r45,0d3c90000000000000; bra $L1; $L10: .loc 1 89 49 mov.f64 %r51,%r52; $L1: .loc 1 108 1 mov.f64 %value,%r51; st.param.f64 [%value_out],%value; ret; } /795 1591654539 399 399 100644 1139 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r25; .reg .u32 %r27; mov.f32 %r25,%ar0; .loc 1 48 13 mov.b32 %r27,%r25; and.b32 %value,%r27,-2147483648; .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 %r25; .reg .u64 %r27; .reg .u64 %r28; .reg .u32 %r29; mov.f64 %r25,%ar0; .loc 1 58 15 mov.b64 %r27,%r25; shr.u64 %r28,%r27,32; cvt.u32.u64 %r29,%r28; and.b32 %value,%r29,-2147483648; .loc 1 59 1 st.param.u32 [%value_out],%value; ret; } /814 1591654539 399 399 100644 1307 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654539 399 399 100644 4018 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r33; .reg .u32 %r34; .reg .f64 %r37; .reg .f64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .pred %r41; .reg .f64 %r43; .reg .u32 %r44; .reg .f64 %r45; .reg .pred %r46; .reg .u32 %r49; .reg .pred %r50; .reg .pred %r51; .reg .pred %r52; .reg .f64 %r53; .reg .u32 %r55; .reg .f64 %r56; .reg .f64 %r57; .reg .f64 %r58; .reg .f64 %r60; .reg .f64 %r61; .reg .f64 %r62; .reg .u32 %r64; .reg .f64 %r65; .reg .f64 %r66; .reg .f64 %r67; .reg .f64 %r69; .reg .f64 %r70; mov.f64 %r38,%ar0; .loc 1 110 2 mov.b64 %r39,%r38; shr.u64 %r40,%r39,32; cvt.u32.u64 %r33,%r40; .loc 1 113 5 and.b32 %r34,%r33,2147483647; .loc 1 114 4 setp.gt.s32 %r41,%r34,1072243195; @ %r41 bra $L2; .loc 1 114 30 mov.u32 %r44,0; mov.f64 %r43,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r43; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r44; call (%value_in),__kernel_sin,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r45,[%value_in]; } mov.f64 %r37,%r45; bra $L1; $L2: .loc 1 117 10 setp.le.s32 %r46,%r34,2146435071; @ %r46 bra $L4; .loc 1 117 35 sub.f64 %r37,%r38,%r38; bra $L1; $L4: .loc 1 121 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 122 14 and.b32 %r22,%r49,3; 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 123 19 ld.f64 %r56,[%frame+8]; mov.u32 %r55,1; 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],%r56; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r55; call (%value_in),__kernel_sin,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r57,[%value_in]; } mov.f64 %r37,%r57; bra $L1; $L5: .loc 1 124 19 ld.f64 %r60,[%frame+8]; ld.f64 %r58,[%frame]; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r58; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r60; call (%value_in),__kernel_cos,(%out_arg1,%out_arg2); ld.param.f64 %r61,[%value_in]; } mov.f64 %r37,%r61; bra $L1; $L6: .loc 1 125 19 ld.f64 %r65,[%frame+8]; mov.u32 %r64,1; 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],%r65; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r64; call (%value_in),__kernel_sin,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r66,[%value_in]; } .loc 1 125 18 neg.f64 %r37,%r66; bra $L1; $L7: .loc 1 127 12 ld.f64 %r69,[%frame+8]; ld.f64 %r67,[%frame]; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r67; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r69; call (%value_in),__kernel_cos,(%out_arg1,%out_arg2); ld.param.f64 %r70,[%value_in]; } .loc 1 127 11 neg.f64 %r37,%r70; $L1: .loc 1 130 1 mov.f64 %value,%r37; st.param.f64 [%value_out],%value; ret; } lib_a-s_tan.o/ 1591654539 399 399 100644 2579 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r27; .reg .u32 %r28; .reg .f64 %r31; .reg .f64 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .pred %r35; .reg .f64 %r37; .reg .u32 %r38; .reg .f64 %r39; .reg .pred %r40; .reg .u32 %r43; .reg .f64 %r44; .reg .u32 %r47; .reg .u32 %r48; .reg .u32 %r49; .reg .u32 %r50; .reg .f64 %r51; .reg .f64 %r52; mov.f64 %r32,%ar0; .loc 1 97 2 mov.b64 %r33,%r32; shr.u64 %r34,%r33,32; cvt.u32.u64 %r27,%r34; .loc 1 100 5 and.b32 %r28,%r27,2147483647; .loc 1 101 4 setp.gt.s32 %r35,%r28,1072243195; @ %r35 bra $L2; .loc 1 101 30 mov.u32 %r38,1; mov.f64 %r37,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r32; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r37; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r38; call (%value_in),__kernel_tan,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r39,[%value_in]; } mov.f64 %r31,%r39; bra $L1; $L2: .loc 1 104 10 setp.le.s32 %r40,%r28,2146435071; @ %r40 bra $L4; .loc 1 104 35 sub.f64 %r31,%r32,%r32; bra $L1; $L4: .loc 1 108 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 %r43,[%value_in]; } .loc 1 109 44 add.u32 %r47,%r43,%r43; and.b32 %r48,%r47,2; .loc 1 109 13 mov.u32 %r50,1; sub.u32 %r49,%r50,%r48; ld.f64 %r51,[%frame+8]; ld.f64 %r44,[%frame]; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r44; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r51; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r49; call (%value_in),__kernel_tan,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r52,[%value_in]; } mov.f64 %r31,%r52; $L1: .loc 1 112 1 mov.f64 %value,%r31; st.param.f64 [%value_out],%value; ret; } lib_a-s_tanh.o/ 1591654539 399 399 100644 3035 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r41; .reg .f64 %r42; .reg .pred %r43; .reg .pred %r45; .reg .pred %r46; .reg .f64 %r47; .reg .pred %r48; .reg .f64 %r50; .reg .f64 %r52; .reg .f64 %r53; .reg .f64 %r54; .reg .f64 %r55; .reg .f64 %r56; .reg .f64 %r57; .reg .f64 %r59; .reg .f64 %r61; .reg .f64 %r62; .reg .f64 %r63; .reg .f64 %r64; .reg .pred %r65; mov.f64 %r38,%ar0; .loc 1 101 2 mov.b64 %r39,%r38; shr.u64 %r40,%r39,32; cvt.u32.u64 %r31,%r40; .loc 1 102 5 and.b32 %r32,%r31,2147483647; .loc 1 105 4 setp.le.s32 %r41,%r32,2146435071; @ %r41 bra $L2; mov.f64 %r42,0d3ff0000000000000; div.rn.f64 %r36,%r42,%r38; .loc 1 106 9 setp.lt.s32 %r43,%r31,0; @ %r43 bra $L3; .loc 1 106 29 add.f64 %r37,%r36,0d3ff0000000000000; bra $L1; $L3: .loc 1 107 29 sub.f64 %r37,%r36,%r42; bra $L1; $L2: .loc 1 111 5 setp.gt.s32 %r45,%r32,1077280767; @ %r45 bra $L8; .loc 1 112 9 setp.gt.s32 %r46,%r32,1015021567; @ %r46 bra $L6; .loc 1 113 16 add.f64 %r47,%r38,0d3ff0000000000000; .loc 1 113 11 mul.f64 %r37,%r47,%r38; bra $L1; $L6: .loc 1 114 9 setp.le.s32 %r48,%r32,1072693247; @ %r48 bra $L7; .loc 1 115 17 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r50,[%value_in]; } .loc 1 115 7 add.f64 %r52,%r50,%r50; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r52; call (%value_in),expm1,(%out_arg1); ld.param.f64 %r53,[%value_in]; } .loc 1 116 19 add.f64 %r54,%r53,0d4000000000000000; .loc 1 116 16 mov.f64 %r56,0d4000000000000000; div.rn.f64 %r55,%r56,%r54; .loc 1 116 5 mov.f64 %r57,0d3ff0000000000000; sub.f64 %r37,%r57,%r55; bra $L5; $L7: .loc 1 118 25 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r59,[%value_in]; } .loc 1 118 14 mul.f64 %r61,%r59,0dc000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r61; call (%value_in),expm1,(%out_arg1); ld.param.f64 %r62,[%value_in]; } .loc 1 119 13 neg.f64 %r63,%r62; .loc 1 119 18 add.f64 %r64,%r62,0d4000000000000000; .loc 1 119 11 div.rn.f64 %r37,%r63,%r64; bra $L5; $L8: .loc 1 123 8 mov.f64 %r37,0d3ff0000000000000; $L5: .loc 1 125 19 setp.ge.s32 %r65,%r31,0; @ %r65 bra $L1; neg.f64 %r37,%r37; $L1: .loc 1 126 1 mov.f64 %value,%r37; st.param.f64 [%value_out],%value; ret; } lib_a-s_trunc.o/1591654539 399 399 100644 2039 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r35; .reg .u32 %r36; .reg .f64 %r41; .reg .f64 %r42; .reg .u64 %r43; .reg .u64 %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 .u32 %r57; .reg .u64 %r58; .reg .u64 %r62; .reg .pred %r63; .reg .pred %r64; .reg .u64 %r65; .reg .u32 %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .u32 %r72; .reg .u32 %r74; .reg .u32 %r75; .reg .u64 %r76; .reg .u64 %r77; .reg .u64 %r78; mov.f64 %r42,%ar0; mov.b64 %r43,%r42; shr.u64 %r44,%r43,32; cvt.u32.u64 %r36,%r44; .loc 1 64 44 shr.s32 %r45,%r36,20; and.b32 %r23,%r45,2047; .loc 1 64 22 add.u32 %r35,%r23,-1023; .loc 1 66 6 setp.gt.s32 %r46,%r35,19; @ %r46 bra $L2; .loc 1 69 10 setp.ge.s32 %r47,%r35,0; @ %r47 bra $L3; .loc 1 61 11 and.b32 %r48,%r36,-2147483648; .loc 1 72 11 cvt.u64.u32 %r49,%r48; shl.b64 %r53,%r49,32; mov.b64 %r41,%r53; bra $L1; $L3: .loc 1 77 11 mov.u32 %r55,1048575; shr.s32 %r54,%r55,%r35; not.b32 %r56,%r54; and.b32 %r57,%r56,%r36; cvt.u64.u32 %r58,%r57; shl.b64 %r62,%r58,32; mov.b64 %r41,%r62; bra $L1; $L2: .loc 1 80 11 setp.le.s32 %r63,%r35,51; @ %r63 bra $L5; .loc 1 82 10 setp.ne.u32 %r64,%r35,1024; @ %r64 bra $L6; .loc 1 85 20 add.f64 %r41,%r42,%r42; bra $L1; $L5: .loc 1 93 7 cvt.u64.u32 %r65,%r36; add.u32 %r69,%r23,-1043; mov.u32 %r71,-1; shr.u32 %r70,%r71,%r69; not.b32 %r72,%r70; cvt.u32.u64 %r75,%r43; and.b32 %r74,%r72,%r75; cvt.u64.u32 %r76,%r74; shl.b64 %r77,%r65,32; or.b64 %r78,%r77,%r76; mov.b64 %r41,%r78; bra $L1; $L6: mov.f64 %r41,%r42; $L1: .loc 1 96 1 mov.f64 %value,%r41; st.param.f64 [%value_out],%value; ret; } /832 1591654539 399 399 100644 1024 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/1591654539 399 399 100644 1016 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } /850 1591654539 399 399 100644 3839 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r36; .reg .u32 %r37; .reg .f32 %r40; .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 %r59; .reg .f32 %r60; .reg .f32 %r61; .reg .f32 %r62; .reg .f32 %r63; .reg .f32 %r65; .reg .f32 %r67; .reg .f32 %r68; .reg .f32 %r70; .reg .f32 %r71; .reg .f32 %r72; .reg .f32 %r73; .reg .pred %r74; 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 %r56,%r42,%r42,0f3f800000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r56; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r57,[%value_in]; } .loc 1 46 67 add.f32 %r59,%r57,%r54; .loc 1 46 41 mov.f32 %r61,0f3f800000; div.rn.f32 %r60,%r61,%r59; .loc 1 46 10 fma.rn.f32 %r62,%r54,0f40000000,%r60; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r62; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r63,[%value_in]; } mov.f32 %r41,%r63; bra $L7; $L5: .loc 1 48 8 mul.f32 %r40,%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 %r65,[%value_in]; } .loc 1 49 32 add.f32 %r67,%r40,0f3f800000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r67; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r68,[%value_in]; } .loc 1 49 31 add.f32 %r70,%r68,0f3f800000; .loc 1 49 26 div.rn.f32 %r71,%r40,%r70; .loc 1 49 9 add.f32 %r72,%r71,%r65; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r72; call (%value_in),log1pf,(%out_arg1); ld.param.f32 %r73,[%value_in]; } mov.f32 %r41,%r73; $L7: .loc 1 51 4 setp.gt.s32 %r74,%r36,0; @ %r74 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/1591654539 399 399 100644 4537 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .f32 %r47; .reg .f32 %r48; .reg .f32 %r56; .reg .f32 %r57; .reg .f32 %r58; .reg .pred %r59; .reg .pred %r60; .reg .pred %r61; .reg .pred %r62; .reg .pred %r63; .reg .f32 %r64; .reg .pred %r65; .reg .f32 %r67; .reg .pred %r68; .reg .pred %r69; .reg .f32 %r70; .reg .pred %r71; .reg .f32 %r72; .reg .f32 %r73; .reg .f32 %r74; .reg .f32 %r75; .reg .f32 %r76; .reg .f32 %r77; .reg .f32 %r78; .reg .f32 %r79; .reg .f32 %r80; .reg .f32 %r81; .reg .f32 %r82; .reg .f32 %r83; .reg .f32 %r84; .reg .pred %r85; .reg .u64 %r86; .reg .u64 %r87; .reg .u64 %r88; .reg .u64 %r89; .reg .u64 %r90; .reg .u64 %r93; .reg .f32 %r94; .reg .f32 %r95; .reg .f32 %r96; .reg .f32 %r97; .reg .pred %r98; mov.f32 %r58,%ar0; .loc 1 77 2 mov.b32 %r43,%r58; .loc 1 78 5 and.b32 %r44,%r43,2147483647; .loc 1 79 4 setp.le.s32 %r59,%r44,1350565887; @ %r59 bra $L2; .loc 1 80 8 setp.le.s32 %r60,%r44,2139095040; @ %r60 bra $L3; .loc 1 81 11 add.f32 %r57,%r58,%r58; bra $L1; $L3: .loc 1 82 8 setp.gt.s32 %r61,%r43,0; .loc 1 83 32 selp.f32 %r57,0f3fc90fdb,0fbfc90fdb,%r61; bra $L1; $L2: .loc 1 84 7 setp.gt.s32 %r62,%r44,1054867455; @ %r62 bra $L5; .loc 1 85 9 setp.gt.s32 %r63,%r44,822083583; @ %r63 bra $L12; .loc 1 86 10 add.f32 %r64,%r58,0f7149f2ca; .loc 1 86 5 setp.gt.f32 %r65,%r64,0f3f800000; @ %r65 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],%r58; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r67,[%value_in]; } .loc 1 91 5 setp.gt.s32 %r68,%r44,1066926079; @ %r68 bra $L7; .loc 1 92 9 setp.gt.s32 %r69,%r44,1060110335; @ %r69 bra $L8; .loc 1 93 28 fma.rn.f32 %r23,%r67,0f40000000,0fbf800000; .loc 1 93 45 add.f32 %r24,%r67,0f40000000; .loc 1 93 13 div.rn.f32 %r58,%r23,%r24; .loc 1 93 6 mov.u32 %r42,0; bra $L6; $L8: .loc 1 95 18 mov.f32 %r70,0f3f800000; sub.f32 %r25,%r67,%r70; .loc 1 95 26 add.f32 %r26,%r67,0f3f800000; .loc 1 95 14 div.rn.f32 %r58,%r25,%r26; .loc 1 95 6 mov.u32 %r42,1; bra $L6; $L7: .loc 1 98 9 setp.gt.s32 %r71,%r44,1075576831; @ %r71 bra $L9; .loc 1 99 18 mov.f32 %r72,0f3fc00000; sub.f32 %r27,%r67,%r72; .loc 1 99 35 fma.rn.f32 %r28,%r67,0f3fc00000,0f3f800000; .loc 1 99 14 div.rn.f32 %r58,%r27,%r28; .loc 1 99 6 mov.u32 %r42,2; bra $L6; $L9: .loc 1 101 14 mov.f32 %r73,0fbf800000; div.rn.f32 %r58,%r73,%r67; .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,%r58,%r58; .loc 1 106 4 mul.f32 %r48,%r47,%r47; .loc 1 108 51 fma.rn.f32 %r74,%r48,0f3c8569d7,0f3d4bda59; .loc 1 108 42 fma.rn.f32 %r75,%r74,%r48,0f3d886b35; .loc 1 108 33 fma.rn.f32 %r76,%r75,%r48,0f3dba2e6e; .loc 1 108 24 fma.rn.f32 %r77,%r76,%r48,0f3e124925; .loc 1 108 15 fma.rn.f32 %r78,%r77,%r48,0f3eaaaaab; .loc 1 109 42 fma.rn.f32 %r79,%r48,0fbd15a221,0fbd6ef16b; .loc 1 109 33 fma.rn.f32 %r80,%r79,%r48,0fbd9d8795; .loc 1 109 24 fma.rn.f32 %r81,%r80,%r48,0fbde38e38; .loc 1 109 15 fma.rn.f32 %r82,%r81,%r48,0fbe4ccccd; .loc 1 109 5 mul.f32 %r83,%r82,%r48; fma.rn.f32 %r84,%r78,%r47,%r83; mul.f32 %r56,%r84,%r58; .loc 1 110 5 setp.ne.u32 %r85,%r42,-1; @ %r85 bra $L10; .loc 1 110 21 sub.f32 %r57,%r58,%r56; bra $L1; $L10: .loc 1 112 16 cvta.const.u64 %r86,atanhi; cvt.s64.s32 %r87,%r42; shl.b64 %r88,%r87,2; add.u64 %r89,%r86,%r88; .loc 1 112 43 cvta.const.u64 %r90,atanlo; add.u64 %r93,%r90,%r88; .loc 1 112 35 ld.f32 %r95,[%r93]; sub.f32 %r94,%r56,%r95; .loc 1 112 49 sub.f32 %r96,%r94,%r58; .loc 1 112 8 ld.f32 %r97,[%r89]; sub.f32 %r57,%r97,%r96; .loc 1 113 23 setp.ge.s32 %r98,%r43,0; @ %r98 bra $L1; neg.f32 %r57,%r57; bra $L1; $L13: .loc 1 86 25 mov.f32 %r57,%r58; $L1: .loc 1 115 1 mov.f32 %value,%r57; st.param.f32 [%value_out],%value; ret; } lib_a-sf_cbrt.o/1591654539 399 399 100644 2130 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/1591654539 399 399 100644 2212 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r22; .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 %r22,%r38; .loc 1 34 5 and.b32 %r33,%r22,2147483647; .loc 1 35 10 shr.u32 %r39,%r33,23; .loc 1 35 15 add.u32 %r34,%r39,-127; .loc 1 36 4 setp.gt.s32 %r40,%r34,22; @ %r40 bra $L2; .loc 1 37 8 setp.ge.s32 %r41,%r34,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,%r22,0; @ %r44 bra $L10; .loc 1 40 14 setp.eq.u32 %r45,%r33,0; selp.f32 %r37,%r38,0f3f800000,%r45; bra $L1; $L3: .loc 1 43 19 mov.u32 %r46,8388607; shr.s32 %r35,%r46,%r34; .loc 1 44 9 and.b32 %r47,%r22,%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,%r22,0; @ %r51 bra $L8; .loc 1 46 34 mov.u32 %r53,8388608; shr.s32 %r52,%r53,%r34; .loc 1 46 19 add.u32 %r22,%r52,%r22; $L8: .loc 1 47 14 not.b32 %r54,%r35; .loc 1 47 10 and.b32 %r55,%r54,%r22; mov.b32 %r37,%r55; bra $L1; $L2: .loc 1 51 8 setp.le.u32 %r56,%r33,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; } /868 1591654539 399 399 100644 885 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654539 399 399 100644 3807 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 34 2 mov.b32 %r34,%r38; .loc 1 37 5 and.b32 %r35,%r34,2147483647; .loc 1 38 4 setp.gt.s32 %r39,%r35,1061752792; @ %r39 bra $L2; .loc 1 38 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 41 10 setp.le.s32 %r43,%r35,2139095039; @ %r43 bra $L4; .loc 1 41 45 sub.f32 %r37,%r38,%r38; bra $L1; $L4: .loc 1 45 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 46 14 and.b32 %r22,%r46,3; 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 47 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 48 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 48 18 neg.f32 %r37,%r58; bra $L1; $L6: .loc 1 49 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 49 18 neg.f32 %r37,%r62; bra $L1; $L7: .loc 1 51 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 54 1 mov.f32 %value,%r37; st.param.f32 [%value_out],%value; ret; } lib_a-sf_erf.o/ 1591654539 399 399 100644 16723 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 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 %r86; .reg .f32 %r87; .reg .u32 %r88; .reg .u32 %r89; .reg .f32 %r91; .reg .f32 %r95; .reg .f32 %r96; .reg .f32 %r97; .reg .f32 %r101; .reg .f32 %r102; .reg .f32 %r103; .reg .f32 %r124; .reg .f32 %r125; .reg .pred %r126; .reg .u32 %r127; .reg .u32 %r128; .reg .u32 %r129; .reg .u32 %r130; .reg .f32 %r131; .reg .f32 %r132; .reg .f32 %r133; .reg .pred %r134; .reg .pred %r135; .reg .u32 %r136; .reg .pred %r137; .reg .f32 %r138; .reg .f32 %r139; .reg .f32 %r140; .reg .f32 %r141; .reg .f32 %r142; .reg .f32 %r143; .reg .f32 %r144; .reg .f32 %r145; .reg .f32 %r146; .reg .f32 %r147; .reg .f32 %r148; .reg .f32 %r149; .reg .pred %r150; .reg .f32 %r152; .reg .f32 %r153; .reg .f32 %r154; .reg .f32 %r155; .reg .f32 %r156; .reg .f32 %r157; .reg .f32 %r158; .reg .f32 %r159; .reg .f32 %r160; .reg .f32 %r161; .reg .f32 %r162; .reg .f32 %r163; .reg .pred %r164; .reg .f32 %r165; .reg .f32 %r166; .reg .f32 %r167; .reg .pred %r168; .reg .pred %r169; .reg .f32 %r171; .reg .f32 %r172; .reg .f32 %r173; .reg .pred %r174; .reg .f32 %r175; .reg .f32 %r176; .reg .f32 %r177; .reg .f32 %r178; .reg .f32 %r179; .reg .f32 %r180; .reg .f32 %r181; .reg .f32 %r182; .reg .f32 %r183; .reg .f32 %r184; .reg .f32 %r185; .reg .f32 %r186; .reg .f32 %r187; .reg .f32 %r188; .reg .f32 %r189; .reg .f32 %r190; .reg .f32 %r191; .reg .f32 %r192; .reg .f32 %r193; .reg .f32 %r194; .reg .f32 %r195; .reg .f32 %r196; .reg .f32 %r197; .reg .f32 %r198; .reg .u32 %r199; .reg .u32 %r200; .reg .f32 %r202; .reg .f32 %r203; .reg .f32 %r204; .reg .f32 %r206; .reg .f32 %r207; .reg .f32 %r208; .reg .f32 %r209; .reg .f32 %r210; .reg .pred %r211; .reg .f32 %r212; .reg .f32 %r213; .reg .f32 %r214; .reg .f32 %r215; mov.f32 %r125,%ar0; .loc 1 110 2 mov.b32 %r88,%r125; .loc 1 111 5 and.b32 %r89,%r88,2147483647; .loc 1 112 4 setp.le.s32 %r126,%r89,2139095039; @ %r126 bra $L2; .loc 1 113 25 shr.u32 %r127,%r88,31; .loc 1 113 30 add.u32 %r128,%r127,%r127; .loc 1 114 22 mov.u32 %r130,1; sub.u32 %r129,%r130,%r128; .loc 1 114 13 cvt.rn.f32.s32 %r131,%r129; .loc 1 114 29 mov.f32 %r133,0f3f800000; div.rn.f32 %r132,%r133,%r125; .loc 1 114 25 add.f32 %r124,%r131,%r132; bra $L1; $L2: .loc 1 117 4 setp.gt.s32 %r134,%r89,1062731775; @ %r134 bra $L4; .loc 1 118 8 setp.gt.s32 %r135,%r89,830472191; @ %r135 bra $L5; .loc 1 119 13 and.b32 %r136,%r88,2080374784; setp.ne.u32 %r137,%r136,0; @ %r137 bra $L6; .loc 1 121 45 mul.f32 %r138,%r125,0f3f8375d4; .loc 1 121 40 fma.rn.f32 %r139,%r125,0f41000000,%r138; .loc 1 121 26 mul.f32 %r124,%r139,0f3e000000; bra $L1; $L6: .loc 1 122 12 fma.rn.f32 %r124,%r125,0f3e0375d4,%r125; bra $L1; $L5: .loc 1 124 8 mul.f32 %r91,%r125,%r125; .loc 1 125 34 fma.rn.f32 %r140,%r91,0fb7c756b1,0fbbbd1489; .loc 1 125 27 fma.rn.f32 %r141,%r140,%r91,0fbce9528f; .loc 1 125 20 fma.rn.f32 %r142,%r141,%r91,0fbea66beb; .loc 1 125 8 fma.rn.f32 %r143,%r142,%r91,0f3e0375d4; .loc 1 126 41 fma.rn.f32 %r144,%r91,0fb684e21a,0f390aee49; .loc 1 126 34 fma.rn.f32 %r145,%r144,%r91,0f3ba68116; .loc 1 126 27 fma.rn.f32 %r146,%r145,%r91,0f3d852a63; .loc 1 126 20 fma.rn.f32 %r147,%r146,%r91,0f3ecbbbce; .loc 1 126 8 fma.rn.f32 %r148,%r147,%r91,0f3f800000; .loc 1 127 8 div.rn.f32 %r149,%r143,%r148; .loc 1 128 15 fma.rn.f32 %r124,%r125,%r149,%r125; bra $L1; $L4: .loc 1 130 4 setp.gt.s32 %r150,%r89,1067450367; @ %r150 bra $L7; .loc 1 131 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r125; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r152,[%value_in]; } .loc 1 131 8 mov.f32 %r153,0f3f800000; sub.f32 %r95,%r152,%r153; .loc 1 132 48 fma.rn.f32 %r154,%r95,0fbb0df9c0,0f3d1151b3; .loc 1 132 41 fma.rn.f32 %r155,%r154,%r95,0fbde31cc2; .loc 1 132 34 fma.rn.f32 %r156,%r155,%r95,0f3ea2fe54; .loc 1 132 27 fma.rn.f32 %r157,%r156,%r95,0fbebe9208; .loc 1 132 20 fma.rn.f32 %r158,%r157,%r95,0f3ed46805; .loc 1 132 8 fma.rn.f32 %r96,%r158,%r95,0fbb1acdc6; .loc 1 133 48 fma.rn.f32 %r159,%r95,0f3c445aa3,0f3c5f6e13; .loc 1 133 41 fma.rn.f32 %r160,%r159,%r95,0f3e013307; .loc 1 133 34 fma.rn.f32 %r161,%r160,%r95,0f3d931ae7; .loc 1 133 27 fma.rn.f32 %r162,%r161,%r95,0f3f0a5785; .loc 1 133 20 fma.rn.f32 %r163,%r162,%r95,0f3dd9f331; .loc 1 133 8 fma.rn.f32 %r97,%r163,%r95,0f3f800000; .loc 1 134 8 setp.lt.s32 %r164,%r88,0; @ %r164 bra $L8; .loc 1 134 30 div.rn.f32 %r165,%r96,%r97; .loc 1 134 27 add.f32 %r124,%r165,0f3f58560b; bra $L1; $L8: .loc 1 134 54 div.rn.f32 %r166,%r96,%r97; .loc 1 134 51 mov.f32 %r167,0fbf58560b; sub.f32 %r124,%r167,%r166; bra $L1; $L7: .loc 1 136 5 setp.le.s32 %r168,%r89,1086324735; @ %r168 bra $L9; .loc 1 137 8 setp.ge.s32 %r169,%r88,0; .loc 1 137 49 selp.f32 %r124,0f3f800000,0fbf800000,%r169; bra $L1; $L9: .loc 1 139 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r125; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r171,[%value_in]; } .loc 1 140 13 mul.f32 %r172,%r171,%r171; .loc 1 140 5 mov.f32 %r173,0f3f800000; div.rn.f32 %r101,%r173,%r172; .loc 1 141 4 setp.gt.s32 %r174,%r89,1077336941; @ %r174 bra $L10; .loc 1 143 15 fma.rn.f32 %r175,%r101,0fc11d077e,0fc2a2932b; .loc 1 143 8 fma.rn.f32 %r176,%r175,%r101,0fc3389ae7; .loc 1 142 39 fma.rn.f32 %r177,%r176,%r101,0fc322658c; .loc 1 142 32 fma.rn.f32 %r178,%r177,%r101,0fc2798057; .loc 1 142 25 fma.rn.f32 %r179,%r178,%r101,0fc128f022; .loc 1 142 18 fma.rn.f32 %r180,%r179,%r101,0fbf31a0b7; .loc 1 142 7 fma.rn.f32 %r86,%r180,%r101,0fbc21a093; .loc 1 145 22 fma.rn.f32 %r181,%r101,0fbd777f97,0f40d23f7c; .loc 1 145 15 fma.rn.f32 %r182,%r181,%r101,0f42d9451f; .loc 1 145 8 fma.rn.f32 %r183,%r182,%r101,0f43d6810b; .loc 1 144 39 fma.rn.f32 %r184,%r183,%r101,0f442158c9; .loc 1 144 32 fma.rn.f32 %r185,%r184,%r101,0f43d9486f; .loc 1 144 25 fma.rn.f32 %r186,%r185,%r101,0f4309a863; .loc 1 144 18 fma.rn.f32 %r187,%r186,%r101,0f419d35ce; .loc 1 144 7 fma.rn.f32 %r87,%r187,%r101,0f3f800000; bra $L11; $L10: .loc 1 148 8 fma.rn.f32 %r188,%r101,0fc3f1c275,0fc480230b; .loc 1 147 39 fma.rn.f32 %r189,%r188,%r101,0fc41f6441; .loc 1 147 32 fma.rn.f32 %r190,%r189,%r101,0fc320a2ea; .loc 1 147 25 fma.rn.f32 %r191,%r190,%r101,0fc18e104b; .loc 1 147 18 fma.rn.f32 %r192,%r191,%r101,0fbf4c9dd4; .loc 1 147 7 fma.rn.f32 %r86,%r192,%r101,0fbc21a092; .loc 1 150 15 fma.rn.f32 %r193,%r101,0fc1b38712,0f43ed43a7; .loc 1 150 8 fma.rn.f32 %r194,%r193,%r101,0f451f90ce; .loc 1 149 39 fma.rn.f32 %r195,%r194,%r101,0f4547fdbb; .loc 1 149 32 fma.rn.f32 %r196,%r195,%r101,0f44c01759; .loc 1 149 25 fma.rn.f32 %r197,%r196,%r101,0f43a2e571; .loc 1 149 18 fma.rn.f32 %r198,%r197,%r101,0f41f2b459; .loc 1 149 7 fma.rn.f32 %r87,%r198,%r101,0f3f800000; $L11: .loc 1 153 2 mov.b32 %r200,%r171; and.b32 %r199,%r200,-4096; mov.b32 %r102,%r199; .loc 1 154 23 neg.f32 %r202,%r102; .loc 1 154 8 fma.rn.f32 %r203,%r202,%r102,0fbf100000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r203; call (%value_in),__ieee754_expf,(%out_arg1); ld.param.f32 %r204,[%value_in]; } .loc 1 154 60 sub.f32 %r206,%r102,%r171; .loc 1 154 71 div.rn.f32 %r207,%r86,%r87; .loc 1 154 66 add.f32 %r208,%r171,%r102; .loc 1 154 43 fma.rn.f32 %r209,%r206,%r208,%r207; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r209; call (%value_in),__ieee754_expf,(%out_arg1); ld.param.f32 %r210,[%value_in]; } .loc 1 154 5 mul.f32 %r103,%r204,%r210; .loc 1 155 4 setp.lt.s32 %r211,%r88,0; @ %r211 bra $L12; .loc 1 155 24 div.rn.f32 %r212,%r103,%r171; .loc 1 155 22 mov.f32 %r213,0f3f800000; sub.f32 %r124,%r213,%r212; bra $L1; $L12: .loc 1 155 42 div.rn.f32 %r214,%r103,%r171; .loc 1 155 44 mov.f32 %r215,0f3f800000; sub.f32 %r124,%r214,%r215; $L1: .loc 1 156 1 mov.f32 %value,%r124; 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 %r87; .reg .f32 %r88; .reg .u32 %r89; .reg .u32 %r90; .reg .f32 %r91; .reg .f32 %r97; .reg .f32 %r98; .reg .f32 %r99; .reg .f32 %r102; .reg .f32 %r103; .reg .f32 %r104; .reg .f32 %r116; .reg .f32 %r127; .reg .f32 %r128; .reg .pred %r129; .reg .u32 %r130; .reg .u32 %r131; .reg .f32 %r132; .reg .f32 %r133; .reg .f32 %r134; .reg .pred %r135; .reg .pred %r136; .reg .f32 %r137; .reg .f32 %r138; .reg .f32 %r139; .reg .f32 %r140; .reg .f32 %r141; .reg .f32 %r142; .reg .f32 %r143; .reg .f32 %r144; .reg .f32 %r145; .reg .f32 %r146; .reg .f32 %r147; .reg .pred %r148; .reg .f32 %r149; .reg .f32 %r150; .reg .f32 %r151; .reg .f32 %r152; .reg .f32 %r153; .reg .pred %r155; .reg .f32 %r157; .reg .f32 %r158; .reg .f32 %r159; .reg .f32 %r160; .reg .f32 %r161; .reg .f32 %r162; .reg .f32 %r163; .reg .f32 %r164; .reg .f32 %r165; .reg .f32 %r166; .reg .f32 %r167; .reg .f32 %r168; .reg .pred %r169; .reg .f32 %r170; .reg .f32 %r171; .reg .f32 %r172; .reg .f32 %r173; .reg .pred %r174; .reg .f32 %r176; .reg .f32 %r177; .reg .f32 %r178; .reg .pred %r179; .reg .f32 %r180; .reg .f32 %r181; .reg .f32 %r182; .reg .f32 %r183; .reg .f32 %r184; .reg .f32 %r185; .reg .f32 %r186; .reg .f32 %r187; .reg .f32 %r188; .reg .f32 %r189; .reg .f32 %r190; .reg .f32 %r191; .reg .f32 %r192; .reg .u32 %r194; .reg .u32 %r196; .reg .u32 %r197; .reg .u16 %r199; .reg .u16 %r200; .reg .u16 %r201; .reg .u32 %r202; .reg .u16 %r203; .reg .pred %r204; .reg .f32 %r205; .reg .f32 %r206; .reg .f32 %r207; .reg .f32 %r208; .reg .f32 %r209; .reg .f32 %r210; .reg .f32 %r211; .reg .f32 %r212; .reg .f32 %r213; .reg .f32 %r214; .reg .f32 %r215; .reg .u32 %r216; .reg .u32 %r217; .reg .f32 %r219; .reg .f32 %r220; .reg .f32 %r221; .reg .f32 %r223; .reg .f32 %r224; .reg .f32 %r225; .reg .f32 %r226; .reg .f32 %r227; .reg .pred %r228; .reg .f32 %r229; .reg .f32 %r230; .reg .pred %r231; mov.f32 %r128,%ar0; .loc 1 167 2 mov.b32 %r89,%r128; .loc 1 168 5 and.b32 %r90,%r89,2147483647; .loc 1 169 4 setp.le.s32 %r129,%r90,2139095039; @ %r129 bra $L15; .loc 1 171 36 shr.u32 %r130,%r89,31; .loc 1 171 41 add.u32 %r131,%r130,%r130; .loc 1 171 13 cvt.rn.f32.s32 %r132,%r131; .loc 1 171 49 mov.f32 %r134,0f3f800000; div.rn.f32 %r133,%r134,%r128; .loc 1 171 45 add.f32 %r127,%r132,%r133; bra $L14; $L15: .loc 1 174 4 setp.gt.s32 %r135,%r90,1062731775; @ %r135 bra $L17; .loc 1 175 8 setp.gt.s32 %r136,%r90,595591167; @ %r136 bra $L18; .loc 1 176 13 mov.f32 %r137,0f3f800000; sub.f32 %r127,%r137,%r128; bra $L14; $L18: .loc 1 177 8 mul.f32 %r91,%r128,%r128; .loc 1 178 34 fma.rn.f32 %r138,%r91,0fb7c756b1,0fbbbd1489; .loc 1 178 27 fma.rn.f32 %r139,%r138,%r91,0fbce9528f; .loc 1 178 20 fma.rn.f32 %r140,%r139,%r91,0fbea66beb; .loc 1 178 8 fma.rn.f32 %r141,%r140,%r91,0f3e0375d4; .loc 1 179 41 fma.rn.f32 %r142,%r91,0fb684e21a,0f390aee49; .loc 1 179 34 fma.rn.f32 %r143,%r142,%r91,0f3ba68116; .loc 1 179 27 fma.rn.f32 %r144,%r143,%r91,0f3d852a63; .loc 1 179 20 fma.rn.f32 %r145,%r144,%r91,0f3ecbbbce; .loc 1 179 8 fma.rn.f32 %r146,%r145,%r91,0f3f800000; .loc 1 180 8 div.rn.f32 %r147,%r141,%r146; mul.f32 %r116,%r147,%r128; .loc 1 181 8 setp.gt.s32 %r148,%r89,1048575999; @ %r148 bra $L19; .loc 1 182 16 add.f32 %r149,%r128,%r116; .loc 1 182 13 mov.f32 %r150,0f3f800000; sub.f32 %r127,%r150,%r149; bra $L14; $L19: .loc 1 185 10 mov.f32 %r152,0f3f000000; sub.f32 %r151,%r128,%r152; .loc 1 185 5 add.f32 %r153,%r151,%r116; .loc 1 186 22 sub.f32 %r127,%r152,%r153; bra $L14; $L17: .loc 1 189 4 setp.gt.s32 %r155,%r90,1067450367; @ %r155 bra $L20; .loc 1 190 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r128; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r157,[%value_in]; } .loc 1 190 8 mov.f32 %r158,0f3f800000; sub.f32 %r97,%r157,%r158; .loc 1 191 48 fma.rn.f32 %r159,%r97,0fbb0df9c0,0f3d1151b3; .loc 1 191 41 fma.rn.f32 %r160,%r159,%r97,0fbde31cc2; .loc 1 191 34 fma.rn.f32 %r161,%r160,%r97,0f3ea2fe54; .loc 1 191 27 fma.rn.f32 %r162,%r161,%r97,0fbebe9208; .loc 1 191 20 fma.rn.f32 %r163,%r162,%r97,0f3ed46805; .loc 1 191 8 fma.rn.f32 %r98,%r163,%r97,0fbb1acdc6; .loc 1 192 48 fma.rn.f32 %r164,%r97,0f3c445aa3,0f3c5f6e13; .loc 1 192 41 fma.rn.f32 %r165,%r164,%r97,0f3e013307; .loc 1 192 34 fma.rn.f32 %r166,%r165,%r97,0f3d931ae7; .loc 1 192 27 fma.rn.f32 %r167,%r166,%r97,0f3f0a5785; .loc 1 192 20 fma.rn.f32 %r168,%r167,%r97,0f3dd9f331; .loc 1 192 8 fma.rn.f32 %r99,%r168,%r97,0f3f800000; .loc 1 193 8 setp.lt.s32 %r169,%r89,0; @ %r169 bra $L21; .loc 1 194 36 div.rn.f32 %r170,%r98,%r99; .loc 1 194 33 mov.f32 %r171,0f3e1ea7d4; sub.f32 %r127,%r171,%r170; bra $L14; $L21: .loc 1 196 12 div.rn.f32 %r172,%r98,%r99; .loc 1 196 5 add.f32 %r173,%r172,0f3f58560b; .loc 1 196 26 add.f32 %r127,%r173,0f3f800000; bra $L14; $L20: .loc 1 199 5 setp.gt.s32 %r174,%r90,1105199103; @ %r174 bra $L22; .loc 1 200 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r128; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r176,[%value_in]; } .loc 1 201 17 mul.f32 %r177,%r176,%r176; .loc 1 201 9 mov.f32 %r178,0f3f800000; div.rn.f32 %r102,%r178,%r177; .loc 1 202 8 setp.gt.s32 %r179,%r90,1077336940; @ %r179 bra $L23; .loc 1 204 15 fma.rn.f32 %r180,%r102,0fc11d077e,0fc2a2932b; .loc 1 204 8 fma.rn.f32 %r181,%r180,%r102,0fc3389ae7; .loc 1 203 43 fma.rn.f32 %r182,%r181,%r102,0fc322658c; .loc 1 203 36 fma.rn.f32 %r183,%r182,%r102,0fc2798057; .loc 1 203 29 fma.rn.f32 %r184,%r183,%r102,0fc128f022; .loc 1 203 22 fma.rn.f32 %r185,%r184,%r102,0fbf31a0b7; .loc 1 203 11 fma.rn.f32 %r87,%r185,%r102,0fbc21a093; .loc 1 206 22 fma.rn.f32 %r186,%r102,0fbd777f97,0f40d23f7c; .loc 1 206 15 fma.rn.f32 %r187,%r186,%r102,0f42d9451f; .loc 1 206 8 fma.rn.f32 %r188,%r187,%r102,0f43d6810b; .loc 1 205 43 fma.rn.f32 %r189,%r188,%r102,0f442158c9; .loc 1 205 36 fma.rn.f32 %r190,%r189,%r102,0f43d9486f; .loc 1 205 29 fma.rn.f32 %r191,%r190,%r102,0f4309a863; .loc 1 205 22 fma.rn.f32 %r192,%r191,%r102,0f419d35ce; .loc 1 205 11 fma.rn.f32 %r88,%r192,%r102,0f3f800000; bra $L24; $L23: .loc 1 208 8 shr.u32 %r194,%r89,31; .loc 1 208 14 set.u32.gt.s32 %r196,%r90,1086324735; neg.s32 %r197,%r196; .loc 1 208 10 cvt.u16.u32 %r200,%r194; cvt.u16.u32 %r201,%r197; and.b16 %r199,%r200,%r201; .loc 1 208 5 cvt.u32.u16 %r202,%r199; cvt.u16.u8 %r203,%r202; setp.eq.u16 %r204,%r203,0; @ %r204 bra $L25; $L27: .loc 1 208 38 mov.f32 %r127,0f40000000; bra $L14; $L25: .loc 1 210 8 fma.rn.f32 %r205,%r102,0fc3f1c275,0fc480230b; .loc 1 209 43 fma.rn.f32 %r206,%r205,%r102,0fc41f6441; .loc 1 209 36 fma.rn.f32 %r207,%r206,%r102,0fc320a2ea; .loc 1 209 29 fma.rn.f32 %r208,%r207,%r102,0fc18e104b; .loc 1 209 22 fma.rn.f32 %r209,%r208,%r102,0fbf4c9dd4; .loc 1 209 11 fma.rn.f32 %r87,%r209,%r102,0fbc21a092; .loc 1 212 15 fma.rn.f32 %r210,%r102,0fc1b38712,0f43ed43a7; .loc 1 212 8 fma.rn.f32 %r211,%r210,%r102,0f451f90ce; .loc 1 211 43 fma.rn.f32 %r212,%r211,%r102,0f4547fdbb; .loc 1 211 36 fma.rn.f32 %r213,%r212,%r102,0f44c01759; .loc 1 211 29 fma.rn.f32 %r214,%r213,%r102,0f43a2e571; .loc 1 211 22 fma.rn.f32 %r215,%r214,%r102,0f41f2b459; .loc 1 211 11 fma.rn.f32 %r88,%r215,%r102,0f3f800000; $L24: .loc 1 215 6 mov.b32 %r217,%r176; and.b32 %r216,%r217,-4096; mov.b32 %r103,%r216; .loc 1 216 27 neg.f32 %r219,%r103; .loc 1 216 12 fma.rn.f32 %r220,%r219,%r103,0fbf100000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r220; call (%value_in),__ieee754_expf,(%out_arg1); ld.param.f32 %r221,[%value_in]; } .loc 1 217 21 sub.f32 %r223,%r103,%r176; .loc 1 217 32 div.rn.f32 %r224,%r87,%r88; .loc 1 217 27 add.f32 %r225,%r176,%r103; .loc 1 217 4 fma.rn.f32 %r226,%r223,%r225,%r224; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r226; call (%value_in),__ieee754_expf,(%out_arg1); ld.param.f32 %r227,[%value_in]; } .loc 1 216 9 mul.f32 %r104,%r221,%r227; .loc 1 218 8 setp.le.s32 %r228,%r89,0; @ %r228 bra $L26; .loc 1 218 23 div.rn.f32 %r127,%r104,%r176; bra $L14; $L26: .loc 1 218 44 div.rn.f32 %r229,%r104,%r176; .loc 1 218 42 mov.f32 %r230,0f40000000; sub.f32 %r127,%r230,%r229; bra $L14; $L22: .loc 1 220 8 setp.le.s32 %r231,%r89,0; @ %r231 bra $L27; .loc 1 220 26 mov.f32 %r127,0f00000000; $L14: .loc 1 222 1 mov.f32 %value,%r127; st.param.f32 [%value_out],%value; ret; } /889 1591654539 399 399 100644 926 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } /907 1591654539 399 399 100644 7030 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 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 %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 .u32 %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 %r81; .reg .f32 %r84; .reg .u32 %r93; .reg .f32 %r94; .reg .f32 %r95; .reg .pred %r96; .reg .pred %r97; .reg .pred %r98; .reg .pred %r99; .reg .u32 %r101; .reg .u32 %r102; .reg .u32 %r104; .reg .u32 %r105; .reg .u16 %r107; .reg .u16 %r108; .reg .u16 %r109; .reg .u32 %r110; .reg .u16 %r111; .reg .pred %r112; .reg .f32 %r113; .reg .pred %r114; .reg .f32 %r115; .reg .pred %r116; .reg .pred %r117; .reg .pred %r118; .reg .pred %r119; .reg .f32 %r120; .reg .pred %r121; .reg .f32 %r122; .reg .f32 %r124; .reg .pred %r125; .reg .f32 %r126; .reg .f32 %r127; .reg .f32 %r128; .reg .f32 %r129; .reg .f32 %r130; .reg .f32 %r131; .reg .f32 %r132; .reg .f32 %r133; .reg .f32 %r134; .reg .f32 %r135; .reg .pred %r136; .reg .f32 %r137; .reg .f32 %r138; .reg .f32 %r139; .reg .pred %r140; .reg .f32 %r141; .reg .pred %r142; .reg .pred %r143; .reg .f32 %r144; .reg .f32 %r145; .reg .f32 %r146; .reg .u32 %r147; .reg .pred %r148; .reg .f32 %r149; .reg .f32 %r150; .reg .f32 %r151; .reg .u32 %r152; .reg .f32 %r153; .reg .pred %r155; .reg .u32 %r156; .reg .u32 %r157; .reg .u32 %r158; .reg .u32 %r159; .reg .f32 %r160; .reg .f32 %r161; .reg .f32 %r162; .reg .u32 %r163; .reg .u32 %r164; .reg .u32 %r165; .reg .u32 %r166; .reg .f32 %r167; .reg .f32 %r168; .reg .f32 %r169; .reg .u32 %r170; mov.f32 %r95,%ar0; .loc 1 51 2 mov.b32 %r64,%r95; .loc 1 54 5 and.b32 %r60,%r64,2147483647; .loc 1 57 4 setp.le.u32 %r96,%r60,1100331075; @ %r96 bra $L2; .loc 1 58 8 setp.le.u32 %r97,%r60,2139095040; @ %r97 bra $L3; .loc 1 59 18 add.f32 %r94,%r95,%r95; bra $L1; $L3: .loc 1 60 8 setp.ne.u32 %r98,%r60,2139095040; @ %r98 bra $L5; .loc 1 61 21 setp.lt.s32 %r99,%r64,0; selp.f32 %r94,0fbf800000,%r95,%r99; bra $L1; $L5: .loc 1 62 13 not.b32 %r101,%r64; shr.u32 %r102,%r101,31; .loc 1 62 24 set.u32.gt.u32 %r104,%r60,1118925335; neg.s32 %r105,%r104; .loc 1 62 18 cvt.u16.u32 %r108,%r102; cvt.u16.u32 %r109,%r105; and.b16 %r107,%r108,%r109; .loc 1 62 8 cvt.u32.u16 %r110,%r107; cvt.u16.u8 %r111,%r110; setp.eq.u16 %r112,%r111,0; @ %r112 bra $L6; .loc 1 63 14 mov.f32 %r113,0f7149f2ca; mul.f32 %r94,%r113,0f7149f2ca; bra $L1; $L6: .loc 1 64 8 setp.ge.s32 %r114,%r64,0; @ %r114 bra $L7; .loc 1 65 7 add.f32 %r115,%r95,0f0da24260; .loc 1 65 5 setp.lt.f32 %r116,%r115,0f00000000; @ ! %r116 bra $L27; bra $L23; $L2: .loc 1 71 4 setp.le.u32 %r117,%r60,1051816472; @ %r117 bra $L9; .loc 1 72 8 setp.gt.u32 %r118,%r60,1065686417; @ %r118 bra $L10; .loc 1 73 5 setp.lt.s32 %r119,%r64,0; @ %r119 bra $L11; .loc 1 74 11 mov.f32 %r120,0f3f317180; sub.f32 %r55,%r95,%r120; .loc 1 74 42 mov.u32 %r58,1; .loc 1 74 28 mov.f32 %r56,0f3717f7d1; bra $L12; $L11: .loc 1 76 11 add.f32 %r55,%r95,0f3f317180; .loc 1 76 42 mov.u32 %r58,-1; .loc 1 76 28 mov.f32 %r56,0fb717f7d1; bra $L12; $L10: .loc 1 78 14 mul.f32 %r84,%r95,0f3fb8aa3b; .loc 1 78 37 setp.ge.s32 %r121,%r64,0; selp.f32 %r59,0f3f000000,0fbf000000,%r121; $L13: .loc 1 78 16 add.f32 %r122,%r59,%r84; .loc 1 78 6 cvt.rzi.s32.f32 %r58,%r122; .loc 1 79 6 cvt.rn.f32.s32 %r65,%r58; .loc 1 80 6 fma.rn.f32 %r55,%r65,0fbf317180,%r95; .loc 1 81 6 mul.f32 %r56,%r65,0f3717f7d1; $L12: .loc 1 83 9 sub.f32 %r95,%r55,%r56; .loc 1 84 14 sub.f32 %r124,%r55,%r95; .loc 1 84 9 sub.f32 %r57,%r124,%r56; bra $L14; $L9: .loc 1 86 9 setp.gt.u32 %r125,%r60,855638015; @ %r125 bra $L25; .loc 1 87 8 add.f32 %r66,%r95,0f7149f2ca; .loc 1 88 19 sub.f32 %r126,%r66,%r66; .loc 1 88 15 sub.f32 %r94,%r95,%r126; bra $L1; $L25: .loc 1 90 9 mov.u32 %r58,0; $L14: .loc 1 93 6 mul.f32 %r67,%r95,0f3f000000; .loc 1 94 6 mul.f32 %r68,%r95,%r67; .loc 1 95 42 fma.rn.f32 %r127,%r68,0fb457edbb,0f36867e54; .loc 1 95 34 fma.rn.f32 %r128,%r127,%r68,0fb8a670cd; .loc 1 95 26 fma.rn.f32 %r129,%r128,%r68,0f3ad00d01; .loc 1 95 18 fma.rn.f32 %r130,%r129,%r68,0fbd088889; .loc 1 95 5 fma.rn.f32 %r69,%r130,%r68,0f3f800000; .loc 1 96 5 neg.f32 %r131,%r67; fma.rn.f32 %r70,%r131,%r69,0f40400000; .loc 1 97 15 sub.f32 %r132,%r69,%r70; .loc 1 97 31 neg.f32 %r133,%r95; fma.rn.f32 %r134,%r133,%r70,0f40c00000; .loc 1 97 18 div.rn.f32 %r135,%r132,%r134; .loc 1 97 5 mul.f32 %r71,%r135,%r68; .loc 1 98 4 setp.ne.u32 %r136,%r58,0; @ %r136 bra $L15; .loc 1 98 26 neg.f32 %r137,%r68; fma.rn.f32 %r138,%r95,%r71,%r137; .loc 1 98 20 sub.f32 %r94,%r95,%r138; bra $L1; $L15: .loc 1 100 16 sub.f32 %r38,%r71,%r57; .loc 1 100 9 neg.f32 %r139,%r57; fma.rn.f32 %r72,%r38,%r95,%r139; .loc 1 101 8 sub.f32 %r73,%r72,%r68; .loc 1 102 8 setp.ne.u32 %r140,%r58,-1; @ %r140 bra $L16; .loc 1 102 37 sub.f32 %r141,%r95,%r73; .loc 1 102 40 fma.rn.f32 %r94,%r141,0f3f000000,0fbf000000; bra $L1; $L16: .loc 1 103 14 setp.ne.u32 %r142,%r58,1; @ %r142 bra $L17; .loc 1 104 12 setp.lt.f32 %r143,%r95,0fbe800000; @ ! %r143 bra $L28; .loc 1 104 55 add.f32 %r144,%r95,0f3f000000; .loc 1 104 52 sub.f32 %r145,%r73,%r144; .loc 1 104 49 mul.f32 %r94,%r145,0fc0000000; bra $L1; $L28: .loc 1 105 47 sub.f32 %r146,%r95,%r73; .loc 1 105 33 fma.rn.f32 %r94,%r146,0f40000000,0f3f800000; bra $L1; $L17: shl.b32 %r93,%r58,23; .loc 1 107 18 add.u32 %r147,%r58,1; .loc 1 107 9 setp.le.u32 %r148,%r147,57; @ %r148 bra $L20; .loc 1 109 20 sub.f32 %r149,%r73,%r95; .loc 1 109 12 mov.f32 %r151,0f3f800000; sub.f32 %r150,%r151,%r149; .loc 1 111 3 mov.b32 %r152,%r150; add.u32 %r46,%r93,%r152; .loc 1 112 18 mov.b32 %r153,%r46; sub.f32 %r94,%r153,%r151; bra $L1; $L20: .loc 1 115 8 setp.gt.s32 %r155,%r58,22; @ %r155 bra $L21; .loc 1 117 10 mov.u32 %r157,16777216; shr.s32 %r156,%r157,%r58; mov.u32 %r159,1065353216; sub.u32 %r158,%r159,%r156; .loc 1 118 18 sub.f32 %r160,%r73,%r95; .loc 1 118 12 mov.b32 %r162,%r158; sub.f32 %r161,%r162,%r160; .loc 1 120 3 mov.b32 %r163,%r161; add.u32 %r50,%r93,%r163; mov.b32 %r94,%r50; bra $L1; $L21: .loc 1 123 3 mov.u32 %r165,127; sub.u32 %r164,%r165,%r58; shl.b32 %r166,%r164,23; .loc 1 124 18 mov.b32 %r168,%r166; add.f32 %r167,%r73,%r168; .loc 1 124 12 sub.f32 %r81,%r95,%r167; .loc 1 125 12 add.f32 %r169,%r81,0f3f800000; .loc 1 127 3 mov.b32 %r170,%r169; add.u32 %r54,%r93,%r170; mov.b32 %r94,%r54; bra $L1; $L23: .loc 1 61 21 mov.f32 %r94,0fbf800000; bra $L1; $L7: .loc 1 78 14 mul.f32 %r84,%r95,0f3fb8aa3b; .loc 1 78 37 mov.f32 %r59,0f3f000000; bra $L13; $L27: .loc 1 78 14 mul.f32 %r84,%r95,0f3fb8aa3b; .loc 1 78 37 mov.f32 %r59,0fbf000000; bra $L13; $L1: .loc 1 131 1 mov.f32 %value,%r94; st.param.f32 [%value_out],%value; ret; } lib_a-sf_fabs.o/1591654539 399 399 100644 620 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/1591654539 399 399 100644 1595 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; .reg .pred %r34; mov.f32 %r25,%ar0; mov.f32 %r26,%ar1; .loc 1 17 11 { .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 18 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 20 6 setp.eq.u32 %r33,%r28,1; @ %r33 bra $L5; .loc 1 23 24 setp.gt.f32 %r34,%r25,%r26; @ ! %r34 bra $L11; sub.f32 %r25,%r25,%r26; bra $L2; $L4: .loc 1 19 42 mov.f32 %r25,%r26; bra $L2; $L5: .loc 1 21 12 mov.f32 %r25,0f7f800000; bra $L2; $L11: .loc 1 23 24 mov.f32 %r25,0f00000000; $L2: .loc 1 24 1 mov.f32 %value,%r25; st.param.f32 [%value_out],%value; ret; } /925 1591654539 399 399 100644 697 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } /944 1591654539 399 399 100644 2217 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r22; .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 %r22,%r38; .loc 1 43 5 and.b32 %r33,%r22,2147483647; .loc 1 44 10 shr.u32 %r39,%r33,23; .loc 1 44 15 add.u32 %r34,%r39,-127; .loc 1 45 4 setp.gt.s32 %r40,%r34,22; @ %r40 bra $L2; .loc 1 46 8 setp.ge.s32 %r41,%r34,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,%r22,0; @ %r44 bra $L10; .loc 1 49 14 setp.eq.u32 %r45,%r33,0; selp.f32 %r37,%r38,0fbf800000,%r45; bra $L1; $L3: .loc 1 53 19 mov.u32 %r46,8388607; shr.s32 %r35,%r46,%r34; .loc 1 54 9 and.b32 %r47,%r22,%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,%r22,0; @ %r51 bra $L8; .loc 1 56 34 mov.u32 %r53,8388608; shr.s32 %r52,%r53,%r34; .loc 1 56 19 add.u32 %r22,%r52,%r22; $L8: .loc 1 57 14 not.b32 %r54,%r35; .loc 1 57 10 and.b32 %r55,%r54,%r22; mov.b32 %r37,%r55; bra $L1; $L2: .loc 1 61 8 setp.le.u32 %r56,%r33,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/ 1591654539 399 399 100644 992 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .f32 %r27; .reg .f32 %r28; .reg .f32 %r29; .reg .f64 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r34; mov.f32 %r27,%ar0; mov.f32 %r28,%ar1; mov.f32 %r29,%ar2; .loc 1 25 20 cvt.f64.f32 %r31,%r27; .loc 1 25 47 cvt.f64.f32 %r32,%r29; .loc 1 25 33 cvt.f64.f32 %r33,%r28; .loc 1 25 45 fma.rn.f64 %r34,%r31,%r33,%r32; .loc 1 25 10 cvt.rn.f32.f64 %value,%r34; .loc 1 26 1 st.param.f32 [%value_out],%value; ret; } lib_a-sf_fmax.o/1591654539 399 399 100644 1465 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/1591654539 399 399 100644 1465 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } /962 1591654539 399 399 100644 1217 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } /985 1591654539 399 399 100644 2002 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r32; .reg .u32 %r36; .reg .f32 %r37; .reg .f32 %r38; .reg .u64 %r39; .reg .u32 %r40; .reg .u32 %r42; .reg .u32 %r43; .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; mov.f32 %r38,%ar0; mov.u64 %r39,%ar1; .loc 1 33 2 mov.b32 %r32,%r38; .loc 1 34 5 and.b32 %r30,%r32,2147483647; .loc 1 35 8 mov.u32 %r40,0; st.u32 [%r39],%r40; .loc 1 36 5 set.u32.gt.s32 %r42,%r30,2139095039; neg.s32 %r43,%r42; .loc 1 36 31 set.u32.eq.u32 %r45,%r30,0; neg.s32 %r46,%r45; .loc 1 36 29 cvt.u16.u32 %r48,%r43; cvt.u16.u32 %r49,%r46; or.b16 %r47,%r48,%r49; .loc 1 36 4 cvt.u32.u16 %r50,%r47; cvt.u16.u8 %r51,%r50; setp.ne.u16 %r52,%r51,0; @ %r52 bra $L4; .loc 1 37 5 and.b32 %r53,%r32,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 %r32,%r55; .loc 1 40 9 and.b32 %r30,%r32,2147483647; mov.u32 %r36,-25; bra $L3; $L5: mov.u32 %r36,%r40; $L3: .loc 1 43 14 shr.s32 %r56,%r30,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,%r32,-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; } /1003 1591654539 399 399 100644 1465 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r26; .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 %r26,%r24,8; .loc 1 33 6 setp.le.s32 %r33,%r26,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 %r26,%r26,%r26; .loc 1 33 6 setp.gt.s32 %r35,%r26,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; } /1021 1591654539 399 399 100644 430 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } /1042 1591654539 399 399 100644 691 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 21 2 mov.b32 %r23,%r27; .loc 1 22 5 and.b32 %r29,%r23,2147483647; .loc 1 23 9 set.u32.eq.u32 %r31,%r29,2139095040; neg.s32 %value,%r31; .loc 1 24 1 st.param.u32 [%value_out],%value; ret; } /1060 1591654539 399 399 100644 700 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 13 2 mov.b32 %r23,%r27; .loc 1 14 5 and.b32 %r29,%r23,2147483647; .loc 1 15 9 set.u32.eq.u32 %r31,%r29,2139095040; neg.s32 %value,%r31; .loc 1 16 1 st.param.u32 [%value_out],%value; ret; } /1079 1591654539 399 399 100644 691 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 31 2 mov.b32 %r23,%r27; .loc 1 32 5 and.b32 %r29,%r23,2147483647; .loc 1 33 9 set.u32.gt.s32 %r31,%r29,2139095040; neg.s32 %value,%r31; .loc 1 34 1 st.param.u32 [%value_out],%value; ret; } /1097 1591654539 399 399 100644 700 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 23 2 mov.b32 %r23,%r27; .loc 1 24 5 and.b32 %r29,%r23,2147483647; .loc 1 25 9 set.u32.gt.s32 %r31,%r29,2139095040; neg.s32 %value,%r31; .loc 1 26 1 st.param.u32 [%value_out],%value; ret; } /1116 1591654539 399 399 100644 2683 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r37; .reg .u32 %r38; .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 %r54; .reg .u32 %r55; .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; 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; .loc 1 26 4 set.u32.eq.u32 %r40,%r35,0; neg.s32 %r41,%r40; .loc 1 26 20 cvt.u16.u32 %r43,%r38; cvt.u16.u32 %r44,%r41; 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; .loc 1 28 4 set.u32.eq.u32 %r57,%r52,0; neg.s32 %r58,%r57; .loc 1 28 20 cvt.u16.u32 %r60,%r55; cvt.u16.u32 %r61,%r58; 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; } /1134 1591654539 399 399 100644 2613 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r44; .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 %r44,%r47,8388607; .loc 1 78 14 or.b32 %r65,%r44,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; } /1153 1591654539 399 399 100644 1951 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r36; .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 %r36,%r42; .loc 1 24 41 shr.u32 %r43,%r36,23; and.b32 %r23,%r43,255; .loc 1 24 48 add.u32 %r35,%r23,-127; .loc 1 25 37 setp.lt.s32 %r44,%r36,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.ne.u32 %r47,%r35,-1; @ %r47 bra $L9; cvt.s64.s32 %r41,%r34; bra $L1; $L4: .loc 1 26 5 and.b32 %r38,%r36,8388607; .loc 1 27 5 or.b32 %r39,%r38,8388608; .loc 1 33 15 setp.le.s32 %r48,%r35,22; @ %r48 bra $L6; .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 $L7; $L6: .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 $L7; $L3: .loc 1 42 14 cvt.rzi.s64.f32 %r41,%r42; bra $L1; $L7: .loc 1 44 15 cvt.s64.s32 %r57,%r34; mul.lo.u64 %r41,%r57,%r33; bra $L1; $L9: .loc 1 32 43 mov.u64 %r41,0; $L1: .loc 1 45 1 mov.u64 %value,%r41; st.param.u64 [%value_out],%value; ret; } /1173 1591654539 399 399 100644 6172 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 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 .f32 %r22; .reg .u32 %r32; .reg .f32 %r34; .reg .f32 %r36; .reg .f32 %r48; .reg .f32 %r54; .reg .f32 %r55; .reg .u32 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .f32 %r61; .reg .u32 %r62; .reg .f32 %r63; .reg .f32 %r64; .reg .f32 %r66; .reg .f32 %r67; .reg .f32 %r68; .reg .f32 %r77; .reg .f32 %r78; .reg .f32 %r79; .reg .pred %r80; .reg .pred %r81; .reg .pred %r82; .reg .pred %r83; .reg .f32 %r84; .reg .pred %r85; .reg .f32 %r86; .reg .u32 %r88; .reg .u32 %r89; .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 .f32 %r99; .reg .u32 %r101; .reg .pred %r102; .reg .f32 %r103; .reg .pred %r104; .reg .u32 %r105; .reg .pred %r106; .reg .f32 %r107; .reg .f32 %r108; .reg .f32 %r109; .reg .f32 %r110; .reg .u32 %r111; .reg .pred %r112; .reg .u32 %r113; .reg .u32 %r114; .reg .u32 %r115; .reg .f32 %r116; .reg .f32 %r117; .reg .pred %r118; .reg .pred %r119; .reg .pred %r120; .reg .f32 %r121; .reg .f32 %r123; .reg .pred %r124; .reg .f32 %r125; .reg .f32 %r126; .reg .f32 %r127; .reg .f32 %r128; .reg .f32 %r129; .reg .f32 %r130; .reg .f32 %r131; .reg .f32 %r132; .reg .f32 %r133; .reg .f32 %r134; .reg .f32 %r135; .reg .f32 %r136; .reg .pred %r137; .reg .f32 %r138; .reg .f32 %r139; .reg .f32 %r140; .reg .f32 %r141; .reg .f32 %r142; .reg .f32 %r143; mov.f32 %r79,%ar0; .loc 1 50 2 mov.b32 %r58,%r79; .loc 1 54 5 setp.le.s32 %r80,%r58,2139095039; @ %r80 bra $L2; .loc 1 54 40 add.f32 %r78,%r79,%r79; bra $L1; $L2: .loc 1 55 5 setp.gt.s32 %r81,%r58,1054086102; @ %r81 bra $L4; .loc 1 51 5 and.b32 %r62,%r58,2147483647; .loc 1 56 8 setp.le.s32 %r82,%r62,1065353215; @ %r82 bra $L5; .loc 1 57 5 setp.neu.f32 %r83,%r79,0fbf800000; @ %r83 bra $L6; .loc 1 57 35 mov.f32 %r84,0fcc000000; div.rn.f32 %r78,%r84,0f00000000; bra $L1; $L6: .loc 1 58 17 sub.f32 %r22,%r79,%r79; .loc 1 58 20 div.rn.f32 %r78,%r22,%r22; bra $L1; $L5: .loc 1 60 8 setp.gt.s32 %r85,%r62,822083583; @ %r85 bra $L7; .loc 1 61 11 add.f32 %r86,%r79,0f4c000000; .loc 1 61 5 set.u32.gt.f32 %r88,%r86,0f00000000; neg.s32 %r89,%r88; .loc 1 62 14 set.u32.le.s32 %r91,%r62,612368383; neg.s32 %r92,%r91; cvt.u16.u32 %r94,%r89; cvt.u16.u32 %r95,%r92; and.b16 %r93,%r94,%r95; cvt.u32.u16 %r96,%r93; cvt.u16.u8 %r97,%r96; setp.ne.u16 %r98,%r97,0; @ %r98 bra $L19; .loc 1 65 19 mul.f32 %r99,%r79,%r79; .loc 1 65 16 fma.rn.f32 %r78,%r99,0fbf000000,%r79; bra $L1; $L7: .loc 1 67 13 add.u32 %r101,%r58,1097468384; .loc 1 67 8 setp.le.u32 %r102,%r101,1097468384; @ %r102 bra $L8; .loc 1 94 17 mul.f32 %r103,%r79,0f3f000000; .loc 1 94 6 mul.f32 %r64,%r103,%r79; .loc 1 68 4 mov.u32 %r57,0; bra $L9; $L4: .loc 1 71 8 setp.gt.s32 %r104,%r58,1509949439; @ %r104 bra $L10; $L8: .loc 1 72 6 add.f32 %r63,%r79,0f3f800000; .loc 1 73 3 mov.b32 %r58,%r63; .loc 1 74 18 shr.s32 %r105,%r58,23; .loc 1 74 13 add.u32 %r57,%r105,-127; .loc 1 76 38 setp.le.s32 %r106,%r57,0; @ %r106 bra $L11; .loc 1 76 35 sub.f32 %r107,%r63,%r79; .loc 1 76 38 mov.f32 %r108,0f3f800000; sub.f32 %r61,%r108,%r107; bra $L12; $L11: .loc 1 76 43 mov.f32 %r110,0f3f800000; sub.f32 %r109,%r63,%r110; .loc 1 76 38 sub.f32 %r61,%r79,%r109; $L12: .loc 1 77 5 div.rn.f32 %r54,%r61,%r63; bra $L13; $L10: .loc 1 81 18 shr.s32 %r111,%r58,23; .loc 1 81 13 add.u32 %r57,%r111,-127; .loc 1 82 6 mov.f32 %r54,0f00000000; $L13: .loc 1 84 9 and.b32 %r59,%r58,8388607; .loc 1 85 8 setp.gt.s32 %r112,%r59,3474678; @ %r112 bra $L14; .loc 1 86 10 or.b32 %r113,%r59,1065353216; mov.b32 %r55,%r113; bra $L15; $L14: .loc 1 88 12 add.u32 %r57,%r57,1; .loc 1 89 3 or.b32 %r114,%r59,1056964608; mov.b32 %r55,%r114; .loc 1 90 26 mov.u32 %r115,8388608; sub.u32 %r32,%r115,%r59; .loc 1 90 13 shr.s32 %r59,%r32,2; $L15: .loc 1 92 8 mov.f32 %r116,0f3f800000; sub.f32 %r79,%r55,%r116; .loc 1 94 17 mul.f32 %r117,%r79,0f3f000000; .loc 1 94 6 mul.f32 %r64,%r117,%r79; .loc 1 95 4 setp.ne.u32 %r118,%r59,0; @ %r118 bra $L9; .loc 1 96 14 setp.neu.f32 %r119,%r79,0f00000000; @ %r119 bra $L16; .loc 1 96 28 setp.eq.u32 %r120,%r57,0; @ %r120 bra $L20; .loc 1 97 36 cvt.rn.f32.s32 %r34,%r57; .loc 1 97 32 fma.rn.f32 %r121,%r34,0f3717f7d1,%r54; .loc 1 97 60 fma.rn.f32 %r78,%r34,0f3f317180,%r121; bra $L1; $L16: .loc 1 98 26 fma.rn.f32 %r123,%r79,0fbf2aaaab,0f3f800000; .loc 1 98 8 mul.f32 %r66,%r123,%r64; .loc 1 99 8 setp.ne.u32 %r124,%r57,0; @ %r124 bra $L17; .loc 1 99 23 sub.f32 %r78,%r79,%r66; bra $L1; $L17: .loc 1 100 20 cvt.rn.f32.s32 %r36,%r57; .loc 1 100 41 fma.rn.f32 %r125,%r36,0f3717f7d1,%r54; .loc 1 100 31 sub.f32 %r126,%r66,%r125; .loc 1 100 45 sub.f32 %r127,%r126,%r79; .loc 1 100 27 neg.f32 %r128,%r127; fma.rn.f32 %r78,%r36,0f3f317180,%r128; bra $L1; $L9: .loc 1 102 20 add.f32 %r129,%r79,0f40000000; .loc 1 102 5 div.rn.f32 %r67,%r79,%r129; .loc 1 103 4 mul.f32 %r68,%r67,%r67; .loc 1 104 47 fma.rn.f32 %r130,%r68,0f3e178897,0f3e1cd04f; .loc 1 104 40 fma.rn.f32 %r131,%r130,%r68,0f3e3a3325; .loc 1 104 33 fma.rn.f32 %r132,%r131,%r68,0f3e638e29; .loc 1 104 26 fma.rn.f32 %r133,%r132,%r68,0f3e924925; .loc 1 104 19 fma.rn.f32 %r134,%r133,%r68,0f3ecccccd; .loc 1 104 12 fma.rn.f32 %r135,%r134,%r68,0f3f2aaaab; fma.rn.f32 %r136,%r135,%r68,%r64; mul.f32 %r77,%r136,%r67; .loc 1 105 4 setp.ne.u32 %r137,%r57,0; @ %r137 bra $L18; .loc 1 105 25 sub.f32 %r138,%r64,%r77; .loc 1 105 19 sub.f32 %r78,%r79,%r138; bra $L1; $L18: .loc 1 106 12 cvt.rn.f32.s32 %r48,%r57; .loc 1 106 48 fma.rn.f32 %r139,%r48,0f3717f7d1,%r54; .loc 1 106 38 add.f32 %r140,%r139,%r77; .loc 1 106 26 sub.f32 %r141,%r64,%r140; .loc 1 106 53 sub.f32 %r142,%r141,%r79; .loc 1 106 19 neg.f32 %r143,%r142; fma.rn.f32 %r78,%r48,0f3f317180,%r143; bra $L1; $L19: .loc 1 63 14 mov.f32 %r78,%r79; bra $L1; $L20: .loc 1 96 42 mov.f32 %r78,0f00000000; $L1: .loc 1 107 1 mov.f32 %value,%r78; st.param.f32 [%value_out],%value; ret; } lib_a-sf_log2.o/1591654539 399 399 100644 822 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/common/sf_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 33 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 33 19 div.rn.f32 %value,%r26,0f3f317218; .loc 1 34 1 st.param.f32 [%value_out],%value; ret; } lib_a-sf_logb.o/1591654539 399 399 100644 1737 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r26; .reg .u32 %r27; .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 %r27,%r25,8; .loc 1 42 6 setp.le.s32 %r36,%r27,0; @ %r36 bra $L7; .loc 1 42 14 mov.u32 %r26,-126; $L6: .loc 1 42 46 add.u32 %r26,%r26,-1; .loc 1 42 37 add.u32 %r27,%r27,%r27; .loc 1 42 6 setp.gt.s32 %r38,%r27,0; @ %r38 bra $L6; cvt.rn.f32.s32 %r30,%r26; bra $L1; $L7: 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; } /1191 1591654539 399 399 100644 2648 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r45; .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 %r45,%r48,8388607; .loc 1 78 14 or.b32 %r67,%r45,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; } /1209 1591654539 399 399 100644 1946 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r36; .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 %r36,%r42; .loc 1 27 41 shr.u32 %r43,%r36,23; and.b32 %r23,%r43,255; .loc 1 27 48 add.u32 %r35,%r23,-127; .loc 1 28 37 setp.lt.s32 %r44,%r36,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.ne.u32 %r47,%r35,-1; @ %r47 bra $L9; cvt.s64.s32 %r41,%r34; bra $L1; $L4: .loc 1 29 5 and.b32 %r38,%r36,8388607; .loc 1 30 5 or.b32 %r39,%r38,8388608; .loc 1 36 15 setp.le.s32 %r48,%r35,22; @ %r48 bra $L6; .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 $L7; $L6: .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 $L7; $L3: .loc 1 45 14 cvt.rzi.s64.f32 %r41,%r42; bra $L1; $L7: .loc 1 47 15 cvt.s64.s32 %r57,%r34; mul.lo.u64 %r41,%r57,%r33; bra $L1; $L9: .loc 1 35 43 mov.u64 %r41,0; $L1: .loc 1 48 1 mov.u64 %value,%r41; st.param.u64 [%value_out],%value; ret; } lib_a-sf_modf.o/1591654539 399 399 100644 1818 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 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 %r34; .reg .u32 %r35; .reg .u32 %r36; .reg .f32 %r37; .reg .f32 %r38; .reg .u64 %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .pred %r42; .reg .pred %r43; .reg .u32 %r44; .reg .f32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .pred %r48; .reg .u32 %r49; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r52; mov.f32 %r38,%ar0; mov.u64 %r39,%ar1; .loc 1 33 2 mov.b32 %r36,%r38; .loc 1 34 11 shr.s32 %r40,%r36,23; .loc 1 34 16 and.b32 %r41,%r40,255; .loc 1 34 5 add.u32 %r34,%r41,-127; .loc 1 35 4 setp.gt.s32 %r42,%r34,22; @ %r42 bra $L2; .loc 1 36 8 setp.ge.s32 %r43,%r34,0; @ %r43 bra $L3; .loc 1 37 10 and.b32 %r44,%r36,-2147483648; mov.b32 %r45,%r44; st.f32 [%r39],%r45; .loc 1 38 10 mov.f32 %r37,%r38; bra $L1; $L3: .loc 1 40 19 mov.u32 %r46,8388607; shr.s32 %r35,%r46,%r34; .loc 1 41 9 and.b32 %r47,%r35,%r36; .loc 1 41 5 setp.ne.u32 %r48,%r47,0; @ %r48 bra $L5; .loc 1 43 13 st.f32 [%r39],%r38; .loc 1 45 7 and.b32 %r49,%r36,-2147483648; mov.b32 %r37,%r49; .loc 1 46 14 bra $L1; $L5: .loc 1 48 7 not.b32 %r50,%r35; and.b32 %r51,%r50,%r36; mov.b32 %r31,%r51; st.f32 [%r39],%r31; .loc 1 49 16 sub.f32 %r37,%r38,%r31; bra $L1; $L2: .loc 1 54 12 st.f32 [%r39],%r38; .loc 1 56 6 and.b32 %r52,%r36,-2147483648; mov.b32 %r37,%r52; $L1: .loc 1 59 1 mov.f32 %value,%r37; st.param.f32 [%value_out],%value; ret; } lib_a-sf_nan.o/ 1591654539 399 399 100644 494 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } /1228 1591654539 399 399 100644 823 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } /1250 1591654539 399 399 100644 2898 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .f32 %r35; .reg .u32 %r38; .reg .f32 %r39; .reg .f32 %r40; .reg .f32 %r41; .reg .u32 %r42; .reg .u32 %r44; .reg .u32 %r45; .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 %r66; .reg .u32 %r67; .reg .u16 %r69; .reg .u16 %r70; .reg .u16 %r71; .reg .u32 %r72; .reg .u16 %r73; .reg .pred %r74; .reg .u32 %r75; .reg .pred %r76; mov.f32 %r40,%ar0; mov.f32 %r41,%ar1; .loc 1 27 2 mov.b32 %r31,%r40; .loc 1 28 2 mov.b32 %r38,%r41; .loc 1 29 5 and.b32 %r33,%r31,2147483647; .loc 1 30 5 and.b32 %r42,%r38,2147483647; .loc 1 33 5 set.u32.gt.s32 %r44,%r42,2139095040; neg.s32 %r45,%r44; .loc 1 32 5 set.u32.gt.s32 %r47,%r33,2139095040; neg.s32 %r48,%r47; .loc 1 32 26 cvt.u16.u32 %r50,%r45; cvt.u16.u32 %r51,%r48; or.b16 %r49,%r50,%r51; .loc 1 32 4 cvt.u32.u16 %r52,%r49; 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,%r38,-2147483648; or.b32 %r58,%r57,1; mov.b32 %r35,%r58; .loc 1 38 8 mul.f32 %r39,%r35,%r35; .loc 1 39 8 setp.eq.f32 %r59,%r35,%r39; .loc 1 39 37 selp.f32 %r39,%r39,%r35,%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,%r38; @ %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,%r38; shr.u32 %r64,%r63,31; .loc 1 48 18 set.u32.gt.s32 %r66,%r31,%r38; neg.s32 %r67,%r66; .loc 1 48 14 cvt.u16.u32 %r70,%r64; cvt.u16.u32 %r71,%r67; or.b16 %r69,%r70,%r71; .loc 1 48 8 cvt.u32.u16 %r72,%r69; 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: 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; } /1272 1591654539 399 399 100644 926 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } /1290 1591654539 399 399 100644 8214 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // 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 %r31; .reg .u32 %r32; .reg .u32 %r36; .reg .f32 %r39; .reg .f32 %r41; .reg .u32 %r43; .reg .f32 %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 %r58; .reg .u32 %r59; .reg .u32 %r61; .reg .u32 %r64; .reg .u32 %r66; .reg .u32 %r67; .reg .u32 %r68; .reg .u32 %r70; .reg .u32 %r74; .reg .f32 %r77; .reg .f32 %r78; .reg .f32 %r79; .reg .u64 %r80; .reg .u32 %r82; .reg .u32 %r83; .reg .u32 %r85; .reg .u32 %r86; .reg .u16 %r87; .reg .u16 %r88; .reg .u16 %r89; .reg .u32 %r91; .reg .u32 %r92; .reg .u16 %r94; .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 .f32 %r150; .reg .pred %r151; .reg .pred %r152; .reg .pred %r153; .reg .u32 %r154; .reg .pred %r155; .reg .pred %r156; .reg .pred %r157; .reg .u32 %r158; .reg .pred %r159; .reg .u32 %r160; .reg .pred %r161; .reg .pred %r163; mov.f32 %r78,%ar0; mov.f32 %r79,%ar1; mov.u64 %r80,%ar2; .loc 1 42 2 mov.b32 %r52,%r78; .loc 1 43 2 mov.b32 %r53,%r79; .loc 1 46 5 and.b32 %r47,%r52,2147483647; .loc 1 47 5 and.b32 %r55,%r53,2147483647; .loc 1 50 7 set.u32.eq.u32 %r82,%r55,0; neg.s32 %r83,%r82; .loc 1 50 26 set.u32.gt.s32 %r85,%r55,2139095040; neg.s32 %r86,%r85; cvt.u16.u32 %r88,%r83; cvt.u16.u32 %r89,%r86; or.b16 %r87,%r88,%r89; .loc 1 50 14 set.u32.gt.s32 %r91,%r47,2139095039; neg.s32 %r92,%r91; .loc 1 50 26 cvt.u16.u32 %r96,%r92; or.b16 %r94,%r87,%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,%r52,%r53; .loc 1 45 5 and.b32 %r54,%r52,-2147483648; .loc 1 54 4 setp.lt.s32 %r101,%r47,%r55; @ %r101 bra $L34; .loc 1 57 11 setp.ne.u32 %r102,%r47,%r55; @ %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,%r54,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,%r52,2139095040; setp.ne.u32 %r110,%r109,0; @ %r110 bra $L6; .loc 1 64 22 shl.b32 %r59,%r47,8; .loc 1 64 6 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 6 setp.gt.s32 %r113,%r59,0; @ %r113 bra $L8; bra $L7; $L6: .loc 1 65 17 shr.s32 %r114,%r47,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,%r53,2139095040; setp.ne.u32 %r116,%r115,0; @ %r116 bra $L9; .loc 1 69 22 shl.b32 %r61,%r55,8; .loc 1 69 6 setp.le.s32 %r117,%r61,0; @ %r117 bra $L36; .loc 1 69 14 mov.u32 %r70,-126; $L11: .loc 1 69 47 add.u32 %r70,%r70,-1; .loc 1 69 38 add.u32 %r61,%r61,%r61; .loc 1 69 6 setp.gt.s32 %r119,%r61,0; @ %r119 bra $L11; bra $L10; $L9: .loc 1 70 17 shr.s32 %r120,%r55,23; .loc 1 70 12 add.u32 %r70,%r120,-127; bra $L10; $L36: .loc 1 69 14 mov.u32 %r70,-126; $L10: .loc 1 73 4 setp.lt.s32 %r121,%r58,-126; @ %r121 bra $L12; .loc 1 74 33 and.b32 %r31,%r52,8388607; .loc 1 74 9 or.b32 %r46,%r31,8388608; bra $L13; $L12: .loc 1 76 8 mov.u32 %r123,-126; sub.u32 %r122,%r123,%r58; .loc 1 77 9 shl.b32 %r46,%r47,%r122; $L13: .loc 1 79 4 setp.lt.s32 %r163,%r70,-126; @ %r163 bra $L14; .loc 1 80 33 and.b32 %r32,%r53,8388607; .loc 1 80 9 or.b32 %r48,%r32,8388608; bra $L15; $L14: .loc 1 82 8 mov.u32 %r126,-126; sub.u32 %r125,%r126,%r70; .loc 1 83 9 shl.b32 %r48,%r55,%r125; $L15: .loc 1 87 4 sub.u32 %r64,%r58,%r70; .loc 1 89 9 add.u32 %r66,%r64,-1; .loc 1 89 7 setp.eq.u32 %r127,%r64,0; @ %r127 bra $L37; .loc 1 88 4 mov.u32 %r49,0; $L19: .loc 1 90 8 sub.u32 %r67,%r46,%r48; .loc 1 91 8 setp.ge.s32 %r128,%r67,0; @ %r128 bra $L17; .loc 1 91 18 add.u32 %r46,%r46,%r46; bra $L18; $L17: .loc 1 92 15 add.u32 %r46,%r67,%r67; .loc 1 92 27 add.u32 %r49,%r49,1; $L18: .loc 1 93 8 add.u32 %r49,%r49,%r49; .loc 1 89 9 add.u32 %r66,%r66,-1; .loc 1 89 7 setp.ne.u32 %r132,%r66,-1; @ %r132 bra $L19; bra $L16; $L37: .loc 1 88 4 mov.u32 %r49,%r64; $L16: .loc 1 95 4 sub.u32 %r68,%r46,%r48; .loc 1 96 4 setp.lt.s32 %r133,%r68,0; @ %r133 bra $L20; .loc 1 96 20 add.u32 %r49,%r49,1; mov.u32 %r46,%r68; $L20: .loc 1 99 4 setp.eq.u32 %r134,%r46,0; @ %r134 bra $L21; .loc 1 103 7 setp.le.s32 %r135,%r46,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 %r50,%r49; bra $L25; $L24: .loc 1 100 23 mov.u32 %r50,%r49; $L25: .loc 1 100 11 st.u32 [%r80],%r50; .loc 1 101 17 cvta.const.u64 %r137,Zero; .loc 1 101 32 shr.u32 %r138,%r54,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 %r46,%r46,%r46; .loc 1 105 9 add.u32 %r70,%r70,-1; .loc 1 103 7 setp.le.s32 %r143,%r46,8388607; @ %r143 bra $L22; setp.lt.s32 %r163,%r70,-126; $L23: .loc 1 107 4 @ %r163 bra $L26; .loc 1 108 15 add.u32 %r36,%r46,-8388608; .loc 1 108 32 add.u32 %r145,%r70,127; .loc 1 108 37 shl.b32 %r146,%r145,23; .loc 1 108 9 or.b32 %r47,%r146,%r36; bra $L4; $L26: .loc 1 110 8 mov.u32 %r148,-126; sub.u32 %r147,%r148,%r70; .loc 1 111 9 shr.s32 %r47,%r46,%r147; bra $L4; $L34: .loc 1 55 8 mov.u32 %r49,0; $L4: .loc 1 114 2 mov.b32 %r45,%r47; .loc 1 115 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r79; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r150,[%value_in]; } .loc 1 116 5 setp.lt.f32 %r151,%r150,0f01000000; @ ! %r151 bra $L50; .loc 1 117 11 add.f32 %r39,%r45,%r45; .loc 1 117 9 setp.gt.f32 %r152,%r39,%r150; @ %r152 bra $L29; .loc 1 117 16 setp.neu.f32 %r153,%r39,%r150; @ %r153 bra $L30; .loc 1 117 33 and.b32 %r154,%r49,1; .loc 1 117 27 setp.eq.u32 %r155,%r154,0; @ %r155 bra $L30; $L29: .loc 1 118 4 add.u32 %r49,%r49,1; .loc 1 119 4 sub.f32 %r45,%r45,%r150; bra $L30; $L50: .loc 1 121 19 mul.f32 %r41,%r150,0f3f000000; .loc 1 121 12 setp.lt.f32 %r156,%r41,%r45; @ %r156 bra $L31; .loc 1 121 22 setp.neu.f32 %r157,%r41,%r45; @ %r157 bra $L30; .loc 1 121 42 and.b32 %r158,%r49,1; .loc 1 121 36 setp.eq.u32 %r159,%r158,0; @ %r159 bra $L30; $L31: .loc 1 122 7 add.u32 %r49,%r49,1; .loc 1 123 7 sub.f32 %r45,%r45,%r150; $L30: .loc 1 126 2 mov.b32 %r160,%r45; xor.b32 %r43,%r54,%r160; mov.b32 %r77,%r43; .loc 1 127 4 and.b32 %r74,%r49,2147483647; .loc 1 128 19 setp.ge.s32 %r161,%r23,0; @ %r161 bra $L32; .loc 1 128 16 neg.s32 %r51,%r74; bra $L33; $L32: .loc 1 128 19 mov.u32 %r51,%r74; $L33: .loc 1 128 7 st.u32 [%r80],%r51; $L1: .loc 1 130 1 mov.f32 %value,%r77; st.param.f32 [%value_out],%value; ret; } lib_a-sf_rint.o/1591654539 399 399 100644 3289 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r22; .reg .f32 %r33; .reg .f32 %r34; .reg .f32 %r35; .reg .u32 %r38; .reg .f32 %r47; .reg .f32 %r48; .reg .f32 %r49; .reg .u32 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r59; .reg .u32 %r60; .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 %r22,%r62; .loc 1 41 5 and.b32 %r52,%r22,2147483647; .loc 1 42 10 shr.u32 %r63,%r52,23; .loc 1 42 15 add.u32 %r53,%r63,-127; .loc 1 43 4 setp.gt.s32 %r64,%r53,22; @ %r64 bra $L2; .loc 1 44 8 setp.eq.u32 %r65,%r52,0; @ %r65 bra $L3; .loc 1 40 15 shr.u32 %r51,%r22,31; .loc 1 46 8 setp.ge.s32 %r66,%r53,0; @ %r66 bra $L4; .loc 1 47 6 and.b32 %r54,%r22,8388607; .loc 1 51 19 cvta.const.u64 %r67,TWO23; cvt.s64.s32 %r68,%r51; shl.b64 %r69,%r68,2; add.u64 %r70,%r67,%r69; ld.f32 %r33,[%r70]; .loc 1 49 14 neg.s32 %r71,%r54; .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,%r22,-1048576; .loc 1 49 6 or.b32 %r76,%r74,%r75; .loc 1 51 23 mov.b32 %r77,%r76; add.f32 %r34,%r33,%r77; .loc 1 51 12 st.f32 [%frame],%r34; .loc 1 52 16 ld.f32 %r35,[%frame]; .loc 1 52 12 sub.f32 %r78,%r35,%r33; .loc 1 54 3 mov.b32 %r80,%r78; and.b32 %r79,%r80,2147483647; shl.b32 %r81,%r51,31; or.b32 %r38,%r79,%r81; mov.b32 %r62,%r38; .loc 1 55 17 bra $L3; $L4: .loc 1 57 19 mov.u32 %r82,8388607; shr.s32 %r59,%r82,%r53; .loc 1 58 9 and.b32 %r83,%r22,%r59; .loc 1 58 5 setp.eq.u32 %r84,%r83,0; @ %r84 bra $L3; .loc 1 59 4 shr.u32 %r60,%r59,1; .loc 1 60 9 and.b32 %r85,%r22,%r60; .loc 1 60 5 setp.eq.u32 %r86,%r85,0; @ %r86 bra $L5; .loc 1 60 27 not.b32 %r87,%r60; .loc 1 60 25 and.b32 %r88,%r87,%r22; .loc 1 60 43 mov.u32 %r90,2097152; shr.s32 %r89,%r90,%r53; .loc 1 60 31 or.b32 %r91,%r88,%r89; mov.b32 %r62,%r91; bra $L5; $L2: .loc 1 63 8 setp.le.u32 %r92,%r52,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,%r51; shl.b64 %r95,%r94,2; add.u64 %r96,%r93,%r95; ld.f32 %r47,[%r96]; .loc 1 68 15 add.f32 %r48,%r47,%r62; .loc 1 68 4 st.f32 [%frame],%r48; .loc 1 69 10 ld.f32 %r49,[%frame]; sub.f32 %r62,%r49,%r47; $L3: .loc 1 70 1 mov.f32 %value,%r62; st.param.f32 [%value_out],%value; ret; } /1309 1591654539 399 399 100644 1780 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r34,%r36; .loc 1 28 46 shr.u32 %r37,%r34,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,%r34,-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 %r32,%r42,%r31; .loc 1 42 18 and.b32 %r43,%r32,%r34; .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 %r33,%r45,%r34; .loc 1 47 16 not.b32 %r47,%r32; .loc 1 47 13 and.b32 %r30,%r47,%r33; 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; } /1327 1591654539 399 399 100644 3796 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 DECL: copysignf .extern .func (.param .f32 %value_out) copysignf (.param .f32 %in_ar0, .param .f32 %in_ar1); // 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 .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 %r64; .reg .u32 %r65; .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 .f32 %r77; .reg .pred %r78; .reg .f32 %r79; .reg .f32 %r81; .reg .pred %r82; .reg .u32 %r83; .reg .u32 %r84; .reg .u32 %r85; .reg .pred %r86; .reg .f32 %r87; .reg .f32 %r89; .reg .u32 %r90; .reg .u32 %r91; .reg .u32 %r92; .reg .u32 %r93; .reg .f32 %r94; 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,%r46,%r62; .loc 1 46 14 set.u32.gt.s64 %r64,%r54,50000; neg.s32 %r65,%r64; .loc 1 46 27 set.u32.gt.s32 %r67,%r28,254; neg.s32 %r68,%r67; .loc 1 46 22 cvt.u16.u32 %r70,%r65; cvt.u16.u32 %r71,%r68; or.b16 %r69,%r70,%r71; .loc 1 46 12 cvt.u32.u16 %r72,%r69; cvt.u16.u8 %r73,%r72; setp.eq.u16 %r74,%r73,0; @ %r74 bra $L5; .loc 1 47 16 mov.f32 %r75,0f7149f2ca; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r75; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r53; call (%value_in),copysignf,(%out_arg1,%out_arg2); ld.param.f32 %r77,[%value_in]; } .loc 1 47 15 mul.f32 %r52,%r77,0f7149f2ca; bra $L1; $L5: .loc 1 48 5 setp.ge.s64 %r78,%r54,-50000; @ %r78 bra $L6; .loc 1 49 16 mov.f32 %r79,0f0da24260; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r79; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r53; call (%value_in),copysignf,(%out_arg1,%out_arg2); ld.param.f32 %r81,[%value_in]; } .loc 1 49 15 mul.f32 %r52,%r81,0f0da24260; bra $L1; $L6: .loc 1 50 12 setp.le.s32 %r82,%r28,0; @ %r82 bra $L7; .loc 1 51 7 and.b32 %r83,%r45,-2139095041; shl.b32 %r84,%r28,23; or.b32 %r85,%r83,%r84; mov.b32 %r52,%r85; .loc 1 51 57 bra $L1; $L7: .loc 1 52 12 setp.ge.s32 %r86,%r28,-24; @ %r86 bra $L8; .loc 1 53 18 mov.f32 %r87,0f0da24260; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r87; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r53; call (%value_in),copysignf,(%out_arg1,%out_arg2); ld.param.f32 %r89,[%value_in]; } .loc 1 53 17 mul.f32 %r52,%r89,0f0da24260; bra $L1; $L8: .loc 1 54 11 add.u32 %r90,%r28,25; .loc 1 55 2 shl.b32 %r91,%r90,23; and.b32 %r92,%r45,-2139095041; or.b32 %r93,%r91,%r92; .loc 1 56 17 mov.b32 %r94,%r93; mul.f32 %r52,%r94,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; } /1347 1591654539 399 399 100644 3545 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 DECL: copysignf .extern .func (.param .f32 %value_out) copysignf (.param .f32 %in_ar0, .param .f32 %in_ar1); // 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 .u32 %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u32 %r43; .reg .u32 %r44; .reg .f32 %r47; .reg .f32 %r48; .reg .u32 %r49; .reg .pred %r50; .reg .pred %r51; .reg .u32 %r52; .reg .pred %r53; .reg .pred %r54; .reg .u32 %r55; .reg .u32 %r56; .reg .pred %r57; .reg .f32 %r58; .reg .f32 %r60; .reg .pred %r61; .reg .u32 %r62; .reg .u32 %r63; .reg .u32 %r64; .reg .pred %r65; .reg .pred %r66; .reg .f32 %r67; .reg .f32 %r69; .reg .f32 %r70; .reg .f32 %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .u32 %r76; .reg .f32 %r77; mov.f32 %r48,%ar0; mov.u32 %r49,%ar1; .loc 1 46 2 mov.b32 %r44,%r48; .loc 1 47 5 and.b32 %r41,%r44,2147483647; .loc 1 49 5 setp.eq.u32 %r50,%r41,0; @ %r50 bra $L11; .loc 1 51 12 setp.le.u32 %r51,%r41,2139095039; @ %r51 bra $L3; .loc 1 52 14 add.f32 %r47,%r48,%r48; bra $L1; $L3: .loc 1 53 12 and.b32 %r52,%r44,2139095040; setp.ne.u32 %r53,%r52,0; @ %r53 bra $L4; .loc 1 54 8 mul.f32 %r48,%r48,0f4c000000; .loc 1 57 16 setp.lt.s32 %r54,%r49,-50000; @ %r54 bra $L5; .loc 1 55 6 mov.b32 %r40,%r48; .loc 1 56 26 shr.s32 %r55,%r40,23; and.b32 %r56,%r55,255; .loc 1 56 8 add.u32 %r39,%r56,-25; bra $L6; $L5: .loc 1 57 39 mul.f32 %r47,%r48,0f0da24260; bra $L1; $L4: .loc 1 46 2 mov.u32 %r40,%r44; .loc 1 48 15 shr.u32 %r39,%r41,23; $L6: .loc 1 59 11 add.u32 %r43,%r39,%r49; .loc 1 60 12 setp.le.s32 %r57,%r43,254; @ %r57 bra $L7; .loc 1 60 46 mov.f32 %r58,0f7149f2ca; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r58; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r48; call (%value_in),copysignf,(%out_arg1,%out_arg2); ld.param.f32 %r60,[%value_in]; } .loc 1 60 45 mul.f32 %r47,%r60,0f7149f2ca; bra $L1; $L7: .loc 1 61 12 setp.le.s32 %r61,%r43,0; @ %r61 bra $L8; .loc 1 62 7 and.b32 %r62,%r40,-2139095041; shl.b32 %r63,%r43,23; or.b32 %r64,%r62,%r63; mov.b32 %r47,%r64; .loc 1 62 57 bra $L1; $L8: .loc 1 63 12 setp.ge.s32 %r65,%r43,-22; @ %r65 bra $L9; .loc 1 64 16 setp.le.s32 %r66,%r49,50000; @ %r66 bra $L10; .loc 1 65 15 mov.f32 %r67,0f7149f2ca; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r67; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r48; call (%value_in),copysignf,(%out_arg1,%out_arg2); ld.param.f32 %r69,[%value_in]; } .loc 1 65 14 mul.f32 %r47,%r69,0f7149f2ca; bra $L1; $L10: .loc 1 66 23 mov.f32 %r70,0f0da24260; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r70; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r48; call (%value_in),copysignf,(%out_arg1,%out_arg2); ld.param.f32 %r72,[%value_in]; } .loc 1 66 22 mul.f32 %r47,%r72,0f0da24260; bra $L1; $L9: .loc 1 68 11 add.u32 %r73,%r43,25; .loc 1 69 2 shl.b32 %r74,%r73,23; and.b32 %r75,%r40,-2139095041; or.b32 %r76,%r74,%r75; .loc 1 70 17 mov.b32 %r77,%r76; mul.f32 %r47,%r77,0f33000000; bra $L1; $L11: .loc 1 50 13 mov.f32 %r47,%r48; $L1: .loc 1 71 1 mov.f32 %value,%r47; st.param.f32 [%value_out],%value; ret; } /1366 1591654539 399 399 100644 1318 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654539 399 399 100644 3935 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 28 2 mov.b32 %r34,%r38; .loc 1 31 5 and.b32 %r35,%r34,2147483647; .loc 1 32 4 setp.gt.s32 %r39,%r35,1061752792; @ %r39 bra $L2; .loc 1 32 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 35 10 setp.le.s32 %r44,%r35,2139095039; @ %r44 bra $L4; .loc 1 35 45 sub.f32 %r37,%r38,%r38; bra $L1; $L4: .loc 1 39 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 40 14 and.b32 %r22,%r47,3; 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 41 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 42 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 43 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 43 18 neg.f32 %r37,%r64; bra $L1; $L7: .loc 1 45 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 45 11 neg.f32 %r37,%r68; $L1: .loc 1 48 1 mov.f32 %value,%r37; st.param.f32 [%value_out],%value; ret; } lib_a-sf_tan.o/ 1591654539 399 399 100644 2497 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/1591654539 399 399 100644 2874 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; 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; } /1385 1591654539 399 399 100644 1149 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r28; .reg .u32 %r30; .reg .f32 %r32; .reg .u32 %r33; .reg .u32 %r34; .reg .pred %r35; .reg .pred %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u32 %r40; .reg .u32 %r41; mov.f32 %r32,%ar0; .loc 1 23 3 mov.b32 %r28,%r32; .loc 1 29 41 shr.s32 %r33,%r28,23; and.b32 %r34,%r33,255; .loc 1 29 21 add.u32 %r30,%r34,-127; .loc 1 31 6 setp.gt.s32 %r35,%r30,22; @ %r35 bra $L2; .loc 1 33 10 setp.ge.s32 %r36,%r30,0; @ %r36 bra $L3; .loc 1 26 11 and.b32 %r37,%r28,-2147483648; .loc 1 36 11 mov.b32 %r32,%r37; bra $L2; $L3: .loc 1 40 11 mov.u32 %r39,8388607; shr.s32 %r38,%r39,%r30; not.b32 %r40,%r38; and.b32 %r41,%r40,%r28; mov.b32 %r32,%r41; $L2: .loc 1 52 1 mov.f32 %value,%r32; st.param.f32 [%value_out],%value; ret; } lib_a-sinhl.o/ 1591654539 399 399 100644 793 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654539 399 399 100644 785 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } lib_a-sqrtl.o/ 1591654539 399 399 100644 793 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 DECL: sqrt .extern .func (.param .f64 %value_out) sqrt (.param .f64 %in_ar0); // 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; .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),sqrt,(%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-tanhl.o/ 1591654539 399 399 100644 793 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654539 399 399 100644 785 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/1591654539 399 399 100644 809 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654539 399 399 100644 801 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 DECL: trunc .extern .func (.param .f64 %value_out) trunc (.param .f64 %in_ar0); // 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; .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),trunc,(%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-w_acos.o/ 1591654539 399 399 100644 4007 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_acos .extern .func (.param .f64 %value_out) __ieee754_acos (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: nan .extern .func (.param .f64 %value_out) nan (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[5] = {97,99,111,115,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r32; .reg .f64 %r33; .reg .f64 %r34; .reg .f64 %r36; .reg .u32 %r37; .reg .pred %r38; .reg .u32 %r40; .reg .pred %r41; .reg .f64 %r43; .reg .pred %r44; .reg .u32 %r45; .reg .u64 %r46; .reg .u32 %r47; .reg .u64 %r48; .reg .f64 %r49; .reg .u32 %r50; .reg .pred %r51; .reg .u64 %r52; .reg .u32 %r53; .reg .u32 %r55; .reg .pred %r56; .reg .u64 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .pred %r60; .reg .u64 %r61; mov.f64 %r34,%ar0; .loc 1 96 13 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r34; call (%value_in),__ieee754_acos,(%out_arg1); ld.param.f64 %r36,[%value_in]; } mov.f64 %r33,%r36; .loc 1 97 4 ld.global.u32 %r37,[__fdlib_version]; setp.eq.u32 %r38,%r37,-1; @ %r38 bra $L1; .loc 1 97 31 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r34; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r40,[%value_in]; } .loc 1 97 28 setp.eq.u32 %r41,%r40,0; @ %r41 bra $L1; .loc 1 98 5 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r34; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r43,[%value_in]; } .loc 1 98 4 setp.gt.f64 %r44,%r43,0d3ff0000000000000; @ ! %r44 bra $L1; .loc 1 100 15 mov.u32 %r45,1; st.u32 [%frame],%r45; .loc 1 101 15 cvta.const.u64 %r46,$LC0; st.u64 [%frame+8],%r46; .loc 1 102 14 mov.u32 %r47,0; st.u32 [%frame+40],%r47; .loc 1 103 26 st.f64 [%frame+24],%r34; .loc 1 103 15 st.f64 [%frame+16],%r34; .loc 1 104 19 cvta.const.u64 %r48,$LC1; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r48; call (%value_in),nan,(%out_arg1); ld.param.f64 %r49,[%value_in]; } .loc 1 104 17 st.f64 [%frame+32],%r49; .loc 1 105 9 ld.global.u32 %r50,[__fdlib_version]; setp.ne.u32 %r51,%r50,2; @ %r51 bra $L4; .loc 1 106 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r52,[%value_in]; } .loc 1 106 15 mov.u32 %r53,33; st.u32 [%r52],%r53; bra $L5; $L4: .loc 1 107 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r55,[%value_in]; } .loc 1 107 14 setp.ne.u32 %r56,%r55,0; @ %r56 bra $L5; .loc 1 108 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r57,[%value_in]; } .loc 1 108 15 mov.u32 %r58,33; st.u32 [%r57],%r58; $L5: .loc 1 110 16 ld.u32 %r59,[%frame+40]; setp.eq.u32 %r60,%r59,0; @ %r60 bra $L6; .loc 1 111 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r61,[%value_in]; } .loc 1 111 20 ld.u32 %r32,[%frame+40]; .loc 1 111 15 st.u32 [%r61],%r32; $L6: .loc 1 112 16 ld.f64 %r33,[%frame+32]; $L1: .loc 1 116 1 mov.f64 %value,%r33; st.param.f64 [%value_out],%value; ret; } lib_a-w_acosh.o/1591654539 399 399 100644 3489 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_acosh .extern .func (.param .f64 %value_out) __ieee754_acosh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[6] = {97,99,111,115,104,0 }; // 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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r35; .reg .u32 %r36; .reg .pred %r37; .reg .u32 %r39; .reg .pred %r40; .reg .pred %r41; .reg .u32 %r42; .reg .u64 %r43; .reg .u32 %r44; .reg .f64 %r45; .reg .f64 %r46; .reg .u32 %r47; .reg .pred %r48; .reg .u64 %r49; .reg .u32 %r50; .reg .u32 %r52; .reg .pred %r53; .reg .u64 %r54; .reg .u32 %r55; .reg .u32 %r56; .reg .pred %r57; .reg .u64 %r58; mov.f64 %r33,%ar0; .loc 1 100 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; call (%value_in),__ieee754_acosh,(%out_arg1); ld.param.f64 %r35,[%value_in]; } mov.f64 %r32,%r35; .loc 1 101 4 ld.global.u32 %r36,[__fdlib_version]; setp.eq.u32 %r37,%r36,-1; @ %r37 bra $L1; .loc 1 101 31 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r39,[%value_in]; } .loc 1 101 28 setp.eq.u32 %r40,%r39,0; @ %r40 bra $L1; .loc 1 102 4 setp.lt.f64 %r41,%r33,0d3ff0000000000000; @ ! %r41 bra $L1; .loc 1 104 22 mov.u32 %r42,1; st.u32 [%frame],%r42; .loc 1 105 22 cvta.const.u64 %r43,$LC0; st.u64 [%frame+8],%r43; .loc 1 106 14 mov.u32 %r44,0; st.u32 [%frame+40],%r44; .loc 1 107 26 st.f64 [%frame+24],%r33; .loc 1 107 15 st.f64 [%frame+16],%r33; .loc 1 108 29 mov.f64 %r46,0d0000000000000000; div.rn.f64 %r45,%r46,0d0000000000000000; .loc 1 108 24 st.f64 [%frame+32],%r45; .loc 1 109 16 ld.global.u32 %r47,[__fdlib_version]; setp.ne.u32 %r48,%r47,2; @ %r48 bra $L4; .loc 1 110 16 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r49,[%value_in]; } .loc 1 110 22 mov.u32 %r50,33; st.u32 [%r49],%r50; bra $L5; $L4: .loc 1 111 23 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r52,[%value_in]; } .loc 1 111 21 setp.ne.u32 %r53,%r52,0; @ %r53 bra $L5; .loc 1 112 16 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r54,[%value_in]; } .loc 1 112 22 mov.u32 %r55,33; st.u32 [%r54],%r55; $L5: .loc 1 114 9 ld.u32 %r56,[%frame+40]; setp.eq.u32 %r57,%r56,0; @ %r57 bra $L6; .loc 1 115 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r58,[%value_in]; } .loc 1 115 20 ld.u32 %r31,[%frame+40]; .loc 1 115 15 st.u32 [%r58],%r31; $L6: .loc 1 116 16 ld.f64 %r32,[%frame+32]; $L1: .loc 1 120 1 mov.f64 %value,%r32; st.param.f64 [%value_out],%value; ret; } lib_a-w_asin.o/ 1591654539 399 399 100644 4011 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_asin .extern .func (.param .f64 %value_out) __ieee754_asin (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: nan .extern .func (.param .f64 %value_out) nan (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[5] = {97,115,105,110,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r32; .reg .f64 %r33; .reg .f64 %r34; .reg .f64 %r36; .reg .u32 %r37; .reg .pred %r38; .reg .u32 %r40; .reg .pred %r41; .reg .f64 %r43; .reg .pred %r44; .reg .u32 %r45; .reg .u64 %r46; .reg .u32 %r47; .reg .u64 %r48; .reg .f64 %r49; .reg .u32 %r50; .reg .pred %r51; .reg .u64 %r52; .reg .u32 %r53; .reg .u32 %r55; .reg .pred %r56; .reg .u64 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .pred %r60; .reg .u64 %r61; mov.f64 %r34,%ar0; .loc 1 99 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r34; call (%value_in),__ieee754_asin,(%out_arg1); ld.param.f64 %r36,[%value_in]; } mov.f64 %r33,%r36; .loc 1 100 4 ld.global.u32 %r37,[__fdlib_version]; setp.eq.u32 %r38,%r37,-1; @ %r38 bra $L1; .loc 1 100 31 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r34; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r40,[%value_in]; } .loc 1 100 28 setp.eq.u32 %r41,%r40,0; @ %r41 bra $L1; .loc 1 101 5 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r34; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r43,[%value_in]; } .loc 1 101 4 setp.gt.f64 %r44,%r43,0d3ff0000000000000; @ ! %r44 bra $L1; .loc 1 103 15 mov.u32 %r45,1; st.u32 [%frame],%r45; .loc 1 104 15 cvta.const.u64 %r46,$LC0; st.u64 [%frame+8],%r46; .loc 1 105 14 mov.u32 %r47,0; st.u32 [%frame+40],%r47; .loc 1 106 26 st.f64 [%frame+24],%r34; .loc 1 106 15 st.f64 [%frame+16],%r34; .loc 1 107 19 cvta.const.u64 %r48,$LC1; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r48; call (%value_in),nan,(%out_arg1); ld.param.f64 %r49,[%value_in]; } .loc 1 107 17 st.f64 [%frame+32],%r49; .loc 1 108 8 ld.global.u32 %r50,[__fdlib_version]; setp.ne.u32 %r51,%r50,2; @ %r51 bra $L4; .loc 1 109 8 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r52,[%value_in]; } .loc 1 109 14 mov.u32 %r53,33; st.u32 [%r52],%r53; bra $L5; $L4: .loc 1 110 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r55,[%value_in]; } .loc 1 110 14 setp.ne.u32 %r56,%r55,0; @ %r56 bra $L5; .loc 1 111 8 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r57,[%value_in]; } .loc 1 111 14 mov.u32 %r58,33; st.u32 [%r57],%r58; $L5: .loc 1 113 9 ld.u32 %r59,[%frame+40]; setp.eq.u32 %r60,%r59,0; @ %r60 bra $L6; .loc 1 114 8 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r61,[%value_in]; } .loc 1 114 19 ld.u32 %r32,[%frame+40]; .loc 1 114 14 st.u32 [%r61],%r32; $L6: .loc 1 115 16 ld.f64 %r33,[%frame+32]; $L1: .loc 1 119 1 mov.f64 %value,%r33; st.param.f64 [%value_out],%value; ret; } lib_a-w_atan2.o/1591654539 399 399 100644 1032 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 87 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 88 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } lib_a-w_atanh.o/1591654539 399 399 100644 4987 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_atanh .extern .func (.param .f64 %value_out) __ieee754_atanh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.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: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[6] = {97,116,97,110,104,0 }; // 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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r34; .reg .u32 %r35; .reg .f64 %r37; .reg .f64 %r38; .reg .f64 %r40; .reg .u32 %r41; .reg .pred %r42; .reg .u32 %r44; .reg .pred %r45; .reg .f64 %r47; .reg .pred %r48; .reg .pred %r49; .reg .u32 %r50; .reg .u64 %r51; .reg .u32 %r52; .reg .f64 %r53; .reg .f64 %r54; .reg .pred %r55; .reg .u64 %r56; .reg .u32 %r57; .reg .u32 %r59; .reg .pred %r60; .reg .u64 %r61; .reg .u32 %r62; .reg .u32 %r63; .reg .u64 %r64; .reg .u32 %r65; .reg .f64 %r66; .reg .pred %r67; .reg .u64 %r68; .reg .u32 %r69; .reg .u32 %r71; .reg .pred %r72; .reg .u64 %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .pred %r76; .reg .u64 %r77; mov.f64 %r38,%ar0; .loc 1 99 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; call (%value_in),__ieee754_atanh,(%out_arg1); ld.param.f64 %r40,[%value_in]; } mov.f64 %r37,%r40; .loc 1 100 4 ld.global.u32 %r41,[__fdlib_version]; setp.eq.u32 %r42,%r41,-1; @ %r42 bra $L1; .loc 1 100 31 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r44,[%value_in]; } .loc 1 100 28 setp.eq.u32 %r45,%r44,0; @ %r45 bra $L1; .loc 1 101 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r47,[%value_in]; } .loc 1 102 4 setp.ge.f64 %r48,%r47,0d3ff0000000000000; @ ! %r48 bra $L1; ld.global.u32 %r35,[__fdlib_version]; .loc 1 103 8 setp.gt.f64 %r49,%r47,0d3ff0000000000000; @ ! %r49 bra $L23; .loc 1 105 26 mov.u32 %r50,1; st.u32 [%frame],%r50; .loc 1 106 26 cvta.const.u64 %r51,$LC0; st.u64 [%frame+8],%r51; .loc 1 107 11 mov.u32 %r52,0; st.u32 [%frame+40],%r52; .loc 1 108 23 st.f64 [%frame+24],%r38; .loc 1 108 12 st.f64 [%frame+16],%r38; .loc 1 109 33 mov.f64 %r54,0d0000000000000000; div.rn.f64 %r53,%r54,0d0000000000000000; .loc 1 109 28 st.f64 [%frame+32],%r53; .loc 1 110 20 setp.ne.u32 %r55,%r35,2; @ %r55 bra $L6; .loc 1 111 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r56,[%value_in]; } .loc 1 111 25 mov.u32 %r57,33; st.u32 [%r56],%r57; bra $L7; $L6: .loc 1 112 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r59,[%value_in]; } .loc 1 112 25 setp.eq.u32 %r60,%r59,0; @ ! %r60 bra $L7; .loc 1 113 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r61,[%value_in]; } .loc 1 113 25 mov.u32 %r62,33; st.u32 [%r61],%r62; bra $L7; $L23: .loc 1 117 26 mov.u32 %r63,2; st.u32 [%frame],%r63; .loc 1 118 26 cvta.const.u64 %r64,$LC0; st.u64 [%frame+8],%r64; .loc 1 119 11 mov.u32 %r65,0; st.u32 [%frame+40],%r65; .loc 1 120 23 st.f64 [%frame+24],%r38; .loc 1 120 12 st.f64 [%frame+16],%r38; .loc 1 121 17 div.rn.f64 %r66,%r38,0d0000000000000000; .loc 1 121 14 st.f64 [%frame+32],%r66; .loc 1 122 20 setp.ne.u32 %r67,%r35,2; @ %r67 bra $L9; .loc 1 123 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r68,[%value_in]; } .loc 1 123 25 mov.u32 %r69,33; st.u32 [%r68],%r69; bra $L7; $L9: .loc 1 124 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r71,[%value_in]; } .loc 1 124 25 setp.ne.u32 %r72,%r71,0; @ %r72 bra $L7; .loc 1 125 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r73,[%value_in]; } .loc 1 125 25 mov.u32 %r74,33; st.u32 [%r73],%r74; $L7: .loc 1 128 9 ld.u32 %r75,[%frame+40]; setp.eq.u32 %r76,%r75,0; @ %r76 bra $L11; .loc 1 129 15 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r77,[%value_in]; } .loc 1 129 26 ld.u32 %r34,[%frame+40]; .loc 1 129 21 st.u32 [%r77],%r34; $L11: .loc 1 130 23 ld.f64 %r37,[%frame+32]; $L1: .loc 1 134 1 mov.f64 %value,%r37; st.param.f64 [%value_out],%value; ret; } lib_a-w_cosh.o/ 1591654539 399 399 100644 3857 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_cosh .extern .func (.param .f64 %value_out) __ieee754_cosh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.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: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[5] = {99,111,115,104,0 }; // 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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r25; .reg .u32 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r35; .reg .u32 %r36; .reg .pred %r37; .reg .u32 %r39; .reg .pred %r40; .reg .f64 %r42; .reg .pred %r43; .reg .u32 %r44; .reg .u64 %r45; .reg .u32 %r46; .reg .pred %r47; .reg .f64 %r48; .reg .f64 %r49; .reg .pred %r50; .reg .u64 %r51; .reg .u32 %r52; .reg .u32 %r54; .reg .pred %r55; .reg .u64 %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .pred %r59; .reg .u64 %r60; mov.f64 %r33,%ar0; .loc 1 85 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; call (%value_in),__ieee754_cosh,(%out_arg1); ld.param.f64 %r35,[%value_in]; } mov.f64 %r32,%r35; .loc 1 86 4 ld.global.u32 %r36,[__fdlib_version]; setp.eq.u32 %r37,%r36,-1; @ %r37 bra $L1; .loc 1 86 31 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r39,[%value_in]; } .loc 1 86 28 setp.eq.u32 %r40,%r39,0; @ %r40 bra $L1; .loc 1 87 5 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r42,[%value_in]; } .loc 1 87 4 setp.gt.f64 %r43,%r42,0d408633ce8fb9f87d; @ ! %r43 bra $L1; .loc 1 95 15 mov.u32 %r44,3; st.u32 [%frame],%r44; .loc 1 96 15 cvta.const.u64 %r45,$LC0; st.u64 [%frame+8],%r45; .loc 1 97 14 mov.u32 %r46,0; st.u32 [%frame+40],%r46; .loc 1 98 26 st.f64 [%frame+24],%r33; .loc 1 98 15 st.f64 [%frame+16],%r33; .loc 1 99 23 ld.global.u32 %r25,[__fdlib_version]; .loc 1 99 9 setp.ne.u32 %r47,%r25,0; @ %r47 bra $L4; .loc 1 100 20 mov.f64 %r48,0d47efffffe0000000; st.f64 [%frame+32],%r48; bra $L5; $L4: .loc 1 102 20 mov.f64 %r49,0d7ff0000000000000; st.f64 [%frame+32],%r49; .loc 1 103 9 setp.ne.u32 %r50,%r25,2; @ %r50 bra $L5; .loc 1 104 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r51,[%value_in]; } .loc 1 104 15 mov.u32 %r52,34; st.u32 [%r51],%r52; bra $L6; $L5: .loc 1 105 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r54,[%value_in]; } .loc 1 105 14 setp.ne.u32 %r55,%r54,0; @ %r55 bra $L6; .loc 1 106 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r56,[%value_in]; } .loc 1 106 15 mov.u32 %r57,34; st.u32 [%r56],%r57; $L6: .loc 1 108 9 ld.u32 %r58,[%frame+40]; setp.eq.u32 %r59,%r58,0; @ %r59 bra $L7; .loc 1 109 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r60,[%value_in]; } .loc 1 109 20 ld.u32 %r31,[%frame+40]; .loc 1 109 15 st.u32 [%r60],%r31; $L7: .loc 1 110 16 ld.f64 %r32,[%frame+32]; $L1: .loc 1 114 1 mov.f64 %value,%r32; st.param.f64 [%value_out],%value; ret; } lib_a-w_drem.o/ 1591654539 399 399 100644 1009 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654539 399 399 100644 5170 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // 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 DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[4] = {101,120,112,0 }; // 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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r24; .reg .u32 %r30; .reg .u32 %r37; .reg .f64 %r38; .reg .f64 %r39; .reg .f64 %r41; .reg .u32 %r42; .reg .pred %r43; .reg .u32 %r45; .reg .pred %r46; .reg .pred %r47; .reg .u32 %r48; .reg .u64 %r49; .reg .u32 %r50; .reg .pred %r51; .reg .f64 %r52; .reg .f64 %r53; .reg .pred %r54; .reg .u64 %r55; .reg .u32 %r56; .reg .u32 %r58; .reg .pred %r59; .reg .u64 %r60; .reg .u32 %r61; .reg .u32 %r62; .reg .pred %r63; .reg .u64 %r64; .reg .pred %r65; .reg .u32 %r66; .reg .u64 %r67; .reg .u32 %r68; .reg .f64 %r69; .reg .u32 %r70; .reg .pred %r71; .reg .u64 %r72; .reg .u32 %r73; .reg .u32 %r75; .reg .pred %r76; .reg .u64 %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .pred %r80; .reg .u64 %r81; mov.f64 %r39,%ar0; .loc 1 88 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; call (%value_in),__ieee754_exp,(%out_arg1); ld.param.f64 %r41,[%value_in]; } mov.f64 %r38,%r41; .loc 1 89 4 ld.global.u32 %r42,[__fdlib_version]; setp.eq.u32 %r43,%r42,-1; @ %r43 bra $L1; .loc 1 90 5 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; call (%value_in),finite,(%out_arg1); ld.param.u32 %r45,[%value_in]; } .loc 1 90 4 setp.eq.u32 %r46,%r45,0; @ %r46 bra $L1; .loc 1 91 8 setp.gt.f64 %r47,%r39,0d40862e42fefa39ef; @ ! %r47 bra $L27; .loc 1 99 12 mov.u32 %r48,3; st.u32 [%frame],%r48; .loc 1 100 12 cvta.const.u64 %r49,$LC0; st.u64 [%frame+8],%r49; .loc 1 101 11 mov.u32 %r50,0; st.u32 [%frame+40],%r50; .loc 1 102 23 st.f64 [%frame+24],%r39; .loc 1 102 12 st.f64 [%frame+16],%r39; .loc 1 103 20 ld.global.u32 %r24,[__fdlib_version]; .loc 1 103 6 setp.ne.u32 %r51,%r24,0; @ %r51 bra $L5; .loc 1 104 16 mov.f64 %r52,0d47efffffe0000000; st.f64 [%frame+32],%r52; bra $L6; $L5: .loc 1 106 16 mov.f64 %r53,0d7ff0000000000000; st.f64 [%frame+32],%r53; .loc 1 107 6 setp.ne.u32 %r54,%r24,2; @ %r54 bra $L6; .loc 1 108 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r55,[%value_in]; } .loc 1 108 11 mov.u32 %r56,34; st.u32 [%r55],%r56; bra $L7; $L6: .loc 1 109 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r58,[%value_in]; } .loc 1 109 11 setp.ne.u32 %r59,%r58,0; @ %r59 bra $L7; .loc 1 110 4 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r60,[%value_in]; } .loc 1 110 10 mov.u32 %r61,34; st.u32 [%r60],%r61; $L7: .loc 1 112 13 ld.u32 %r62,[%frame+40]; setp.eq.u32 %r63,%r62,0; @ %r63 bra $L8; .loc 1 113 13 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r64,[%value_in]; } .loc 1 113 24 ld.u32 %r30,[%frame+40]; .loc 1 113 19 st.u32 [%r64],%r30; $L8: .loc 1 114 20 ld.f64 %r38,[%frame+32]; bra $L1; $L27: .loc 1 115 15 setp.lt.f64 %r65,%r39,0dc0874910d52d3051; @ ! %r65 bra $L1; .loc 1 117 12 mov.u32 %r66,4; st.u32 [%frame],%r66; .loc 1 118 12 cvta.const.u64 %r67,$LC0; st.u64 [%frame+8],%r67; .loc 1 119 11 mov.u32 %r68,0; st.u32 [%frame+40],%r68; .loc 1 120 23 st.f64 [%frame+24],%r39; .loc 1 120 12 st.f64 [%frame+16],%r39; .loc 1 121 14 mov.f64 %r69,0d0000000000000000; st.f64 [%frame+32],%r69; .loc 1 122 6 ld.global.u32 %r70,[__fdlib_version]; setp.ne.u32 %r71,%r70,2; @ %r71 bra $L10; .loc 1 123 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r72,[%value_in]; } .loc 1 123 11 mov.u32 %r73,34; st.u32 [%r72],%r73; bra $L11; $L10: .loc 1 124 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r75,[%value_in]; } .loc 1 124 11 setp.ne.u32 %r76,%r75,0; @ %r76 bra $L11; .loc 1 125 4 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r77,[%value_in]; } .loc 1 125 10 mov.u32 %r78,34; st.u32 [%r77],%r78; $L11: .loc 1 127 13 ld.u32 %r79,[%frame+40]; setp.eq.u32 %r80,%r79,0; @ %r80 bra $L12; .loc 1 128 13 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r81,[%value_in]; } .loc 1 128 24 ld.u32 %r37,[%frame+40]; .loc 1 128 19 st.u32 [%r81],%r37; $L12: .loc 1 129 20 ld.f64 %r38,[%frame+32]; $L1: .loc 1 134 1 mov.f64 %value,%r38; st.param.f64 [%value_out],%value; ret; } lib_a-w_exp2.o/ 1591654539 399 399 100644 919 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 67 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 68 1 mov.f64 %value,%r26; st.param.f64 [%value_out],%value; ret; } lib_a-w_fmod.o/ 1591654539 399 399 100644 4351 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // 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: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[5] = {102,109,111,100,0 }; // 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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r25; .reg .u32 %r32; .reg .f64 %r36; .reg .f64 %r37; .reg .f64 %r38; .reg .f64 %r41; .reg .u32 %r42; .reg .pred %r43; .reg .u32 %r45; .reg .pred %r46; .reg .u32 %r48; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r53; .reg .u32 %r54; .reg .u16 %r55; .reg .u16 %r56; .reg .u16 %r57; .reg .u32 %r58; .reg .u16 %r59; .reg .pred %r60; .reg .u32 %r61; .reg .u64 %r62; .reg .u32 %r63; .reg .pred %r64; .reg .f64 %r65; .reg .f64 %r66; .reg .pred %r67; .reg .u64 %r68; .reg .u32 %r69; .reg .u32 %r71; .reg .pred %r72; .reg .u64 %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .pred %r76; .reg .u64 %r77; mov.f64 %r37,%ar0; mov.f64 %r38,%ar1; .loc 1 81 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r37; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r38; call (%value_in),__ieee754_fmod,(%out_arg1,%out_arg2); ld.param.f64 %r41,[%value_in]; } mov.f64 %r36,%r41; .loc 1 82 4 ld.global.u32 %r42,[__fdlib_version]; setp.eq.u32 %r43,%r42,-1; @ %r43 bra $L1; .loc 1 82 30 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r45,[%value_in]; } .loc 1 82 28 setp.eq.u32 %r46,%r45,0; @ %r46 bra $L1; .loc 1 82 40 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r37; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r48,[%value_in]; } .loc 1 82 38 set.u32.ne.u32 %r50,%r48,0; neg.s32 %r51,%r50; .loc 1 83 4 set.u32.eq.f64 %r53,%r38,0d0000000000000000; neg.s32 %r54,%r53; cvt.u16.u32 %r56,%r51; cvt.u16.u32 %r57,%r54; and.b16 %r55,%r56,%r57; cvt.u32.u16 %r58,%r55; cvt.u16.u8 %r59,%r58; setp.eq.u16 %r60,%r59,0; @ %r60 bra $L1; .loc 1 85 22 mov.u32 %r61,1; st.u32 [%frame],%r61; .loc 1 86 22 cvta.const.u64 %r62,$LC0; st.u64 [%frame+8],%r62; .loc 1 87 15 st.f64 [%frame+16],%r37; .loc 1 88 15 st.f64 [%frame+24],%r38; .loc 1 89 14 mov.u32 %r63,0; st.u32 [%frame+40],%r63; .loc 1 90 30 ld.global.u32 %r25,[__fdlib_version]; .loc 1 90 16 setp.ne.u32 %r64,%r25,0; @ %r64 bra $L3; .loc 1 91 27 st.f64 [%frame+32],%r37; bra $L4; $L3: .loc 1 93 25 mov.f64 %r66,0d0000000000000000; div.rn.f64 %r65,%r66,0d0000000000000000; .loc 1 93 20 st.f64 [%frame+32],%r65; .loc 1 94 16 setp.ne.u32 %r67,%r25,2; @ %r67 bra $L4; .loc 1 95 16 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r68,[%value_in]; } .loc 1 95 22 mov.u32 %r69,33; st.u32 [%r68],%r69; bra $L5; $L4: .loc 1 96 23 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r71,[%value_in]; } .loc 1 96 21 setp.ne.u32 %r72,%r71,0; @ %r72 bra $L5; .loc 1 97 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r73,[%value_in]; } .loc 1 97 25 mov.u32 %r74,33; st.u32 [%r73],%r74; $L5: .loc 1 99 9 ld.u32 %r75,[%frame+40]; setp.eq.u32 %r76,%r75,0; @ %r76 bra $L6; .loc 1 100 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r77,[%value_in]; } .loc 1 100 20 ld.u32 %r32,[%frame+40]; .loc 1 100 15 st.u32 [%r77],%r32; $L6: .loc 1 101 23 ld.f64 %r36,[%frame+32]; $L1: .loc 1 105 1 mov.f64 %value,%r36; st.param.f64 [%value_out],%value; ret; } lib_a-w_gamma.o/1591654539 399 399 100644 5204 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_gamma_r .extern .func (.param .f64 %value_out) __ieee754_gamma_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 DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[6] = {103,97,109,109,97,0 }; // 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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r37; .reg .u32 %r38; .reg .f64 %r39; .reg .f64 %r40; .reg .f64 %r41; .reg .u64 %r44; .reg .u64 %r45; .reg .f64 %r46; .reg .u32 %r47; .reg .pred %r48; .reg .u32 %r50; .reg .pred %r51; .reg .u32 %r53; .reg .pred %r54; .reg .u64 %r55; .reg .u32 %r57; .reg .pred %r58; .reg .f64 %r60; .reg .pred %r61; .reg .pred %r62; .reg .u32 %r63; .reg .pred %r64; .reg .u64 %r65; .reg .u32 %r66; .reg .u32 %r68; .reg .pred %r69; .reg .u64 %r70; .reg .u32 %r71; .reg .u32 %r72; .reg .pred %r73; .reg .u64 %r74; .reg .u32 %r75; .reg .u32 %r77; .reg .pred %r78; .reg .u64 %r79; .reg .u32 %r80; .reg .u32 %r81; .reg .pred %r82; .reg .u64 %r83; mov.f64 %r41,%ar0; .loc 1 185 13 ld.global.u64 %r45,[_impure_ptr]; add.u64 %r44,%r45,224; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r41; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r44; call (%value_in),__ieee754_gamma_r,(%out_arg1,%out_arg2); ld.param.f64 %r46,[%value_in]; } mov.f64 %r40,%r46; .loc 1 186 11 ld.global.u32 %r47,[__fdlib_version]; setp.eq.u32 %r48,%r47,-1; @ %r48 bra $L1; .loc 1 187 13 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r46; call (%value_in),finite,(%out_arg1); ld.param.u32 %r50,[%value_in]; } .loc 1 187 11 setp.ne.u32 %r51,%r50,0; @ %r51 bra $L1; .loc 1 187 24 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r41; call (%value_in),finite,(%out_arg1); ld.param.u32 %r53,[%value_in]; } .loc 1 187 22 setp.eq.u32 %r54,%r53,0; @ %r54 bra $L1; .loc 1 194 15 cvta.const.u64 %r55,$LC0; st.u64 [%frame+8],%r55; .loc 1 195 14 st.u32 [%frame+40],%r50; .loc 1 196 26 st.f64 [%frame+24],%r41; .loc 1 196 15 st.f64 [%frame+16],%r41; .loc 1 197 16 ld.global.u32 %r57,[__fdlib_version]; setp.eq.u32 %r58,%r57,0; .loc 1 200 28 selp.f64 %r39,0d47efffffe0000000,0d7ff0000000000000,%r58; st.f64 [%frame+32],%r39; .loc 1 201 9 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r41; call (%value_in),floor,(%out_arg1); ld.param.f64 %r60,[%value_in]; } .loc 1 201 8 setp.neu.f64 %r61,%r60,%r41; @ %r61 bra $L4; ld.global.u32 %r38,[__fdlib_version]; .loc 1 201 20 setp.le.f64 %r62,%r41,0d0000000000000000; @ ! %r62 bra $L5; .loc 1 203 12 mov.u32 %r63,2; st.u32 [%frame],%r63; .loc 1 204 6 setp.ne.u32 %r64,%r38,2; @ %r64 bra $L7; .loc 1 205 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r65,[%value_in]; } .loc 1 205 11 mov.u32 %r66,33; st.u32 [%r65],%r66; bra $L8; $L7: .loc 1 206 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r68,[%value_in]; } .loc 1 206 11 setp.eq.u32 %r69,%r68,0; @ ! %r69 bra $L8; .loc 1 207 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r70,[%value_in]; } .loc 1 207 11 mov.u32 %r71,33; st.u32 [%r70],%r71; bra $L8; $L4: ld.global.u32 %r38,[__fdlib_version]; $L5: .loc 1 211 12 mov.u32 %r72,3; st.u32 [%frame],%r72; .loc 1 212 20 setp.ne.u32 %r73,%r38,2; @ %r73 bra $L10; .loc 1 213 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r74,[%value_in]; } .loc 1 213 11 mov.u32 %r75,34; st.u32 [%r74],%r75; bra $L8; $L10: .loc 1 214 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r77,[%value_in]; } .loc 1 214 25 setp.ne.u32 %r78,%r77,0; @ %r78 bra $L8; .loc 1 215 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r79,[%value_in]; } .loc 1 215 25 mov.u32 %r80,34; st.u32 [%r79],%r80; $L8: .loc 1 218 9 ld.u32 %r81,[%frame+40]; setp.eq.u32 %r82,%r81,0; @ %r82 bra $L12; .loc 1 219 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r83,[%value_in]; } .loc 1 219 20 ld.u32 %r37,[%frame+40]; .loc 1 219 15 st.u32 [%r83],%r37; $L12: .loc 1 220 16 ld.f64 %r40,[%frame+32]; $L1: .loc 1 224 1 mov.f64 %value,%r40; st.param.f64 [%value_out],%value; ret; } lib_a-w_hypot.o/1591654539 399 399 100644 4144 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // 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 DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[6] = {104,121,112,111,116,0 }; // 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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r26; .reg .u32 %r32; .reg .f64 %r33; .reg .f64 %r34; .reg .f64 %r35; .reg .f64 %r38; .reg .u32 %r39; .reg .pred %r40; .reg .u32 %r42; .reg .pred %r43; .reg .u32 %r45; .reg .pred %r46; .reg .u32 %r48; .reg .pred %r49; .reg .u32 %r50; .reg .u64 %r51; .reg .pred %r53; .reg .f64 %r54; .reg .f64 %r55; .reg .pred %r56; .reg .u64 %r57; .reg .u32 %r58; .reg .u32 %r60; .reg .pred %r61; .reg .u64 %r62; .reg .u32 %r63; .reg .u32 %r64; .reg .pred %r65; .reg .u64 %r66; mov.f64 %r34,%ar0; mov.f64 %r35,%ar1; .loc 1 77 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r34; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r35; call (%value_in),__ieee754_hypot,(%out_arg1,%out_arg2); ld.param.f64 %r38,[%value_in]; } mov.f64 %r33,%r38; .loc 1 78 4 ld.global.u32 %r39,[__fdlib_version]; setp.eq.u32 %r40,%r39,-1; @ %r40 bra $L1; .loc 1 79 7 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; call (%value_in),finite,(%out_arg1); ld.param.u32 %r42,[%value_in]; } .loc 1 79 4 setp.ne.u32 %r43,%r42,0; @ %r43 bra $L1; .loc 1 79 19 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r34; call (%value_in),finite,(%out_arg1); ld.param.u32 %r45,[%value_in]; } .loc 1 79 17 setp.eq.u32 %r46,%r45,0; @ %r46 bra $L1; .loc 1 79 30 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r35; call (%value_in),finite,(%out_arg1); ld.param.u32 %r48,[%value_in]; } .loc 1 79 28 setp.eq.u32 %r49,%r48,0; @ %r49 bra $L1; .loc 1 87 15 mov.u32 %r50,3; st.u32 [%frame],%r50; .loc 1 88 15 cvta.const.u64 %r51,$LC0; st.u64 [%frame+8],%r51; .loc 1 89 14 st.u32 [%frame+40],%r42; .loc 1 90 15 st.f64 [%frame+16],%r34; .loc 1 91 15 st.f64 [%frame+24],%r35; .loc 1 92 23 ld.global.u32 %r26,[__fdlib_version]; .loc 1 92 9 setp.ne.u32 %r53,%r26,0; @ %r53 bra $L3; .loc 1 93 20 mov.f64 %r54,0d47efffffe0000000; st.f64 [%frame+32],%r54; bra $L4; $L3: .loc 1 95 20 mov.f64 %r55,0d7ff0000000000000; st.f64 [%frame+32],%r55; .loc 1 96 9 setp.ne.u32 %r56,%r26,2; @ %r56 bra $L4; .loc 1 97 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r57,[%value_in]; } .loc 1 97 15 mov.u32 %r58,34; st.u32 [%r57],%r58; bra $L5; $L4: .loc 1 98 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r60,[%value_in]; } .loc 1 98 14 setp.ne.u32 %r61,%r60,0; @ %r61 bra $L5; .loc 1 99 8 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r62,[%value_in]; } .loc 1 99 14 mov.u32 %r63,34; st.u32 [%r62],%r63; $L5: .loc 1 101 9 ld.u32 %r64,[%frame+40]; setp.eq.u32 %r65,%r64,0; @ %r65 bra $L6; .loc 1 102 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r66,[%value_in]; } .loc 1 102 20 ld.u32 %r32,[%frame+40]; .loc 1 102 15 st.u32 [%r66],%r32; $L6: .loc 1 103 23 ld.f64 %r33,[%frame+32]; $L1: .loc 1 107 1 mov.f64 %value,%r33; st.param.f64 [%value_out],%value; ret; } lib_a-w_j0.o/ 1591654539 399 399 100644 8327 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_j0 .extern .func (.param .f64 %value_out) __ieee754_j0 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.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: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_y0 .extern .func (.param .f64 %value_out) __ieee754_y0 (.param .f64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[3] = {106,48,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[3] = {121,48,0 }; // 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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r35; .reg .u32 %r36; .reg .pred %r37; .reg .u32 %r39; .reg .pred %r40; .reg .f64 %r42; .reg .pred %r43; .reg .u32 %r44; .reg .u64 %r45; .reg .u32 %r46; .reg .f64 %r47; .reg .u32 %r48; .reg .pred %r49; .reg .u64 %r50; .reg .u32 %r51; .reg .u32 %r53; .reg .pred %r54; .reg .u64 %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .pred %r58; .reg .u64 %r59; mov.f64 %r33,%ar0; .loc 1 141 13 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; call (%value_in),__ieee754_j0,(%out_arg1); ld.param.f64 %r35,[%value_in]; } mov.f64 %r32,%r35; .loc 1 142 4 ld.global.u32 %r36,[__fdlib_version]; setp.eq.u32 %r37,%r36,-1; @ %r37 bra $L1; .loc 1 142 31 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r39,[%value_in]; } .loc 1 142 28 setp.eq.u32 %r40,%r39,0; @ %r40 bra $L1; .loc 1 143 5 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r42,[%value_in]; } .loc 1 143 4 setp.gt.f64 %r43,%r42,0d434921fb54442d18; @ ! %r43 bra $L1; .loc 1 145 22 mov.u32 %r44,5; st.u32 [%frame],%r44; .loc 1 146 22 cvta.const.u64 %r45,$LC0; st.u64 [%frame+8],%r45; .loc 1 147 14 mov.u32 %r46,0; st.u32 [%frame+40],%r46; .loc 1 148 26 st.f64 [%frame+24],%r33; .loc 1 148 15 st.f64 [%frame+16],%r33; .loc 1 149 24 mov.f64 %r47,0d0000000000000000; st.f64 [%frame+32],%r47; .loc 1 150 16 ld.global.u32 %r48,[__fdlib_version]; setp.ne.u32 %r49,%r48,2; @ %r49 bra $L4; .loc 1 151 16 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r50,[%value_in]; } .loc 1 151 22 mov.u32 %r51,34; st.u32 [%r50],%r51; bra $L5; $L4: .loc 1 152 23 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r53,[%value_in]; } .loc 1 152 21 setp.ne.u32 %r54,%r53,0; @ %r54 bra $L5; .loc 1 153 16 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r55,[%value_in]; } .loc 1 153 22 mov.u32 %r56,34; st.u32 [%r55],%r56; $L5: .loc 1 155 9 ld.u32 %r57,[%frame+40]; setp.eq.u32 %r58,%r57,0; @ %r58 bra $L6; .loc 1 156 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r59,[%value_in]; } .loc 1 156 20 ld.u32 %r31,[%frame+40]; .loc 1 156 15 st.u32 [%r59],%r31; $L6: .loc 1 157 23 ld.f64 %r32,[%frame+32]; $L1: .loc 1 161 1 mov.f64 %value,%r32; 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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r24; .reg .u32 %r30; .reg .u32 %r37; .reg .f64 %r38; .reg .f64 %r39; .reg .f64 %r41; .reg .u32 %r42; .reg .pred %r43; .reg .u32 %r45; .reg .pred %r46; .reg .pred %r47; .reg .u32 %r48; .reg .u64 %r49; .reg .u32 %r50; .reg .pred %r51; .reg .f64 %r52; .reg .f64 %r53; .reg .pred %r54; .reg .u64 %r55; .reg .u32 %r56; .reg .u32 %r58; .reg .pred %r59; .reg .u64 %r60; .reg .u32 %r61; .reg .u32 %r62; .reg .pred %r63; .reg .u64 %r64; .reg .pred %r65; .reg .u32 %r66; .reg .u64 %r67; .reg .u32 %r68; .reg .f64 %r69; .reg .u32 %r70; .reg .pred %r71; .reg .u64 %r72; .reg .u32 %r73; .reg .u32 %r75; .reg .pred %r76; .reg .u64 %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .pred %r80; .reg .u64 %r81; mov.f64 %r39,%ar0; .loc 1 175 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; call (%value_in),__ieee754_y0,(%out_arg1); ld.param.f64 %r41,[%value_in]; } mov.f64 %r38,%r41; .loc 1 176 4 ld.global.u32 %r42,[__fdlib_version]; setp.eq.u32 %r43,%r42,-1; @ %r43 bra $L17; .loc 1 176 31 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r45,[%value_in]; } .loc 1 176 28 setp.eq.u32 %r46,%r45,0; @ %r46 bra $L17; .loc 1 177 11 setp.le.f64 %r47,%r39,0d0000000000000000; @ ! %r47 bra $L43; .loc 1 185 15 mov.u32 %r48,1; st.u32 [%frame],%r48; .loc 1 186 15 cvta.const.u64 %r49,$LC1; st.u64 [%frame+8],%r49; .loc 1 187 14 mov.u32 %r50,0; st.u32 [%frame+40],%r50; .loc 1 188 26 st.f64 [%frame+24],%r39; .loc 1 188 15 st.f64 [%frame+16],%r39; .loc 1 189 23 ld.global.u32 %r24,[__fdlib_version]; .loc 1 189 9 setp.ne.u32 %r51,%r24,0; @ %r51 bra $L21; .loc 1 190 20 mov.f64 %r52,0dc7efffffe0000000; st.f64 [%frame+32],%r52; bra $L22; $L21: .loc 1 192 20 mov.f64 %r53,0dfff0000000000000; st.f64 [%frame+32],%r53; .loc 1 193 9 setp.ne.u32 %r54,%r24,2; @ %r54 bra $L22; .loc 1 194 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r55,[%value_in]; } .loc 1 194 15 mov.u32 %r56,33; st.u32 [%r55],%r56; bra $L23; $L22: .loc 1 195 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r58,[%value_in]; } .loc 1 195 14 setp.ne.u32 %r59,%r58,0; @ %r59 bra $L23; .loc 1 196 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r60,[%value_in]; } .loc 1 196 15 mov.u32 %r61,33; st.u32 [%r60],%r61; $L23: .loc 1 198 9 ld.u32 %r62,[%frame+40]; setp.eq.u32 %r63,%r62,0; @ %r63 bra $L24; .loc 1 199 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r64,[%value_in]; } .loc 1 199 20 ld.u32 %r30,[%frame+40]; .loc 1 199 15 st.u32 [%r64],%r30; $L24: .loc 1 200 23 ld.f64 %r38,[%frame+32]; bra $L17; $L43: .loc 1 202 4 setp.gt.f64 %r65,%r39,0d434921fb54442d18; @ ! %r65 bra $L17; .loc 1 204 22 mov.u32 %r66,5; st.u32 [%frame],%r66; .loc 1 205 22 cvta.const.u64 %r67,$LC1; st.u64 [%frame+8],%r67; .loc 1 206 14 mov.u32 %r68,0; st.u32 [%frame+40],%r68; .loc 1 207 26 st.f64 [%frame+24],%r39; .loc 1 207 15 st.f64 [%frame+16],%r39; .loc 1 208 24 mov.f64 %r69,0d0000000000000000; st.f64 [%frame+32],%r69; .loc 1 209 16 ld.global.u32 %r70,[__fdlib_version]; setp.ne.u32 %r71,%r70,2; @ %r71 bra $L26; .loc 1 210 16 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r72,[%value_in]; } .loc 1 210 22 mov.u32 %r73,34; st.u32 [%r72],%r73; bra $L27; $L26: .loc 1 211 23 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r75,[%value_in]; } .loc 1 211 21 setp.ne.u32 %r76,%r75,0; @ %r76 bra $L27; .loc 1 212 16 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r77,[%value_in]; } .loc 1 212 22 mov.u32 %r78,34; st.u32 [%r77],%r78; $L27: .loc 1 214 9 ld.u32 %r79,[%frame+40]; setp.eq.u32 %r80,%r79,0; @ %r80 bra $L28; .loc 1 215 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r81,[%value_in]; } .loc 1 215 20 ld.u32 %r37,[%frame+40]; .loc 1 215 15 st.u32 [%r81],%r37; $L28: .loc 1 216 16 ld.f64 %r38,[%frame+32]; $L17: .loc 1 220 1 mov.f64 %value,%r38; st.param.f64 [%value_out],%value; ret; } lib_a-w_j1.o/ 1591654539 399 399 100644 8272 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_j1 .extern .func (.param .f64 %value_out) __ieee754_j1 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.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: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_y1 .extern .func (.param .f64 %value_out) __ieee754_y1 (.param .f64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[3] = {106,49,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[3] = {121,49,0 }; // 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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r35; .reg .u32 %r36; .reg .pred %r37; .reg .u32 %r39; .reg .pred %r40; .reg .f64 %r42; .reg .pred %r43; .reg .u32 %r44; .reg .u64 %r45; .reg .u32 %r46; .reg .f64 %r47; .reg .u32 %r48; .reg .pred %r49; .reg .u64 %r50; .reg .u32 %r51; .reg .u32 %r53; .reg .pred %r54; .reg .u64 %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .pred %r58; .reg .u64 %r59; mov.f64 %r33,%ar0; .loc 1 35 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; call (%value_in),__ieee754_j1,(%out_arg1); ld.param.f64 %r35,[%value_in]; } mov.f64 %r32,%r35; .loc 1 36 4 ld.global.u32 %r36,[__fdlib_version]; setp.eq.u32 %r37,%r36,-1; @ %r37 bra $L1; .loc 1 36 31 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r39,[%value_in]; } .loc 1 36 28 setp.eq.u32 %r40,%r39,0; @ %r40 bra $L1; .loc 1 37 5 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r42,[%value_in]; } .loc 1 37 4 setp.gt.f64 %r43,%r42,0d434921fb54442d18; @ ! %r43 bra $L1; .loc 1 39 22 mov.u32 %r44,5; st.u32 [%frame],%r44; .loc 1 40 22 cvta.const.u64 %r45,$LC0; st.u64 [%frame+8],%r45; .loc 1 41 14 mov.u32 %r46,0; st.u32 [%frame+40],%r46; .loc 1 42 26 st.f64 [%frame+24],%r33; .loc 1 42 15 st.f64 [%frame+16],%r33; .loc 1 43 24 mov.f64 %r47,0d0000000000000000; st.f64 [%frame+32],%r47; .loc 1 44 16 ld.global.u32 %r48,[__fdlib_version]; setp.ne.u32 %r49,%r48,2; @ %r49 bra $L4; .loc 1 45 17 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r50,[%value_in]; } .loc 1 45 23 mov.u32 %r51,34; st.u32 [%r50],%r51; bra $L5; $L4: .loc 1 46 23 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r53,[%value_in]; } .loc 1 46 21 setp.ne.u32 %r54,%r53,0; @ %r54 bra $L5; .loc 1 47 17 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r55,[%value_in]; } .loc 1 47 23 mov.u32 %r56,34; st.u32 [%r55],%r56; $L5: .loc 1 49 9 ld.u32 %r57,[%frame+40]; setp.eq.u32 %r58,%r57,0; @ %r58 bra $L6; .loc 1 50 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r59,[%value_in]; } .loc 1 50 20 ld.u32 %r31,[%frame+40]; .loc 1 50 15 st.u32 [%r59],%r31; $L6: .loc 1 51 23 ld.f64 %r32,[%frame+32]; $L1: .loc 1 55 1 mov.f64 %value,%r32; 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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r24; .reg .u32 %r30; .reg .u32 %r37; .reg .f64 %r38; .reg .f64 %r39; .reg .f64 %r41; .reg .u32 %r42; .reg .pred %r43; .reg .u32 %r45; .reg .pred %r46; .reg .pred %r47; .reg .u32 %r48; .reg .u64 %r49; .reg .u32 %r50; .reg .pred %r51; .reg .f64 %r52; .reg .f64 %r53; .reg .pred %r54; .reg .u64 %r55; .reg .u32 %r56; .reg .u32 %r58; .reg .pred %r59; .reg .u64 %r60; .reg .u32 %r61; .reg .u32 %r62; .reg .pred %r63; .reg .u64 %r64; .reg .pred %r65; .reg .u32 %r66; .reg .u64 %r67; .reg .u32 %r68; .reg .f64 %r69; .reg .u32 %r70; .reg .pred %r71; .reg .u64 %r72; .reg .u32 %r73; .reg .u32 %r75; .reg .pred %r76; .reg .u64 %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .pred %r80; .reg .u64 %r81; mov.f64 %r39,%ar0; .loc 1 69 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; call (%value_in),__ieee754_y1,(%out_arg1); ld.param.f64 %r41,[%value_in]; } mov.f64 %r38,%r41; .loc 1 70 4 ld.global.u32 %r42,[__fdlib_version]; setp.eq.u32 %r43,%r42,-1; @ %r43 bra $L17; .loc 1 70 31 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r45,[%value_in]; } .loc 1 70 28 setp.eq.u32 %r46,%r45,0; @ %r46 bra $L17; .loc 1 71 11 setp.le.f64 %r47,%r39,0d0000000000000000; @ ! %r47 bra $L43; .loc 1 79 15 mov.u32 %r48,1; st.u32 [%frame],%r48; .loc 1 80 15 cvta.const.u64 %r49,$LC1; st.u64 [%frame+8],%r49; .loc 1 81 14 mov.u32 %r50,0; st.u32 [%frame+40],%r50; .loc 1 82 26 st.f64 [%frame+24],%r39; .loc 1 82 15 st.f64 [%frame+16],%r39; .loc 1 83 23 ld.global.u32 %r24,[__fdlib_version]; .loc 1 83 9 setp.ne.u32 %r51,%r24,0; @ %r51 bra $L21; .loc 1 84 20 mov.f64 %r52,0dc7efffffe0000000; st.f64 [%frame+32],%r52; bra $L22; $L21: .loc 1 86 20 mov.f64 %r53,0dfff0000000000000; st.f64 [%frame+32],%r53; .loc 1 87 9 setp.ne.u32 %r54,%r24,2; @ %r54 bra $L22; .loc 1 88 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r55,[%value_in]; } .loc 1 88 15 mov.u32 %r56,33; st.u32 [%r55],%r56; bra $L23; $L22: .loc 1 89 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r58,[%value_in]; } .loc 1 89 14 setp.ne.u32 %r59,%r58,0; @ %r59 bra $L23; .loc 1 90 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r60,[%value_in]; } .loc 1 90 15 mov.u32 %r61,33; st.u32 [%r60],%r61; $L23: .loc 1 92 9 ld.u32 %r62,[%frame+40]; setp.eq.u32 %r63,%r62,0; @ %r63 bra $L24; .loc 1 93 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r64,[%value_in]; } .loc 1 93 20 ld.u32 %r30,[%frame+40]; .loc 1 93 15 st.u32 [%r64],%r30; $L24: .loc 1 94 23 ld.f64 %r38,[%frame+32]; bra $L17; $L43: .loc 1 96 4 setp.gt.f64 %r65,%r39,0d434921fb54442d18; @ ! %r65 bra $L17; .loc 1 98 22 mov.u32 %r66,5; st.u32 [%frame],%r66; .loc 1 99 22 cvta.const.u64 %r67,$LC1; st.u64 [%frame+8],%r67; .loc 1 100 14 mov.u32 %r68,0; st.u32 [%frame+40],%r68; .loc 1 101 26 st.f64 [%frame+24],%r39; .loc 1 101 15 st.f64 [%frame+16],%r39; .loc 1 102 24 mov.f64 %r69,0d0000000000000000; st.f64 [%frame+32],%r69; .loc 1 103 16 ld.global.u32 %r70,[__fdlib_version]; setp.ne.u32 %r71,%r70,2; @ %r71 bra $L26; .loc 1 104 17 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r72,[%value_in]; } .loc 1 104 23 mov.u32 %r73,34; st.u32 [%r72],%r73; bra $L27; $L26: .loc 1 105 23 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r75,[%value_in]; } .loc 1 105 21 setp.ne.u32 %r76,%r75,0; @ %r76 bra $L27; .loc 1 106 17 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r77,[%value_in]; } .loc 1 106 23 mov.u32 %r78,34; st.u32 [%r77],%r78; $L27: .loc 1 108 9 ld.u32 %r79,[%frame+40]; setp.eq.u32 %r80,%r79,0; @ %r80 bra $L28; .loc 1 109 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r81,[%value_in]; } .loc 1 109 20 ld.u32 %r37,[%frame+40]; .loc 1 109 15 st.u32 [%r81],%r37; $L28: .loc 1 110 23 ld.f64 %r38,[%frame+32]; $L17: .loc 1 114 1 mov.f64 %value,%r38; st.param.f64 [%value_out],%value; ret; } lib_a-w_jn.o/ 1591654539 399 399 100644 8840 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // 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: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.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: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_yn .extern .func (.param .f64 %value_out) __ieee754_yn (.param .u32 %in_ar0, .param .f64 %in_ar1); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[3] = {106,110,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[3] = {121,110,0 }; // 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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r32; .reg .f64 %r33; .reg .u32 %r34; .reg .f64 %r35; .reg .f64 %r38; .reg .u32 %r39; .reg .pred %r40; .reg .u32 %r42; .reg .pred %r43; .reg .f64 %r45; .reg .pred %r46; .reg .u32 %r47; .reg .u64 %r48; .reg .u32 %r49; .reg .f64 %r50; .reg .f64 %r51; .reg .u32 %r52; .reg .pred %r53; .reg .u64 %r54; .reg .u32 %r55; .reg .u32 %r57; .reg .pred %r58; .reg .u64 %r59; .reg .u32 %r60; .reg .u32 %r61; .reg .pred %r62; .reg .u64 %r63; mov.u32 %r34,%ar0; mov.f64 %r35,%ar1; .loc 1 57 6 { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r34; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r35; call (%value_in),__ieee754_jn,(%out_arg1,%out_arg2); ld.param.f64 %r38,[%value_in]; } mov.f64 %r33,%r38; .loc 1 58 4 ld.global.u32 %r39,[__fdlib_version]; setp.eq.u32 %r40,%r39,-1; @ %r40 bra $L1; .loc 1 58 31 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r35; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r42,[%value_in]; } .loc 1 58 28 setp.eq.u32 %r43,%r42,0; @ %r43 bra $L1; .loc 1 59 5 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r35; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r45,[%value_in]; } .loc 1 59 4 setp.gt.f64 %r46,%r45,0d434921fb54442d18; @ ! %r46 bra $L1; .loc 1 61 22 mov.u32 %r47,5; st.u32 [%frame],%r47; .loc 1 62 22 cvta.const.u64 %r48,$LC0; st.u64 [%frame+8],%r48; .loc 1 63 14 mov.u32 %r49,0; st.u32 [%frame+40],%r49; .loc 1 64 15 cvt.rn.f64.s32 %r50,%r34; st.f64 [%frame+16],%r50; .loc 1 65 15 st.f64 [%frame+24],%r35; .loc 1 66 24 mov.f64 %r51,0d0000000000000000; st.f64 [%frame+32],%r51; .loc 1 67 16 ld.global.u32 %r52,[__fdlib_version]; setp.ne.u32 %r53,%r52,2; @ %r53 bra $L4; .loc 1 68 17 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r54,[%value_in]; } .loc 1 68 23 mov.u32 %r55,34; st.u32 [%r54],%r55; bra $L5; $L4: .loc 1 69 23 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r57,[%value_in]; } .loc 1 69 21 setp.ne.u32 %r58,%r57,0; @ %r58 bra $L5; .loc 1 70 16 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r59,[%value_in]; } .loc 1 70 22 mov.u32 %r60,34; st.u32 [%r59],%r60; $L5: .loc 1 72 9 ld.u32 %r61,[%frame+40]; setp.eq.u32 %r62,%r61,0; @ %r62 bra $L6; .loc 1 73 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r63,[%value_in]; } .loc 1 73 20 ld.u32 %r32,[%frame+40]; .loc 1 73 15 st.u32 [%r63],%r32; $L6: .loc 1 74 23 ld.f64 %r33,[%frame+32]; $L1: .loc 1 78 1 mov.f64 %value,%r33; 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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r25; .reg .u32 %r31; .reg .u32 %r39; .reg .f64 %r40; .reg .u32 %r41; .reg .f64 %r42; .reg .f64 %r45; .reg .u32 %r46; .reg .pred %r47; .reg .u32 %r49; .reg .pred %r50; .reg .pred %r51; .reg .u32 %r52; .reg .u64 %r53; .reg .u32 %r54; .reg .f64 %r55; .reg .pred %r56; .reg .f64 %r57; .reg .f64 %r58; .reg .pred %r59; .reg .u64 %r60; .reg .u32 %r61; .reg .u32 %r63; .reg .pred %r64; .reg .u64 %r65; .reg .u32 %r66; .reg .u32 %r67; .reg .pred %r68; .reg .u64 %r69; .reg .pred %r70; .reg .u32 %r71; .reg .u64 %r72; .reg .u32 %r73; .reg .f64 %r74; .reg .f64 %r75; .reg .u32 %r76; .reg .pred %r77; .reg .u64 %r78; .reg .u32 %r79; .reg .u32 %r81; .reg .pred %r82; .reg .u64 %r83; .reg .u32 %r84; .reg .u32 %r85; .reg .pred %r86; .reg .u64 %r87; mov.u32 %r41,%ar0; mov.f64 %r42,%ar1; .loc 1 92 6 { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r41; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r42; call (%value_in),__ieee754_yn,(%out_arg1,%out_arg2); ld.param.f64 %r45,[%value_in]; } mov.f64 %r40,%r45; .loc 1 93 4 ld.global.u32 %r46,[__fdlib_version]; setp.eq.u32 %r47,%r46,-1; @ %r47 bra $L17; .loc 1 93 31 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r42; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r49,[%value_in]; } .loc 1 93 28 setp.eq.u32 %r50,%r49,0; @ %r50 bra $L17; .loc 1 94 11 setp.le.f64 %r51,%r42,0d0000000000000000; @ ! %r51 bra $L43; .loc 1 102 15 mov.u32 %r52,1; st.u32 [%frame],%r52; .loc 1 103 15 cvta.const.u64 %r53,$LC1; st.u64 [%frame+8],%r53; .loc 1 104 14 mov.u32 %r54,0; st.u32 [%frame+40],%r54; .loc 1 105 15 cvt.rn.f64.s32 %r55,%r41; st.f64 [%frame+16],%r55; .loc 1 106 15 st.f64 [%frame+24],%r42; .loc 1 107 23 ld.global.u32 %r25,[__fdlib_version]; .loc 1 107 9 setp.ne.u32 %r56,%r25,0; @ %r56 bra $L21; .loc 1 108 21 mov.f64 %r57,0dc7efffffe0000000; st.f64 [%frame+32],%r57; bra $L22; $L21: .loc 1 110 21 mov.f64 %r58,0dfff0000000000000; st.f64 [%frame+32],%r58; .loc 1 111 9 setp.ne.u32 %r59,%r25,2; @ %r59 bra $L22; .loc 1 112 10 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r60,[%value_in]; } .loc 1 112 16 mov.u32 %r61,33; st.u32 [%r60],%r61; bra $L23; $L22: .loc 1 113 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r63,[%value_in]; } .loc 1 113 14 setp.ne.u32 %r64,%r63,0; @ %r64 bra $L23; .loc 1 114 10 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r65,[%value_in]; } .loc 1 114 16 mov.u32 %r66,33; st.u32 [%r65],%r66; $L23: .loc 1 116 9 ld.u32 %r67,[%frame+40]; setp.eq.u32 %r68,%r67,0; @ %r68 bra $L24; .loc 1 117 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r69,[%value_in]; } .loc 1 117 20 ld.u32 %r31,[%frame+40]; .loc 1 117 15 st.u32 [%r69],%r31; $L24: .loc 1 118 23 ld.f64 %r40,[%frame+32]; bra $L17; $L43: .loc 1 120 4 setp.gt.f64 %r70,%r42,0d434921fb54442d18; @ ! %r70 bra $L17; .loc 1 122 22 mov.u32 %r71,5; st.u32 [%frame],%r71; .loc 1 123 22 cvta.const.u64 %r72,$LC1; st.u64 [%frame+8],%r72; .loc 1 124 14 mov.u32 %r73,0; st.u32 [%frame+40],%r73; .loc 1 125 15 cvt.rn.f64.s32 %r74,%r41; st.f64 [%frame+16],%r74; .loc 1 126 15 st.f64 [%frame+24],%r42; .loc 1 127 24 mov.f64 %r75,0d0000000000000000; st.f64 [%frame+32],%r75; .loc 1 128 16 ld.global.u32 %r76,[__fdlib_version]; setp.ne.u32 %r77,%r76,2; @ %r77 bra $L26; .loc 1 129 17 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r78,[%value_in]; } .loc 1 129 23 mov.u32 %r79,34; st.u32 [%r78],%r79; bra $L27; $L26: .loc 1 130 23 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r81,[%value_in]; } .loc 1 130 21 setp.ne.u32 %r82,%r81,0; @ %r82 bra $L27; .loc 1 131 17 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r83,[%value_in]; } .loc 1 131 23 mov.u32 %r84,34; st.u32 [%r83],%r84; $L27: .loc 1 133 9 ld.u32 %r85,[%frame+40]; setp.eq.u32 %r86,%r85,0; @ %r86 bra $L28; .loc 1 134 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r87,[%value_in]; } .loc 1 134 20 ld.u32 %r39,[%frame+40]; .loc 1 134 15 st.u32 [%r87],%r39; $L28: .loc 1 135 23 ld.f64 %r40,[%frame+32]; $L17: .loc 1 139 1 mov.f64 %value,%r40; st.param.f64 [%value_out],%value; ret; } /1403 1591654539 399 399 100644 5179 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // 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: 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: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[7] = {108,103,97,109,109,97,0 }; // 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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r37; .reg .u32 %r38; .reg .f64 %r39; .reg .f64 %r40; .reg .f64 %r41; .reg .u64 %r44; .reg .u64 %r45; .reg .f64 %r46; .reg .u32 %r47; .reg .pred %r48; .reg .u32 %r50; .reg .pred %r51; .reg .u32 %r53; .reg .pred %r54; .reg .u64 %r55; .reg .u32 %r57; .reg .pred %r58; .reg .f64 %r60; .reg .pred %r61; .reg .pred %r62; .reg .u32 %r63; .reg .pred %r64; .reg .u64 %r65; .reg .u32 %r66; .reg .u32 %r68; .reg .pred %r69; .reg .u64 %r70; .reg .u32 %r71; .reg .u32 %r72; .reg .pred %r73; .reg .u64 %r74; .reg .u32 %r75; .reg .u32 %r77; .reg .pred %r78; .reg .u64 %r79; .reg .u32 %r80; .reg .u32 %r81; .reg .pred %r82; .reg .u64 %r83; mov.f64 %r41,%ar0; .loc 1 39 13 ld.global.u64 %r45,[_impure_ptr]; add.u64 %r44,%r45,224; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r41; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r44; call (%value_in),__ieee754_lgamma_r,(%out_arg1,%out_arg2); ld.param.f64 %r46,[%value_in]; } mov.f64 %r40,%r46; .loc 1 40 11 ld.global.u32 %r47,[__fdlib_version]; setp.eq.u32 %r48,%r47,-1; @ %r48 bra $L1; .loc 1 41 13 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r46; call (%value_in),finite,(%out_arg1); ld.param.u32 %r50,[%value_in]; } .loc 1 41 11 setp.ne.u32 %r51,%r50,0; @ %r51 bra $L1; .loc 1 41 24 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r41; call (%value_in),finite,(%out_arg1); ld.param.u32 %r53,[%value_in]; } .loc 1 41 22 setp.eq.u32 %r54,%r53,0; @ %r54 bra $L1; .loc 1 48 15 cvta.const.u64 %r55,$LC0; st.u64 [%frame+8],%r55; .loc 1 49 14 st.u32 [%frame+40],%r50; .loc 1 50 15 st.f64 [%frame+16],%r41; .loc 1 51 15 st.f64 [%frame+24],%r41; .loc 1 52 16 ld.global.u32 %r57,[__fdlib_version]; setp.eq.u32 %r58,%r57,0; .loc 1 55 27 selp.f64 %r39,0d47efffffe0000000,0d7ff0000000000000,%r58; st.f64 [%frame+32],%r39; .loc 1 56 9 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r41; call (%value_in),floor,(%out_arg1); ld.param.f64 %r60,[%value_in]; } .loc 1 56 8 setp.neu.f64 %r61,%r60,%r41; @ %r61 bra $L4; ld.global.u32 %r38,[__fdlib_version]; .loc 1 56 20 setp.le.f64 %r62,%r41,0d0000000000000000; @ ! %r62 bra $L5; .loc 1 58 12 mov.u32 %r63,2; st.u32 [%frame],%r63; .loc 1 59 6 setp.ne.u32 %r64,%r38,2; @ %r64 bra $L7; .loc 1 60 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r65,[%value_in]; } .loc 1 60 12 mov.u32 %r66,33; st.u32 [%r65],%r66; bra $L8; $L7: .loc 1 61 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r68,[%value_in]; } .loc 1 61 11 setp.eq.u32 %r69,%r68,0; @ ! %r69 bra $L8; .loc 1 62 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r70,[%value_in]; } .loc 1 62 12 mov.u32 %r71,33; st.u32 [%r70],%r71; bra $L8; $L4: ld.global.u32 %r38,[__fdlib_version]; $L5: .loc 1 67 12 mov.u32 %r72,3; st.u32 [%frame],%r72; .loc 1 68 20 setp.ne.u32 %r73,%r38,2; @ %r73 bra $L10; .loc 1 69 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r74,[%value_in]; } .loc 1 69 12 mov.u32 %r75,34; st.u32 [%r74],%r75; bra $L8; $L10: .loc 1 70 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r77,[%value_in]; } .loc 1 70 25 setp.ne.u32 %r78,%r77,0; @ %r78 bra $L8; .loc 1 71 20 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r79,[%value_in]; } .loc 1 71 26 mov.u32 %r80,34; st.u32 [%r79],%r80; $L8: .loc 1 74 9 ld.u32 %r81,[%frame+40]; setp.eq.u32 %r82,%r81,0; @ %r82 bra $L12; .loc 1 75 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r83,[%value_in]; } .loc 1 75 20 ld.u32 %r37,[%frame+40]; .loc 1 75 15 st.u32 [%r83],%r37; $L12: .loc 1 76 23 ld.f64 %r40,[%frame+32]; $L1: .loc 1 80 1 mov.f64 %value,%r40; st.param.f64 [%value_out],%value; ret; } lib_a-w_log.o/ 1591654539 399 399 100644 5071 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_log .extern .func (.param .f64 %value_out) __ieee754_log (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // 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[4] = {108,111,103,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r24; .reg .u32 %r34; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r38; .reg .u32 %r39; .reg .pred %r40; .reg .u32 %r42; .reg .pred %r43; .reg .pred %r44; .reg .u64 %r45; .reg .u32 %r46; .reg .pred %r47; .reg .f64 %r48; .reg .pred %r49; .reg .u32 %r50; .reg .pred %r51; .reg .u64 %r52; .reg .u32 %r53; .reg .u32 %r55; .reg .pred %r56; .reg .u64 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .pred %r60; .reg .u64 %r61; .reg .u32 %r62; .reg .u32 %r64; .reg .pred %r65; .reg .u64 %r66; .reg .u32 %r67; .reg .u64 %r68; .reg .f64 %r69; .reg .u32 %r70; .reg .pred %r71; .reg .u64 %r72; .reg .u32 %r74; .reg .f64 %r75; .reg .pred %r76; .reg .u32 %r77; mov.f64 %r36,%ar0; .loc 1 76 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r36; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r38,[%value_in]; } mov.f64 %r35,%r38; .loc 1 77 4 ld.global.u32 %r39,[__fdlib_version]; setp.eq.u32 %r40,%r39,-1; @ %r40 bra $L1; .loc 1 77 31 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r36; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r42,[%value_in]; } .loc 1 77 28 setp.eq.u32 %r43,%r42,0; @ %r43 bra $L1; .loc 1 77 40 setp.gt.f64 %r44,%r36,0d0000000000000000; @ %r44 bra $L1; .loc 1 84 11 cvta.const.u64 %r45,$LC0; st.u64 [%frame+8],%r45; .loc 1 85 10 mov.u32 %r46,0; st.u32 [%frame+40],%r46; .loc 1 86 11 st.f64 [%frame+16],%r36; .loc 1 87 11 st.f64 [%frame+24],%r36; .loc 1 88 19 ld.global.u32 %r24,[__fdlib_version]; .loc 1 88 5 setp.eq.u32 %r47,%r24,0; @ %r47 bra $L3; mov.f64 %r48,0dfff0000000000000; st.f64 [%frame+32],%r48; .loc 1 92 4 setp.neu.f64 %r49,%r36,0d0000000000000000; @ %r49 bra $L4; .loc 1 94 15 mov.u32 %r50,2; st.u32 [%frame],%r50; .loc 1 95 9 setp.ne.u32 %r51,%r24,2; @ %r51 bra $L5; .loc 1 96 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r52,[%value_in]; } .loc 1 96 15 mov.u32 %r53,34; st.u32 [%r52],%r53; bra $L6; $L5: .loc 1 97 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r55,[%value_in]; } .loc 1 97 14 setp.ne.u32 %r56,%r55,0; @ %r56 bra $L6; .loc 1 98 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r57,[%value_in]; } .loc 1 98 15 mov.u32 %r58,34; st.u32 [%r57],%r58; bra $L6; $L4: .loc 1 102 15 mov.u32 %r59,1; st.u32 [%frame],%r59; .loc 1 103 9 setp.ne.u32 %r60,%r24,2; @ %r60 bra $L7; .loc 1 104 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r61,[%value_in]; } .loc 1 104 15 mov.u32 %r62,33; st.u32 [%r61],%r62; bra $L8; $L7: .loc 1 105 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r64,[%value_in]; } .loc 1 105 14 setp.ne.u32 %r65,%r64,0; @ %r65 bra $L8; .loc 1 106 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r66,[%value_in]; } .loc 1 106 15 mov.u32 %r67,33; st.u32 [%r66],%r67; $L8: .loc 1 108 26 cvta.const.u64 %r68,$LC1; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r68; call (%value_in),nan,(%out_arg1); ld.param.f64 %r69,[%value_in]; } .loc 1 108 24 st.f64 [%frame+32],%r69; $L6: .loc 1 110 5 ld.u32 %r70,[%frame+40]; setp.eq.u32 %r71,%r70,0; @ %r71 bra $L9; .loc 1 111 12 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r72,[%value_in]; } .loc 1 111 23 ld.u32 %r34,[%frame+40]; .loc 1 111 18 st.u32 [%r72],%r34; $L9: .loc 1 112 19 ld.f64 %r35,[%frame+32]; bra $L1; $L10: .loc 1 94 15 mov.u32 %r74,2; st.u32 [%frame],%r74; bra $L5; $L3: mov.f64 %r75,0dc7efffffe0000000; st.f64 [%frame+32],%r75; .loc 1 92 4 setp.eq.f64 %r76,%r36,0d0000000000000000; @ %r76 bra $L10; .loc 1 102 15 mov.u32 %r77,1; st.u32 [%frame],%r77; bra $L7; $L1: .loc 1 114 1 mov.f64 %value,%r35; st.param.f64 [%value_out],%value; ret; } lib_a-w_log10.o/1591654539 399 399 100644 5102 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_log10 .extern .func (.param .f64 %value_out) __ieee754_log10 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // 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[6] = {108,111,103,49,48,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r24; .reg .u32 %r34; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r38; .reg .u32 %r39; .reg .pred %r40; .reg .u32 %r42; .reg .pred %r43; .reg .pred %r44; .reg .u64 %r45; .reg .u32 %r46; .reg .pred %r47; .reg .f64 %r48; .reg .pred %r49; .reg .u32 %r50; .reg .pred %r51; .reg .u64 %r52; .reg .u32 %r53; .reg .u32 %r55; .reg .pred %r56; .reg .u64 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .pred %r60; .reg .u64 %r61; .reg .u32 %r62; .reg .u32 %r64; .reg .pred %r65; .reg .u64 %r66; .reg .u32 %r67; .reg .u64 %r68; .reg .f64 %r69; .reg .u32 %r70; .reg .pred %r71; .reg .u64 %r72; .reg .u32 %r74; .reg .f64 %r75; .reg .pred %r76; .reg .u32 %r77; mov.f64 %r36,%ar0; .loc 1 73 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r36; call (%value_in),__ieee754_log10,(%out_arg1); ld.param.f64 %r38,[%value_in]; } mov.f64 %r35,%r38; .loc 1 74 4 ld.global.u32 %r39,[__fdlib_version]; setp.eq.u32 %r40,%r39,-1; @ %r40 bra $L1; .loc 1 74 31 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r36; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r42,[%value_in]; } .loc 1 74 28 setp.eq.u32 %r43,%r42,0; @ %r43 bra $L1; .loc 1 75 4 setp.le.f64 %r44,%r36,0d0000000000000000; @ ! %r44 bra $L1; .loc 1 82 15 cvta.const.u64 %r45,$LC0; st.u64 [%frame+8],%r45; .loc 1 83 14 mov.u32 %r46,0; st.u32 [%frame+40],%r46; .loc 1 84 15 st.f64 [%frame+16],%r36; .loc 1 85 15 st.f64 [%frame+24],%r36; .loc 1 86 23 ld.global.u32 %r24,[__fdlib_version]; .loc 1 86 9 setp.eq.u32 %r47,%r24,0; @ %r47 bra $L4; mov.f64 %r48,0dfff0000000000000; st.f64 [%frame+32],%r48; .loc 1 90 8 setp.neu.f64 %r49,%r36,0d0000000000000000; @ %r49 bra $L5; .loc 1 92 19 mov.u32 %r50,2; st.u32 [%frame],%r50; .loc 1 93 13 setp.ne.u32 %r51,%r24,2; @ %r51 bra $L6; .loc 1 94 13 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r52,[%value_in]; } .loc 1 94 19 mov.u32 %r53,34; st.u32 [%r52],%r53; bra $L7; $L6: .loc 1 95 20 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r55,[%value_in]; } .loc 1 95 18 setp.ne.u32 %r56,%r55,0; @ %r56 bra $L7; .loc 1 96 13 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r57,[%value_in]; } .loc 1 96 19 mov.u32 %r58,34; st.u32 [%r57],%r58; bra $L7; $L5: .loc 1 100 19 mov.u32 %r59,1; st.u32 [%frame],%r59; .loc 1 101 13 setp.ne.u32 %r60,%r24,2; @ %r60 bra $L8; .loc 1 102 13 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r61,[%value_in]; } .loc 1 102 19 mov.u32 %r62,33; st.u32 [%r61],%r62; bra $L9; $L8: .loc 1 103 20 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r64,[%value_in]; } .loc 1 103 18 setp.ne.u32 %r65,%r64,0; @ %r65 bra $L9; .loc 1 104 13 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r66,[%value_in]; } .loc 1 104 19 mov.u32 %r67,33; st.u32 [%r66],%r67; $L9: .loc 1 106 30 cvta.const.u64 %r68,$LC1; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r68; call (%value_in),nan,(%out_arg1); ld.param.f64 %r69,[%value_in]; } .loc 1 106 28 st.f64 [%frame+32],%r69; $L7: .loc 1 108 9 ld.u32 %r70,[%frame+40]; setp.eq.u32 %r71,%r70,0; @ %r71 bra $L10; .loc 1 109 16 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r72,[%value_in]; } .loc 1 109 27 ld.u32 %r34,[%frame+40]; .loc 1 109 22 st.u32 [%r72],%r34; $L10: .loc 1 110 23 ld.f64 %r35,[%frame+32]; bra $L1; $L11: .loc 1 92 19 mov.u32 %r74,2; st.u32 [%frame],%r74; bra $L6; $L4: mov.f64 %r75,0dc7efffffe0000000; st.f64 [%frame+32],%r75; .loc 1 90 8 setp.eq.f64 %r76,%r36,0d0000000000000000; @ %r76 bra $L11; .loc 1 100 19 mov.u32 %r77,1; st.u32 [%frame],%r77; bra $L8; $L1: .loc 1 114 1 mov.f64 %value,%r35; st.param.f64 [%value_out],%value; ret; } lib_a-w_pow.o/ 1591654539 399 399 100644 15937 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // 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: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %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 DECL: rint .extern .func (.param .f64 %value_out) rint (.param .f64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[4] = {112,111,119,0 }; // 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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r32; .reg .u32 %r38; .reg .u32 %r40; .reg .u32 %r46; .reg .u32 %r51; .reg .u32 %r58; .reg .u32 %r68; .reg .u32 %r77; .reg .u32 %r78; .reg .f64 %r79; .reg .f64 %r80; .reg .f64 %r81; .reg .f64 %r82; .reg .f64 %r85; .reg .u32 %r86; .reg .pred %r87; .reg .u32 %r89; .reg .pred %r90; .reg .u32 %r92; .reg .pred %r93; .reg .pred %r94; .reg .u32 %r95; .reg .u64 %r96; .reg .f64 %r98; .reg .u32 %r100; .reg .u32 %r101; .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 .u32 %r112; .reg .pred %r113; .reg .u64 %r114; .reg .u32 %r115; .reg .u32 %r116; .reg .pred %r117; .reg .u64 %r118; .reg .pred %r119; .reg .pred %r120; .reg .u32 %r121; .reg .u64 %r122; .reg .u32 %r123; .reg .f64 %r124; .reg .u32 %r125; .reg .pred %r126; .reg .u32 %r128; .reg .pred %r129; .reg .u64 %r130; .reg .u32 %r131; .reg .u32 %r132; .reg .pred %r133; .reg .u64 %r134; .reg .u32 %r136; .reg .pred %r137; .reg .pred %r138; .reg .u32 %r139; .reg .u64 %r140; .reg .u32 %r141; .reg .pred %r142; .reg .f64 %r143; .reg .f64 %r144; .reg .pred %r145; .reg .u64 %r146; .reg .u32 %r147; .reg .u32 %r149; .reg .pred %r150; .reg .u64 %r151; .reg .u32 %r152; .reg .u32 %r153; .reg .pred %r154; .reg .u64 %r155; .reg .u32 %r157; .reg .pred %r158; .reg .u32 %r160; .reg .pred %r161; .reg .u32 %r163; .reg .pred %r164; .reg .u32 %r166; .reg .pred %r167; .reg .u32 %r168; .reg .u64 %r169; .reg .pred %r171; .reg .f64 %r172; .reg .f64 %r173; .reg .f64 %r174; .reg .pred %r175; .reg .u64 %r176; .reg .u32 %r177; .reg .u32 %r179; .reg .pred %r180; .reg .u64 %r181; .reg .u32 %r182; .reg .u32 %r183; .reg .pred %r184; .reg .u64 %r185; .reg .u32 %r186; .reg .u64 %r187; .reg .pred %r190; .reg .f64 %r191; .reg .pred %r192; .reg .f64 %r194; .reg .pred %r195; .reg .f64 %r196; .reg .f64 %r197; .reg .pred %r198; .reg .f64 %r200; .reg .pred %r201; .reg .f64 %r202; .reg .pred %r204; .reg .u64 %r205; .reg .u32 %r206; .reg .u32 %r208; .reg .pred %r209; .reg .u64 %r210; .reg .u32 %r211; .reg .u32 %r212; .reg .pred %r213; .reg .u64 %r214; .reg .pred %r215; .reg .u32 %r217; .reg .pred %r218; .reg .u32 %r220; .reg .pred %r221; .reg .u32 %r222; .reg .u64 %r223; .reg .u32 %r224; .reg .f64 %r225; .reg .u32 %r226; .reg .pred %r227; .reg .u64 %r228; .reg .u32 %r229; .reg .u32 %r231; .reg .pred %r232; .reg .u64 %r233; .reg .u32 %r234; .reg .u32 %r235; .reg .pred %r236; .reg .u64 %r237; .reg .u32 %r239; mov.f64 %r81,%ar0; mov.f64 %r82,%ar1; .loc 1 85 4 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r81; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r82; call (%value_in),__ieee754_pow,(%out_arg1,%out_arg2); ld.param.f64 %r85,[%value_in]; } mov.f64 %r80,%r85; .loc 1 86 4 ld.global.u32 %r86,[__fdlib_version]; setp.eq.u32 %r87,%r86,-1; @ %r87 bra $L1; .loc 1 86 30 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r82; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r89,[%value_in]; } .loc 1 86 27 setp.eq.u32 %r90,%r89,0; @ %r90 bra $L1; .loc 1 87 5 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r81; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r92,[%value_in]; } .loc 1 87 4 setp.ne.u32 %r93,%r92,0; @ %r93 bra $L3; .loc 1 88 8 setp.neu.f64 %r94,%r82,0d0000000000000000; @ %r94 bra $L1; .loc 1 91 12 mov.u32 %r95,1; st.u32 [%frame],%r95; .loc 1 92 12 cvta.const.u64 %r96,$LC0; st.u64 [%frame+8],%r96; .loc 1 93 11 st.u32 [%frame+40],%r92; .loc 1 94 12 st.f64 [%frame+16],%r81; .loc 1 95 12 st.f64 [%frame+24],%r82; .loc 1 96 14 mov.f64 %r98,0d3ff0000000000000; st.f64 [%frame+32],%r98; .loc 1 97 30 ld.global.u32 %r78,[__fdlib_version]; set.u32.eq.u32 %r100,%r78,-1; neg.s32 %r101,%r100; set.u32.eq.u32 %r103,%r78,2; neg.s32 %r104,%r103; cvt.u16.u32 %r106,%r101; cvt.u16.u32 %r107,%r104; or.b16 %r105,%r106,%r107; .loc 1 97 6 cvt.u32.u16 %r108,%r105; cvt.u16.u8 %r109,%r108; setp.ne.u16 %r110,%r109,0; @ %r110 bra $L35; .loc 1 99 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r112,[%value_in]; } .loc 1 99 11 setp.ne.u32 %r113,%r112,0; @ %r113 bra $L5; .loc 1 100 4 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r114,[%value_in]; } .loc 1 100 10 mov.u32 %r115,33; st.u32 [%r114],%r115; $L5: .loc 1 102 13 ld.u32 %r116,[%frame+40]; setp.ne.u32 %r117,%r116,0; @ %r117 bra $L6; ld.f64 %r80,[%frame+32]; bra $L1; $L6: .loc 1 103 13 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r118,[%value_in]; } .loc 1 103 24 ld.u32 %r32,[%frame+40]; .loc 1 103 19 st.u32 [%r118],%r32; ld.f64 %r80,[%frame+32]; bra $L1; $L35: mov.f64 %r80,%r98; .loc 1 104 27 bra $L1; $L3: .loc 1 108 4 setp.neu.f64 %r119,%r81,0d0000000000000000; @ %r119 bra $L7; .loc 1 109 8 setp.neu.f64 %r120,%r82,0d0000000000000000; @ %r120 bra $L8; .loc 1 112 12 mov.u32 %r121,1; st.u32 [%frame],%r121; .loc 1 113 12 cvta.const.u64 %r122,$LC0; st.u64 [%frame+8],%r122; .loc 1 114 11 mov.u32 %r123,0; st.u32 [%frame+40],%r123; .loc 1 115 12 st.f64 [%frame+16],%r81; .loc 1 116 12 st.f64 [%frame+24],%r82; .loc 1 117 14 mov.f64 %r124,0d0000000000000000; st.f64 [%frame+32],%r124; .loc 1 118 6 ld.global.u32 %r125,[__fdlib_version]; setp.ne.u32 %r126,%r125,0; @ %r126 bra $L36; .loc 1 119 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r128,[%value_in]; } .loc 1 119 11 setp.ne.u32 %r129,%r128,0; @ %r129 bra $L10; .loc 1 120 4 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r130,[%value_in]; } .loc 1 120 10 mov.u32 %r131,33; st.u32 [%r130],%r131; $L10: .loc 1 122 13 ld.u32 %r132,[%frame+40]; setp.ne.u32 %r133,%r132,0; @ %r133 bra $L11; ld.f64 %r80,[%frame+32]; bra $L1; $L11: .loc 1 123 13 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r134,[%value_in]; } .loc 1 123 24 ld.u32 %r38,[%frame+40]; .loc 1 123 19 st.u32 [%r134],%r38; ld.f64 %r80,[%frame+32]; bra $L1; $L36: mov.f64 %r80,0d3ff0000000000000; .loc 1 124 27 bra $L1; $L8: .loc 1 126 16 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r82; call (%value_in),finite,(%out_arg1); ld.param.u32 %r136,[%value_in]; } .loc 1 126 15 setp.eq.u32 %r137,%r136,0; @ %r137 bra $L1; .loc 1 126 25 setp.lt.f64 %r138,%r82,0d0000000000000000; @ ! %r138 bra $L1; .loc 1 128 12 mov.u32 %r139,1; st.u32 [%frame],%r139; .loc 1 129 12 cvta.const.u64 %r140,$LC0; st.u64 [%frame+8],%r140; .loc 1 130 11 mov.u32 %r141,0; st.u32 [%frame+40],%r141; .loc 1 131 12 st.f64 [%frame+16],%r81; .loc 1 132 12 st.f64 [%frame+24],%r82; .loc 1 133 20 ld.global.u32 %r40,[__fdlib_version]; .loc 1 133 6 setp.ne.u32 %r142,%r40,0; @ %r142 bra $L13; .loc 1 134 16 mov.f64 %r143,0d0000000000000000; st.f64 [%frame+32],%r143; bra $L14; $L13: .loc 1 136 16 mov.f64 %r144,0dfff0000000000000; st.f64 [%frame+32],%r144; .loc 1 137 6 setp.ne.u32 %r145,%r40,2; @ %r145 bra $L14; .loc 1 138 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r146,[%value_in]; } .loc 1 138 11 mov.u32 %r147,33; st.u32 [%r146],%r147; bra $L15; $L14: .loc 1 139 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r149,[%value_in]; } .loc 1 139 11 setp.ne.u32 %r150,%r149,0; @ %r150 bra $L15; .loc 1 140 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r151,[%value_in]; } .loc 1 140 11 mov.u32 %r152,33; st.u32 [%r151],%r152; $L15: .loc 1 142 13 ld.u32 %r153,[%frame+40]; setp.eq.u32 %r154,%r153,0; @ %r154 bra $L16; .loc 1 143 13 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r155,[%value_in]; } .loc 1 143 24 ld.u32 %r46,[%frame+40]; .loc 1 143 19 st.u32 [%r155],%r46; $L16: .loc 1 144 27 ld.f64 %r80,[%frame+32]; bra $L1; $L7: .loc 1 148 6 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r85; call (%value_in),finite,(%out_arg1); ld.param.u32 %r157,[%value_in]; } .loc 1 148 4 setp.ne.u32 %r158,%r157,0; @ %r158 bra $L17; .loc 1 149 9 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r81; call (%value_in),finite,(%out_arg1); ld.param.u32 %r160,[%value_in]; } .loc 1 149 8 setp.eq.u32 %r161,%r160,0; @ %r161 bra $L17; .loc 1 149 20 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r82; call (%value_in),finite,(%out_arg1); ld.param.u32 %r163,[%value_in]; } .loc 1 149 18 setp.eq.u32 %r164,%r163,0; @ %r164 bra $L17; .loc 1 150 13 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r85; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r166,[%value_in]; } .loc 1 150 12 setp.ne.u32 %r167,%r166,0; @ %r167 bra $L18; .loc 1 152 16 mov.u32 %r168,1; st.u32 [%frame],%r168; .loc 1 153 16 cvta.const.u64 %r169,$LC0; st.u64 [%frame+8],%r169; .loc 1 154 15 st.u32 [%frame+40],%r166; .loc 1 155 16 st.f64 [%frame+16],%r81; .loc 1 156 16 st.f64 [%frame+24],%r82; .loc 1 157 24 ld.global.u32 %r51,[__fdlib_version]; .loc 1 157 10 setp.ne.u32 %r171,%r51,0; @ %r171 bra $L19; .loc 1 158 22 mov.f64 %r172,0d0000000000000000; st.f64 [%frame+32],%r172; bra $L20; $L19: .loc 1 160 27 mov.f64 %r174,0d0000000000000000; div.rn.f64 %r173,%r174,0d0000000000000000; .loc 1 160 22 st.f64 [%frame+32],%r173; .loc 1 161 10 setp.ne.u32 %r175,%r51,2; @ %r175 bra $L20; .loc 1 162 11 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r176,[%value_in]; } .loc 1 162 17 mov.u32 %r177,33; st.u32 [%r176],%r177; bra $L21; $L20: .loc 1 163 17 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r179,[%value_in]; } .loc 1 163 15 setp.ne.u32 %r180,%r179,0; @ %r180 bra $L21; .loc 1 164 11 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r181,[%value_in]; } .loc 1 164 17 mov.u32 %r182,33; st.u32 [%r181],%r182; $L21: .loc 1 166 17 ld.u32 %r183,[%frame+40]; setp.eq.u32 %r184,%r183,0; @ %r184 bra $L22; .loc 1 167 18 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r185,[%value_in]; } .loc 1 167 29 ld.u32 %r58,[%frame+40]; .loc 1 167 24 st.u32 [%r185],%r58; $L22: .loc 1 168 31 ld.f64 %r80,[%frame+32]; bra $L1; $L18: .loc 1 171 16 mov.u32 %r186,3; st.u32 [%frame],%r186; .loc 1 172 16 cvta.const.u64 %r187,$LC0; st.u64 [%frame+8],%r187; .loc 1 173 15 st.u32 [%frame+40],%r157; .loc 1 174 16 st.f64 [%frame+16],%r81; .loc 1 175 16 st.f64 [%frame+24],%r82; mul.f64 %r79,%r82,0d3fe0000000000000; .loc 1 176 10 ld.global.u32 %r239,[__fdlib_version]; setp.ne.u32 %r190,%r239,0; @ %r190 bra $L23; .loc 1 177 21 mov.f64 %r191,0d47efffffe0000000; st.f64 [%frame+32],%r191; .loc 1 179 12 setp.lt.f64 %r192,%r81,0d0000000000000000; @ ! %r192 bra $L24; .loc 1 179 20 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r79; call (%value_in),rint,(%out_arg1); ld.param.f64 %r194,[%value_in]; } .loc 1 179 18 setp.neu.f64 %r195,%r194,%r79; @ %r195 bra $L26; ld.global.u32 %r239,[__fdlib_version]; bra $L27; $L26: .loc 1 179 43 mov.f64 %r196,0dc7efffffe0000000; st.f64 [%frame+32],%r196; ld.global.u32 %r239,[__fdlib_version]; bra $L27; $L23: .loc 1 181 21 mov.f64 %r197,0d7ff0000000000000; st.f64 [%frame+32],%r197; .loc 1 183 12 setp.lt.f64 %r198,%r81,0d0000000000000000; @ ! %r198 bra $L27; .loc 1 183 20 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r79; call (%value_in),rint,(%out_arg1); ld.param.f64 %r200,[%value_in]; } .loc 1 183 18 setp.eq.f64 %r201,%r200,%r79; @ ! %r201 bra $L74; ld.global.u32 %r239,[__fdlib_version]; bra $L27; $L74: .loc 1 183 43 mov.f64 %r202,0dfff0000000000000; st.f64 [%frame+32],%r202; ld.global.u32 %r239,[__fdlib_version]; $L27: .loc 1 185 10 setp.ne.u32 %r204,%r239,2; @ %r204 bra $L24; .loc 1 186 11 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r205,[%value_in]; } .loc 1 186 17 mov.u32 %r206,34; st.u32 [%r205],%r206; bra $L30; $L24: .loc 1 187 17 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r208,[%value_in]; } .loc 1 187 15 setp.ne.u32 %r209,%r208,0; @ %r209 bra $L30; .loc 1 188 4 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r210,[%value_in]; } .loc 1 188 10 mov.u32 %r211,34; st.u32 [%r210],%r211; $L30: .loc 1 190 17 ld.u32 %r212,[%frame+40]; setp.eq.u32 %r213,%r212,0; @ %r213 bra $L31; .loc 1 191 18 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r214,[%value_in]; } .loc 1 191 29 ld.u32 %r68,[%frame+40]; .loc 1 191 24 st.u32 [%r214],%r68; $L31: .loc 1 192 31 ld.f64 %r80,[%frame+32]; bra $L1; $L17: .loc 1 196 4 setp.neu.f64 %r215,%r85,0d0000000000000000; @ %r215 bra $L1; .loc 1 196 13 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r81; call (%value_in),finite,(%out_arg1); ld.param.u32 %r217,[%value_in]; } .loc 1 196 11 setp.eq.u32 %r218,%r217,0; @ %r218 bra $L1; .loc 1 196 24 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r82; call (%value_in),finite,(%out_arg1); ld.param.u32 %r220,[%value_in]; } .loc 1 196 22 setp.eq.u32 %r221,%r220,0; @ %r221 bra $L1; .loc 1 198 15 mov.u32 %r222,4; st.u32 [%frame],%r222; .loc 1 199 15 cvta.const.u64 %r223,$LC0; st.u64 [%frame+8],%r223; .loc 1 200 14 mov.u32 %r224,0; st.u32 [%frame+40],%r224; .loc 1 201 15 st.f64 [%frame+16],%r81; .loc 1 202 15 st.f64 [%frame+24],%r82; .loc 1 203 17 mov.f64 %r225,0d0000000000000000; st.f64 [%frame+32],%r225; .loc 1 204 9 ld.global.u32 %r226,[__fdlib_version]; setp.ne.u32 %r227,%r226,2; @ %r227 bra $L32; .loc 1 205 10 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r228,[%value_in]; } .loc 1 205 16 mov.u32 %r229,34; st.u32 [%r228],%r229; bra $L33; $L32: .loc 1 206 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r231,[%value_in]; } .loc 1 206 14 setp.ne.u32 %r232,%r231,0; @ %r232 bra $L33; .loc 1 207 8 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r233,[%value_in]; } .loc 1 207 14 mov.u32 %r234,34; st.u32 [%r233],%r234; $L33: .loc 1 209 9 ld.u32 %r235,[%frame+40]; setp.eq.u32 %r236,%r235,0; @ %r236 bra $L34; .loc 1 210 10 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r237,[%value_in]; } .loc 1 210 21 ld.u32 %r77,[%frame+40]; .loc 1 210 16 st.u32 [%r237],%r77; $L34: .loc 1 211 23 ld.f64 %r80,[%frame+32]; $L1: .loc 1 215 1 mov.f64 %value,%r80; st.param.f64 [%value_out],%value; ret; } /1421 1591654539 399 399 100644 4026 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // 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: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[10] = {114,101,109,97,105,110,100,101,114,0 }; // 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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r31; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r37; .reg .f64 %r40; .reg .u32 %r41; .reg .pred %r42; .reg .u32 %r44; .reg .u32 %r46; .reg .u32 %r47; .reg .u32 %r49; .reg .u32 %r50; .reg .u16 %r51; .reg .u16 %r52; .reg .u16 %r53; .reg .u32 %r54; .reg .u16 %r55; .reg .pred %r56; .reg .u32 %r57; .reg .u64 %r58; .reg .u32 %r59; .reg .f64 %r60; .reg .f64 %r61; .reg .u32 %r62; .reg .pred %r63; .reg .u64 %r64; .reg .u32 %r65; .reg .u32 %r67; .reg .pred %r68; .reg .u64 %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .pred %r72; .reg .u64 %r73; mov.f64 %r36,%ar0; mov.f64 %r37,%ar1; .loc 1 68 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r36; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r37; call (%value_in),__ieee754_remainder,(%out_arg1,%out_arg2); ld.param.f64 %r40,[%value_in]; } mov.f64 %r35,%r40; .loc 1 69 4 ld.global.u32 %r41,[__fdlib_version]; setp.eq.u32 %r42,%r41,-1; @ %r42 bra $L1; .loc 1 69 31 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r37; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r44,[%value_in]; } .loc 1 70 4 set.u32.eq.f64 %r46,%r37,0d0000000000000000; neg.s32 %r47,%r46; .loc 1 69 28 set.u32.ne.u32 %r49,%r44,0; neg.s32 %r50,%r49; .loc 1 70 4 cvt.u16.u32 %r52,%r47; cvt.u16.u32 %r53,%r50; and.b16 %r51,%r52,%r53; cvt.u32.u16 %r54,%r51; cvt.u16.u8 %r55,%r54; setp.eq.u16 %r56,%r55,0; @ %r56 bra $L1; .loc 1 72 22 mov.u32 %r57,1; st.u32 [%frame],%r57; .loc 1 73 22 cvta.const.u64 %r58,$LC0; st.u64 [%frame+8],%r58; .loc 1 74 14 mov.u32 %r59,0; st.u32 [%frame+40],%r59; .loc 1 75 15 st.f64 [%frame+16],%r36; .loc 1 76 15 st.f64 [%frame+24],%r37; .loc 1 77 29 mov.f64 %r61,0d0000000000000000; div.rn.f64 %r60,%r61,0d0000000000000000; .loc 1 77 24 st.f64 [%frame+32],%r60; .loc 1 78 16 ld.global.u32 %r62,[__fdlib_version]; setp.ne.u32 %r63,%r62,2; @ %r63 bra $L3; .loc 1 79 16 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r64,[%value_in]; } .loc 1 79 22 mov.u32 %r65,33; st.u32 [%r64],%r65; bra $L4; $L3: .loc 1 80 23 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r67,[%value_in]; } .loc 1 80 21 setp.ne.u32 %r68,%r67,0; @ %r68 bra $L4; .loc 1 81 16 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r69,[%value_in]; } .loc 1 81 22 mov.u32 %r70,33; st.u32 [%r69],%r70; $L4: .loc 1 83 9 ld.u32 %r71,[%frame+40]; setp.eq.u32 %r72,%r71,0; @ %r72 bra $L5; .loc 1 84 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r73,[%value_in]; } .loc 1 84 20 ld.u32 %r31,[%frame+40]; .loc 1 84 15 st.u32 [%r73],%r31; $L5: .loc 1 85 23 ld.f64 %r35,[%frame+32]; $L1: .loc 1 89 1 mov.f64 %value,%r35; st.param.f64 [%value_out],%value; ret; } lib_a-w_scalb.o/1591654539 399 399 100644 7014 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // 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: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: copysign .extern .func (.param .f64 %value_out) copysign (.param .f64 %in_ar0, .param .f64 %in_ar1); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[6] = {115,99,97,108,98,0 }; // 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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r32; .reg .u32 %r43; .reg .f64 %r46; .reg .f64 %r47; .reg .f64 %r48; .reg .f64 %r49; .reg .f64 %r52; .reg .u32 %r53; .reg .pred %r54; .reg .u32 %r56; .reg .pred %r57; .reg .u32 %r59; .reg .pred %r60; .reg .u32 %r62; .reg .pred %r63; .reg .u32 %r64; .reg .u64 %r65; .reg .pred %r67; .reg .u32 %r68; .reg .pred %r69; .reg .u64 %r70; .reg .u32 %r71; .reg .u32 %r73; .reg .pred %r74; .reg .u64 %r75; .reg .u32 %r76; .reg .u32 %r77; .reg .pred %r78; .reg .u64 %r79; .reg .u32 %r81; .reg .u32 %r82; .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 .u64 %r93; .reg .u32 %r94; .reg .f64 %r95; .reg .f64 %r97; .reg .u32 %r98; .reg .pred %r99; .reg .u64 %r100; .reg .u32 %r101; .reg .u32 %r103; .reg .pred %r104; .reg .u64 %r105; .reg .u32 %r106; .reg .u32 %r107; .reg .pred %r108; .reg .u64 %r109; .reg .u32 %r111; .reg .pred %r112; .reg .u64 %r113; .reg .u32 %r114; mov.f64 %r48,%ar0; mov.f64 %r49,%ar1; .loc 1 51 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r48; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r49; call (%value_in),__ieee754_scalb,(%out_arg1,%out_arg2); ld.param.f64 %r52,[%value_in]; } mov.f64 %r47,%r52; .loc 1 52 4 ld.global.u32 %r53,[__fdlib_version]; setp.eq.u32 %r54,%r53,-1; @ %r54 bra $L1; .loc 1 53 7 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r52; call (%value_in),finite,(%out_arg1); ld.param.u32 %r56,[%value_in]; } .loc 1 53 4 setp.ne.u32 %r57,%r56,0; @ %r57 bra $L3; .loc 1 53 18 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r52; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r59,[%value_in]; } .loc 1 53 5 setp.eq.u32 %r60,%r59,0; @ %r60 bra $L3; .loc 1 53 29 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r48; call (%value_in),finite,(%out_arg1); ld.param.u32 %r62,[%value_in]; } .loc 1 53 27 setp.eq.u32 %r63,%r62,0; @ %r63 bra $L3; .loc 1 55 15 mov.u32 %r64,3; st.u32 [%frame],%r64; .loc 1 56 15 cvta.const.u64 %r65,$LC0; st.u64 [%frame+8],%r65; .loc 1 57 14 st.u32 [%frame+40],%r56; .loc 1 58 15 st.f64 [%frame+16],%r48; .loc 1 59 15 st.f64 [%frame+24],%r49; .loc 1 60 38 setp.gt.f64 %r67,%r48,0d0000000000000000; selp.f64 %r46,0d7ff0000000000000,0dfff0000000000000,%r67; .loc 1 60 17 st.f64 [%frame+32],%r46; .loc 1 61 9 ld.global.u32 %r68,[__fdlib_version]; setp.ne.u32 %r69,%r68,2; @ %r69 bra $L5; .loc 1 62 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r70,[%value_in]; } .loc 1 62 15 mov.u32 %r71,34; st.u32 [%r70],%r71; bra $L6; $L5: .loc 1 63 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r73,[%value_in]; } .loc 1 63 14 setp.ne.u32 %r74,%r73,0; @ %r74 bra $L6; .loc 1 64 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r75,[%value_in]; } .loc 1 64 15 mov.u32 %r76,34; st.u32 [%r75],%r76; $L6: .loc 1 66 9 ld.u32 %r77,[%frame+40]; setp.eq.u32 %r78,%r77,0; @ %r78 bra $L7; .loc 1 67 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r79,[%value_in]; } .loc 1 67 20 ld.u32 %r32,[%frame+40]; .loc 1 67 15 st.u32 [%r79],%r32; $L7: .loc 1 68 23 ld.f64 %r47,[%frame+32]; bra $L1; $L3: .loc 1 70 6 set.u32.eq.f64 %r81,%r52,0d0000000000000000; neg.s32 %r82,%r81; .loc 1 70 14 set.u32.neu.f64 %r84,%r48,%r52; neg.s32 %r85,%r84; .loc 1 70 11 cvt.u16.u32 %r87,%r82; cvt.u16.u32 %r88,%r85; and.b16 %r86,%r87,%r88; .loc 1 70 4 cvt.u32.u16 %r89,%r86; cvt.u16.u8 %r90,%r89; setp.eq.u16 %r91,%r90,0; @ %r91 bra $L8; .loc 1 72 15 mov.u32 %r92,4; st.u32 [%frame],%r92; .loc 1 73 15 cvta.const.u64 %r93,$LC0; st.u64 [%frame+8],%r93; .loc 1 74 14 mov.u32 %r94,0; st.u32 [%frame+40],%r94; .loc 1 75 15 st.f64 [%frame+16],%r48; .loc 1 76 15 st.f64 [%frame+24],%r49; .loc 1 77 19 mov.f64 %r95,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r95; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r48; call (%value_in),copysign,(%out_arg1,%out_arg2); ld.param.f64 %r97,[%value_in]; } .loc 1 77 17 st.f64 [%frame+32],%r97; .loc 1 78 9 ld.global.u32 %r98,[__fdlib_version]; setp.ne.u32 %r99,%r98,2; @ %r99 bra $L9; .loc 1 79 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r100,[%value_in]; } .loc 1 79 15 mov.u32 %r101,34; st.u32 [%r100],%r101; bra $L10; $L9: .loc 1 80 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r103,[%value_in]; } .loc 1 80 14 setp.ne.u32 %r104,%r103,0; @ %r104 bra $L10; .loc 1 81 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r105,[%value_in]; } .loc 1 81 15 mov.u32 %r106,34; st.u32 [%r105],%r106; $L10: .loc 1 83 9 ld.u32 %r107,[%frame+40]; setp.eq.u32 %r108,%r107,0; @ %r108 bra $L11; .loc 1 84 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r109,[%value_in]; } .loc 1 84 20 ld.u32 %r43,[%frame+40]; .loc 1 84 15 st.u32 [%r109],%r43; $L11: .loc 1 85 23 ld.f64 %r47,[%frame+32]; bra $L1; $L8: .loc 1 88 6 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r49; call (%value_in),finite,(%out_arg1); ld.param.u32 %r111,[%value_in]; } .loc 1 88 4 setp.ne.u32 %r112,%r111,0; @ %r112 bra $L1; .loc 1 88 18 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r113,[%value_in]; } .loc 1 88 24 mov.u32 %r114,34; st.u32 [%r113],%r114; $L1: .loc 1 92 1 mov.f64 %value,%r47; st.param.f64 [%value_out],%value; ret; } /1442 1591654539 399 399 100644 1256 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654539 399 399 100644 3887 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // 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 DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[5] = {115,105,110,104,0 }; // 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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r25; .reg .u32 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r34; .reg .f64 %r35; .reg .f64 %r37; .reg .u32 %r38; .reg .pred %r39; .reg .u32 %r41; .reg .pred %r42; .reg .u32 %r44; .reg .pred %r45; .reg .u32 %r46; .reg .u64 %r47; .reg .pred %r49; .reg .pred %r50; .reg .pred %r51; .reg .pred %r52; .reg .u64 %r53; .reg .u32 %r54; .reg .u32 %r56; .reg .pred %r57; .reg .u64 %r58; .reg .u32 %r59; .reg .u32 %r60; .reg .pred %r61; .reg .u64 %r62; mov.f64 %r35,%ar0; .loc 1 89 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r35; call (%value_in),__ieee754_sinh,(%out_arg1); ld.param.f64 %r37,[%value_in]; } mov.f64 %r34,%r37; .loc 1 90 4 ld.global.u32 %r38,[__fdlib_version]; setp.eq.u32 %r39,%r38,-1; @ %r39 bra $L1; .loc 1 91 6 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r37; call (%value_in),finite,(%out_arg1); ld.param.u32 %r41,[%value_in]; } .loc 1 91 4 setp.ne.u32 %r42,%r41,0; @ %r42 bra $L1; .loc 1 91 17 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r35; call (%value_in),finite,(%out_arg1); ld.param.u32 %r44,[%value_in]; } .loc 1 91 15 setp.eq.u32 %r45,%r44,0; @ %r45 bra $L1; .loc 1 99 15 mov.u32 %r46,3; st.u32 [%frame],%r46; .loc 1 100 15 cvta.const.u64 %r47,$LC0; st.u64 [%frame+8],%r47; .loc 1 101 14 st.u32 [%frame+40],%r41; .loc 1 102 26 st.f64 [%frame+24],%r35; .loc 1 102 15 st.f64 [%frame+16],%r35; .loc 1 103 23 ld.global.u32 %r25,[__fdlib_version]; .loc 1 103 9 setp.ne.u32 %r49,%r25,0; @ %r49 bra $L3; .loc 1 104 39 setp.gt.f64 %r50,%r35,0d0000000000000000; selp.f64 %r32,0d47efffffe0000000,0dc7efffffe0000000,%r50; .loc 1 104 20 st.f64 [%frame+32],%r32; bra $L5; $L3: .loc 1 106 43 setp.gt.f64 %r51,%r35,0d0000000000000000; selp.f64 %r33,0d7ff0000000000000,0dfff0000000000000,%r51; .loc 1 106 20 st.f64 [%frame+32],%r33; .loc 1 107 9 setp.ne.u32 %r52,%r25,2; @ %r52 bra $L5; .loc 1 108 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r53,[%value_in]; } .loc 1 108 15 mov.u32 %r54,34; st.u32 [%r53],%r54; bra $L7; $L5: .loc 1 109 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r56,[%value_in]; } .loc 1 109 14 setp.ne.u32 %r57,%r56,0; @ %r57 bra $L7; .loc 1 110 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r58,[%value_in]; } .loc 1 110 15 mov.u32 %r59,34; st.u32 [%r58],%r59; $L7: .loc 1 112 9 ld.u32 %r60,[%frame+40]; setp.eq.u32 %r61,%r60,0; @ %r61 bra $L8; .loc 1 113 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r62,[%value_in]; } .loc 1 113 20 ld.u32 %r31,[%frame+40]; .loc 1 113 15 st.u32 [%r62],%r31; $L8: .loc 1 114 23 ld.f64 %r34,[%frame+32]; $L1: .loc 1 118 1 mov.f64 %value,%r34; st.param.f64 [%value_out],%value; ret; } lib_a-w_sqrt.o/ 1591654539 399 399 100644 3639 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrt .extern .func (.param .f64 %value_out) __ieee754_sqrt (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[5] = {115,113,114,116,0 }; // 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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r24; .reg .u32 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r35; .reg .u32 %r36; .reg .pred %r37; .reg .u32 %r39; .reg .pred %r40; .reg .pred %r41; .reg .u32 %r42; .reg .u64 %r43; .reg .u32 %r44; .reg .pred %r45; .reg .f64 %r46; .reg .f64 %r47; .reg .f64 %r48; .reg .pred %r49; .reg .u64 %r50; .reg .u32 %r51; .reg .u32 %r53; .reg .pred %r54; .reg .u64 %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .pred %r58; .reg .u64 %r59; mov.f64 %r33,%ar0; .loc 1 69 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r35,[%value_in]; } mov.f64 %r32,%r35; .loc 1 70 4 ld.global.u32 %r36,[__fdlib_version]; setp.eq.u32 %r37,%r36,-1; @ %r37 bra $L1; .loc 1 70 31 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r39,[%value_in]; } .loc 1 70 28 setp.eq.u32 %r40,%r39,0; @ %r40 bra $L1; .loc 1 71 4 setp.lt.f64 %r41,%r33,0d0000000000000000; @ ! %r41 bra $L1; .loc 1 72 13 mov.u32 %r42,1; st.u32 [%frame],%r42; .loc 1 73 13 cvta.const.u64 %r43,$LC0; st.u64 [%frame+8],%r43; .loc 1 74 12 mov.u32 %r44,0; st.u32 [%frame+40],%r44; .loc 1 75 24 st.f64 [%frame+24],%r33; .loc 1 75 13 st.f64 [%frame+16],%r33; .loc 1 76 21 ld.global.u32 %r24,[__fdlib_version]; .loc 1 76 7 setp.ne.u32 %r45,%r24,0; @ %r45 bra $L4; .loc 1 77 17 mov.f64 %r46,0d0000000000000000; st.f64 [%frame+32],%r46; bra $L5; $L4: .loc 1 79 29 mov.f64 %r48,0d0000000000000000; div.rn.f64 %r47,%r48,0d0000000000000000; .loc 1 79 24 st.f64 [%frame+32],%r47; .loc 1 80 14 setp.ne.u32 %r49,%r24,2; @ %r49 bra $L5; .loc 1 81 13 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r50,[%value_in]; } .loc 1 81 19 mov.u32 %r51,33; st.u32 [%r50],%r51; bra $L6; $L5: .loc 1 82 21 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r53,[%value_in]; } .loc 1 82 19 setp.ne.u32 %r54,%r53,0; @ %r54 bra $L6; .loc 1 83 13 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r55,[%value_in]; } .loc 1 83 19 mov.u32 %r56,33; st.u32 [%r55],%r56; $L6: .loc 1 85 14 ld.u32 %r57,[%frame+40]; setp.eq.u32 %r58,%r57,0; @ %r58 bra $L7; .loc 1 86 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r59,[%value_in]; } .loc 1 86 17 ld.u32 %r31,[%frame+40]; .loc 1 86 12 st.u32 [%r59],%r31; $L7: .loc 1 87 14 ld.f64 %r32,[%frame+32]; $L1: .loc 1 91 1 mov.f64 %value,%r32; st.param.f64 [%value_out],%value; ret; } /1460 1591654539 399 399 100644 3383 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_gamma_r .extern .func (.param .f64 %value_out) __ieee754_gamma_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: __kernel_standard .extern .func (.param .f64 %value_out) __kernel_standard (.param .f64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2); // 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]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f64 %r27; .reg .f64 %r28; .reg .f64 %r31; .reg .u32 %r32; .reg .pred %r33; .reg .u32 %r34; .reg .pred %r35; .reg .u32 %r37; .reg .pred %r38; .reg .u32 %r40; .reg .pred %r41; .reg .f64 %r43; .reg .pred %r44; .reg .pred %r45; .reg .u32 %r48; .reg .f64 %r49; .reg .u32 %r52; .reg .f64 %r53; mov.f64 %r28,%ar0; .loc 1 31 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; call (%value_in),__ieee754_gamma_r,(%out_arg1,%out_arg2); ld.param.f64 %r31,[%value_in]; } mov.f64 %r27,%r31; .loc 1 32 5 ld.u32 %r32,[%frame]; setp.ge.s32 %r33,%r32,0; @ %r33 bra $L2; .loc 1 32 27 neg.f64 %r27,%r27; $L2: .loc 1 36 4 ld.global.u32 %r34,[__fdlib_version]; setp.eq.u32 %r35,%r34,-1; @ %r35 bra $L1; .loc 1 38 6 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r27; call (%value_in),finite,(%out_arg1); ld.param.u32 %r37,[%value_in]; } .loc 1 38 4 setp.ne.u32 %r38,%r37,0; @ %r38 bra $L1; .loc 1 38 17 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r28; call (%value_in),finite,(%out_arg1); ld.param.u32 %r40,[%value_in]; } .loc 1 38 15 setp.eq.u32 %r41,%r40,0; @ %r41 bra $L1; .loc 1 39 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r28; call (%value_in),floor,(%out_arg1); ld.param.f64 %r43,[%value_in]; } .loc 1 39 6 setp.neu.f64 %r44,%r43,%r28; @ %r44 bra $L4; .loc 1 39 18 setp.le.f64 %r45,%r28,0d0000000000000000; @ ! %r45 bra $L4; .loc 1 40 13 mov.u32 %r48,41; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r28; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r28; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r48; call (%value_in),__kernel_standard,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r49,[%value_in]; } mov.f64 %r27,%r49; bra $L1; $L4: .loc 1 42 13 mov.u32 %r52,40; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r28; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r28; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r52; call (%value_in),__kernel_standard,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r53,[%value_in]; } mov.f64 %r27,%r53; $L1: .loc 1 46 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } lib_a-wf_acos.o/1591654539 399 399 100644 4087 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_acosf .extern .func (.param .f32 %value_out) __ieee754_acosf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __fpclassifyf .extern .func (.param .u32 %value_out) __fpclassifyf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: nan .extern .func (.param .f64 %value_out) nan (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[6] = {97,99,111,115,102,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f64 %r25; .reg .u32 %r33; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r38; .reg .u32 %r39; .reg .pred %r40; .reg .u32 %r42; .reg .pred %r43; .reg .f32 %r45; .reg .pred %r46; .reg .u32 %r47; .reg .u64 %r48; .reg .u32 %r49; .reg .u64 %r50; .reg .f64 %r51; .reg .u32 %r52; .reg .pred %r53; .reg .u64 %r54; .reg .u32 %r55; .reg .u32 %r57; .reg .pred %r58; .reg .u64 %r59; .reg .u32 %r60; .reg .u32 %r61; .reg .pred %r62; .reg .u64 %r63; .reg .f64 %r64; mov.f32 %r36,%ar0; .loc 1 35 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r36; call (%value_in),__ieee754_acosf,(%out_arg1); ld.param.f32 %r38,[%value_in]; } mov.f32 %r35,%r38; .loc 1 36 4 ld.global.u32 %r39,[__fdlib_version]; setp.eq.u32 %r40,%r39,-1; @ %r40 bra $L1; .loc 1 36 31 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r36; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r42,[%value_in]; } .loc 1 36 28 setp.eq.u32 %r43,%r42,0; @ %r43 bra $L1; .loc 1 37 5 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r36; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r45,[%value_in]; } .loc 1 37 4 setp.gt.f32 %r46,%r45,0f3f800000; @ ! %r46 bra $L1; .loc 1 39 15 mov.u32 %r47,1; st.u32 [%frame],%r47; .loc 1 40 15 cvta.const.u64 %r48,$LC0; st.u64 [%frame+8],%r48; .loc 1 41 14 mov.u32 %r49,0; st.u32 [%frame+40],%r49; .loc 1 42 28 cvt.f64.f32 %r25,%r36; .loc 1 42 26 st.f64 [%frame+24],%r25; .loc 1 42 15 st.f64 [%frame+16],%r25; .loc 1 43 19 cvta.const.u64 %r50,$LC1; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r50; call (%value_in),nan,(%out_arg1); ld.param.f64 %r51,[%value_in]; } .loc 1 43 17 st.f64 [%frame+32],%r51; .loc 1 44 9 ld.global.u32 %r52,[__fdlib_version]; setp.ne.u32 %r53,%r52,2; @ %r53 bra $L4; .loc 1 45 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r54,[%value_in]; } .loc 1 45 15 mov.u32 %r55,33; st.u32 [%r54],%r55; bra $L5; $L4: .loc 1 46 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r57,[%value_in]; } .loc 1 46 14 setp.ne.u32 %r58,%r57,0; @ %r58 bra $L5; .loc 1 47 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r59,[%value_in]; } .loc 1 47 15 mov.u32 %r60,33; st.u32 [%r59],%r60; $L5: .loc 1 49 16 ld.u32 %r61,[%frame+40]; setp.eq.u32 %r62,%r61,0; @ %r62 bra $L6; .loc 1 50 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r63,[%value_in]; } .loc 1 50 20 ld.u32 %r33,[%frame+40]; .loc 1 50 15 st.u32 [%r63],%r33; $L6: .loc 1 51 13 ld.f64 %r64,[%frame+32]; cvt.rn.f32.f64 %r35,%r64; $L1: .loc 1 55 1 mov.f32 %value,%r35; st.param.f32 [%value_out],%value; ret; } /1478 1591654539 399 399 100644 3562 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_acoshf .extern .func (.param .f32 %value_out) __ieee754_acoshf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __fpclassifyf .extern .func (.param .u32 %value_out) __fpclassifyf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[7] = {97,99,111,115,104,102,0 }; // 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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f64 %r24; .reg .u32 %r32; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r37; .reg .u32 %r38; .reg .pred %r39; .reg .u32 %r41; .reg .pred %r42; .reg .pred %r43; .reg .u32 %r44; .reg .u64 %r45; .reg .u32 %r46; .reg .f64 %r47; .reg .f64 %r48; .reg .u32 %r49; .reg .pred %r50; .reg .u64 %r51; .reg .u32 %r52; .reg .u32 %r54; .reg .pred %r55; .reg .u64 %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .pred %r59; .reg .u64 %r60; .reg .f64 %r61; mov.f32 %r35,%ar0; .loc 1 36 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r35; call (%value_in),__ieee754_acoshf,(%out_arg1); ld.param.f32 %r37,[%value_in]; } mov.f32 %r34,%r37; .loc 1 37 4 ld.global.u32 %r38,[__fdlib_version]; setp.eq.u32 %r39,%r38,-1; @ %r39 bra $L1; .loc 1 37 31 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r35; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r41,[%value_in]; } .loc 1 37 28 setp.eq.u32 %r42,%r41,0; @ %r42 bra $L1; .loc 1 38 4 setp.lt.f32 %r43,%r35,0f3f800000; @ ! %r43 bra $L1; .loc 1 40 22 mov.u32 %r44,1; st.u32 [%frame],%r44; .loc 1 41 22 cvta.const.u64 %r45,$LC0; st.u64 [%frame+8],%r45; .loc 1 42 14 mov.u32 %r46,0; st.u32 [%frame+40],%r46; .loc 1 43 28 cvt.f64.f32 %r24,%r35; .loc 1 43 26 st.f64 [%frame+24],%r24; .loc 1 43 15 st.f64 [%frame+16],%r24; .loc 1 44 29 mov.f64 %r48,0d0000000000000000; div.rn.f64 %r47,%r48,0d0000000000000000; .loc 1 44 24 st.f64 [%frame+32],%r47; .loc 1 45 16 ld.global.u32 %r49,[__fdlib_version]; setp.ne.u32 %r50,%r49,2; @ %r50 bra $L4; .loc 1 46 16 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r51,[%value_in]; } .loc 1 46 22 mov.u32 %r52,33; st.u32 [%r51],%r52; bra $L5; $L4: .loc 1 47 23 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r54,[%value_in]; } .loc 1 47 21 setp.ne.u32 %r55,%r54,0; @ %r55 bra $L5; .loc 1 48 16 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r56,[%value_in]; } .loc 1 48 22 mov.u32 %r57,33; st.u32 [%r56],%r57; $L5: .loc 1 50 9 ld.u32 %r58,[%frame+40]; setp.eq.u32 %r59,%r58,0; @ %r59 bra $L6; .loc 1 51 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r60,[%value_in]; } .loc 1 51 20 ld.u32 %r32,[%frame+40]; .loc 1 51 15 st.u32 [%r60],%r32; $L6: .loc 1 52 13 ld.f64 %r61,[%frame+32]; cvt.rn.f32.f64 %r34,%r61; $L1: .loc 1 56 1 mov.f32 %value,%r34; st.param.f32 [%value_out],%value; ret; } lib_a-wf_asin.o/1591654539 399 399 100644 4087 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_asinf .extern .func (.param .f32 %value_out) __ieee754_asinf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __fpclassifyf .extern .func (.param .u32 %value_out) __fpclassifyf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: nan .extern .func (.param .f64 %value_out) nan (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[6] = {97,115,105,110,102,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f64 %r25; .reg .u32 %r33; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r38; .reg .u32 %r39; .reg .pred %r40; .reg .u32 %r42; .reg .pred %r43; .reg .f32 %r45; .reg .pred %r46; .reg .u32 %r47; .reg .u64 %r48; .reg .u32 %r49; .reg .u64 %r50; .reg .f64 %r51; .reg .u32 %r52; .reg .pred %r53; .reg .u64 %r54; .reg .u32 %r55; .reg .u32 %r57; .reg .pred %r58; .reg .u64 %r59; .reg .u32 %r60; .reg .u32 %r61; .reg .pred %r62; .reg .u64 %r63; .reg .f64 %r64; mov.f32 %r36,%ar0; .loc 1 37 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r36; call (%value_in),__ieee754_asinf,(%out_arg1); ld.param.f32 %r38,[%value_in]; } mov.f32 %r35,%r38; .loc 1 38 4 ld.global.u32 %r39,[__fdlib_version]; setp.eq.u32 %r40,%r39,-1; @ %r40 bra $L1; .loc 1 38 31 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r36; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r42,[%value_in]; } .loc 1 38 28 setp.eq.u32 %r43,%r42,0; @ %r43 bra $L1; .loc 1 39 5 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r36; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r45,[%value_in]; } .loc 1 39 4 setp.gt.f32 %r46,%r45,0f3f800000; @ ! %r46 bra $L1; .loc 1 41 15 mov.u32 %r47,1; st.u32 [%frame],%r47; .loc 1 42 15 cvta.const.u64 %r48,$LC0; st.u64 [%frame+8],%r48; .loc 1 43 14 mov.u32 %r49,0; st.u32 [%frame+40],%r49; .loc 1 44 28 cvt.f64.f32 %r25,%r36; .loc 1 44 26 st.f64 [%frame+24],%r25; .loc 1 44 15 st.f64 [%frame+16],%r25; .loc 1 45 19 cvta.const.u64 %r50,$LC1; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r50; call (%value_in),nan,(%out_arg1); ld.param.f64 %r51,[%value_in]; } .loc 1 45 17 st.f64 [%frame+32],%r51; .loc 1 46 8 ld.global.u32 %r52,[__fdlib_version]; setp.ne.u32 %r53,%r52,2; @ %r53 bra $L4; .loc 1 47 8 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r54,[%value_in]; } .loc 1 47 14 mov.u32 %r55,33; st.u32 [%r54],%r55; bra $L5; $L4: .loc 1 48 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r57,[%value_in]; } .loc 1 48 14 setp.ne.u32 %r58,%r57,0; @ %r58 bra $L5; .loc 1 49 8 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r59,[%value_in]; } .loc 1 49 14 mov.u32 %r60,33; st.u32 [%r59],%r60; $L5: .loc 1 51 9 ld.u32 %r61,[%frame+40]; setp.eq.u32 %r62,%r61,0; @ %r62 bra $L6; .loc 1 52 8 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r63,[%value_in]; } .loc 1 52 19 ld.u32 %r33,[%frame+40]; .loc 1 52 14 st.u32 [%r63],%r33; $L6: .loc 1 53 13 ld.f64 %r64,[%frame+32]; cvt.rn.f32.f64 %r35,%r64; $L1: .loc 1 57 1 mov.f32 %value,%r35; st.param.f32 [%value_out],%value; ret; } /1496 1591654539 399 399 100644 1040 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } /1514 1591654539 399 399 100644 5027 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_atanhf .extern .func (.param .f32 %value_out) __ieee754_atanhf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __fpclassifyf .extern .func (.param .u32 %value_out) __fpclassifyf (.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: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[7] = {97,116,97,110,104,102,0 }; // 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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r34; .reg .f64 %r37; .reg .u32 %r38; .reg .f32 %r39; .reg .f32 %r40; .reg .f32 %r42; .reg .u32 %r43; .reg .pred %r44; .reg .u32 %r46; .reg .pred %r47; .reg .f32 %r49; .reg .pred %r50; .reg .pred %r51; .reg .u32 %r52; .reg .u64 %r53; .reg .u32 %r54; .reg .f64 %r55; .reg .f64 %r56; .reg .pred %r57; .reg .u64 %r58; .reg .u32 %r59; .reg .u32 %r61; .reg .pred %r62; .reg .u64 %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .u64 %r66; .reg .u32 %r67; .reg .f64 %r68; .reg .pred %r69; .reg .u64 %r70; .reg .u32 %r71; .reg .u32 %r73; .reg .pred %r74; .reg .u64 %r75; .reg .u32 %r76; .reg .u32 %r77; .reg .pred %r78; .reg .u64 %r79; .reg .f64 %r80; mov.f32 %r40,%ar0; .loc 1 34 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r40; call (%value_in),__ieee754_atanhf,(%out_arg1); ld.param.f32 %r42,[%value_in]; } mov.f32 %r39,%r42; .loc 1 35 4 ld.global.u32 %r43,[__fdlib_version]; setp.eq.u32 %r44,%r43,-1; @ %r44 bra $L1; .loc 1 35 31 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r40; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r46,[%value_in]; } .loc 1 35 28 setp.eq.u32 %r47,%r46,0; @ %r47 bra $L1; .loc 1 36 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r40; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r49,[%value_in]; } .loc 1 37 4 setp.ge.f32 %r50,%r49,0f3f800000; @ ! %r50 bra $L1; cvt.f64.f32 %r37,%r40; ld.global.u32 %r38,[__fdlib_version]; .loc 1 38 8 setp.gt.f32 %r51,%r49,0f3f800000; @ ! %r51 bra $L23; .loc 1 40 26 mov.u32 %r52,1; st.u32 [%frame],%r52; .loc 1 41 26 cvta.const.u64 %r53,$LC0; st.u64 [%frame+8],%r53; .loc 1 42 11 mov.u32 %r54,0; st.u32 [%frame+40],%r54; .loc 1 43 23 st.f64 [%frame+24],%r37; .loc 1 43 12 st.f64 [%frame+16],%r37; .loc 1 44 33 mov.f64 %r56,0d0000000000000000; div.rn.f64 %r55,%r56,0d0000000000000000; .loc 1 44 28 st.f64 [%frame+32],%r55; .loc 1 45 20 setp.ne.u32 %r57,%r38,2; @ %r57 bra $L6; .loc 1 46 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r58,[%value_in]; } .loc 1 46 25 mov.u32 %r59,33; st.u32 [%r58],%r59; bra $L7; $L6: .loc 1 47 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r61,[%value_in]; } .loc 1 47 25 setp.eq.u32 %r62,%r61,0; @ ! %r62 bra $L7; .loc 1 48 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r63,[%value_in]; } .loc 1 48 25 mov.u32 %r64,33; st.u32 [%r63],%r64; bra $L7; $L23: .loc 1 52 26 mov.u32 %r65,2; st.u32 [%frame],%r65; .loc 1 53 26 cvta.const.u64 %r66,$LC0; st.u64 [%frame+8],%r66; .loc 1 54 11 mov.u32 %r67,0; st.u32 [%frame+40],%r67; .loc 1 55 23 st.f64 [%frame+24],%r37; .loc 1 55 12 st.f64 [%frame+16],%r37; .loc 1 56 17 div.rn.f64 %r68,%r37,0d0000000000000000; .loc 1 56 14 st.f64 [%frame+32],%r68; .loc 1 57 20 setp.ne.u32 %r69,%r38,2; @ %r69 bra $L9; .loc 1 58 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r70,[%value_in]; } .loc 1 58 25 mov.u32 %r71,33; st.u32 [%r70],%r71; bra $L7; $L9: .loc 1 59 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r73,[%value_in]; } .loc 1 59 25 setp.ne.u32 %r74,%r73,0; @ %r74 bra $L7; .loc 1 60 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r75,[%value_in]; } .loc 1 60 25 mov.u32 %r76,33; st.u32 [%r75],%r76; $L7: .loc 1 63 9 ld.u32 %r77,[%frame+40]; setp.eq.u32 %r78,%r77,0; @ %r78 bra $L11; .loc 1 64 15 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r79,[%value_in]; } .loc 1 64 26 ld.u32 %r34,[%frame+40]; .loc 1 64 21 st.u32 [%r79],%r34; $L11: .loc 1 65 20 ld.f64 %r80,[%frame+32]; cvt.rn.f32.f64 %r39,%r80; $L1: .loc 1 69 1 mov.f32 %value,%r39; st.param.f32 [%value_out],%value; ret; } lib_a-wf_cosh.o/1591654539 399 399 100644 3943 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_coshf .extern .func (.param .f32 %value_out) __ieee754_coshf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __fpclassifyf .extern .func (.param .u32 %value_out) __fpclassifyf (.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: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[6] = {99,111,115,104,102,0 }; // 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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f64 %r25; .reg .u32 %r26; .reg .u32 %r32; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r37; .reg .u32 %r38; .reg .pred %r39; .reg .u32 %r41; .reg .pred %r42; .reg .f32 %r44; .reg .pred %r45; .reg .u32 %r46; .reg .u64 %r47; .reg .u32 %r48; .reg .pred %r49; .reg .f64 %r50; .reg .f64 %r51; .reg .pred %r52; .reg .u64 %r53; .reg .u32 %r54; .reg .u32 %r56; .reg .pred %r57; .reg .u64 %r58; .reg .u32 %r59; .reg .u32 %r60; .reg .pred %r61; .reg .u64 %r62; .reg .f64 %r63; mov.f32 %r35,%ar0; .loc 1 35 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r35; call (%value_in),__ieee754_coshf,(%out_arg1); ld.param.f32 %r37,[%value_in]; } mov.f32 %r34,%r37; .loc 1 36 4 ld.global.u32 %r38,[__fdlib_version]; setp.eq.u32 %r39,%r38,-1; @ %r39 bra $L1; .loc 1 36 31 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r35; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r41,[%value_in]; } .loc 1 36 28 setp.eq.u32 %r42,%r41,0; @ %r42 bra $L1; .loc 1 37 5 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r35; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r44,[%value_in]; } .loc 1 37 4 setp.gt.f32 %r45,%r44,0f42b2d4fc; @ ! %r45 bra $L1; .loc 1 45 15 mov.u32 %r46,3; st.u32 [%frame],%r46; .loc 1 46 15 cvta.const.u64 %r47,$LC0; st.u64 [%frame+8],%r47; .loc 1 47 14 mov.u32 %r48,0; st.u32 [%frame+40],%r48; .loc 1 48 28 cvt.f64.f32 %r25,%r35; .loc 1 48 26 st.f64 [%frame+24],%r25; .loc 1 48 15 st.f64 [%frame+16],%r25; .loc 1 49 23 ld.global.u32 %r26,[__fdlib_version]; .loc 1 49 9 setp.ne.u32 %r49,%r26,0; @ %r49 bra $L4; .loc 1 50 20 mov.f64 %r50,0d47efffffe0000000; st.f64 [%frame+32],%r50; bra $L5; $L4: .loc 1 52 20 mov.f64 %r51,0d7ff0000000000000; st.f64 [%frame+32],%r51; .loc 1 53 9 setp.ne.u32 %r52,%r26,2; @ %r52 bra $L5; .loc 1 54 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r53,[%value_in]; } .loc 1 54 15 mov.u32 %r54,34; st.u32 [%r53],%r54; bra $L6; $L5: .loc 1 55 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r56,[%value_in]; } .loc 1 55 14 setp.ne.u32 %r57,%r56,0; @ %r57 bra $L6; .loc 1 56 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r58,[%value_in]; } .loc 1 56 15 mov.u32 %r59,34; st.u32 [%r58],%r59; $L6: .loc 1 58 9 ld.u32 %r60,[%frame+40]; setp.eq.u32 %r61,%r60,0; @ %r61 bra $L7; .loc 1 59 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r62,[%value_in]; } .loc 1 59 20 ld.u32 %r32,[%frame+40]; .loc 1 59 15 st.u32 [%r62],%r32; $L7: .loc 1 60 13 ld.f64 %r63,[%frame+32]; cvt.rn.f32.f64 %r34,%r63; $L1: .loc 1 64 1 mov.f32 %value,%r34; st.param.f32 [%value_out],%value; ret; } lib_a-wf_drem.o/1591654539 399 399 100644 1017 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654539 399 399 100644 5317 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // 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 DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[5] = {101,120,112,102,0 }; // 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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f64 %r24; .reg .u32 %r25; .reg .u32 %r31; .reg .f64 %r33; .reg .u32 %r40; .reg .f32 %r42; .reg .f32 %r43; .reg .f32 %r45; .reg .u32 %r46; .reg .pred %r47; .reg .u32 %r49; .reg .pred %r50; .reg .pred %r51; .reg .u32 %r52; .reg .u64 %r53; .reg .u32 %r54; .reg .pred %r55; .reg .f64 %r56; .reg .f64 %r57; .reg .pred %r58; .reg .u64 %r59; .reg .u32 %r60; .reg .u32 %r62; .reg .pred %r63; .reg .u64 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .pred %r67; .reg .u64 %r68; .reg .f64 %r69; .reg .pred %r70; .reg .u32 %r71; .reg .u64 %r72; .reg .u32 %r73; .reg .f64 %r74; .reg .u32 %r75; .reg .pred %r76; .reg .u64 %r77; .reg .u32 %r78; .reg .u32 %r80; .reg .pred %r81; .reg .u64 %r82; .reg .u32 %r83; .reg .u32 %r84; .reg .pred %r85; .reg .u64 %r86; .reg .f64 %r87; mov.f32 %r43,%ar0; .loc 1 43 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r43; call (%value_in),__ieee754_expf,(%out_arg1); ld.param.f32 %r45,[%value_in]; } mov.f32 %r42,%r45; .loc 1 44 4 ld.global.u32 %r46,[__fdlib_version]; setp.eq.u32 %r47,%r46,-1; @ %r47 bra $L1; .loc 1 45 5 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r43; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r49,[%value_in]; } .loc 1 45 4 setp.eq.u32 %r50,%r49,0; @ %r50 bra $L1; .loc 1 46 8 setp.gt.f32 %r51,%r43,0f42b17180; @ ! %r51 bra $L27; .loc 1 54 12 mov.u32 %r52,3; st.u32 [%frame],%r52; .loc 1 55 12 cvta.const.u64 %r53,$LC0; st.u64 [%frame+8],%r53; .loc 1 56 11 mov.u32 %r54,0; st.u32 [%frame+40],%r54; .loc 1 57 25 cvt.f64.f32 %r24,%r43; .loc 1 57 23 st.f64 [%frame+24],%r24; .loc 1 57 12 st.f64 [%frame+16],%r24; .loc 1 58 20 ld.global.u32 %r25,[__fdlib_version]; .loc 1 58 6 setp.ne.u32 %r55,%r25,0; @ %r55 bra $L5; .loc 1 59 16 mov.f64 %r56,0d47efffffe0000000; st.f64 [%frame+32],%r56; bra $L6; $L5: .loc 1 61 16 mov.f64 %r57,0d7ff0000000000000; st.f64 [%frame+32],%r57; .loc 1 62 6 setp.ne.u32 %r58,%r25,2; @ %r58 bra $L6; .loc 1 63 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r59,[%value_in]; } .loc 1 63 11 mov.u32 %r60,34; st.u32 [%r59],%r60; bra $L7; $L6: .loc 1 64 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r62,[%value_in]; } .loc 1 64 11 setp.ne.u32 %r63,%r62,0; @ %r63 bra $L7; .loc 1 65 4 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r64,[%value_in]; } .loc 1 65 10 mov.u32 %r65,34; st.u32 [%r64],%r65; $L7: .loc 1 67 13 ld.u32 %r66,[%frame+40]; setp.eq.u32 %r67,%r66,0; @ %r67 bra $L8; .loc 1 68 13 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r68,[%value_in]; } .loc 1 68 24 ld.u32 %r31,[%frame+40]; .loc 1 68 19 st.u32 [%r68],%r31; $L8: .loc 1 69 20 ld.f64 %r69,[%frame+32]; cvt.rn.f32.f64 %r42,%r69; bra $L1; $L27: .loc 1 70 15 setp.lt.f32 %r70,%r43,0fc2cff1b5; @ ! %r70 bra $L1; .loc 1 72 12 mov.u32 %r71,4; st.u32 [%frame],%r71; .loc 1 73 12 cvta.const.u64 %r72,$LC0; st.u64 [%frame+8],%r72; .loc 1 74 11 mov.u32 %r73,0; st.u32 [%frame+40],%r73; .loc 1 75 25 cvt.f64.f32 %r33,%r43; .loc 1 75 23 st.f64 [%frame+24],%r33; .loc 1 75 12 st.f64 [%frame+16],%r33; .loc 1 76 14 mov.f64 %r74,0d0000000000000000; st.f64 [%frame+32],%r74; .loc 1 77 6 ld.global.u32 %r75,[__fdlib_version]; setp.ne.u32 %r76,%r75,2; @ %r76 bra $L10; .loc 1 78 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r77,[%value_in]; } .loc 1 78 11 mov.u32 %r78,34; st.u32 [%r77],%r78; bra $L11; $L10: .loc 1 79 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r80,[%value_in]; } .loc 1 79 11 setp.ne.u32 %r81,%r80,0; @ %r81 bra $L11; .loc 1 80 4 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r82,[%value_in]; } .loc 1 80 10 mov.u32 %r83,34; st.u32 [%r82],%r83; $L11: .loc 1 82 13 ld.u32 %r84,[%frame+40]; setp.eq.u32 %r85,%r84,0; @ %r85 bra $L12; .loc 1 83 13 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r86,[%value_in]; } .loc 1 83 24 ld.u32 %r40,[%frame+40]; .loc 1 83 19 st.u32 [%r86],%r40; $L12: .loc 1 84 20 ld.f64 %r87,[%frame+32]; cvt.rn.f32.f64 %r42,%r87; $L1: .loc 1 89 1 mov.f32 %value,%r42; st.param.f32 [%value_out],%value; ret; } lib_a-wf_exp2.o/1591654539 399 399 100644 919 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 31 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 32 1 mov.f32 %value,%r26; st.param.f32 [%value_out],%value; ret; } lib_a-wf_fmod.o/1591654539 399 399 100644 4483 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // 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: __fpclassifyf .extern .func (.param .u32 %value_out) __fpclassifyf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[6] = {102,109,111,100,102,0 }; // 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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f64 %r25; .reg .u32 %r27; .reg .u32 %r34; .reg .f32 %r39; .reg .f32 %r40; .reg .f32 %r41; .reg .f32 %r44; .reg .u32 %r45; .reg .pred %r46; .reg .u32 %r48; .reg .pred %r49; .reg .u32 %r51; .reg .u32 %r53; .reg .u32 %r54; .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 .u32 %r64; .reg .u64 %r65; .reg .u32 %r66; .reg .f64 %r67; .reg .pred %r68; .reg .f64 %r69; .reg .f64 %r70; .reg .pred %r71; .reg .u64 %r72; .reg .u32 %r73; .reg .u32 %r75; .reg .pred %r76; .reg .u64 %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .pred %r80; .reg .u64 %r81; .reg .f64 %r82; mov.f32 %r40,%ar0; mov.f32 %r41,%ar1; .loc 1 35 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),__ieee754_fmodf,(%out_arg1,%out_arg2); ld.param.f32 %r44,[%value_in]; } mov.f32 %r39,%r44; .loc 1 36 4 ld.global.u32 %r45,[__fdlib_version]; setp.eq.u32 %r46,%r45,-1; @ %r46 bra $L1; .loc 1 36 30 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r41; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r48,[%value_in]; } .loc 1 36 28 setp.eq.u32 %r49,%r48,0; @ %r49 bra $L1; .loc 1 36 40 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r40; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r51,[%value_in]; } .loc 1 36 38 set.u32.ne.u32 %r53,%r51,0; neg.s32 %r54,%r53; .loc 1 37 4 set.u32.eq.f32 %r56,%r41,0f00000000; neg.s32 %r57,%r56; cvt.u16.u32 %r59,%r54; cvt.u16.u32 %r60,%r57; and.b16 %r58,%r59,%r60; cvt.u32.u16 %r61,%r58; cvt.u16.u8 %r62,%r61; setp.eq.u16 %r63,%r62,0; @ %r63 bra $L1; .loc 1 39 22 mov.u32 %r64,1; st.u32 [%frame],%r64; .loc 1 40 22 cvta.const.u64 %r65,$LC0; st.u64 [%frame+8],%r65; .loc 1 41 14 mov.u32 %r66,0; st.u32 [%frame+40],%r66; .loc 1 42 17 cvt.f64.f32 %r25,%r40; .loc 1 42 15 st.f64 [%frame+16],%r25; .loc 1 43 17 cvt.f64.f32 %r67,%r41; st.f64 [%frame+24],%r67; .loc 1 44 30 ld.global.u32 %r27,[__fdlib_version]; .loc 1 44 16 setp.ne.u32 %r68,%r27,0; @ %r68 bra $L3; .loc 1 45 27 st.f64 [%frame+32],%r25; bra $L4; $L3: .loc 1 47 25 mov.f64 %r70,0d0000000000000000; div.rn.f64 %r69,%r70,0d0000000000000000; .loc 1 47 20 st.f64 [%frame+32],%r69; .loc 1 48 16 setp.ne.u32 %r71,%r27,2; @ %r71 bra $L4; .loc 1 49 16 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r72,[%value_in]; } .loc 1 49 22 mov.u32 %r73,33; st.u32 [%r72],%r73; bra $L5; $L4: .loc 1 50 23 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r75,[%value_in]; } .loc 1 50 21 setp.ne.u32 %r76,%r75,0; @ %r76 bra $L5; .loc 1 51 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r77,[%value_in]; } .loc 1 51 25 mov.u32 %r78,33; st.u32 [%r77],%r78; $L5: .loc 1 53 9 ld.u32 %r79,[%frame+40]; setp.eq.u32 %r80,%r79,0; @ %r80 bra $L6; .loc 1 54 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r81,[%value_in]; } .loc 1 54 20 ld.u32 %r34,[%frame+40]; .loc 1 54 15 st.u32 [%r81],%r34; $L6: .loc 1 55 20 ld.f64 %r82,[%frame+32]; cvt.rn.f32.f64 %r39,%r82; $L1: .loc 1 59 1 mov.f32 %value,%r39; st.param.f32 [%value_out],%value; ret; } /1532 1591654539 399 399 100644 5807 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_gammaf_r .extern .func (.param .f32 %value_out) __ieee754_gammaf_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 DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[7] = {103,97,109,109,97,102,0 }; // 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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r36; .reg .u32 %r38; .reg .f64 %r39; .reg .f32 %r40; .reg .f32 %r41; .reg .u64 %r44; .reg .u64 %r45; .reg .f32 %r46; .reg .u32 %r47; .reg .pred %r48; .reg .u32 %r50; .reg .pred %r51; .reg .u32 %r53; .reg .pred %r54; .reg .f32 %r56; .reg .pred %r57; .reg .pred %r58; .reg .u32 %r59; .reg .u64 %r60; .reg .pred %r62; .reg .f64 %r63; .reg .f64 %r64; .reg .pred %r65; .reg .u64 %r66; .reg .u32 %r67; .reg .u32 %r69; .reg .pred %r70; .reg .u64 %r71; .reg .u32 %r72; .reg .u32 %r73; .reg .u64 %r74; .reg .u32 %r75; .reg .pred %r76; .reg .f64 %r77; .reg .f64 %r78; .reg .pred %r79; .reg .u64 %r80; .reg .u32 %r81; .reg .u32 %r83; .reg .pred %r84; .reg .u64 %r85; .reg .u32 %r86; .reg .u32 %r87; .reg .pred %r88; .reg .u64 %r89; .reg .f64 %r90; mov.f32 %r41,%ar0; .loc 1 33 13 ld.global.u64 %r45,[_impure_ptr]; add.u64 %r44,%r45,224; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r41; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r44; call (%value_in),__ieee754_gammaf_r,(%out_arg1,%out_arg2); ld.param.f32 %r46,[%value_in]; } mov.f32 %r40,%r46; .loc 1 34 11 ld.global.u32 %r47,[__fdlib_version]; setp.eq.u32 %r48,%r47,-1; @ %r48 bra $L1; .loc 1 35 13 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r46; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r50,[%value_in]; } .loc 1 35 11 setp.ne.u32 %r51,%r50,0; @ %r51 bra $L1; .loc 1 35 25 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r41; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r53,[%value_in]; } .loc 1 35 23 setp.eq.u32 %r54,%r53,0; @ %r54 bra $L1; .loc 1 42 9 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r41; call (%value_in),floorf,(%out_arg1); ld.param.f32 %r56,[%value_in]; } .loc 1 42 8 setp.neu.f32 %r57,%r56,%r41; @ %r57 bra $L3; cvt.f64.f32 %r39,%r41; ld.global.u32 %r38,[__fdlib_version]; .loc 1 42 21 setp.le.f32 %r58,%r41,0f00000000; @ ! %r58 bra $L4; .loc 1 44 12 mov.u32 %r59,2; st.u32 [%frame],%r59; .loc 1 45 12 cvta.const.u64 %r60,$LC0; st.u64 [%frame+8],%r60; .loc 1 46 11 st.u32 [%frame+40],%r50; .loc 1 47 23 st.f64 [%frame+24],%r39; .loc 1 47 12 st.f64 [%frame+16],%r39; .loc 1 48 20 setp.ne.u32 %r62,%r38,0; @ %r62 bra $L6; .loc 1 49 30 mov.f64 %r63,0d47efffffe0000000; st.f64 [%frame+32],%r63; bra $L7; $L6: .loc 1 51 30 mov.f64 %r64,0d7ff0000000000000; st.f64 [%frame+32],%r64; .loc 1 52 6 setp.ne.u32 %r65,%r38,2; @ %r65 bra $L7; .loc 1 53 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r66,[%value_in]; } .loc 1 53 11 mov.u32 %r67,33; st.u32 [%r66],%r67; bra $L8; $L7: .loc 1 54 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r69,[%value_in]; } .loc 1 54 11 setp.eq.u32 %r70,%r69,0; @ ! %r70 bra $L8; .loc 1 55 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r71,[%value_in]; } .loc 1 55 11 mov.u32 %r72,33; st.u32 [%r71],%r72; bra $L8; $L3: cvt.f64.f32 %r39,%r41; ld.global.u32 %r38,[__fdlib_version]; $L4: .loc 1 59 12 mov.u32 %r73,3; st.u32 [%frame],%r73; .loc 1 60 12 cvta.const.u64 %r74,$LC0; st.u64 [%frame+8],%r74; .loc 1 61 11 mov.u32 %r75,0; st.u32 [%frame+40],%r75; .loc 1 62 23 st.f64 [%frame+24],%r39; .loc 1 62 12 st.f64 [%frame+16],%r39; .loc 1 63 20 setp.ne.u32 %r76,%r38,0; @ %r76 bra $L10; .loc 1 64 30 mov.f64 %r77,0d47efffffe0000000; st.f64 [%frame+32],%r77; bra $L11; $L10: .loc 1 66 30 mov.f64 %r78,0d7ff0000000000000; st.f64 [%frame+32],%r78; .loc 1 67 20 setp.ne.u32 %r79,%r38,2; @ %r79 bra $L11; .loc 1 68 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r80,[%value_in]; } .loc 1 68 11 mov.u32 %r81,34; st.u32 [%r80],%r81; bra $L8; $L11: .loc 1 69 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r83,[%value_in]; } .loc 1 69 25 setp.ne.u32 %r84,%r83,0; @ %r84 bra $L8; .loc 1 70 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r85,[%value_in]; } .loc 1 70 25 mov.u32 %r86,34; st.u32 [%r85],%r86; $L8: .loc 1 73 9 ld.u32 %r87,[%frame+40]; setp.eq.u32 %r88,%r87,0; @ %r88 bra $L13; .loc 1 74 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r89,[%value_in]; } .loc 1 74 20 ld.u32 %r36,[%frame+40]; .loc 1 74 15 st.u32 [%r89],%r36; $L13: .loc 1 75 13 ld.f64 %r90,[%frame+32]; cvt.rn.f32.f64 %r40,%r90; $L1: .loc 1 79 1 mov.f32 %value,%r40; st.param.f32 [%value_out],%value; ret; } /1550 1591654539 399 399 100644 4275 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // 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 DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[7] = {104,121,112,111,116,102,0 }; // 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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r28; .reg .u32 %r34; .reg .f32 %r36; .reg .f32 %r37; .reg .f32 %r38; .reg .f32 %r41; .reg .u32 %r42; .reg .pred %r43; .reg .u32 %r45; .reg .pred %r46; .reg .u32 %r48; .reg .pred %r49; .reg .u32 %r51; .reg .pred %r52; .reg .u32 %r53; .reg .u64 %r54; .reg .f64 %r56; .reg .f64 %r57; .reg .pred %r58; .reg .f64 %r59; .reg .f64 %r60; .reg .pred %r61; .reg .u64 %r62; .reg .u32 %r63; .reg .u32 %r65; .reg .pred %r66; .reg .u64 %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .pred %r70; .reg .u64 %r71; .reg .f64 %r72; mov.f32 %r37,%ar0; mov.f32 %r38,%ar1; .loc 1 35 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_hypotf,(%out_arg1,%out_arg2); ld.param.f32 %r41,[%value_in]; } mov.f32 %r36,%r41; .loc 1 36 4 ld.global.u32 %r42,[__fdlib_version]; setp.eq.u32 %r43,%r42,-1; @ %r43 bra $L1; .loc 1 37 7 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r41; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r45,[%value_in]; } .loc 1 37 4 setp.ne.u32 %r46,%r45,0; @ %r46 bra $L1; .loc 1 37 20 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r37; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r48,[%value_in]; } .loc 1 37 18 setp.eq.u32 %r49,%r48,0; @ %r49 bra $L1; .loc 1 37 32 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r38; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r51,[%value_in]; } .loc 1 37 30 setp.eq.u32 %r52,%r51,0; @ %r52 bra $L1; .loc 1 45 15 mov.u32 %r53,3; st.u32 [%frame],%r53; .loc 1 46 15 cvta.const.u64 %r54,$LC0; st.u64 [%frame+8],%r54; .loc 1 47 14 st.u32 [%frame+40],%r45; .loc 1 48 17 cvt.f64.f32 %r56,%r37; st.f64 [%frame+16],%r56; .loc 1 49 17 cvt.f64.f32 %r57,%r38; st.f64 [%frame+24],%r57; .loc 1 50 23 ld.global.u32 %r28,[__fdlib_version]; .loc 1 50 9 setp.ne.u32 %r58,%r28,0; @ %r58 bra $L3; .loc 1 51 20 mov.f64 %r59,0d47efffffe0000000; st.f64 [%frame+32],%r59; bra $L4; $L3: .loc 1 53 20 mov.f64 %r60,0d7ff0000000000000; st.f64 [%frame+32],%r60; .loc 1 54 9 setp.ne.u32 %r61,%r28,2; @ %r61 bra $L4; .loc 1 55 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r62,[%value_in]; } .loc 1 55 15 mov.u32 %r63,34; st.u32 [%r62],%r63; bra $L5; $L4: .loc 1 56 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r65,[%value_in]; } .loc 1 56 14 setp.ne.u32 %r66,%r65,0; @ %r66 bra $L5; .loc 1 57 8 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r67,[%value_in]; } .loc 1 57 14 mov.u32 %r68,34; st.u32 [%r67],%r68; $L5: .loc 1 59 9 ld.u32 %r69,[%frame+40]; setp.eq.u32 %r70,%r69,0; @ %r70 bra $L6; .loc 1 60 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r71,[%value_in]; } .loc 1 60 20 ld.u32 %r34,[%frame+40]; .loc 1 60 15 st.u32 [%r71],%r34; $L6: .loc 1 61 20 ld.f64 %r72,[%frame+32]; cvt.rn.f32.f64 %r36,%r72; $L1: .loc 1 65 1 mov.f32 %value,%r36; st.param.f32 [%value_out],%value; ret; } lib_a-wf_j0.o/ 1591654539 399 399 100644 8557 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_j0f .extern .func (.param .f32 %value_out) __ieee754_j0f (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __fpclassifyf .extern .func (.param .u32 %value_out) __fpclassifyf (.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: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_y0f .extern .func (.param .f32 %value_out) __ieee754_y0f (.param .f32 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[4] = {106,48,102,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[4] = {121,48,102,0 }; // 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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f64 %r25; .reg .u32 %r32; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r37; .reg .u32 %r38; .reg .pred %r39; .reg .u32 %r41; .reg .pred %r42; .reg .f32 %r44; .reg .pred %r45; .reg .u32 %r46; .reg .u64 %r47; .reg .u32 %r48; .reg .f64 %r49; .reg .u32 %r50; .reg .pred %r51; .reg .u64 %r52; .reg .u32 %r53; .reg .u32 %r55; .reg .pred %r56; .reg .u64 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .pred %r60; .reg .u64 %r61; .reg .f64 %r62; mov.f32 %r35,%ar0; .loc 1 34 12 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r35; call (%value_in),__ieee754_j0f,(%out_arg1); ld.param.f32 %r37,[%value_in]; } mov.f32 %r34,%r37; .loc 1 35 4 ld.global.u32 %r38,[__fdlib_version]; setp.eq.u32 %r39,%r38,-1; @ %r39 bra $L1; .loc 1 35 31 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r35; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r41,[%value_in]; } .loc 1 35 28 setp.eq.u32 %r42,%r41,0; @ %r42 bra $L1; .loc 1 36 5 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r35; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r44,[%value_in]; } .loc 1 36 4 setp.gt.f32 %r45,%r44,0f5a490fdb; @ ! %r45 bra $L1; .loc 1 38 22 mov.u32 %r46,5; st.u32 [%frame],%r46; .loc 1 39 22 cvta.const.u64 %r47,$LC0; st.u64 [%frame+8],%r47; .loc 1 40 14 mov.u32 %r48,0; st.u32 [%frame+40],%r48; .loc 1 41 28 cvt.f64.f32 %r25,%r35; .loc 1 41 26 st.f64 [%frame+24],%r25; .loc 1 41 15 st.f64 [%frame+16],%r25; .loc 1 42 24 mov.f64 %r49,0d0000000000000000; st.f64 [%frame+32],%r49; .loc 1 43 16 ld.global.u32 %r50,[__fdlib_version]; setp.ne.u32 %r51,%r50,2; @ %r51 bra $L4; .loc 1 44 16 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r52,[%value_in]; } .loc 1 44 22 mov.u32 %r53,34; st.u32 [%r52],%r53; bra $L5; $L4: .loc 1 45 23 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r55,[%value_in]; } .loc 1 45 21 setp.ne.u32 %r56,%r55,0; @ %r56 bra $L5; .loc 1 46 16 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r57,[%value_in]; } .loc 1 46 22 mov.u32 %r58,34; st.u32 [%r57],%r58; $L5: .loc 1 48 9 ld.u32 %r59,[%frame+40]; setp.eq.u32 %r60,%r59,0; @ %r60 bra $L6; .loc 1 49 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r61,[%value_in]; } .loc 1 49 20 ld.u32 %r32,[%frame+40]; .loc 1 49 15 st.u32 [%r61],%r32; $L6: .loc 1 50 20 ld.f64 %r62,[%frame+32]; cvt.rn.f32.f64 %r34,%r62; $L1: .loc 1 54 1 mov.f32 %value,%r34; 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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f64 %r24; .reg .u32 %r25; .reg .u32 %r31; .reg .f64 %r33; .reg .u32 %r40; .reg .f32 %r42; .reg .f32 %r43; .reg .f32 %r45; .reg .u32 %r46; .reg .pred %r47; .reg .u32 %r49; .reg .pred %r50; .reg .pred %r51; .reg .u32 %r52; .reg .u64 %r53; .reg .u32 %r54; .reg .pred %r55; .reg .f64 %r56; .reg .f64 %r57; .reg .pred %r58; .reg .u64 %r59; .reg .u32 %r60; .reg .u32 %r62; .reg .pred %r63; .reg .u64 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .pred %r67; .reg .u64 %r68; .reg .f64 %r69; .reg .pred %r70; .reg .u32 %r71; .reg .u64 %r72; .reg .u32 %r73; .reg .f64 %r74; .reg .u32 %r75; .reg .pred %r76; .reg .u64 %r77; .reg .u32 %r78; .reg .u32 %r80; .reg .pred %r81; .reg .u64 %r82; .reg .u32 %r83; .reg .u32 %r84; .reg .pred %r85; .reg .u64 %r86; .reg .f64 %r87; mov.f32 %r43,%ar0; .loc 1 68 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r43; call (%value_in),__ieee754_y0f,(%out_arg1); ld.param.f32 %r45,[%value_in]; } mov.f32 %r42,%r45; .loc 1 69 4 ld.global.u32 %r46,[__fdlib_version]; setp.eq.u32 %r47,%r46,-1; @ %r47 bra $L17; .loc 1 69 31 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r43; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r49,[%value_in]; } .loc 1 69 28 setp.eq.u32 %r50,%r49,0; @ %r50 bra $L17; .loc 1 70 11 setp.le.f32 %r51,%r43,0f00000000; @ ! %r51 bra $L43; .loc 1 78 15 mov.u32 %r52,1; st.u32 [%frame],%r52; .loc 1 79 15 cvta.const.u64 %r53,$LC1; st.u64 [%frame+8],%r53; .loc 1 80 14 mov.u32 %r54,0; st.u32 [%frame+40],%r54; .loc 1 81 28 cvt.f64.f32 %r24,%r43; .loc 1 81 26 st.f64 [%frame+24],%r24; .loc 1 81 15 st.f64 [%frame+16],%r24; .loc 1 82 23 ld.global.u32 %r25,[__fdlib_version]; .loc 1 82 9 setp.ne.u32 %r55,%r25,0; @ %r55 bra $L21; .loc 1 83 20 mov.f64 %r56,0dc7efffffe0000000; st.f64 [%frame+32],%r56; bra $L22; $L21: .loc 1 85 20 mov.f64 %r57,0dfff0000000000000; st.f64 [%frame+32],%r57; .loc 1 86 9 setp.ne.u32 %r58,%r25,2; @ %r58 bra $L22; .loc 1 87 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r59,[%value_in]; } .loc 1 87 15 mov.u32 %r60,33; st.u32 [%r59],%r60; bra $L23; $L22: .loc 1 88 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r62,[%value_in]; } .loc 1 88 14 setp.ne.u32 %r63,%r62,0; @ %r63 bra $L23; .loc 1 89 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r64,[%value_in]; } .loc 1 89 15 mov.u32 %r65,33; st.u32 [%r64],%r65; $L23: .loc 1 91 9 ld.u32 %r66,[%frame+40]; setp.eq.u32 %r67,%r66,0; @ %r67 bra $L24; .loc 1 92 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r68,[%value_in]; } .loc 1 92 20 ld.u32 %r31,[%frame+40]; .loc 1 92 15 st.u32 [%r68],%r31; $L24: .loc 1 93 20 ld.f64 %r69,[%frame+32]; cvt.rn.f32.f64 %r42,%r69; bra $L17; $L43: .loc 1 95 4 setp.gt.f32 %r70,%r43,0f5a490fdb; @ ! %r70 bra $L17; .loc 1 97 22 mov.u32 %r71,5; st.u32 [%frame],%r71; .loc 1 98 22 cvta.const.u64 %r72,$LC1; st.u64 [%frame+8],%r72; .loc 1 99 14 mov.u32 %r73,0; st.u32 [%frame+40],%r73; .loc 1 100 28 cvt.f64.f32 %r33,%r43; .loc 1 100 26 st.f64 [%frame+24],%r33; .loc 1 100 15 st.f64 [%frame+16],%r33; .loc 1 101 24 mov.f64 %r74,0d0000000000000000; st.f64 [%frame+32],%r74; .loc 1 102 16 ld.global.u32 %r75,[__fdlib_version]; setp.ne.u32 %r76,%r75,2; @ %r76 bra $L26; .loc 1 103 17 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r77,[%value_in]; } .loc 1 103 23 mov.u32 %r78,34; st.u32 [%r77],%r78; bra $L27; $L26: .loc 1 104 23 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r80,[%value_in]; } .loc 1 104 21 setp.ne.u32 %r81,%r80,0; @ %r81 bra $L27; .loc 1 105 17 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r82,[%value_in]; } .loc 1 105 23 mov.u32 %r83,34; st.u32 [%r82],%r83; $L27: .loc 1 107 9 ld.u32 %r84,[%frame+40]; setp.eq.u32 %r85,%r84,0; @ %r85 bra $L28; .loc 1 108 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r86,[%value_in]; } .loc 1 108 20 ld.u32 %r40,[%frame+40]; .loc 1 108 15 st.u32 [%r86],%r40; $L28: .loc 1 109 20 ld.f64 %r87,[%frame+32]; cvt.rn.f32.f64 %r42,%r87; $L17: .loc 1 113 1 mov.f32 %value,%r42; st.param.f32 [%value_out],%value; ret; } lib_a-wf_j1.o/ 1591654539 399 399 100644 8558 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_j1f .extern .func (.param .f32 %value_out) __ieee754_j1f (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __fpclassifyf .extern .func (.param .u32 %value_out) __fpclassifyf (.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: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_y1f .extern .func (.param .f32 %value_out) __ieee754_y1f (.param .f32 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[4] = {106,49,102,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[4] = {121,49,102,0 }; // 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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f64 %r25; .reg .u32 %r32; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r37; .reg .u32 %r38; .reg .pred %r39; .reg .u32 %r41; .reg .pred %r42; .reg .f32 %r44; .reg .pred %r45; .reg .u32 %r46; .reg .u64 %r47; .reg .u32 %r48; .reg .f64 %r49; .reg .u32 %r50; .reg .pred %r51; .reg .u64 %r52; .reg .u32 %r53; .reg .u32 %r55; .reg .pred %r56; .reg .u64 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .pred %r60; .reg .u64 %r61; .reg .f64 %r62; mov.f32 %r35,%ar0; .loc 1 36 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r35; call (%value_in),__ieee754_j1f,(%out_arg1); ld.param.f32 %r37,[%value_in]; } mov.f32 %r34,%r37; .loc 1 37 4 ld.global.u32 %r38,[__fdlib_version]; setp.eq.u32 %r39,%r38,-1; @ %r39 bra $L1; .loc 1 37 31 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r35; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r41,[%value_in]; } .loc 1 37 28 setp.eq.u32 %r42,%r41,0; @ %r42 bra $L1; .loc 1 38 5 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r35; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r44,[%value_in]; } .loc 1 38 4 setp.gt.f32 %r45,%r44,0f5a490fdb; @ ! %r45 bra $L1; .loc 1 40 22 mov.u32 %r46,5; st.u32 [%frame],%r46; .loc 1 41 22 cvta.const.u64 %r47,$LC0; st.u64 [%frame+8],%r47; .loc 1 42 14 mov.u32 %r48,0; st.u32 [%frame+40],%r48; .loc 1 43 28 cvt.f64.f32 %r25,%r35; .loc 1 43 26 st.f64 [%frame+24],%r25; .loc 1 43 15 st.f64 [%frame+16],%r25; .loc 1 44 24 mov.f64 %r49,0d0000000000000000; st.f64 [%frame+32],%r49; .loc 1 45 16 ld.global.u32 %r50,[__fdlib_version]; setp.ne.u32 %r51,%r50,2; @ %r51 bra $L4; .loc 1 46 17 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r52,[%value_in]; } .loc 1 46 23 mov.u32 %r53,34; st.u32 [%r52],%r53; bra $L5; $L4: .loc 1 47 23 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r55,[%value_in]; } .loc 1 47 21 setp.ne.u32 %r56,%r55,0; @ %r56 bra $L5; .loc 1 48 17 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r57,[%value_in]; } .loc 1 48 23 mov.u32 %r58,34; st.u32 [%r57],%r58; $L5: .loc 1 50 9 ld.u32 %r59,[%frame+40]; setp.eq.u32 %r60,%r59,0; @ %r60 bra $L6; .loc 1 51 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r61,[%value_in]; } .loc 1 51 20 ld.u32 %r32,[%frame+40]; .loc 1 51 15 st.u32 [%r61],%r32; $L6: .loc 1 52 23 ld.f64 %r62,[%frame+32]; cvt.rn.f32.f64 %r34,%r62; $L1: .loc 1 56 1 mov.f32 %value,%r34; 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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f64 %r24; .reg .u32 %r25; .reg .u32 %r31; .reg .f64 %r33; .reg .u32 %r40; .reg .f32 %r42; .reg .f32 %r43; .reg .f32 %r45; .reg .u32 %r46; .reg .pred %r47; .reg .u32 %r49; .reg .pred %r50; .reg .pred %r51; .reg .u32 %r52; .reg .u64 %r53; .reg .u32 %r54; .reg .pred %r55; .reg .f64 %r56; .reg .f64 %r57; .reg .pred %r58; .reg .u64 %r59; .reg .u32 %r60; .reg .u32 %r62; .reg .pred %r63; .reg .u64 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .pred %r67; .reg .u64 %r68; .reg .f64 %r69; .reg .pred %r70; .reg .u32 %r71; .reg .u64 %r72; .reg .u32 %r73; .reg .f64 %r74; .reg .u32 %r75; .reg .pred %r76; .reg .u64 %r77; .reg .u32 %r78; .reg .u32 %r80; .reg .pred %r81; .reg .u64 %r82; .reg .u32 %r83; .reg .u32 %r84; .reg .pred %r85; .reg .u64 %r86; .reg .f64 %r87; mov.f32 %r43,%ar0; .loc 1 70 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r43; call (%value_in),__ieee754_y1f,(%out_arg1); ld.param.f32 %r45,[%value_in]; } mov.f32 %r42,%r45; .loc 1 71 4 ld.global.u32 %r46,[__fdlib_version]; setp.eq.u32 %r47,%r46,-1; @ %r47 bra $L17; .loc 1 71 31 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r43; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r49,[%value_in]; } .loc 1 71 28 setp.eq.u32 %r50,%r49,0; @ %r50 bra $L17; .loc 1 72 11 setp.le.f32 %r51,%r43,0f00000000; @ ! %r51 bra $L43; .loc 1 80 15 mov.u32 %r52,1; st.u32 [%frame],%r52; .loc 1 81 15 cvta.const.u64 %r53,$LC1; st.u64 [%frame+8],%r53; .loc 1 82 14 mov.u32 %r54,0; st.u32 [%frame+40],%r54; .loc 1 83 28 cvt.f64.f32 %r24,%r43; .loc 1 83 26 st.f64 [%frame+24],%r24; .loc 1 83 15 st.f64 [%frame+16],%r24; .loc 1 84 23 ld.global.u32 %r25,[__fdlib_version]; .loc 1 84 9 setp.ne.u32 %r55,%r25,0; @ %r55 bra $L21; .loc 1 85 20 mov.f64 %r56,0dc7efffffe0000000; st.f64 [%frame+32],%r56; bra $L22; $L21: .loc 1 87 20 mov.f64 %r57,0dfff0000000000000; st.f64 [%frame+32],%r57; .loc 1 88 9 setp.ne.u32 %r58,%r25,2; @ %r58 bra $L22; .loc 1 89 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r59,[%value_in]; } .loc 1 89 15 mov.u32 %r60,33; st.u32 [%r59],%r60; bra $L23; $L22: .loc 1 90 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r62,[%value_in]; } .loc 1 90 14 setp.ne.u32 %r63,%r62,0; @ %r63 bra $L23; .loc 1 91 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r64,[%value_in]; } .loc 1 91 15 mov.u32 %r65,33; st.u32 [%r64],%r65; $L23: .loc 1 93 9 ld.u32 %r66,[%frame+40]; setp.eq.u32 %r67,%r66,0; @ %r67 bra $L24; .loc 1 94 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r68,[%value_in]; } .loc 1 94 20 ld.u32 %r31,[%frame+40]; .loc 1 94 15 st.u32 [%r68],%r31; $L24: .loc 1 95 20 ld.f64 %r69,[%frame+32]; cvt.rn.f32.f64 %r42,%r69; bra $L17; $L43: .loc 1 97 4 setp.gt.f32 %r70,%r43,0f5a490fdb; @ ! %r70 bra $L17; .loc 1 99 22 mov.u32 %r71,5; st.u32 [%frame],%r71; .loc 1 100 22 cvta.const.u64 %r72,$LC1; st.u64 [%frame+8],%r72; .loc 1 101 14 mov.u32 %r73,0; st.u32 [%frame+40],%r73; .loc 1 102 28 cvt.f64.f32 %r33,%r43; .loc 1 102 26 st.f64 [%frame+24],%r33; .loc 1 102 15 st.f64 [%frame+16],%r33; .loc 1 103 24 mov.f64 %r74,0d0000000000000000; st.f64 [%frame+32],%r74; .loc 1 104 16 ld.global.u32 %r75,[__fdlib_version]; setp.ne.u32 %r76,%r75,2; @ %r76 bra $L26; .loc 1 105 17 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r77,[%value_in]; } .loc 1 105 23 mov.u32 %r78,34; st.u32 [%r77],%r78; bra $L27; $L26: .loc 1 106 23 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r80,[%value_in]; } .loc 1 106 21 setp.ne.u32 %r81,%r80,0; @ %r81 bra $L27; .loc 1 107 17 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r82,[%value_in]; } .loc 1 107 23 mov.u32 %r83,34; st.u32 [%r82],%r83; $L27: .loc 1 109 9 ld.u32 %r84,[%frame+40]; setp.eq.u32 %r85,%r84,0; @ %r85 bra $L28; .loc 1 110 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r86,[%value_in]; } .loc 1 110 20 ld.u32 %r40,[%frame+40]; .loc 1 110 15 st.u32 [%r86],%r40; $L28: .loc 1 111 20 ld.f64 %r87,[%frame+32]; cvt.rn.f32.f64 %r42,%r87; $L17: .loc 1 115 1 mov.f32 %value,%r42; st.param.f32 [%value_out],%value; ret; } lib_a-wf_jn.o/ 1591654539 399 399 100644 9060 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // 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: __fpclassifyf .extern .func (.param .u32 %value_out) __fpclassifyf (.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: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_ynf .extern .func (.param .f32 %value_out) __ieee754_ynf (.param .u32 %in_ar0, .param .f32 %in_ar1); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[4] = {106,110,102,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[4] = {121,110,102,0 }; // 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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r33; .reg .f32 %r35; .reg .u32 %r36; .reg .f32 %r37; .reg .f32 %r40; .reg .u32 %r41; .reg .pred %r42; .reg .u32 %r44; .reg .pred %r45; .reg .f32 %r47; .reg .pred %r48; .reg .u32 %r49; .reg .u64 %r50; .reg .u32 %r51; .reg .f64 %r52; .reg .f64 %r53; .reg .f64 %r54; .reg .u32 %r55; .reg .pred %r56; .reg .u64 %r57; .reg .u32 %r58; .reg .u32 %r60; .reg .pred %r61; .reg .u64 %r62; .reg .u32 %r63; .reg .u32 %r64; .reg .pred %r65; .reg .u64 %r66; .reg .f64 %r67; mov.u32 %r36,%ar0; mov.f32 %r37,%ar1; .loc 1 32 6 { .param .f32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r36; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r37; call (%value_in),__ieee754_jnf,(%out_arg1,%out_arg2); ld.param.f32 %r40,[%value_in]; } mov.f32 %r35,%r40; .loc 1 33 4 ld.global.u32 %r41,[__fdlib_version]; setp.eq.u32 %r42,%r41,-1; @ %r42 bra $L1; .loc 1 33 31 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r37; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r44,[%value_in]; } .loc 1 33 28 setp.eq.u32 %r45,%r44,0; @ %r45 bra $L1; .loc 1 34 5 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r37; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r47,[%value_in]; } .loc 1 34 4 setp.gt.f32 %r48,%r47,0f5a490fdb; @ ! %r48 bra $L1; .loc 1 36 22 mov.u32 %r49,5; st.u32 [%frame],%r49; .loc 1 37 22 cvta.const.u64 %r50,$LC0; st.u64 [%frame+8],%r50; .loc 1 38 14 mov.u32 %r51,0; st.u32 [%frame+40],%r51; .loc 1 39 17 cvt.rn.f64.s32 %r52,%r36; st.f64 [%frame+16],%r52; .loc 1 40 17 cvt.f64.f32 %r53,%r37; st.f64 [%frame+24],%r53; .loc 1 41 24 mov.f64 %r54,0d0000000000000000; st.f64 [%frame+32],%r54; .loc 1 42 16 ld.global.u32 %r55,[__fdlib_version]; setp.ne.u32 %r56,%r55,2; @ %r56 bra $L4; .loc 1 43 17 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r57,[%value_in]; } .loc 1 43 23 mov.u32 %r58,34; st.u32 [%r57],%r58; bra $L5; $L4: .loc 1 44 23 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r60,[%value_in]; } .loc 1 44 21 setp.ne.u32 %r61,%r60,0; @ %r61 bra $L5; .loc 1 45 16 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r62,[%value_in]; } .loc 1 45 22 mov.u32 %r63,34; st.u32 [%r62],%r63; $L5: .loc 1 47 9 ld.u32 %r64,[%frame+40]; setp.eq.u32 %r65,%r64,0; @ %r65 bra $L6; .loc 1 48 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r66,[%value_in]; } .loc 1 48 20 ld.u32 %r33,[%frame+40]; .loc 1 48 15 st.u32 [%r66],%r33; $L6: .loc 1 49 23 ld.f64 %r67,[%frame+32]; cvt.rn.f32.f64 %r35,%r67; $L1: .loc 1 53 1 mov.f32 %value,%r35; 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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r26; .reg .u32 %r32; .reg .u32 %r42; .reg .f32 %r44; .reg .u32 %r45; .reg .f32 %r46; .reg .f32 %r49; .reg .u32 %r50; .reg .pred %r51; .reg .u32 %r53; .reg .pred %r54; .reg .pred %r55; .reg .u32 %r56; .reg .u64 %r57; .reg .u32 %r58; .reg .f64 %r59; .reg .f64 %r60; .reg .pred %r61; .reg .f64 %r62; .reg .f64 %r63; .reg .pred %r64; .reg .u64 %r65; .reg .u32 %r66; .reg .u32 %r68; .reg .pred %r69; .reg .u64 %r70; .reg .u32 %r71; .reg .u32 %r72; .reg .pred %r73; .reg .u64 %r74; .reg .f64 %r75; .reg .pred %r76; .reg .u32 %r77; .reg .u64 %r78; .reg .u32 %r79; .reg .f64 %r80; .reg .f64 %r81; .reg .f64 %r82; .reg .u32 %r83; .reg .pred %r84; .reg .u64 %r85; .reg .u32 %r86; .reg .u32 %r88; .reg .pred %r89; .reg .u64 %r90; .reg .u32 %r91; .reg .u32 %r92; .reg .pred %r93; .reg .u64 %r94; .reg .f64 %r95; mov.u32 %r45,%ar0; mov.f32 %r46,%ar1; .loc 1 67 6 { .param .f32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r45; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r46; call (%value_in),__ieee754_ynf,(%out_arg1,%out_arg2); ld.param.f32 %r49,[%value_in]; } mov.f32 %r44,%r49; .loc 1 68 4 ld.global.u32 %r50,[__fdlib_version]; setp.eq.u32 %r51,%r50,-1; @ %r51 bra $L17; .loc 1 68 31 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r46; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r53,[%value_in]; } .loc 1 68 28 setp.eq.u32 %r54,%r53,0; @ %r54 bra $L17; .loc 1 69 11 setp.le.f32 %r55,%r46,0f00000000; @ ! %r55 bra $L43; .loc 1 77 15 mov.u32 %r56,1; st.u32 [%frame],%r56; .loc 1 78 15 cvta.const.u64 %r57,$LC1; st.u64 [%frame+8],%r57; .loc 1 79 14 mov.u32 %r58,0; st.u32 [%frame+40],%r58; .loc 1 80 17 cvt.rn.f64.s32 %r59,%r45; st.f64 [%frame+16],%r59; .loc 1 81 17 cvt.f64.f32 %r60,%r46; st.f64 [%frame+24],%r60; .loc 1 82 23 ld.global.u32 %r26,[__fdlib_version]; .loc 1 82 9 setp.ne.u32 %r61,%r26,0; @ %r61 bra $L21; .loc 1 83 21 mov.f64 %r62,0dc7efffffe0000000; st.f64 [%frame+32],%r62; bra $L22; $L21: .loc 1 85 21 mov.f64 %r63,0dfff0000000000000; st.f64 [%frame+32],%r63; .loc 1 86 9 setp.ne.u32 %r64,%r26,2; @ %r64 bra $L22; .loc 1 87 10 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r65,[%value_in]; } .loc 1 87 16 mov.u32 %r66,33; st.u32 [%r65],%r66; bra $L23; $L22: .loc 1 88 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r68,[%value_in]; } .loc 1 88 14 setp.ne.u32 %r69,%r68,0; @ %r69 bra $L23; .loc 1 89 10 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r70,[%value_in]; } .loc 1 89 16 mov.u32 %r71,33; st.u32 [%r70],%r71; $L23: .loc 1 91 9 ld.u32 %r72,[%frame+40]; setp.eq.u32 %r73,%r72,0; @ %r73 bra $L24; .loc 1 92 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r74,[%value_in]; } .loc 1 92 20 ld.u32 %r32,[%frame+40]; .loc 1 92 15 st.u32 [%r74],%r32; $L24: .loc 1 93 20 ld.f64 %r75,[%frame+32]; cvt.rn.f32.f64 %r44,%r75; bra $L17; $L43: .loc 1 95 4 setp.gt.f32 %r76,%r46,0f5a490fdb; @ ! %r76 bra $L17; .loc 1 97 22 mov.u32 %r77,5; st.u32 [%frame],%r77; .loc 1 98 22 cvta.const.u64 %r78,$LC1; st.u64 [%frame+8],%r78; .loc 1 99 14 mov.u32 %r79,0; st.u32 [%frame+40],%r79; .loc 1 100 17 cvt.rn.f64.s32 %r80,%r45; st.f64 [%frame+16],%r80; .loc 1 101 17 cvt.f64.f32 %r81,%r46; st.f64 [%frame+24],%r81; .loc 1 102 24 mov.f64 %r82,0d0000000000000000; st.f64 [%frame+32],%r82; .loc 1 103 16 ld.global.u32 %r83,[__fdlib_version]; setp.ne.u32 %r84,%r83,2; @ %r84 bra $L26; .loc 1 104 17 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r85,[%value_in]; } .loc 1 104 23 mov.u32 %r86,34; st.u32 [%r85],%r86; bra $L27; $L26: .loc 1 105 23 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r88,[%value_in]; } .loc 1 105 21 setp.ne.u32 %r89,%r88,0; @ %r89 bra $L27; .loc 1 106 17 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r90,[%value_in]; } .loc 1 106 23 mov.u32 %r91,34; st.u32 [%r90],%r91; $L27: .loc 1 108 9 ld.u32 %r92,[%frame+40]; setp.eq.u32 %r93,%r92,0; @ %r93 bra $L28; .loc 1 109 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r94,[%value_in]; } .loc 1 109 20 ld.u32 %r42,[%frame+40]; .loc 1 109 15 st.u32 [%r94],%r42; $L28: .loc 1 110 20 ld.f64 %r95,[%frame+32]; cvt.rn.f32.f64 %r44,%r95; $L17: .loc 1 114 1 mov.f32 %value,%r44; st.param.f32 [%value_out],%value; ret; } /1568 1591654539 399 399 100644 5284 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // 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: 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 DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[8] = {108,103,97,109,109,97,102,0 }; // 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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f64 %r27; .reg .u32 %r38; .reg .f64 %r40; .reg .u32 %r41; .reg .f32 %r42; .reg .f32 %r43; .reg .u64 %r46; .reg .u64 %r47; .reg .f32 %r48; .reg .u32 %r49; .reg .pred %r50; .reg .u32 %r52; .reg .pred %r53; .reg .u32 %r55; .reg .pred %r56; .reg .u64 %r57; .reg .u32 %r59; .reg .pred %r60; .reg .f32 %r62; .reg .pred %r63; .reg .pred %r64; .reg .u32 %r65; .reg .pred %r66; .reg .u64 %r67; .reg .u32 %r68; .reg .u32 %r70; .reg .pred %r71; .reg .u64 %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .pred %r75; .reg .u64 %r76; .reg .u32 %r77; .reg .u32 %r79; .reg .pred %r80; .reg .u64 %r81; .reg .u32 %r82; .reg .u32 %r83; .reg .pred %r84; .reg .u64 %r85; .reg .f64 %r86; mov.f32 %r43,%ar0; .loc 1 33 13 ld.global.u64 %r47,[_impure_ptr]; add.u64 %r46,%r47,224; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r43; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r46; call (%value_in),__ieee754_lgammaf_r,(%out_arg1,%out_arg2); ld.param.f32 %r48,[%value_in]; } mov.f32 %r42,%r48; .loc 1 34 11 ld.global.u32 %r49,[__fdlib_version]; setp.eq.u32 %r50,%r49,-1; @ %r50 bra $L1; .loc 1 35 13 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r48; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r52,[%value_in]; } .loc 1 35 11 setp.ne.u32 %r53,%r52,0; @ %r53 bra $L1; .loc 1 35 25 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r43; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r55,[%value_in]; } .loc 1 35 23 setp.eq.u32 %r56,%r55,0; @ %r56 bra $L1; .loc 1 42 15 cvta.const.u64 %r57,$LC0; st.u64 [%frame+8],%r57; .loc 1 43 14 st.u32 [%frame+40],%r52; .loc 1 44 28 cvt.f64.f32 %r27,%r43; .loc 1 44 26 st.f64 [%frame+24],%r27; .loc 1 44 15 st.f64 [%frame+16],%r27; .loc 1 45 16 ld.global.u32 %r59,[__fdlib_version]; setp.eq.u32 %r60,%r59,0; .loc 1 48 27 selp.f64 %r40,0d47efffffe0000000,0d7ff0000000000000,%r60; st.f64 [%frame+32],%r40; .loc 1 49 9 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r43; call (%value_in),floorf,(%out_arg1); ld.param.f32 %r62,[%value_in]; } .loc 1 49 8 setp.neu.f32 %r63,%r62,%r43; @ %r63 bra $L4; ld.global.u32 %r41,[__fdlib_version]; .loc 1 49 21 setp.le.f32 %r64,%r43,0f00000000; @ ! %r64 bra $L5; .loc 1 51 12 mov.u32 %r65,2; st.u32 [%frame],%r65; .loc 1 52 6 setp.ne.u32 %r66,%r41,2; @ %r66 bra $L7; .loc 1 53 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r67,[%value_in]; } .loc 1 53 12 mov.u32 %r68,33; st.u32 [%r67],%r68; bra $L8; $L7: .loc 1 54 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r70,[%value_in]; } .loc 1 54 11 setp.eq.u32 %r71,%r70,0; @ ! %r71 bra $L8; .loc 1 55 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r72,[%value_in]; } .loc 1 55 12 mov.u32 %r73,33; st.u32 [%r72],%r73; bra $L8; $L4: ld.global.u32 %r41,[__fdlib_version]; $L5: .loc 1 60 12 mov.u32 %r74,3; st.u32 [%frame],%r74; .loc 1 61 20 setp.ne.u32 %r75,%r41,2; @ %r75 bra $L10; .loc 1 62 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r76,[%value_in]; } .loc 1 62 12 mov.u32 %r77,34; st.u32 [%r76],%r77; bra $L8; $L10: .loc 1 63 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r79,[%value_in]; } .loc 1 63 25 setp.ne.u32 %r80,%r79,0; @ %r80 bra $L8; .loc 1 64 20 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r81,[%value_in]; } .loc 1 64 26 mov.u32 %r82,34; st.u32 [%r81],%r82; $L8: .loc 1 67 9 ld.u32 %r83,[%frame+40]; setp.eq.u32 %r84,%r83,0; @ %r84 bra $L12; .loc 1 68 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r85,[%value_in]; } .loc 1 68 20 ld.u32 %r38,[%frame+40]; .loc 1 68 15 st.u32 [%r85],%r38; $L12: .loc 1 69 20 ld.f64 %r86,[%frame+32]; cvt.rn.f32.f64 %r42,%r86; $L1: .loc 1 73 1 mov.f32 %value,%r42; st.param.f32 [%value_out],%value; ret; } lib_a-wf_log.o/ 1591654539 399 399 100644 5136 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_logf .extern .func (.param .f32 %value_out) __ieee754_logf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __fpclassifyf .extern .func (.param .u32 %value_out) __fpclassifyf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // 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[5] = {108,111,103,102,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f64 %r24; .reg .u32 %r25; .reg .u32 %r35; .reg .f32 %r37; .reg .f32 %r38; .reg .f32 %r40; .reg .u32 %r41; .reg .pred %r42; .reg .u32 %r44; .reg .pred %r45; .reg .pred %r46; .reg .u64 %r47; .reg .u32 %r48; .reg .pred %r49; .reg .f64 %r50; .reg .pred %r51; .reg .u32 %r52; .reg .pred %r53; .reg .u64 %r54; .reg .u32 %r55; .reg .u32 %r57; .reg .pred %r58; .reg .u64 %r59; .reg .u32 %r60; .reg .u32 %r61; .reg .pred %r62; .reg .u64 %r63; .reg .u32 %r64; .reg .u32 %r66; .reg .pred %r67; .reg .u64 %r68; .reg .u32 %r69; .reg .u64 %r70; .reg .f64 %r71; .reg .u32 %r72; .reg .pred %r73; .reg .u64 %r74; .reg .f64 %r75; .reg .u32 %r77; .reg .f64 %r78; .reg .pred %r79; .reg .u32 %r80; mov.f32 %r38,%ar0; .loc 1 35 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r38; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r40,[%value_in]; } mov.f32 %r37,%r40; .loc 1 36 4 ld.global.u32 %r41,[__fdlib_version]; setp.eq.u32 %r42,%r41,-1; @ %r42 bra $L1; .loc 1 36 31 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r38; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r44,[%value_in]; } .loc 1 36 28 setp.eq.u32 %r45,%r44,0; @ %r45 bra $L1; .loc 1 36 40 setp.gt.f32 %r46,%r38,0f00000000; @ %r46 bra $L1; .loc 1 43 11 cvta.const.u64 %r47,$LC0; st.u64 [%frame+8],%r47; .loc 1 44 10 mov.u32 %r48,0; st.u32 [%frame+40],%r48; .loc 1 45 24 cvt.f64.f32 %r24,%r38; .loc 1 45 22 st.f64 [%frame+24],%r24; .loc 1 45 11 st.f64 [%frame+16],%r24; .loc 1 46 19 ld.global.u32 %r25,[__fdlib_version]; .loc 1 46 5 setp.eq.u32 %r49,%r25,0; @ %r49 bra $L3; mov.f64 %r50,0dfff0000000000000; st.f64 [%frame+32],%r50; .loc 1 50 4 setp.neu.f32 %r51,%r38,0f00000000; @ %r51 bra $L4; .loc 1 52 15 mov.u32 %r52,2; st.u32 [%frame],%r52; .loc 1 53 9 setp.ne.u32 %r53,%r25,2; @ %r53 bra $L5; .loc 1 54 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r54,[%value_in]; } .loc 1 54 15 mov.u32 %r55,34; st.u32 [%r54],%r55; bra $L6; $L5: .loc 1 55 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r57,[%value_in]; } .loc 1 55 14 setp.ne.u32 %r58,%r57,0; @ %r58 bra $L6; .loc 1 56 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r59,[%value_in]; } .loc 1 56 15 mov.u32 %r60,34; st.u32 [%r59],%r60; bra $L6; $L4: .loc 1 60 15 mov.u32 %r61,1; st.u32 [%frame],%r61; .loc 1 61 9 setp.ne.u32 %r62,%r25,2; @ %r62 bra $L7; .loc 1 62 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r63,[%value_in]; } .loc 1 62 15 mov.u32 %r64,33; st.u32 [%r63],%r64; bra $L8; $L7: .loc 1 63 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r66,[%value_in]; } .loc 1 63 14 setp.ne.u32 %r67,%r66,0; @ %r67 bra $L8; .loc 1 64 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r68,[%value_in]; } .loc 1 64 15 mov.u32 %r69,33; st.u32 [%r68],%r69; $L8: .loc 1 66 26 cvta.const.u64 %r70,$LC1; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r70; call (%value_in),nan,(%out_arg1); ld.param.f64 %r71,[%value_in]; } .loc 1 66 24 st.f64 [%frame+32],%r71; $L6: .loc 1 68 5 ld.u32 %r72,[%frame+40]; setp.eq.u32 %r73,%r72,0; @ %r73 bra $L9; .loc 1 69 12 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r74,[%value_in]; } .loc 1 69 23 ld.u32 %r35,[%frame+40]; .loc 1 69 18 st.u32 [%r74],%r35; $L9: .loc 1 70 16 ld.f64 %r75,[%frame+32]; cvt.rn.f32.f64 %r37,%r75; bra $L1; $L10: .loc 1 52 15 mov.u32 %r77,2; st.u32 [%frame],%r77; bra $L5; $L3: mov.f64 %r78,0dc7efffffe0000000; st.f64 [%frame+32],%r78; .loc 1 50 4 setp.eq.f32 %r79,%r38,0f00000000; @ %r79 bra $L10; .loc 1 60 15 mov.u32 %r80,1; st.u32 [%frame],%r80; bra $L7; $L1: .loc 1 72 1 mov.f32 %value,%r37; st.param.f32 [%value_out],%value; ret; } /1587 1591654539 399 399 100644 5167 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_log10f .extern .func (.param .f32 %value_out) __ieee754_log10f (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __fpclassifyf .extern .func (.param .u32 %value_out) __fpclassifyf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // 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[7] = {108,111,103,49,48,102,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f64 %r24; .reg .u32 %r25; .reg .u32 %r35; .reg .f32 %r37; .reg .f32 %r38; .reg .f32 %r40; .reg .u32 %r41; .reg .pred %r42; .reg .u32 %r44; .reg .pred %r45; .reg .pred %r46; .reg .u64 %r47; .reg .u32 %r48; .reg .pred %r49; .reg .f64 %r50; .reg .pred %r51; .reg .u32 %r52; .reg .pred %r53; .reg .u64 %r54; .reg .u32 %r55; .reg .u32 %r57; .reg .pred %r58; .reg .u64 %r59; .reg .u32 %r60; .reg .u32 %r61; .reg .pred %r62; .reg .u64 %r63; .reg .u32 %r64; .reg .u32 %r66; .reg .pred %r67; .reg .u64 %r68; .reg .u32 %r69; .reg .u64 %r70; .reg .f64 %r71; .reg .u32 %r72; .reg .pred %r73; .reg .u64 %r74; .reg .f64 %r75; .reg .u32 %r77; .reg .f64 %r78; .reg .pred %r79; .reg .u32 %r80; mov.f32 %r38,%ar0; .loc 1 35 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r38; call (%value_in),__ieee754_log10f,(%out_arg1); ld.param.f32 %r40,[%value_in]; } mov.f32 %r37,%r40; .loc 1 36 4 ld.global.u32 %r41,[__fdlib_version]; setp.eq.u32 %r42,%r41,-1; @ %r42 bra $L1; .loc 1 36 31 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r38; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r44,[%value_in]; } .loc 1 36 28 setp.eq.u32 %r45,%r44,0; @ %r45 bra $L1; .loc 1 37 4 setp.le.f32 %r46,%r38,0f00000000; @ ! %r46 bra $L1; .loc 1 44 15 cvta.const.u64 %r47,$LC0; st.u64 [%frame+8],%r47; .loc 1 45 14 mov.u32 %r48,0; st.u32 [%frame+40],%r48; .loc 1 46 28 cvt.f64.f32 %r24,%r38; .loc 1 46 26 st.f64 [%frame+24],%r24; .loc 1 46 15 st.f64 [%frame+16],%r24; .loc 1 47 23 ld.global.u32 %r25,[__fdlib_version]; .loc 1 47 9 setp.eq.u32 %r49,%r25,0; @ %r49 bra $L4; mov.f64 %r50,0dfff0000000000000; st.f64 [%frame+32],%r50; .loc 1 51 8 setp.neu.f32 %r51,%r38,0f00000000; @ %r51 bra $L5; .loc 1 53 19 mov.u32 %r52,2; st.u32 [%frame],%r52; .loc 1 54 13 setp.ne.u32 %r53,%r25,2; @ %r53 bra $L6; .loc 1 55 13 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r54,[%value_in]; } .loc 1 55 19 mov.u32 %r55,34; st.u32 [%r54],%r55; bra $L7; $L6: .loc 1 56 20 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r57,[%value_in]; } .loc 1 56 18 setp.ne.u32 %r58,%r57,0; @ %r58 bra $L7; .loc 1 57 13 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r59,[%value_in]; } .loc 1 57 19 mov.u32 %r60,34; st.u32 [%r59],%r60; bra $L7; $L5: .loc 1 61 19 mov.u32 %r61,1; st.u32 [%frame],%r61; .loc 1 62 13 setp.ne.u32 %r62,%r25,2; @ %r62 bra $L8; .loc 1 63 13 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r63,[%value_in]; } .loc 1 63 19 mov.u32 %r64,33; st.u32 [%r63],%r64; bra $L9; $L8: .loc 1 64 20 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r66,[%value_in]; } .loc 1 64 18 setp.ne.u32 %r67,%r66,0; @ %r67 bra $L9; .loc 1 65 13 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r68,[%value_in]; } .loc 1 65 19 mov.u32 %r69,33; st.u32 [%r68],%r69; $L9: .loc 1 67 30 cvta.const.u64 %r70,$LC1; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r70; call (%value_in),nan,(%out_arg1); ld.param.f64 %r71,[%value_in]; } .loc 1 67 28 st.f64 [%frame+32],%r71; $L7: .loc 1 69 9 ld.u32 %r72,[%frame+40]; setp.eq.u32 %r73,%r72,0; @ %r73 bra $L10; .loc 1 70 16 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r74,[%value_in]; } .loc 1 70 27 ld.u32 %r35,[%frame+40]; .loc 1 70 22 st.u32 [%r74],%r35; $L10: .loc 1 71 20 ld.f64 %r75,[%frame+32]; cvt.rn.f32.f64 %r37,%r75; bra $L1; $L11: .loc 1 53 19 mov.u32 %r77,2; st.u32 [%frame],%r77; bra $L6; $L4: mov.f64 %r78,0dc7efffffe0000000; st.f64 [%frame+32],%r78; .loc 1 51 8 setp.eq.f32 %r79,%r38,0f00000000; @ %r79 bra $L11; .loc 1 61 19 mov.u32 %r80,1; st.u32 [%frame],%r80; bra $L8; $L1: .loc 1 75 1 mov.f32 %value,%r37; st.param.f32 [%value_out],%value; ret; } lib_a-wf_pow.o/ 1591654539 399 399 100644 16858 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // 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: __fpclassifyf .extern .func (.param .u32 %value_out) __fpclassifyf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: finitef .extern .func (.param .u32 %value_out) finitef (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: rint .extern .func (.param .f64 %value_out) rint (.param .f64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[5] = {112,111,119,102,0 }; // 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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r34; .reg .u32 %r42; .reg .u32 %r46; .reg .u32 %r52; .reg .u32 %r60; .reg .u32 %r67; .reg .f64 %r72; .reg .f64 %r74; .reg .u32 %r82; .reg .u32 %r94; .reg .u32 %r96; .reg .f32 %r97; .reg .f32 %r102; .reg .f32 %r103; .reg .f32 %r104; .reg .f32 %r107; .reg .u32 %r108; .reg .pred %r109; .reg .u32 %r111; .reg .pred %r112; .reg .u32 %r114; .reg .pred %r115; .reg .pred %r116; .reg .u32 %r117; .reg .u64 %r118; .reg .f64 %r120; .reg .f64 %r121; .reg .f64 %r122; .reg .u32 %r124; .reg .u32 %r125; .reg .u32 %r127; .reg .u32 %r128; .reg .u16 %r129; .reg .u16 %r130; .reg .u16 %r131; .reg .u32 %r132; .reg .u16 %r133; .reg .pred %r134; .reg .u32 %r136; .reg .pred %r137; .reg .u64 %r138; .reg .u32 %r139; .reg .u32 %r140; .reg .pred %r141; .reg .f64 %r142; .reg .u64 %r143; .reg .f64 %r144; .reg .pred %r145; .reg .pred %r146; .reg .u32 %r147; .reg .u64 %r148; .reg .u32 %r149; .reg .f64 %r150; .reg .f64 %r151; .reg .f64 %r152; .reg .u32 %r153; .reg .pred %r154; .reg .u32 %r156; .reg .pred %r157; .reg .u64 %r158; .reg .u32 %r159; .reg .u32 %r160; .reg .pred %r161; .reg .f64 %r162; .reg .u64 %r163; .reg .f64 %r164; .reg .u32 %r166; .reg .pred %r167; .reg .pred %r168; .reg .u32 %r169; .reg .u64 %r170; .reg .u32 %r171; .reg .f64 %r172; .reg .f64 %r173; .reg .pred %r174; .reg .f64 %r175; .reg .f64 %r176; .reg .pred %r177; .reg .u64 %r178; .reg .u32 %r179; .reg .u32 %r181; .reg .pred %r182; .reg .u64 %r183; .reg .u32 %r184; .reg .u32 %r185; .reg .pred %r186; .reg .u64 %r187; .reg .f64 %r188; .reg .u32 %r190; .reg .pred %r191; .reg .u32 %r193; .reg .pred %r194; .reg .u32 %r196; .reg .pred %r197; .reg .u32 %r199; .reg .pred %r200; .reg .u32 %r201; .reg .u64 %r202; .reg .f64 %r204; .reg .f64 %r205; .reg .pred %r206; .reg .f64 %r207; .reg .f64 %r208; .reg .f64 %r209; .reg .pred %r210; .reg .u64 %r211; .reg .u32 %r212; .reg .u32 %r214; .reg .pred %r215; .reg .u64 %r216; .reg .u32 %r217; .reg .u32 %r218; .reg .pred %r219; .reg .u64 %r220; .reg .f64 %r221; .reg .u32 %r222; .reg .u64 %r223; .reg .f64 %r225; .reg .f64 %r226; .reg .pred %r228; .reg .f64 %r229; .reg .pred %r230; .reg .f64 %r232; .reg .pred %r233; .reg .f64 %r234; .reg .f64 %r235; .reg .pred %r236; .reg .f64 %r238; .reg .pred %r239; .reg .f64 %r240; .reg .pred %r242; .reg .u64 %r243; .reg .u32 %r244; .reg .u32 %r246; .reg .pred %r247; .reg .u64 %r248; .reg .u32 %r249; .reg .u32 %r250; .reg .pred %r251; .reg .u64 %r252; .reg .f64 %r253; .reg .pred %r254; .reg .u32 %r256; .reg .pred %r257; .reg .u32 %r259; .reg .pred %r260; .reg .u32 %r261; .reg .u64 %r262; .reg .u32 %r263; .reg .f64 %r264; .reg .f64 %r265; .reg .f64 %r266; .reg .u32 %r267; .reg .pred %r268; .reg .u64 %r269; .reg .u32 %r270; .reg .u32 %r272; .reg .pred %r273; .reg .u64 %r274; .reg .u32 %r275; .reg .u32 %r276; .reg .pred %r277; .reg .u64 %r278; .reg .f64 %r279; .reg .u32 %r281; mov.f32 %r103,%ar0; mov.f32 %r104,%ar1; .loc 1 35 4 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r103; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r104; call (%value_in),__ieee754_powf,(%out_arg1,%out_arg2); ld.param.f32 %r107,[%value_in]; } mov.f32 %r102,%r107; .loc 1 36 4 ld.global.u32 %r108,[__fdlib_version]; setp.eq.u32 %r109,%r108,-1; @ %r109 bra $L1; .loc 1 36 30 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r104; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r111,[%value_in]; } .loc 1 36 27 setp.eq.u32 %r112,%r111,0; @ %r112 bra $L1; .loc 1 37 5 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r103; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r114,[%value_in]; } .loc 1 37 4 setp.ne.u32 %r115,%r114,0; @ %r115 bra $L3; .loc 1 38 8 setp.neu.f32 %r116,%r104,0f00000000; @ %r116 bra $L1; .loc 1 41 12 mov.u32 %r117,1; st.u32 [%frame],%r117; .loc 1 42 12 cvta.const.u64 %r118,$LC0; st.u64 [%frame+8],%r118; .loc 1 43 11 st.u32 [%frame+40],%r114; .loc 1 44 14 cvt.f64.f32 %r120,%r103; st.f64 [%frame+16],%r120; .loc 1 45 14 cvt.f64.f32 %r121,%r104; st.f64 [%frame+24],%r121; .loc 1 46 14 mov.f64 %r122,0d3ff0000000000000; st.f64 [%frame+32],%r122; .loc 1 47 30 ld.global.u32 %r96,[__fdlib_version]; set.u32.eq.u32 %r124,%r96,-1; neg.s32 %r125,%r124; set.u32.eq.u32 %r127,%r96,2; neg.s32 %r128,%r127; cvt.u16.u32 %r130,%r125; cvt.u16.u32 %r131,%r128; or.b16 %r129,%r130,%r131; .loc 1 47 6 cvt.u32.u16 %r132,%r129; cvt.u16.u8 %r133,%r132; setp.ne.u16 %r134,%r133,0; @ %r134 bra $L35; .loc 1 49 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r136,[%value_in]; } .loc 1 49 11 setp.ne.u32 %r137,%r136,0; @ %r137 bra $L5; .loc 1 50 4 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r138,[%value_in]; } .loc 1 50 10 mov.u32 %r139,33; st.u32 [%r138],%r139; $L5: .loc 1 52 13 ld.u32 %r140,[%frame+40]; setp.ne.u32 %r141,%r140,0; @ %r141 bra $L6; ld.f64 %r142,[%frame+32]; cvt.rn.f32.f64 %r102,%r142; bra $L1; $L6: .loc 1 53 13 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r143,[%value_in]; } .loc 1 53 24 ld.u32 %r34,[%frame+40]; .loc 1 53 19 st.u32 [%r143],%r34; ld.f64 %r144,[%frame+32]; cvt.rn.f32.f64 %r102,%r144; bra $L1; $L35: mov.f32 %r102,0f3f800000; .loc 1 54 24 bra $L1; $L3: .loc 1 58 4 setp.neu.f32 %r145,%r103,0f00000000; @ %r145 bra $L7; .loc 1 59 8 setp.neu.f32 %r146,%r104,0f00000000; @ %r146 bra $L8; .loc 1 62 12 mov.u32 %r147,1; st.u32 [%frame],%r147; .loc 1 63 12 cvta.const.u64 %r148,$LC0; st.u64 [%frame+8],%r148; .loc 1 64 11 mov.u32 %r149,0; st.u32 [%frame+40],%r149; .loc 1 65 14 cvt.f64.f32 %r150,%r103; st.f64 [%frame+16],%r150; .loc 1 66 14 cvt.f64.f32 %r151,%r104; st.f64 [%frame+24],%r151; .loc 1 67 14 mov.f64 %r152,0d0000000000000000; st.f64 [%frame+32],%r152; .loc 1 68 6 ld.global.u32 %r153,[__fdlib_version]; setp.ne.u32 %r154,%r153,0; @ %r154 bra $L36; .loc 1 69 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r156,[%value_in]; } .loc 1 69 11 setp.ne.u32 %r157,%r156,0; @ %r157 bra $L10; .loc 1 70 4 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r158,[%value_in]; } .loc 1 70 10 mov.u32 %r159,33; st.u32 [%r158],%r159; $L10: .loc 1 72 13 ld.u32 %r160,[%frame+40]; setp.ne.u32 %r161,%r160,0; @ %r161 bra $L11; ld.f64 %r162,[%frame+32]; cvt.rn.f32.f64 %r102,%r162; bra $L1; $L11: .loc 1 73 13 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r163,[%value_in]; } .loc 1 73 24 ld.u32 %r42,[%frame+40]; .loc 1 73 19 st.u32 [%r163],%r42; ld.f64 %r164,[%frame+32]; cvt.rn.f32.f64 %r102,%r164; bra $L1; $L36: mov.f32 %r102,0f3f800000; .loc 1 74 24 bra $L1; $L8: .loc 1 76 9 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r104; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r166,[%value_in]; } .loc 1 76 8 setp.eq.u32 %r167,%r166,0; @ %r167 bra $L1; .loc 1 76 19 setp.lt.f32 %r168,%r104,0f00000000; @ ! %r168 bra $L1; .loc 1 78 12 mov.u32 %r169,1; st.u32 [%frame],%r169; .loc 1 79 12 cvta.const.u64 %r170,$LC0; st.u64 [%frame+8],%r170; .loc 1 80 11 mov.u32 %r171,0; st.u32 [%frame+40],%r171; .loc 1 81 14 cvt.f64.f32 %r172,%r103; st.f64 [%frame+16],%r172; .loc 1 82 14 cvt.f64.f32 %r173,%r104; st.f64 [%frame+24],%r173; .loc 1 83 20 ld.global.u32 %r46,[__fdlib_version]; .loc 1 83 6 setp.ne.u32 %r174,%r46,0; @ %r174 bra $L13; .loc 1 84 16 mov.f64 %r175,0d0000000000000000; st.f64 [%frame+32],%r175; bra $L14; $L13: .loc 1 86 16 mov.f64 %r176,0dfff0000000000000; st.f64 [%frame+32],%r176; .loc 1 87 6 setp.ne.u32 %r177,%r46,2; @ %r177 bra $L14; .loc 1 88 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r178,[%value_in]; } .loc 1 88 11 mov.u32 %r179,33; st.u32 [%r178],%r179; bra $L15; $L14: .loc 1 89 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r181,[%value_in]; } .loc 1 89 11 setp.ne.u32 %r182,%r181,0; @ %r182 bra $L15; .loc 1 90 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r183,[%value_in]; } .loc 1 90 11 mov.u32 %r184,33; st.u32 [%r183],%r184; $L15: .loc 1 92 13 ld.u32 %r185,[%frame+40]; setp.eq.u32 %r186,%r185,0; @ %r186 bra $L16; .loc 1 93 13 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r187,[%value_in]; } .loc 1 93 24 ld.u32 %r52,[%frame+40]; .loc 1 93 19 st.u32 [%r187],%r52; $L16: .loc 1 94 24 ld.f64 %r188,[%frame+32]; cvt.rn.f32.f64 %r102,%r188; bra $L1; $L7: .loc 1 98 6 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r107; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r190,[%value_in]; } .loc 1 98 4 setp.ne.u32 %r191,%r190,0; @ %r191 bra $L17; .loc 1 99 9 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r103; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r193,[%value_in]; } .loc 1 99 8 setp.eq.u32 %r194,%r193,0; @ %r194 bra $L17; .loc 1 99 21 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r104; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r196,[%value_in]; } .loc 1 99 19 setp.eq.u32 %r197,%r196,0; @ %r197 bra $L17; .loc 1 100 13 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r107; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r199,[%value_in]; } .loc 1 100 12 setp.ne.u32 %r200,%r199,0; @ %r200 bra $L18; .loc 1 102 16 mov.u32 %r201,1; st.u32 [%frame],%r201; .loc 1 103 16 cvta.const.u64 %r202,$LC0; st.u64 [%frame+8],%r202; .loc 1 104 15 st.u32 [%frame+40],%r199; .loc 1 105 18 cvt.f64.f32 %r204,%r103; st.f64 [%frame+16],%r204; .loc 1 106 18 cvt.f64.f32 %r205,%r104; st.f64 [%frame+24],%r205; .loc 1 107 24 ld.global.u32 %r60,[__fdlib_version]; .loc 1 107 10 setp.ne.u32 %r206,%r60,0; @ %r206 bra $L19; .loc 1 108 22 mov.f64 %r207,0d0000000000000000; st.f64 [%frame+32],%r207; bra $L20; $L19: .loc 1 110 27 mov.f64 %r209,0d0000000000000000; div.rn.f64 %r208,%r209,0d0000000000000000; .loc 1 110 22 st.f64 [%frame+32],%r208; .loc 1 111 10 setp.ne.u32 %r210,%r60,2; @ %r210 bra $L20; .loc 1 112 11 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r211,[%value_in]; } .loc 1 112 17 mov.u32 %r212,33; st.u32 [%r211],%r212; bra $L21; $L20: .loc 1 113 17 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r214,[%value_in]; } .loc 1 113 15 setp.ne.u32 %r215,%r214,0; @ %r215 bra $L21; .loc 1 114 11 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r216,[%value_in]; } .loc 1 114 17 mov.u32 %r217,33; st.u32 [%r216],%r217; $L21: .loc 1 116 17 ld.u32 %r218,[%frame+40]; setp.eq.u32 %r219,%r218,0; @ %r219 bra $L22; .loc 1 117 18 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r220,[%value_in]; } .loc 1 117 29 ld.u32 %r67,[%frame+40]; .loc 1 117 24 st.u32 [%r220],%r67; $L22: .loc 1 118 28 ld.f64 %r221,[%frame+32]; cvt.rn.f32.f64 %r102,%r221; bra $L1; $L18: .loc 1 121 16 mov.u32 %r222,3; st.u32 [%frame],%r222; .loc 1 122 16 cvta.const.u64 %r223,$LC0; st.u64 [%frame+8],%r223; .loc 1 123 15 st.u32 [%frame+40],%r190; .loc 1 124 18 cvt.f64.f32 %r225,%r103; st.f64 [%frame+16],%r225; .loc 1 125 18 cvt.f64.f32 %r226,%r104; st.f64 [%frame+24],%r226; mul.f32 %r97,%r104,0f3f000000; .loc 1 126 10 ld.global.u32 %r281,[__fdlib_version]; setp.ne.u32 %r228,%r281,0; @ %r228 bra $L23; .loc 1 127 21 mov.f64 %r229,0d47efffffe0000000; st.f64 [%frame+32],%r229; .loc 1 129 12 setp.lt.f32 %r230,%r103,0f00000000; @ ! %r230 bra $L24; .loc 1 129 20 cvt.f64.f32 %r72,%r97; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r72; call (%value_in),rint,(%out_arg1); ld.param.f64 %r232,[%value_in]; } .loc 1 129 18 setp.neu.f64 %r233,%r72,%r232; @ %r233 bra $L26; ld.global.u32 %r281,[__fdlib_version]; bra $L27; $L26: .loc 1 129 43 mov.f64 %r234,0dc7efffffe0000000; st.f64 [%frame+32],%r234; ld.global.u32 %r281,[__fdlib_version]; bra $L27; $L23: .loc 1 131 21 mov.f64 %r235,0d7ff0000000000000; st.f64 [%frame+32],%r235; .loc 1 133 12 setp.lt.f32 %r236,%r103,0f00000000; @ ! %r236 bra $L27; .loc 1 133 20 cvt.f64.f32 %r74,%r97; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r74; call (%value_in),rint,(%out_arg1); ld.param.f64 %r238,[%value_in]; } .loc 1 133 18 setp.eq.f64 %r239,%r74,%r238; @ ! %r239 bra $L74; ld.global.u32 %r281,[__fdlib_version]; bra $L27; $L74: .loc 1 133 43 mov.f64 %r240,0dfff0000000000000; st.f64 [%frame+32],%r240; ld.global.u32 %r281,[__fdlib_version]; $L27: .loc 1 135 10 setp.ne.u32 %r242,%r281,2; @ %r242 bra $L24; .loc 1 136 11 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r243,[%value_in]; } .loc 1 136 17 mov.u32 %r244,34; st.u32 [%r243],%r244; bra $L30; $L24: .loc 1 137 17 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r246,[%value_in]; } .loc 1 137 15 setp.ne.u32 %r247,%r246,0; @ %r247 bra $L30; .loc 1 138 4 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r248,[%value_in]; } .loc 1 138 10 mov.u32 %r249,34; st.u32 [%r248],%r249; $L30: .loc 1 140 17 ld.u32 %r250,[%frame+40]; setp.eq.u32 %r251,%r250,0; @ %r251 bra $L31; .loc 1 141 18 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r252,[%value_in]; } .loc 1 141 29 ld.u32 %r82,[%frame+40]; .loc 1 141 24 st.u32 [%r252],%r82; $L31: .loc 1 142 28 ld.f64 %r253,[%frame+32]; cvt.rn.f32.f64 %r102,%r253; bra $L1; $L17: .loc 1 146 4 setp.neu.f32 %r254,%r107,0f00000000; @ %r254 bra $L1; .loc 1 146 20 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r103; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r256,[%value_in]; } .loc 1 146 18 setp.eq.u32 %r257,%r256,0; @ %r257 bra $L1; .loc 1 146 32 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r104; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r259,[%value_in]; } .loc 1 146 30 setp.eq.u32 %r260,%r259,0; @ %r260 bra $L1; .loc 1 148 15 mov.u32 %r261,4; st.u32 [%frame],%r261; .loc 1 149 15 cvta.const.u64 %r262,$LC0; st.u64 [%frame+8],%r262; .loc 1 150 14 mov.u32 %r263,0; st.u32 [%frame+40],%r263; .loc 1 151 17 cvt.f64.f32 %r264,%r103; st.f64 [%frame+16],%r264; .loc 1 152 17 cvt.f64.f32 %r265,%r104; st.f64 [%frame+24],%r265; .loc 1 153 17 mov.f64 %r266,0d0000000000000000; st.f64 [%frame+32],%r266; .loc 1 154 9 ld.global.u32 %r267,[__fdlib_version]; setp.ne.u32 %r268,%r267,2; @ %r268 bra $L32; .loc 1 155 10 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r269,[%value_in]; } .loc 1 155 16 mov.u32 %r270,34; st.u32 [%r269],%r270; bra $L33; $L32: .loc 1 156 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r272,[%value_in]; } .loc 1 156 14 setp.ne.u32 %r273,%r272,0; @ %r273 bra $L33; .loc 1 157 8 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r274,[%value_in]; } .loc 1 157 14 mov.u32 %r275,34; st.u32 [%r274],%r275; $L33: .loc 1 159 9 ld.u32 %r276,[%frame+40]; setp.eq.u32 %r277,%r276,0; @ %r277 bra $L34; .loc 1 160 10 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r278,[%value_in]; } .loc 1 160 21 ld.u32 %r94,[%frame+40]; .loc 1 160 16 st.u32 [%r278],%r94; $L34: .loc 1 161 20 ld.f64 %r279,[%frame+32]; cvt.rn.f32.f64 %r102,%r279; $L1: .loc 1 165 1 mov.f32 %value,%r102; st.param.f32 [%value_out],%value; ret; } /1605 1591654539 399 399 100644 4150 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // 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: __fpclassifyf .extern .func (.param .u32 %value_out) __fpclassifyf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[11] = {114,101,109,97,105,110,100,101,114,102,0 }; // 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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r33; .reg .f32 %r38; .reg .f32 %r39; .reg .f32 %r40; .reg .f32 %r43; .reg .u32 %r44; .reg .pred %r45; .reg .u32 %r47; .reg .u32 %r49; .reg .u32 %r50; .reg .u32 %r52; .reg .u32 %r53; .reg .u16 %r54; .reg .u16 %r55; .reg .u16 %r56; .reg .u32 %r57; .reg .u16 %r58; .reg .pred %r59; .reg .u32 %r60; .reg .u64 %r61; .reg .u32 %r62; .reg .f64 %r63; .reg .f64 %r64; .reg .f64 %r65; .reg .f64 %r66; .reg .u32 %r67; .reg .pred %r68; .reg .u64 %r69; .reg .u32 %r70; .reg .u32 %r72; .reg .pred %r73; .reg .u64 %r74; .reg .u32 %r75; .reg .u32 %r76; .reg .pred %r77; .reg .u64 %r78; .reg .f64 %r79; mov.f32 %r39,%ar0; mov.f32 %r40,%ar1; .loc 1 35 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r39; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r40; call (%value_in),__ieee754_remainderf,(%out_arg1,%out_arg2); ld.param.f32 %r43,[%value_in]; } mov.f32 %r38,%r43; .loc 1 36 4 ld.global.u32 %r44,[__fdlib_version]; setp.eq.u32 %r45,%r44,-1; @ %r45 bra $L1; .loc 1 36 31 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r40; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r47,[%value_in]; } .loc 1 37 4 set.u32.eq.f32 %r49,%r40,0f00000000; neg.s32 %r50,%r49; .loc 1 36 28 set.u32.ne.u32 %r52,%r47,0; neg.s32 %r53,%r52; .loc 1 37 4 cvt.u16.u32 %r55,%r50; cvt.u16.u32 %r56,%r53; and.b16 %r54,%r55,%r56; cvt.u32.u16 %r57,%r54; cvt.u16.u8 %r58,%r57; setp.eq.u16 %r59,%r58,0; @ %r59 bra $L1; .loc 1 39 22 mov.u32 %r60,1; st.u32 [%frame],%r60; .loc 1 40 22 cvta.const.u64 %r61,$LC0; st.u64 [%frame+8],%r61; .loc 1 41 14 mov.u32 %r62,0; st.u32 [%frame+40],%r62; .loc 1 42 17 cvt.f64.f32 %r63,%r39; st.f64 [%frame+16],%r63; .loc 1 43 17 cvt.f64.f32 %r64,%r40; st.f64 [%frame+24],%r64; .loc 1 44 29 mov.f64 %r66,0d0000000000000000; div.rn.f64 %r65,%r66,0d0000000000000000; .loc 1 44 24 st.f64 [%frame+32],%r65; .loc 1 45 16 ld.global.u32 %r67,[__fdlib_version]; setp.ne.u32 %r68,%r67,2; @ %r68 bra $L3; .loc 1 46 16 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r69,[%value_in]; } .loc 1 46 22 mov.u32 %r70,33; st.u32 [%r69],%r70; bra $L4; $L3: .loc 1 47 23 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r72,[%value_in]; } .loc 1 47 21 setp.ne.u32 %r73,%r72,0; @ %r73 bra $L4; .loc 1 48 16 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r74,[%value_in]; } .loc 1 48 22 mov.u32 %r75,33; st.u32 [%r74],%r75; $L4: .loc 1 50 9 ld.u32 %r76,[%frame+40]; setp.eq.u32 %r77,%r76,0; @ %r77 bra $L5; .loc 1 51 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r78,[%value_in]; } .loc 1 51 20 ld.u32 %r33,[%frame+40]; .loc 1 51 15 st.u32 [%r78],%r33; $L5: .loc 1 52 20 ld.f64 %r79,[%frame+32]; cvt.rn.f32.f64 %r38,%r79; $L1: .loc 1 56 1 mov.f32 %value,%r38; st.param.f32 [%value_out],%value; ret; } /1627 1591654539 399 399 100644 7298 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // 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: __fpclassifyf .extern .func (.param .u32 %value_out) __fpclassifyf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: copysign .extern .func (.param .f64 %value_out) copysign (.param .f64 %in_ar0, .param .f64 %in_ar1); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[7] = {115,99,97,108,98,102,0 }; // 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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r34; .reg .f64 %r39; .reg .u32 %r48; .reg .f64 %r52; .reg .f32 %r53; .reg .f32 %r54; .reg .f32 %r55; .reg .f32 %r58; .reg .u32 %r59; .reg .pred %r60; .reg .u32 %r62; .reg .pred %r63; .reg .u32 %r65; .reg .pred %r66; .reg .u32 %r68; .reg .pred %r69; .reg .u32 %r70; .reg .u64 %r71; .reg .f64 %r73; .reg .f64 %r74; .reg .pred %r75; .reg .u32 %r76; .reg .pred %r77; .reg .u64 %r78; .reg .u32 %r79; .reg .u32 %r81; .reg .pred %r82; .reg .u64 %r83; .reg .u32 %r84; .reg .u32 %r85; .reg .pred %r86; .reg .u64 %r87; .reg .f64 %r88; .reg .u32 %r90; .reg .u32 %r91; .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 .u64 %r102; .reg .u32 %r103; .reg .f64 %r104; .reg .f64 %r105; .reg .f64 %r107; .reg .u32 %r108; .reg .pred %r109; .reg .u64 %r110; .reg .u32 %r111; .reg .u32 %r113; .reg .pred %r114; .reg .u64 %r115; .reg .u32 %r116; .reg .u32 %r117; .reg .pred %r118; .reg .u64 %r119; .reg .f64 %r120; .reg .u32 %r122; .reg .pred %r123; .reg .u64 %r124; .reg .u32 %r125; mov.f32 %r54,%ar0; mov.f32 %r55,%ar1; .loc 1 51 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r54; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r55; call (%value_in),__ieee754_scalbf,(%out_arg1,%out_arg2); ld.param.f32 %r58,[%value_in]; } mov.f32 %r53,%r58; .loc 1 52 4 ld.global.u32 %r59,[__fdlib_version]; setp.eq.u32 %r60,%r59,-1; @ %r60 bra $L1; .loc 1 53 7 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r58; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r62,[%value_in]; } .loc 1 53 4 setp.ne.u32 %r63,%r62,0; @ %r63 bra $L3; .loc 1 53 19 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r58; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r65,[%value_in]; } .loc 1 53 5 setp.eq.u32 %r66,%r65,0; @ %r66 bra $L3; .loc 1 53 30 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r54; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r68,[%value_in]; } .loc 1 53 28 setp.eq.u32 %r69,%r68,0; @ %r69 bra $L3; .loc 1 55 15 mov.u32 %r70,3; st.u32 [%frame],%r70; .loc 1 56 15 cvta.const.u64 %r71,$LC0; st.u64 [%frame+8],%r71; .loc 1 57 14 st.u32 [%frame+40],%r62; .loc 1 58 17 cvt.f64.f32 %r73,%r54; st.f64 [%frame+16],%r73; .loc 1 59 17 cvt.f64.f32 %r74,%r55; st.f64 [%frame+24],%r74; .loc 1 60 38 setp.gt.f32 %r75,%r54,0f00000000; selp.f64 %r52,0d7ff0000000000000,0dfff0000000000000,%r75; .loc 1 60 17 st.f64 [%frame+32],%r52; .loc 1 61 9 ld.global.u32 %r76,[__fdlib_version]; setp.ne.u32 %r77,%r76,2; @ %r77 bra $L5; .loc 1 62 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r78,[%value_in]; } .loc 1 62 15 mov.u32 %r79,34; st.u32 [%r78],%r79; bra $L6; $L5: .loc 1 63 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r81,[%value_in]; } .loc 1 63 14 setp.ne.u32 %r82,%r81,0; @ %r82 bra $L6; .loc 1 64 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r83,[%value_in]; } .loc 1 64 15 mov.u32 %r84,34; st.u32 [%r83],%r84; $L6: .loc 1 66 9 ld.u32 %r85,[%frame+40]; setp.eq.u32 %r86,%r85,0; @ %r86 bra $L7; .loc 1 67 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r87,[%value_in]; } .loc 1 67 20 ld.u32 %r34,[%frame+40]; .loc 1 67 15 st.u32 [%r87],%r34; $L7: .loc 1 68 23 ld.f64 %r88,[%frame+32]; cvt.rn.f32.f64 %r53,%r88; bra $L1; $L3: .loc 1 70 6 set.u32.eq.f32 %r90,%r58,0f00000000; neg.s32 %r91,%r90; .loc 1 70 21 set.u32.neu.f32 %r93,%r54,%r58; neg.s32 %r94,%r93; .loc 1 70 18 cvt.u16.u32 %r96,%r91; cvt.u16.u32 %r97,%r94; and.b16 %r95,%r96,%r97; .loc 1 70 4 cvt.u32.u16 %r98,%r95; cvt.u16.u8 %r99,%r98; setp.eq.u16 %r100,%r99,0; @ %r100 bra $L8; .loc 1 72 15 mov.u32 %r101,4; st.u32 [%frame],%r101; .loc 1 73 15 cvta.const.u64 %r102,$LC0; st.u64 [%frame+8],%r102; .loc 1 74 14 mov.u32 %r103,0; st.u32 [%frame+40],%r103; .loc 1 75 17 cvt.f64.f32 %r39,%r54; .loc 1 75 15 st.f64 [%frame+16],%r39; .loc 1 76 17 cvt.f64.f32 %r104,%r55; st.f64 [%frame+24],%r104; .loc 1 77 19 mov.f64 %r105,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r105; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r39; call (%value_in),copysign,(%out_arg1,%out_arg2); ld.param.f64 %r107,[%value_in]; } .loc 1 77 17 st.f64 [%frame+32],%r107; .loc 1 78 9 ld.global.u32 %r108,[__fdlib_version]; setp.ne.u32 %r109,%r108,2; @ %r109 bra $L9; .loc 1 79 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r110,[%value_in]; } .loc 1 79 15 mov.u32 %r111,34; st.u32 [%r110],%r111; bra $L10; $L9: .loc 1 80 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r113,[%value_in]; } .loc 1 80 14 setp.ne.u32 %r114,%r113,0; @ %r114 bra $L10; .loc 1 81 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r115,[%value_in]; } .loc 1 81 15 mov.u32 %r116,34; st.u32 [%r115],%r116; $L10: .loc 1 83 9 ld.u32 %r117,[%frame+40]; setp.eq.u32 %r118,%r117,0; @ %r118 bra $L11; .loc 1 84 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r119,[%value_in]; } .loc 1 84 20 ld.u32 %r48,[%frame+40]; .loc 1 84 15 st.u32 [%r119],%r48; $L11: .loc 1 85 23 ld.f64 %r120,[%frame+32]; cvt.rn.f32.f64 %r53,%r120; bra $L1; $L8: .loc 1 88 6 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r55; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r122,[%value_in]; } .loc 1 88 4 setp.ne.u32 %r123,%r122,0; @ %r123 bra $L1; .loc 1 88 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r124,[%value_in]; } .loc 1 88 25 mov.u32 %r125,34; st.u32 [%r124],%r125; $L1: .loc 1 92 1 mov.f32 %value,%r53; st.param.f32 [%value_out],%value; ret; } /1645 1591654539 399 399 100644 1267 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 15 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 15 9 st.f32 [%r25],%r28; .loc 1 16 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 16 9 st.f32 [%r26],%r30; .loc 1 17 1 ret; } lib_a-wf_sinh.o/1591654539 399 399 100644 3958 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // 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 DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[6] = {115,105,110,104,102,0 }; // 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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f64 %r25; .reg .u32 %r26; .reg .u32 %r32; .reg .f64 %r34; .reg .f64 %r35; .reg .f32 %r36; .reg .f32 %r37; .reg .f32 %r39; .reg .u32 %r40; .reg .pred %r41; .reg .u32 %r43; .reg .pred %r44; .reg .u32 %r46; .reg .pred %r47; .reg .u32 %r48; .reg .u64 %r49; .reg .pred %r51; .reg .pred %r52; .reg .pred %r53; .reg .pred %r54; .reg .u64 %r55; .reg .u32 %r56; .reg .u32 %r58; .reg .pred %r59; .reg .u64 %r60; .reg .u32 %r61; .reg .u32 %r62; .reg .pred %r63; .reg .u64 %r64; .reg .f64 %r65; mov.f32 %r37,%ar0; .loc 1 35 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r37; call (%value_in),__ieee754_sinhf,(%out_arg1); ld.param.f32 %r39,[%value_in]; } mov.f32 %r36,%r39; .loc 1 36 4 ld.global.u32 %r40,[__fdlib_version]; setp.eq.u32 %r41,%r40,-1; @ %r41 bra $L1; .loc 1 37 6 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r39; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r43,[%value_in]; } .loc 1 37 4 setp.ne.u32 %r44,%r43,0; @ %r44 bra $L1; .loc 1 37 18 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r37; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r46,[%value_in]; } .loc 1 37 16 setp.eq.u32 %r47,%r46,0; @ %r47 bra $L1; .loc 1 45 15 mov.u32 %r48,3; st.u32 [%frame],%r48; .loc 1 46 15 cvta.const.u64 %r49,$LC0; st.u64 [%frame+8],%r49; .loc 1 47 14 st.u32 [%frame+40],%r43; .loc 1 48 28 cvt.f64.f32 %r25,%r37; .loc 1 48 26 st.f64 [%frame+24],%r25; .loc 1 48 15 st.f64 [%frame+16],%r25; .loc 1 49 23 ld.global.u32 %r26,[__fdlib_version]; .loc 1 49 9 setp.ne.u32 %r51,%r26,0; @ %r51 bra $L3; .loc 1 50 39 setp.gt.f32 %r52,%r37,0f00000000; selp.f64 %r34,0d47efffffe0000000,0dc7efffffe0000000,%r52; .loc 1 50 20 st.f64 [%frame+32],%r34; bra $L5; $L3: .loc 1 52 43 setp.gt.f32 %r53,%r37,0f00000000; selp.f64 %r35,0d7ff0000000000000,0dfff0000000000000,%r53; .loc 1 52 20 st.f64 [%frame+32],%r35; .loc 1 53 9 setp.ne.u32 %r54,%r26,2; @ %r54 bra $L5; .loc 1 54 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r55,[%value_in]; } .loc 1 54 15 mov.u32 %r56,34; st.u32 [%r55],%r56; bra $L7; $L5: .loc 1 55 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r58,[%value_in]; } .loc 1 55 14 setp.ne.u32 %r59,%r58,0; @ %r59 bra $L7; .loc 1 56 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r60,[%value_in]; } .loc 1 56 15 mov.u32 %r61,34; st.u32 [%r60],%r61; $L7: .loc 1 58 9 ld.u32 %r62,[%frame+40]; setp.eq.u32 %r63,%r62,0; @ %r63 bra $L8; .loc 1 59 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r64,[%value_in]; } .loc 1 59 20 ld.u32 %r32,[%frame+40]; .loc 1 59 15 st.u32 [%r64],%r32; $L8: .loc 1 60 20 ld.f64 %r65,[%frame+32]; cvt.rn.f32.f64 %r36,%r65; $L1: .loc 1 64 1 mov.f32 %value,%r36; st.param.f32 [%value_out],%value; ret; } lib_a-wf_sqrt.o/1591654539 399 399 100644 3738 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrtf .extern .func (.param .f32 %value_out) __ieee754_sqrtf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __fpclassifyf .extern .func (.param .u32 %value_out) __fpclassifyf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[6] = {115,113,114,116,102,0 }; // 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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f64 %r24; .reg .u32 %r25; .reg .u32 %r32; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r37; .reg .u32 %r38; .reg .pred %r39; .reg .u32 %r41; .reg .pred %r42; .reg .pred %r43; .reg .u32 %r44; .reg .u64 %r45; .reg .u32 %r46; .reg .pred %r47; .reg .f64 %r48; .reg .f64 %r49; .reg .f64 %r50; .reg .pred %r51; .reg .u64 %r52; .reg .u32 %r53; .reg .u32 %r55; .reg .pred %r56; .reg .u64 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .pred %r60; .reg .u64 %r61; .reg .f64 %r62; mov.f32 %r35,%ar0; .loc 1 35 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r35; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r37,[%value_in]; } mov.f32 %r34,%r37; .loc 1 36 4 ld.global.u32 %r38,[__fdlib_version]; setp.eq.u32 %r39,%r38,-1; @ %r39 bra $L1; .loc 1 36 31 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r35; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r41,[%value_in]; } .loc 1 36 28 setp.eq.u32 %r42,%r41,0; @ %r42 bra $L1; .loc 1 37 4 setp.lt.f32 %r43,%r35,0f00000000; @ ! %r43 bra $L1; .loc 1 39 22 mov.u32 %r44,1; st.u32 [%frame],%r44; .loc 1 40 22 cvta.const.u64 %r45,$LC0; st.u64 [%frame+8],%r45; .loc 1 41 14 mov.u32 %r46,0; st.u32 [%frame+40],%r46; .loc 1 42 28 cvt.f64.f32 %r24,%r35; .loc 1 42 26 st.f64 [%frame+24],%r24; .loc 1 42 15 st.f64 [%frame+16],%r24; .loc 1 43 30 ld.global.u32 %r25,[__fdlib_version]; .loc 1 43 16 setp.ne.u32 %r47,%r25,0; @ %r47 bra $L4; .loc 1 44 26 mov.f64 %r48,0d0000000000000000; st.f64 [%frame+32],%r48; bra $L5; $L4: .loc 1 46 31 mov.f64 %r50,0d0000000000000000; div.rn.f64 %r49,%r50,0d0000000000000000; .loc 1 46 26 st.f64 [%frame+32],%r49; .loc 1 47 16 setp.ne.u32 %r51,%r25,2; @ %r51 bra $L5; .loc 1 48 15 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r52,[%value_in]; } .loc 1 48 21 mov.u32 %r53,33; st.u32 [%r52],%r53; bra $L6; $L5: .loc 1 49 23 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r55,[%value_in]; } .loc 1 49 21 setp.ne.u32 %r56,%r55,0; @ %r56 bra $L6; .loc 1 50 15 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r57,[%value_in]; } .loc 1 50 21 mov.u32 %r58,33; st.u32 [%r57],%r58; $L6: .loc 1 52 16 ld.u32 %r59,[%frame+40]; setp.eq.u32 %r60,%r59,0; @ %r60 bra $L7; .loc 1 53 8 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r61,[%value_in]; } .loc 1 53 19 ld.u32 %r32,[%frame+40]; .loc 1 53 14 st.u32 [%r61],%r32; $L7: .loc 1 54 13 ld.f64 %r62,[%frame+32]; cvt.rn.f32.f64 %r34,%r62; $L1: .loc 1 58 1 mov.f32 %value,%r34; st.param.f32 [%value_out],%value; ret; } /1664 1591654539 399 399 100644 3499 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_gammaf_r .extern .func (.param .f32 %value_out) __ieee754_gammaf_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: __kernel_standard .extern .func (.param .f64 %value_out) __kernel_standard (.param .f64 %in_ar0, .param .f64 %in_ar1, .param .u32 %in_ar2); // 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]; .local .align 16 .b8 %frame_ar[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f64 %r29; .reg .f32 %r30; .reg .f32 %r31; .reg .f32 %r34; .reg .u32 %r35; .reg .pred %r36; .reg .u32 %r37; .reg .pred %r38; .reg .u32 %r40; .reg .pred %r41; .reg .u32 %r43; .reg .pred %r44; .reg .f32 %r46; .reg .pred %r47; .reg .pred %r48; .reg .u32 %r51; .reg .f64 %r52; .reg .u32 %r55; .reg .f64 %r56; mov.f32 %r31,%ar0; .loc 1 28 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; call (%value_in),__ieee754_gammaf_r,(%out_arg1,%out_arg2); ld.param.f32 %r34,[%value_in]; } mov.f32 %r30,%r34; .loc 1 29 5 ld.u32 %r35,[%frame]; setp.ge.s32 %r36,%r35,0; @ %r36 bra $L2; .loc 1 29 27 neg.f32 %r30,%r30; $L2: .loc 1 33 4 ld.global.u32 %r37,[__fdlib_version]; setp.eq.u32 %r38,%r37,-1; @ %r38 bra $L1; .loc 1 35 6 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r30; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r40,[%value_in]; } .loc 1 35 4 setp.ne.u32 %r41,%r40,0; @ %r41 bra $L1; .loc 1 35 18 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r31; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r43,[%value_in]; } .loc 1 35 16 setp.eq.u32 %r44,%r43,0; @ %r44 bra $L1; .loc 1 36 7 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r31; call (%value_in),floorf,(%out_arg1); ld.param.f32 %r46,[%value_in]; } .loc 1 36 6 setp.neu.f32 %r47,%r46,%r31; @ %r47 bra $L4; cvt.f64.f32 %r29,%r31; .loc 1 36 19 setp.le.f32 %r48,%r31,0f00000000; @ ! %r48 bra $L5; .loc 1 38 20 mov.u32 %r51,141; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r29; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r29; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r51; call (%value_in),__kernel_standard,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r52,[%value_in]; } .loc 1 38 13 cvt.rn.f32.f64 %r30,%r52; bra $L1; $L4: cvt.f64.f32 %r29,%r31; $L5: .loc 1 41 20 mov.u32 %r55,140; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r29; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r29; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r55; call (%value_in),__kernel_standard,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r56,[%value_in]; } .loc 1 41 13 cvt.rn.f32.f64 %r30,%r56; $L1: .loc 1 45 1 mov.f32 %value,%r30; st.param.f32 [%value_out],%value; ret; } /1683 1591654539 399 399 100644 5127 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_gamma_r .extern .func (.param .f64 %value_out) __ieee754_gamma_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 DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[6] = {103,97,109,109,97,0 }; // 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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r35; .reg .u32 %r36; .reg .f64 %r37; .reg .f64 %r38; .reg .f64 %r39; .reg .u64 %r40; .reg .f64 %r43; .reg .u32 %r44; .reg .pred %r45; .reg .u32 %r47; .reg .pred %r48; .reg .u32 %r50; .reg .pred %r51; .reg .u64 %r52; .reg .u32 %r54; .reg .pred %r55; .reg .f64 %r57; .reg .pred %r58; .reg .pred %r59; .reg .u32 %r60; .reg .pred %r61; .reg .u64 %r62; .reg .u32 %r63; .reg .u32 %r65; .reg .pred %r66; .reg .u64 %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .pred %r70; .reg .u64 %r71; .reg .u32 %r72; .reg .u32 %r74; .reg .pred %r75; .reg .u64 %r76; .reg .u32 %r77; .reg .u32 %r78; .reg .pred %r79; .reg .u64 %r80; mov.f64 %r39,%ar0; mov.u64 %r40,%ar1; .loc 1 35 13 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r40; call (%value_in),__ieee754_gamma_r,(%out_arg1,%out_arg2); ld.param.f64 %r43,[%value_in]; } mov.f64 %r38,%r43; .loc 1 36 11 ld.global.u32 %r44,[__fdlib_version]; setp.eq.u32 %r45,%r44,-1; @ %r45 bra $L1; .loc 1 37 13 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r43; call (%value_in),finite,(%out_arg1); ld.param.u32 %r47,[%value_in]; } .loc 1 37 11 setp.ne.u32 %r48,%r47,0; @ %r48 bra $L1; .loc 1 37 24 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; call (%value_in),finite,(%out_arg1); ld.param.u32 %r50,[%value_in]; } .loc 1 37 22 setp.eq.u32 %r51,%r50,0; @ %r51 bra $L1; .loc 1 44 15 cvta.const.u64 %r52,$LC0; st.u64 [%frame+8],%r52; .loc 1 45 14 st.u32 [%frame+40],%r47; .loc 1 46 26 st.f64 [%frame+24],%r39; .loc 1 46 15 st.f64 [%frame+16],%r39; .loc 1 47 16 ld.global.u32 %r54,[__fdlib_version]; setp.eq.u32 %r55,%r54,0; .loc 1 50 28 selp.f64 %r37,0d47efffffe0000000,0d7ff0000000000000,%r55; st.f64 [%frame+32],%r37; .loc 1 51 16 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; call (%value_in),floor,(%out_arg1); ld.param.f64 %r57,[%value_in]; } .loc 1 51 15 setp.neu.f64 %r58,%r57,%r39; @ %r58 bra $L4; ld.global.u32 %r36,[__fdlib_version]; .loc 1 51 27 setp.le.f64 %r59,%r39,0d0000000000000000; @ ! %r59 bra $L5; .loc 1 53 12 mov.u32 %r60,2; st.u32 [%frame],%r60; .loc 1 54 6 setp.ne.u32 %r61,%r36,2; @ %r61 bra $L7; .loc 1 55 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r62,[%value_in]; } .loc 1 55 11 mov.u32 %r63,33; st.u32 [%r62],%r63; bra $L8; $L7: .loc 1 56 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r65,[%value_in]; } .loc 1 56 11 setp.eq.u32 %r66,%r65,0; @ ! %r66 bra $L8; .loc 1 57 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r67,[%value_in]; } .loc 1 57 11 mov.u32 %r68,33; st.u32 [%r67],%r68; bra $L8; $L4: ld.global.u32 %r36,[__fdlib_version]; $L5: .loc 1 61 12 mov.u32 %r69,3; st.u32 [%frame],%r69; .loc 1 62 20 setp.ne.u32 %r70,%r36,2; @ %r70 bra $L10; .loc 1 63 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r71,[%value_in]; } .loc 1 63 11 mov.u32 %r72,34; st.u32 [%r71],%r72; bra $L8; $L10: .loc 1 64 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r74,[%value_in]; } .loc 1 64 25 setp.ne.u32 %r75,%r74,0; @ %r75 bra $L8; .loc 1 65 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r76,[%value_in]; } .loc 1 65 25 mov.u32 %r77,34; st.u32 [%r76],%r77; $L8: .loc 1 68 9 ld.u32 %r78,[%frame+40]; setp.eq.u32 %r79,%r78,0; @ %r79 bra $L12; .loc 1 69 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r80,[%value_in]; } .loc 1 69 20 ld.u32 %r35,[%frame+40]; .loc 1 69 15 st.u32 [%r80],%r35; $L12: .loc 1 70 16 ld.f64 %r38,[%frame+32]; $L1: .loc 1 74 1 mov.f64 %value,%r38; st.param.f64 [%value_out],%value; ret; } /1701 1591654539 399 399 100644 5137 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[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: 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: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[7] = {108,103,97,109,109,97,0 }; // 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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r35; .reg .u32 %r36; .reg .f64 %r37; .reg .f64 %r38; .reg .f64 %r39; .reg .u64 %r40; .reg .f64 %r43; .reg .u32 %r44; .reg .pred %r45; .reg .u32 %r47; .reg .pred %r48; .reg .u32 %r50; .reg .pred %r51; .reg .u64 %r52; .reg .u32 %r54; .reg .pred %r55; .reg .f64 %r57; .reg .pred %r58; .reg .pred %r59; .reg .u32 %r60; .reg .pred %r61; .reg .u64 %r62; .reg .u32 %r63; .reg .u32 %r65; .reg .pred %r66; .reg .u64 %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .pred %r70; .reg .u64 %r71; .reg .u32 %r72; .reg .u32 %r74; .reg .pred %r75; .reg .u64 %r76; .reg .u32 %r77; .reg .u32 %r78; .reg .pred %r79; .reg .u64 %r80; mov.f64 %r39,%ar0; mov.u64 %r40,%ar1; .loc 1 35 13 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r40; call (%value_in),__ieee754_lgamma_r,(%out_arg1,%out_arg2); ld.param.f64 %r43,[%value_in]; } mov.f64 %r38,%r43; .loc 1 36 11 ld.global.u32 %r44,[__fdlib_version]; setp.eq.u32 %r45,%r44,-1; @ %r45 bra $L1; .loc 1 37 13 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r43; call (%value_in),finite,(%out_arg1); ld.param.u32 %r47,[%value_in]; } .loc 1 37 11 setp.ne.u32 %r48,%r47,0; @ %r48 bra $L1; .loc 1 37 24 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; call (%value_in),finite,(%out_arg1); ld.param.u32 %r50,[%value_in]; } .loc 1 37 22 setp.eq.u32 %r51,%r50,0; @ %r51 bra $L1; .loc 1 44 15 cvta.const.u64 %r52,$LC0; st.u64 [%frame+8],%r52; .loc 1 45 14 st.u32 [%frame+40],%r47; .loc 1 46 26 st.f64 [%frame+24],%r39; .loc 1 46 15 st.f64 [%frame+16],%r39; .loc 1 47 16 ld.global.u32 %r54,[__fdlib_version]; setp.eq.u32 %r55,%r54,0; .loc 1 50 27 selp.f64 %r37,0d47efffffe0000000,0d7ff0000000000000,%r55; st.f64 [%frame+32],%r37; .loc 1 51 9 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; call (%value_in),floor,(%out_arg1); ld.param.f64 %r57,[%value_in]; } .loc 1 51 8 setp.neu.f64 %r58,%r57,%r39; @ %r58 bra $L4; ld.global.u32 %r36,[__fdlib_version]; .loc 1 51 20 setp.le.f64 %r59,%r39,0d0000000000000000; @ ! %r59 bra $L5; .loc 1 53 12 mov.u32 %r60,2; st.u32 [%frame],%r60; .loc 1 54 6 setp.ne.u32 %r61,%r36,2; @ %r61 bra $L7; .loc 1 55 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r62,[%value_in]; } .loc 1 55 12 mov.u32 %r63,33; st.u32 [%r62],%r63; bra $L8; $L7: .loc 1 56 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r65,[%value_in]; } .loc 1 56 11 setp.eq.u32 %r66,%r65,0; @ ! %r66 bra $L8; .loc 1 57 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r67,[%value_in]; } .loc 1 57 12 mov.u32 %r68,33; st.u32 [%r67],%r68; bra $L8; $L4: ld.global.u32 %r36,[__fdlib_version]; $L5: .loc 1 62 12 mov.u32 %r69,3; st.u32 [%frame],%r69; .loc 1 63 20 setp.ne.u32 %r70,%r36,2; @ %r70 bra $L10; .loc 1 64 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r71,[%value_in]; } .loc 1 64 12 mov.u32 %r72,34; st.u32 [%r71],%r72; bra $L8; $L10: .loc 1 65 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r74,[%value_in]; } .loc 1 65 25 setp.ne.u32 %r75,%r74,0; @ %r75 bra $L8; .loc 1 66 20 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r76,[%value_in]; } .loc 1 66 26 mov.u32 %r77,34; st.u32 [%r76],%r77; $L8: .loc 1 69 9 ld.u32 %r78,[%frame+40]; setp.eq.u32 %r79,%r78,0; @ %r79 bra $L12; .loc 1 70 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r80,[%value_in]; } .loc 1 70 20 ld.u32 %r35,[%frame+40]; .loc 1 70 15 st.u32 [%r80],%r35; $L12: .loc 1 71 23 ld.f64 %r38,[%frame+32]; $L1: .loc 1 75 1 mov.f64 %value,%r38; st.param.f64 [%value_out],%value; ret; } /1720 1591654539 399 399 100644 5232 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_gammaf_r .extern .func (.param .f32 %value_out) __ieee754_gammaf_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 DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[7] = {103,97,109,109,97,102,0 }; // 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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f64 %r25; .reg .u32 %r36; .reg .f64 %r38; .reg .u32 %r39; .reg .f32 %r40; .reg .f32 %r41; .reg .u64 %r42; .reg .f32 %r45; .reg .u32 %r46; .reg .pred %r47; .reg .u32 %r49; .reg .pred %r50; .reg .u32 %r52; .reg .pred %r53; .reg .u64 %r54; .reg .u32 %r56; .reg .pred %r57; .reg .f32 %r59; .reg .pred %r60; .reg .pred %r61; .reg .u32 %r62; .reg .pred %r63; .reg .u64 %r64; .reg .u32 %r65; .reg .u32 %r67; .reg .pred %r68; .reg .u64 %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .pred %r72; .reg .u64 %r73; .reg .u32 %r74; .reg .u32 %r76; .reg .pred %r77; .reg .u64 %r78; .reg .u32 %r79; .reg .u32 %r80; .reg .pred %r81; .reg .u64 %r82; .reg .f64 %r83; mov.f32 %r41,%ar0; mov.u64 %r42,%ar1; .loc 1 35 13 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r41; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r42; call (%value_in),__ieee754_gammaf_r,(%out_arg1,%out_arg2); ld.param.f32 %r45,[%value_in]; } mov.f32 %r40,%r45; .loc 1 36 11 ld.global.u32 %r46,[__fdlib_version]; setp.eq.u32 %r47,%r46,-1; @ %r47 bra $L1; .loc 1 37 13 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r45; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r49,[%value_in]; } .loc 1 37 11 setp.ne.u32 %r50,%r49,0; @ %r50 bra $L1; .loc 1 37 25 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r41; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r52,[%value_in]; } .loc 1 37 23 setp.eq.u32 %r53,%r52,0; @ %r53 bra $L1; .loc 1 44 15 cvta.const.u64 %r54,$LC0; st.u64 [%frame+8],%r54; .loc 1 45 14 st.u32 [%frame+40],%r49; .loc 1 46 28 cvt.f64.f32 %r25,%r41; .loc 1 46 26 st.f64 [%frame+24],%r25; .loc 1 46 15 st.f64 [%frame+16],%r25; .loc 1 47 16 ld.global.u32 %r56,[__fdlib_version]; setp.eq.u32 %r57,%r56,0; .loc 1 50 28 selp.f64 %r38,0d47efffffe0000000,0d7ff0000000000000,%r57; st.f64 [%frame+32],%r38; .loc 1 51 16 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r41; call (%value_in),floorf,(%out_arg1); ld.param.f32 %r59,[%value_in]; } .loc 1 51 15 setp.neu.f32 %r60,%r59,%r41; @ %r60 bra $L4; ld.global.u32 %r39,[__fdlib_version]; .loc 1 51 28 setp.le.f32 %r61,%r41,0f00000000; @ ! %r61 bra $L5; .loc 1 53 12 mov.u32 %r62,2; st.u32 [%frame],%r62; .loc 1 54 6 setp.ne.u32 %r63,%r39,2; @ %r63 bra $L7; .loc 1 55 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r64,[%value_in]; } .loc 1 55 11 mov.u32 %r65,33; st.u32 [%r64],%r65; bra $L8; $L7: .loc 1 56 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r67,[%value_in]; } .loc 1 56 11 setp.eq.u32 %r68,%r67,0; @ ! %r68 bra $L8; .loc 1 57 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r69,[%value_in]; } .loc 1 57 11 mov.u32 %r70,33; st.u32 [%r69],%r70; bra $L8; $L4: ld.global.u32 %r39,[__fdlib_version]; $L5: .loc 1 61 12 mov.u32 %r71,3; st.u32 [%frame],%r71; .loc 1 62 20 setp.ne.u32 %r72,%r39,2; @ %r72 bra $L10; .loc 1 63 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r73,[%value_in]; } .loc 1 63 11 mov.u32 %r74,34; st.u32 [%r73],%r74; bra $L8; $L10: .loc 1 64 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r76,[%value_in]; } .loc 1 64 25 setp.ne.u32 %r77,%r76,0; @ %r77 bra $L8; .loc 1 65 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r78,[%value_in]; } .loc 1 65 25 mov.u32 %r79,34; st.u32 [%r78],%r79; $L8: .loc 1 68 9 ld.u32 %r80,[%frame+40]; setp.eq.u32 %r81,%r80,0; @ %r81 bra $L12; .loc 1 69 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r82,[%value_in]; } .loc 1 69 20 ld.u32 %r36,[%frame+40]; .loc 1 69 15 st.u32 [%r82],%r36; $L12: .loc 1 70 13 ld.f64 %r83,[%frame+32]; cvt.rn.f32.f64 %r40,%r83; $L1: .loc 1 74 1 mov.f32 %value,%r40; st.param.f32 [%value_out],%value; ret; } /1739 1591654539 399 399 100644 5242 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[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: 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 DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[8] = {108,103,97,109,109,97,102,0 }; // 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]; .local .align 16 .b8 %frame_ar[48]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .f64 %r25; .reg .u32 %r36; .reg .f64 %r38; .reg .u32 %r39; .reg .f32 %r40; .reg .f32 %r41; .reg .u64 %r42; .reg .f32 %r45; .reg .u32 %r46; .reg .pred %r47; .reg .u32 %r49; .reg .pred %r50; .reg .u32 %r52; .reg .pred %r53; .reg .u64 %r54; .reg .u32 %r56; .reg .pred %r57; .reg .f32 %r59; .reg .pred %r60; .reg .pred %r61; .reg .u32 %r62; .reg .pred %r63; .reg .u64 %r64; .reg .u32 %r65; .reg .u32 %r67; .reg .pred %r68; .reg .u64 %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .pred %r72; .reg .u64 %r73; .reg .u32 %r74; .reg .u32 %r76; .reg .pred %r77; .reg .u64 %r78; .reg .u32 %r79; .reg .u32 %r80; .reg .pred %r81; .reg .u64 %r82; .reg .f64 %r83; mov.f32 %r41,%ar0; mov.u64 %r42,%ar1; .loc 1 35 13 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r41; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r42; call (%value_in),__ieee754_lgammaf_r,(%out_arg1,%out_arg2); ld.param.f32 %r45,[%value_in]; } mov.f32 %r40,%r45; .loc 1 36 11 ld.global.u32 %r46,[__fdlib_version]; setp.eq.u32 %r47,%r46,-1; @ %r47 bra $L1; .loc 1 37 13 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r45; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r49,[%value_in]; } .loc 1 37 11 setp.ne.u32 %r50,%r49,0; @ %r50 bra $L1; .loc 1 37 25 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r41; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r52,[%value_in]; } .loc 1 37 23 setp.eq.u32 %r53,%r52,0; @ %r53 bra $L1; .loc 1 44 15 cvta.const.u64 %r54,$LC0; st.u64 [%frame+8],%r54; .loc 1 45 14 st.u32 [%frame+40],%r49; .loc 1 46 28 cvt.f64.f32 %r25,%r41; .loc 1 46 26 st.f64 [%frame+24],%r25; .loc 1 46 15 st.f64 [%frame+16],%r25; .loc 1 47 16 ld.global.u32 %r56,[__fdlib_version]; setp.eq.u32 %r57,%r56,0; .loc 1 50 27 selp.f64 %r38,0d47efffffe0000000,0d7ff0000000000000,%r57; st.f64 [%frame+32],%r38; .loc 1 51 9 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r41; call (%value_in),floorf,(%out_arg1); ld.param.f32 %r59,[%value_in]; } .loc 1 51 8 setp.neu.f32 %r60,%r59,%r41; @ %r60 bra $L4; ld.global.u32 %r39,[__fdlib_version]; .loc 1 51 21 setp.le.f32 %r61,%r41,0f00000000; @ ! %r61 bra $L5; .loc 1 53 12 mov.u32 %r62,2; st.u32 [%frame],%r62; .loc 1 54 6 setp.ne.u32 %r63,%r39,2; @ %r63 bra $L7; .loc 1 55 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r64,[%value_in]; } .loc 1 55 12 mov.u32 %r65,33; st.u32 [%r64],%r65; bra $L8; $L7: .loc 1 56 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r67,[%value_in]; } .loc 1 56 11 setp.eq.u32 %r68,%r67,0; @ ! %r68 bra $L8; .loc 1 57 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r69,[%value_in]; } .loc 1 57 12 mov.u32 %r70,33; st.u32 [%r69],%r70; bra $L8; $L4: ld.global.u32 %r39,[__fdlib_version]; $L5: .loc 1 62 12 mov.u32 %r71,3; st.u32 [%frame],%r71; .loc 1 63 20 setp.ne.u32 %r72,%r39,2; @ %r72 bra $L10; .loc 1 64 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r73,[%value_in]; } .loc 1 64 12 mov.u32 %r74,34; st.u32 [%r73],%r74; bra $L8; $L10: .loc 1 65 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r76,[%value_in]; } .loc 1 65 25 setp.ne.u32 %r77,%r76,0; @ %r77 bra $L8; .loc 1 66 20 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r78,[%value_in]; } .loc 1 66 26 mov.u32 %r79,34; st.u32 [%r78],%r79; $L8: .loc 1 69 9 ld.u32 %r80,[%frame+40]; setp.eq.u32 %r81,%r80,0; @ %r81 bra $L12; .loc 1 70 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r82,[%value_in]; } .loc 1 70 20 ld.u32 %r36,[%frame+40]; .loc 1 70 15 st.u32 [%r82],%r36; $L12: .loc 1 71 20 ld.f64 %r83,[%frame+32]; cvt.rn.f32.f64 %r40,%r83; $L1: .loc 1 75 1 mov.f32 %value,%r40; st.param.f32 [%value_out],%value; ret; } 07070100000070000041ed0000000000000000000000015edeb89900000000000000000000000000000000000000000000001b00000000./usr/nvptx-none/lib/mgomp07070100000073000081a40000000000000000000000015edeb89900137f4c000000000000000000000000000000000000002200000000./usr/nvptx-none/lib/mgomp/libm.a! // 1760 ` lib_a-cephes_subr.o/ lib_a-cephes_subrf.o/ lib_a-copysignl.o/ lib_a-e_rem_pio2.o/ lib_a-e_remainder.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-er_gamma.o/ lib_a-er_lgamma.o/ lib_a-erf_gamma.o/ lib_a-erf_lgamma.o/ lib_a-k_rem_pio2.o/ lib_a-k_standard.o/ lib_a-kf_rem_pio2.o/ lib_a-llroundl.o/ lib_a-nearbyintl.o/ lib_a-nextafterl.o/ lib_a-remainderl.o/ lib_a-s_copysign.o/ lib_a-s_finite.o/ lib_a-s_fpclassify.o/ lib_a-s_infconst.o/ lib_a-s_infinity.o/ lib_a-s_isinfd.o/ lib_a-s_isnand.o/ lib_a-s_lib_ver.o/ lib_a-s_llrint.o/ lib_a-s_llround.o/ lib_a-s_lround.o/ lib_a-s_matherr.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_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_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_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-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/ 1591654536 399 399 100644 804 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654536 399 399 100644 796 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654536 399 399 100644 804 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654536 399 399 100644 796 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654536 399 399 100644 1011 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654536 399 399 100644 804 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654536 399 399 100644 796 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654536 399 399 100644 1709 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 52 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 53 1 mov.f64 %value,%r35; st.param.f64 [%value_out],%value; ret; } lib_a-cabsf.o/ 1591654536 399 399 100644 1723 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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-cacos.o/ 1591654536 399 399 100644 2637 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .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; .reg .f64 %r47; 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 %r45,%r41,0d8000000000000000,%r43; .loc 1 98 9 st.f64 [%r30],%r45; .loc 1 96 4 mov.f64 %r47,0d0000000000000000; sub.f64 %r46,%r47,%r41; .loc 1 98 9 st.f64 [%r30+8],%r46; .loc 1 99 1 st.shared.u64 [%sspslot],%sspprev; ret; } lib_a-cacosf.o/ 1591654536 399 399 100644 2571 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %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; .reg .f32 %r45; 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 %r45,%r42,0f00000000,%r43; .loc 1 45 9 st.f32 [%r30],%r45; st.f32 [%r30+4],%r42; .loc 1 46 1 st.shared.u64 [%sspslot],%sspprev; ret; } lib_a-cacosh.o/ 1591654536 399 399 100644 3171 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r32; .reg .f64 %r33; .reg .f64 %r36; .reg .f64 %r37; .reg .u64 %r50; .reg .f64 %r51; .reg .f64 %r52; .reg .f64 %r59; .reg .f64 %r69; .reg .f64 %r70; .reg .f64 %r82; .reg .f64 %r85; mov.u64 %r50,%ar0; mov.f64 %r51,%ar1; mov.f64 %r52,%ar2; .loc 1 90 15 add.f64 %r59,%r51,0d3ff0000000000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r59; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r52; call csqrt,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r25,[%frame]; ld.f64 %r26,[%frame+8]; .loc 1 90 30 mov.f64 %r70,0d3ff0000000000000; sub.f64 %r69,%r51,%r70; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r69; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r52; call csqrt,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r30,[%frame]; ld.f64 %r31,[%frame+8]; .loc 1 90 28 { .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 %r32,[%frame]; ld.f64 %r33,[%frame+8]; .loc 1 90 6 add.f64 %r82,%r33,%r52; add.f64 %r85,%r32,%r51; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r85; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r82; call clog,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r36,[%frame]; ld.f64 %r37,[%frame+8]; .loc 1 92 9 st.f64 [%r50],%r36; st.f64 [%r50+8],%r37; .loc 1 93 1 st.shared.u64 [%sspslot],%sspprev; ret; } lib_a-cacoshf.o/1591654536 399 399 100644 3167 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r32; .reg .f32 %r33; .reg .f32 %r36; .reg .f32 %r37; .reg .u64 %r50; .reg .f32 %r51; .reg .f32 %r52; .reg .f32 %r59; .reg .f32 %r69; .reg .f32 %r70; .reg .f32 %r82; .reg .f32 %r85; mov.u64 %r50,%ar0; mov.f32 %r51,%ar1; mov.f32 %r52,%ar2; .loc 1 45 16 add.f32 %r59,%r51,0f3f800000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r59; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r52; call csqrtf,(%out_arg1,%out_arg2,%out_arg3); } ld.f32 %r25,[%frame]; ld.f32 %r26,[%frame+4]; .loc 1 45 32 mov.f32 %r70,0f3f800000; sub.f32 %r69,%r51,%r70; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r69; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r52; call csqrtf,(%out_arg1,%out_arg2,%out_arg3); } ld.f32 %r30,[%frame]; ld.f32 %r31,[%frame+4]; .loc 1 45 30 { .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 %r32,[%frame]; ld.f32 %r33,[%frame+4]; .loc 1 45 6 add.f32 %r82,%r33,%r52; add.f32 %r85,%r32,%r51; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r85; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r82; call clogf,(%out_arg1,%out_arg2,%out_arg3); } ld.f32 %r36,[%frame]; ld.f32 %r37,[%frame+4]; .loc 1 47 9 st.f32 [%r50],%r36; st.f32 [%r50+4],%r37; .loc 1 48 1 st.shared.u64 [%sspslot],%sspprev; ret; } lib_a-carg.o/ 1591654536 399 399 100644 1709 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654536 399 399 100644 1723 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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-casin.o/ 1591654536 399 399 100644 5197 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r34; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r42; .reg .f64 %r43; .reg .f64 %r46; .reg .f64 %r47; .reg .f64 %r48; .reg .f64 %r49; .reg .u64 %r61; .reg .f64 %r62; .reg .f64 %r63; .reg .f64 %r66; .reg .f64 %r69; .reg .f64 %r73; .reg .f64 %r74; .reg .f64 %r75; .reg .f64 %r76; .reg .f64 %r77; .reg .f64 %r78; .reg .f64 %r79; .reg .f64 %r80; .reg .f64 %r83; .reg .f64 %r86; .reg .f64 %r94; .reg .f64 %r98; .reg .f64 %r100; .reg .f64 %r104; .reg .f64 %r105; .reg .f64 %r112; .reg .f64 %r113; mov.u64 %r61,%ar0; mov.f64 %r62,%ar1; mov.f64 %r63,%ar2; .loc 1 92 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r62; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r63; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r66,[%value_in]; } .loc 1 93 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r62; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r63; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r69,[%value_in]; } .loc 1 150 9 fma.rn.f64 %r75,%r69,0d0000000000000000,%r66; .loc 1 151 5 mov.f64 %r74,0d3ff0000000000000; mov.f64 %r73,0d0000000000000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r75; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r69; .param .f64 %out_arg4; st.param.f64 [%out_arg4],%r73; .param .f64 %out_arg5; st.param.f64 [%out_arg5],%r74; call __muldc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f64 %r34,[%frame]; ld.f64 %r35,[%frame+8]; .loc 1 155 32 add.f64 %r76,%r66,%r66; .loc 1 155 36 mul.f64 %r36,%r76,%r69; .loc 1 155 10 sub.f64 %r77,%r66,%r69; .loc 1 155 25 mul.f64 %r78,%r36,0d0000000000000000; .loc 1 155 20 add.f64 %r79,%r66,%r69; .loc 1 155 25 fma.rn.f64 %r80,%r77,%r79,%r78; .loc 1 157 25 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r80; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r36; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r83,[%value_in]; } .loc 1 157 13 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r80; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r36; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r86,[%value_in]; } .loc 1 157 23 neg.f64 %r94,%r83; .loc 1 157 11 sub.f64 %r98,%r74,%r86; .loc 1 157 23 fma.rn.f64 %r100,%r94,0d0000000000000000,%r98; .loc 1 158 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r100; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r94; call csqrt,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r42,[%frame]; ld.f64 %r43,[%frame+8]; .loc 1 160 5 add.f64 %r104,%r34,%r42; add.f64 %r105,%r35,%r43; .loc 1 161 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r104; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r105; call clog,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r46,[%frame]; ld.f64 %r47,[%frame+8]; .loc 1 163 4 mov.f64 %r113,0dbff0000000000000; mov.f64 %r112,0d8000000000000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r46; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r47; .param .f64 %out_arg4; st.param.f64 [%out_arg4],%r112; .param .f64 %out_arg5; st.param.f64 [%out_arg5],%r113; call __muldc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f64 %r48,[%frame]; ld.f64 %r49,[%frame+8]; .loc 1 164 9 st.f64 [%r61],%r48; st.f64 [%r61+8],%r49; .loc 1 165 1 st.shared.u64 [%sspslot],%sspprev; ret; } lib_a-casinf.o/ 1591654536 399 399 100644 5160 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r34; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r42; .reg .f32 %r43; .reg .f32 %r46; .reg .f32 %r47; .reg .f32 %r48; .reg .f32 %r49; .reg .u64 %r61; .reg .f32 %r62; .reg .f32 %r63; .reg .f32 %r66; .reg .f32 %r69; .reg .f32 %r73; .reg .f32 %r74; .reg .f32 %r75; .reg .f32 %r76; .reg .f32 %r77; .reg .f32 %r78; .reg .f32 %r79; .reg .f32 %r80; .reg .f32 %r83; .reg .f32 %r86; .reg .f32 %r94; .reg .f32 %r98; .reg .f32 %r100; .reg .f32 %r104; .reg .f32 %r105; .reg .f32 %r112; .reg .f32 %r113; mov.u64 %r61,%ar0; mov.f32 %r62,%ar1; mov.f32 %r63,%ar2; .loc 1 49 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r62; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r63; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r66,[%value_in]; } .loc 1 50 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r62; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r63; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r69,[%value_in]; } .loc 1 107 9 fma.rn.f32 %r75,%r69,0f00000000,%r66; .loc 1 108 5 mov.f32 %r74,0f3f800000; mov.f32 %r73,0f00000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r75; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r69; .param .f32 %out_arg4; st.param.f32 [%out_arg4],%r73; .param .f32 %out_arg5; st.param.f32 [%out_arg5],%r74; call __mulsc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f32 %r34,[%frame]; ld.f32 %r35,[%frame+4]; .loc 1 112 33 add.f32 %r76,%r66,%r66; .loc 1 112 37 mul.f32 %r36,%r76,%r69; .loc 1 112 10 sub.f32 %r77,%r66,%r69; .loc 1 112 25 mul.f32 %r78,%r36,0f00000000; .loc 1 112 20 add.f32 %r79,%r66,%r69; .loc 1 112 25 fma.rn.f32 %r80,%r77,%r79,%r78; .loc 1 114 27 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r80; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r36; call (%value_in),cimagf,(%out_arg1,%out_arg2); ld.param.f32 %r83,[%value_in]; } .loc 1 114 14 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r80; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r36; call (%value_in),crealf,(%out_arg1,%out_arg2); ld.param.f32 %r86,[%value_in]; } .loc 1 114 25 neg.f32 %r94,%r83; .loc 1 114 12 sub.f32 %r98,%r74,%r86; .loc 1 114 25 fma.rn.f32 %r100,%r94,0f00000000,%r98; .loc 1 115 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r100; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r94; call csqrtf,(%out_arg1,%out_arg2,%out_arg3); } ld.f32 %r42,[%frame]; ld.f32 %r43,[%frame+4]; .loc 1 117 5 add.f32 %r104,%r34,%r42; add.f32 %r105,%r35,%r43; .loc 1 118 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r104; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r105; call clogf,(%out_arg1,%out_arg2,%out_arg3); } ld.f32 %r46,[%frame]; ld.f32 %r47,[%frame+4]; .loc 1 120 4 mov.f32 %r113,0fbf800000; mov.f32 %r112,0f80000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r46; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r47; .param .f32 %out_arg4; st.param.f32 [%out_arg4],%r112; .param .f32 %out_arg5; st.param.f32 [%out_arg5],%r113; call __mulsc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f32 %r48,[%frame]; ld.f32 %r49,[%frame+4]; .loc 1 121 9 st.f32 [%r61],%r48; st.f32 [%r61+4],%r49; .loc 1 122 1 st.shared.u64 [%sspslot],%sspprev; ret; } lib_a-casinh.o/ 1591654536 399 399 100644 2840 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r22; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r27; .reg .u64 %r34; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r40; .reg .f64 %r41; .reg .f64 %r48; .reg .f64 %r49; mov.u64 %r34,%ar0; mov.f64 %r35,%ar1; mov.f64 %r36,%ar2; .loc 1 95 17 mov.f64 %r41,0d3ff0000000000000; mov.f64 %r40,0d0000000000000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r35; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r36; .param .f64 %out_arg4; st.param.f64 [%out_arg4],%r40; .param .f64 %out_arg5; st.param.f64 [%out_arg5],%r41; call __muldc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f64 %r22,[%frame]; ld.f64 %r23,[%frame+8]; { .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],%r23; call casin,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r24,[%frame]; ld.f64 %r25,[%frame+8]; .loc 1 95 4 mov.f64 %r49,0dbff0000000000000; mov.f64 %r48,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],%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 %r26,[%frame]; ld.f64 %r27,[%frame+8]; .loc 1 96 9 st.f64 [%r34],%r26; st.f64 [%r34+8],%r27; .loc 1 97 1 st.shared.u64 [%sspslot],%sspprev; ret; } lib_a-casinhf.o/1591654536 399 399 100644 2816 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r22; .reg .f32 %r23; .reg .f32 %r24; .reg .f32 %r25; .reg .f32 %r26; .reg .f32 %r27; .reg .u64 %r34; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r40; .reg .f32 %r41; .reg .f32 %r48; .reg .f32 %r49; mov.u64 %r34,%ar0; mov.f32 %r35,%ar1; mov.f32 %r36,%ar2; .loc 1 42 18 mov.f32 %r41,0f3f800000; mov.f32 %r40,0f00000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r35; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r36; .param .f32 %out_arg4; st.param.f32 [%out_arg4],%r40; .param .f32 %out_arg5; st.param.f32 [%out_arg5],%r41; call __mulsc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f32 %r22,[%frame]; ld.f32 %r23,[%frame+4]; { .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],%r23; call casinf,(%out_arg1,%out_arg2,%out_arg3); } ld.f32 %r24,[%frame]; ld.f32 %r25,[%frame+4]; .loc 1 42 4 mov.f32 %r49,0fbf800000; mov.f32 %r48,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],%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 %r26,[%frame]; ld.f32 %r27,[%frame+4]; .loc 1 43 9 st.f32 [%r34],%r26; st.f32 [%r34+4],%r27; .loc 1 44 1 st.shared.u64 [%sspslot],%sspprev; ret; } lib_a-catan.o/ 1591654536 399 399 100644 3873 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 8 .u64 $LC0[2] = {9221120237041090560,9218868437227405312 }; // 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 %r31; .reg .f64 %r32; .reg .f64 %r34; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r38; .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; .reg .f64 %r69; .reg .f64 %r70; .reg .f64 %r71; .reg .f64 %r72; 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 %r31,%r46,%r46; .loc 1 107 4 neg.f64 %r52,%r49; .loc 1 107 10 mov.f64 %r54,0d3ff0000000000000; sub.f64 %r53,%r54,%r31; .loc 1 107 4 fma.rn.f64 %r32,%r52,%r49,%r53; .loc 1 108 5 setp.eq.f64 %r55,%r32,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],%r32; 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 %r34,%r49,%r54; .loc 1 115 4 fma.rn.f64 %r35,%r34,%r34,%r31; .loc 1 116 5 setp.eq.f64 %r64,%r35,0d0000000000000000; @ %r64 bra $L3; .loc 1 119 4 add.f64 %r36,%r49,0d3ff0000000000000; .loc 1 120 10 fma.rn.f64 %r66,%r36,%r36,%r31; .loc 1 120 4 div.rn.f64 %r67,%r66,%r35; .loc 1 121 18 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r67; call (%value_in),log,(%out_arg1); ld.param.f64 %r68,[%value_in]; } .loc 1 121 16 mul.f64 %r38,%r68,0d3fd0000000000000; .loc 1 121 4 fma.rn.f64 %r69,%r38,0d0000000000000000,%r62; .loc 1 122 9 st.f64 [%r41],%r69; .loc 1 121 4 add.f64 %r70,%r38,0d0000000000000000; .loc 1 122 9 st.f64 [%r41+8],%r70; bra $L1; $L3: .loc 1 129 9 ld.const.f64 %r71,[$LC0]; st.f64 [%r41],%r71; ld.const.f64 %r72,[$LC0+8]; st.f64 [%r41+8],%r72; $L1: .loc 1 130 1 ret; } lib_a-catanf.o/ 1591654536 399 399 100644 3769 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 4 .u32 $LC0[2] = {2143289344,2139095040 }; // 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 %r31; .reg .f32 %r32; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r38; .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; .reg .f32 %r69; .reg .f32 %r70; .reg .f32 %r71; .reg .f32 %r72; 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 %r31,%r46,%r46; .loc 1 56 4 neg.f32 %r52,%r49; .loc 1 56 11 mov.f32 %r54,0f3f800000; sub.f32 %r53,%r54,%r31; .loc 1 56 4 fma.rn.f32 %r32,%r52,%r49,%r53; .loc 1 57 5 setp.eq.f32 %r55,%r32,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],%r32; 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 %r34,%r49,%r54; .loc 1 64 4 fma.rn.f32 %r35,%r34,%r34,%r31; .loc 1 65 5 setp.eq.f32 %r64,%r35,0f00000000; @ %r64 bra $L3; .loc 1 68 4 add.f32 %r36,%r49,0f3f800000; .loc 1 69 10 fma.rn.f32 %r66,%r36,%r36,%r31; .loc 1 69 4 div.rn.f32 %r67,%r66,%r35; .loc 1 70 19 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r67; call (%value_in),logf,(%out_arg1); ld.param.f32 %r68,[%value_in]; } .loc 1 70 17 mul.f32 %r38,%r68,0f3e800000; .loc 1 70 4 fma.rn.f32 %r69,%r38,0f00000000,%r62; .loc 1 71 9 st.f32 [%r41],%r69; .loc 1 70 4 add.f32 %r70,%r38,0f00000000; .loc 1 71 9 st.f32 [%r41+4],%r70; bra $L1; $L3: .loc 1 78 9 ld.const.f32 %r71,[$LC0]; st.f32 [%r41],%r71; ld.const.f32 %r72,[$LC0+4]; st.f32 [%r41+4],%r72; $L1: .loc 1 79 1 ret; } lib_a-catanh.o/ 1591654536 399 399 100644 2840 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r22; .reg .f64 %r23; .reg .f64 %r24; .reg .f64 %r25; .reg .f64 %r26; .reg .f64 %r27; .reg .u64 %r34; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r40; .reg .f64 %r41; .reg .f64 %r48; .reg .f64 %r49; mov.u64 %r34,%ar0; mov.f64 %r35,%ar1; mov.f64 %r36,%ar2; .loc 1 88 17 mov.f64 %r41,0d3ff0000000000000; mov.f64 %r40,0d0000000000000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r35; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r36; .param .f64 %out_arg4; st.param.f64 [%out_arg4],%r40; .param .f64 %out_arg5; st.param.f64 [%out_arg5],%r41; call __muldc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f64 %r22,[%frame]; ld.f64 %r23,[%frame+8]; { .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],%r23; call catan,(%out_arg1,%out_arg2,%out_arg3); } ld.f64 %r24,[%frame]; ld.f64 %r25,[%frame+8]; .loc 1 88 4 mov.f64 %r49,0dbff0000000000000; mov.f64 %r48,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],%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 %r26,[%frame]; ld.f64 %r27,[%frame+8]; .loc 1 89 9 st.f64 [%r34],%r26; st.f64 [%r34+8],%r27; .loc 1 90 1 st.shared.u64 [%sspslot],%sspprev; ret; } lib_a-catanhf.o/1591654536 399 399 100644 2816 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r22; .reg .f32 %r23; .reg .f32 %r24; .reg .f32 %r25; .reg .f32 %r26; .reg .f32 %r27; .reg .u64 %r34; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r40; .reg .f32 %r41; .reg .f32 %r48; .reg .f32 %r49; mov.u64 %r34,%ar0; mov.f32 %r35,%ar1; mov.f32 %r36,%ar2; .loc 1 42 18 mov.f32 %r41,0f3f800000; mov.f32 %r40,0f00000000; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r35; .param .f32 %out_arg3; st.param.f32 [%out_arg3],%r36; .param .f32 %out_arg4; st.param.f32 [%out_arg4],%r40; .param .f32 %out_arg5; st.param.f32 [%out_arg5],%r41; call __mulsc3,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); } ld.f32 %r22,[%frame]; ld.f32 %r23,[%frame+4]; { .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],%r23; call catanf,(%out_arg1,%out_arg2,%out_arg3); } ld.f32 %r24,[%frame]; ld.f32 %r25,[%frame+4]; .loc 1 42 4 mov.f32 %r49,0fbf800000; mov.f32 %r48,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],%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 %r26,[%frame]; ld.f32 %r27,[%frame+4]; .loc 1 43 9 st.f32 [%r34],%r26; st.f32 [%r34+4],%r27; .loc 1 44 1 st.shared.u64 [%sspslot],%sspprev; ret; } lib_a-cbrtl.o/ 1591654536 399 399 100644 796 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654536 399 399 100644 3366 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %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; .reg .f64 %r59; 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 %r58,[%frame+8]; fma.rn.f64 %r57,%r54,%r58,%r56; .loc 1 80 9 st.f64 [%r34],%r57; .loc 1 79 25 neg.f64 %r59,%r32; .loc 1 80 9 st.f64 [%r34+8],%r59; .loc 1 81 1 st.shared.u64 [%sspslot],%sspprev; ret; } lib_a-ccosf.o/ 1591654536 399 399 100644 3379 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %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; .reg .f32 %r59; 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 %r58,[%frame+4]; fma.rn.f32 %r57,%r54,%r58,%r56; .loc 1 47 9 st.f32 [%r34],%r57; .loc 1 46 27 neg.f32 %r59,%r32; .loc 1 47 9 st.f32 [%r34+4],%r59; .loc 1 48 1 st.shared.u64 [%sspslot],%sspprev; ret; } lib_a-ccosh.o/ 1591654536 399 399 100644 2702 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %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; .reg .f64 %r49; 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 %r49,%r45,%r47,%r48; .loc 1 80 9 st.f64 [%r31],%r49; st.f64 [%r31+8],%r30; .loc 1 81 1 ret; } lib_a-ccoshf.o/ 1591654536 399 399 100644 2717 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %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; .reg .f32 %r49; 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 %r49,%r45,%r47,%r48; .loc 1 47 9 st.f32 [%r31],%r49; st.f32 [%r31+4],%r30; .loc 1 48 1 ret; } lib_a-ceill.o/ 1591654536 399 399 100644 796 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 DECL: ceil .extern .func (.param .f64 %value_out) ceil (.param .f64 %in_ar0); // 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; .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),ceil,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } /0 1591654536 399 399 100644 7363 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %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; .reg .f64 %r44; .reg .f64 %r45; 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 %r44,%r41,0d3fe0000000000000,%r43; .loc 1 53 6 st.f64 [%r32],%r44; .loc 1 54 10 fma.rn.f64 %r45,%r41,0d3fe0000000000000,%r28; .loc 1 54 6 st.f64 [%r31],%r45; $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 %r23; .reg .f64 %r24; .reg .f64 %r25; .reg .u64 %r26; .reg .f64 %r27; .reg .f64 %r32; .reg .pred %r33; .reg .f64 %r34; .reg .f64 %r35; .reg .f64 %r37; 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 21 neg.f64 %r35,%r27; .loc 1 80 10 fma.rn.f64 %r37,%r35,0d400921fb54000000,%r32; .loc 1 80 21 fma.rn.f64 %r23,%r35,0d3e210b4610000000,%r37; .loc 1 80 4 fma.rn.f64 %value,%r35,0d3c6a62633145c06e,%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 %r43; .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 %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 %r76; .reg .f64 %r78; .reg .f64 %r79; .reg .f64 %r81; .reg .f64 %r82; .reg .pred %r83; 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 %r34,%r67,0d400921fb54442d18; .loc 1 73 5 setp.ge.f64 %r74,%r34,0d0000000000000000; @ ! %r74 bra $L20; .loc 1 74 5 add.f64 %r50,%r34,0d3fe0000000000000; bra $L16; $L20: .loc 1 76 5 mov.f64 %r75,0d3fe0000000000000; sub.f64 %r50,%r34,%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 21 neg.f64 %r76,%r52; .loc 1 80 10 fma.rn.f64 %r78,%r76,0d400921fb54000000,%r67; .loc 1 80 21 fma.rn.f64 %r54,%r76,0d3e210b4610000000,%r78; .loc 1 80 4 fma.rn.f64 %r55,%r76,0d3c6a62633145c06e,%r54; .loc 1 97 4 mul.f64 %r35,%r55,%r55; .loc 1 98 4 mul.f64 %r36,%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 %r37,%r31,0d3ff0000000000000; .loc 1 106 5 mul.f64 %r38,%r28,%r37; .loc 1 107 6 add.f64 %r39,%r37,0d3ff0000000000000; .loc 1 108 5 mul.f64 %r40,%r38,%r39; .loc 1 109 6 mul.f64 %r41,%r29,%r35; .loc 1 110 6 mul.f64 %r42,%r30,%r36; .loc 1 111 5 add.f64 %r43,%r41,%r42; .loc 1 112 5 div.rn.f64 %r79,%r43,%r40; .loc 1 113 5 add.f64 %r45,%r79,%r59; .loc 1 115 6 add.f64 %r46,%r39,0d3ff0000000000000; .loc 1 116 5 mul.f64 %r47,%r40,%r46; .loc 1 117 6 add.f64 %r31,%r46,0d3ff0000000000000; .loc 1 118 5 mul.f64 %r28,%r47,%r31; .loc 1 119 6 mul.f64 %r29,%r35,%r41; .loc 1 120 6 mul.f64 %r30,%r36,%r42; .loc 1 121 5 sub.f64 %r48,%r30,%r29; .loc 1 122 5 div.rn.f64 %r49,%r48,%r28; .loc 1 123 5 add.f64 %r59,%r45,%r49; .loc 1 124 11 div.rn.f64 %r81,%r49,%r59; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r81; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r82,[%value_in]; } .loc 1 124 2 setp.gt.f64 %r83,%r82,0d3c9fb49140a1644f; @ %r83 bra $L17; .loc 1 126 1 mov.f64 %value,%r59; st.param.f64 [%value_out],%value; ret; } /21 1591654536 399 399 100644 7583 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %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; .reg .f32 %r44; .reg .f32 %r45; 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 %r44,%r41,0f3f000000,%r43; .loc 1 53 6 st.f32 [%r32],%r44; .loc 1 54 10 fma.rn.f32 %r45,%r41,0f3f000000,%r28; .loc 1 54 6 st.f32 [%r31],%r45; $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 .f32 %r27; .reg .f32 %r28; .reg .u64 %r29; .reg .f32 %r35; .reg .pred %r36; .reg .f32 %r37; .reg .f32 %r38; .reg .f64 %r40; .reg .f64 %r43; .reg .f64 %r44; .reg .f64 %r45; .reg .f64 %r46; 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 32 neg.f64 %r40,%r23; .loc 1 80 10 cvt.f64.f32 %r43,%r35; fma.rn.f64 %r44,%r40,0d4009200000000000,%r43; .loc 1 80 21 fma.rn.f64 %r45,%r40,0d3f4fb40000000000,%r44; .loc 1 80 32 fma.rn.f64 %r46,%r40,0d3e84442d18469899,%r45; .loc 1 80 4 cvt.rn.f32.f64 %value,%r46; .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 %r44; .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 .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 %r81; .reg .f64 %r84; .reg .f64 %r85; .reg .f64 %r86; .reg .f64 %r87; .reg .f32 %r88; .reg .f32 %r90; .reg .f32 %r91; .reg .f64 %r92; .reg .pred %r93; 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 %r35,%r71,0f40490fdb; .loc 1 73 5 setp.ge.f32 %r78,%r35,0f00000000; @ ! %r78 bra $L20; .loc 1 74 5 add.f32 %r51,%r35,0f3f000000; bra $L16; $L20: .loc 1 76 5 mov.f32 %r79,0f3f000000; sub.f32 %r51,%r35,%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 32 neg.f64 %r81,%r55; .loc 1 80 10 cvt.f64.f32 %r84,%r71; fma.rn.f64 %r85,%r81,0d4009200000000000,%r84; .loc 1 80 21 fma.rn.f64 %r86,%r81,0d3f4fb40000000000,%r85; .loc 1 80 32 fma.rn.f64 %r87,%r81,0d3e84442d18469899,%r86; .loc 1 80 4 cvt.rn.f32.f64 %r59,%r87; .loc 1 96 4 mul.f32 %r36,%r59,%r59; .loc 1 97 4 mul.f32 %r37,%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 %r38,%r32,0f3f800000; .loc 1 105 5 mul.f32 %r39,%r29,%r38; .loc 1 106 6 add.f32 %r40,%r38,0f3f800000; .loc 1 107 5 mul.f32 %r41,%r39,%r40; .loc 1 108 6 mul.f32 %r42,%r30,%r36; .loc 1 109 6 mul.f32 %r43,%r31,%r37; .loc 1 110 5 add.f32 %r44,%r42,%r43; .loc 1 111 5 div.rn.f32 %r88,%r44,%r41; .loc 1 112 5 add.f32 %r46,%r88,%r63; .loc 1 114 6 add.f32 %r47,%r40,0f3f800000; .loc 1 115 5 mul.f32 %r48,%r41,%r47; .loc 1 116 6 add.f32 %r32,%r47,0f3f800000; .loc 1 117 5 mul.f32 %r29,%r48,%r32; .loc 1 118 6 mul.f32 %r30,%r36,%r42; .loc 1 119 6 mul.f32 %r31,%r37,%r43; .loc 1 120 5 sub.f32 %r49,%r31,%r30; .loc 1 121 5 div.rn.f32 %r50,%r49,%r29; .loc 1 122 5 add.f32 %r63,%r46,%r50; .loc 1 123 11 div.rn.f32 %r90,%r50,%r63; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r90; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r91,[%value_in]; } cvt.f64.f32 %r92,%r91; .loc 1 123 2 setp.gt.f64 %r93,%r92,0d3e601b2b29a4692b; @ %r93 bra $L17; .loc 1 125 1 mov.f32 %value,%r63; st.param.f32 [%value_out],%value; ret; } lib_a-cexp.o/ 1591654536 399 399 100644 2415 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %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; .reg .f64 %r46; 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 %r46,%r44,%r40,%r45; .loc 1 81 9 st.f64 [%r30],%r46; st.f64 [%r30+8],%r29; .loc 1 82 1 ret; } lib_a-cexpf.o/ 1591654536 399 399 100644 2427 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %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; .reg .f32 %r46; 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 %r46,%r44,%r40,%r45; .loc 1 48 9 st.f32 [%r30],%r46; st.f32 [%r30+4],%r29; .loc 1 49 1 ret; } lib_a-cimag.o/ 1591654536 399 399 100644 570 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 53 1 st.param.f64 [%value_out],%value; ret; } lib_a-cimagf.o/ 1591654536 399 399 100644 575 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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-clog.o/ 1591654536 399 399 100644 2474 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u64 %r28; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r33; .reg .f64 %r35; .reg .f64 %r38; .reg .f64 %r41; .reg .f64 %r44; .reg .f64 %r45; 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 %r45,%r44,0d0000000000000000,%r35; .loc 1 90 9 st.f64 [%r28],%r45; st.f64 [%r28+8],%r44; .loc 1 91 1 ret; } lib_a-clogf.o/ 1591654536 399 399 100644 2486 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u64 %r28; .reg .f32 %r29; .reg .f32 %r30; .reg .f32 %r33; .reg .f32 %r35; .reg .f32 %r38; .reg .f32 %r41; .reg .f32 %r44; .reg .f32 %r45; 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 %r45,%r44,0f00000000,%r35; .loc 1 48 9 st.f32 [%r28],%r45; st.f32 [%r28+4],%r44; .loc 1 49 1 ret; } lib_a-conj.o/ 1591654536 399 399 100644 1166 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654536 399 399 100644 1171 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } /43 1591654536 399 399 100644 1035 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 DECL: copysign .extern .func (.param .f64 %value_out) copysign (.param .f64 %in_ar0, .param .f64 %in_ar1); // 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; .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),copysign,(%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-coshl.o/ 1591654536 399 399 100644 796 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654536 399 399 100644 788 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654536 399 399 100644 4681 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %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; .reg .f64 %r72; 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 %r72,%r70,%r30,%r71; .loc 1 100 9 st.f64 [%r37],%r72; st.f64 [%r37+8],%r36; $L1: .loc 1 101 1 ret; } lib_a-cpowf.o/ 1591654536 399 399 100644 4687 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %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; .reg .f32 %r72; 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 %r72,%r70,%r30,%r71; .loc 1 58 9 st.f32 [%r37],%r72; st.f32 [%r37+4],%r36; $L1: .loc 1 59 1 ret; } lib_a-cproj.o/ 1591654536 399 399 100644 3336 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.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: 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 .u32 %r35; .reg .pred %r36; .reg .f64 %r37; .reg .f64 %r40; .reg .f64 %r41; .reg .f64 %r43; .reg .f64 %r46; .reg .u32 %r48; .reg .pred %r49; 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]; } { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r35,[%value_in]; } .loc 1 96 5 setp.ne.u32 %r36,%r35,1; @ %r36 bra $L2; $L4: .loc 1 100 16 mov.f64 %r37,0d7ff0000000000000; st.f64 [%frame],%r37; .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 %r40,[%value_in]; } mov.f64 %r41,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r41; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r40; call (%value_in),copysign,(%out_arg1,%out_arg2); ld.param.f64 %r43,[%value_in]; } ld.f64 %r29,[%frame]; mov.f64 %r30,%r43; 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 %r46,[%value_in]; } { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r46; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r48,[%value_in]; } .loc 1 96 22 setp.eq.u32 %r49,%r48,1; @ %r49 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/ 1591654536 399 399 100644 3331 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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: __fpclassifyf .extern .func (.param .u32 %value_out) __fpclassifyf (.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: 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 .u32 %r35; .reg .pred %r36; .reg .f32 %r37; .reg .f32 %r40; .reg .f32 %r41; .reg .f32 %r43; .reg .f32 %r46; .reg .u32 %r48; .reg .pred %r49; 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]; } { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r33; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r35,[%value_in]; } .loc 1 58 5 setp.ne.u32 %r36,%r35,1; @ %r36 bra $L2; $L4: .loc 1 62 16 mov.f32 %r37,0f7f800000; st.f32 [%frame],%r37; .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 %r40,[%value_in]; } mov.f32 %r41,0f00000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r41; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r40; call (%value_in),copysignf,(%out_arg1,%out_arg2); ld.param.f32 %r43,[%value_in]; } ld.f32 %r29,[%frame]; mov.f32 %r30,%r43; 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 %r46,[%value_in]; } { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r46; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r48,[%value_in]; } .loc 1 58 23 setp.eq.u32 %r49,%r48,1; @ %r49 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-creal.o/ 1591654536 399 399 100644 570 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 53 1 st.param.f64 [%value_out],%value; ret; } lib_a-crealf.o/ 1591654536 399 399 100644 575 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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-csin.o/ 1591654536 399 399 100644 3306 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %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; .reg .f64 %r55; 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 %r55,[%frame+8]; fma.rn.f64 %r54,%r52,%r55,%r53; .loc 1 80 9 st.f64 [%r32],%r54; st.f64 [%r32+8],%r31; .loc 1 81 1 st.shared.u64 [%sspslot],%sspprev; ret; } lib_a-csinf.o/ 1591654536 399 399 100644 3319 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %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; .reg .f32 %r55; 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 %r55,[%frame+4]; fma.rn.f32 %r54,%r52,%r55,%r53; .loc 1 47 9 st.f32 [%r32],%r54; st.f32 [%r32+4],%r31; .loc 1 48 1 st.shared.u64 [%sspslot],%sspprev; ret; } lib_a-csinh.o/ 1591654536 399 399 100644 2702 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %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; .reg .f64 %r49; 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 %r49,%r45,%r47,%r48; .loc 1 79 9 st.f64 [%r31],%r49; st.f64 [%r31+8],%r30; .loc 1 80 1 ret; } lib_a-csinhf.o/ 1591654536 399 399 100644 2717 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %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; .reg .f32 %r49; 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 %r49,%r45,%r47,%r48; .loc 1 47 9 st.f32 [%r31],%r49; st.f32 [%r31+4],%r30; .loc 1 48 1 ret; } lib_a-csqrt.o/ 1591654536 399 399 100644 6808 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r38; .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 .f64 %r54; .reg .f64 %r55; .reg .f64 %r69; .reg .u64 %r70; .reg .f64 %r71; .reg .f64 %r72; .reg .f64 %r75; .reg .f64 %r78; .reg .pred %r79; .reg .pred %r80; .reg .f64 %r83; .reg .f64 %r85; .reg .pred %r86; .reg .pred %r89; .reg .f64 %r91; .reg .f64 %r93; .reg .pred %r94; .reg .f64 %r96; .reg .f64 %r100; .reg .pred %r101; .reg .f64 %r103; .reg .pred %r104; .reg .f64 %r110; .reg .f64 %r113; .reg .pred %r114; .reg .f64 %r116; .reg .f64 %r117; .reg .f64 %r118; .reg .f64 %r120; .reg .f64 %r121; .reg .f64 %r122; .reg .f64 %r124; .reg .f64 %r126; .reg .f64 %r128; .reg .f64 %r129; .reg .f64 %r130; .reg .pred %r131; mov.u64 %r70,%ar0; mov.f64 %r71,%ar1; mov.f64 %r72,%ar2; .loc 1 79 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r71; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r72; call (%value_in),creal,(%out_arg1,%out_arg2); ld.param.f64 %r75,[%value_in]; } .loc 1 80 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r71; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r72; call (%value_in),cimag,(%out_arg1,%out_arg2); ld.param.f64 %r78,[%value_in]; } .loc 1 82 5 setp.neu.f64 %r79,%r78,0d0000000000000000; @ %r79 bra $L2; .loc 1 83 6 setp.neu.f64 %r80,%r75,0d0000000000000000; @ %r80 bra $L3; .loc 1 84 12 fma.rn.f64 %r45,%r78,0d0000000000000000,0d0000000000000000; .loc 1 84 6 mov.f64 %r46,%r78; bra $L4; $L3: .loc 1 86 8 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r75; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r83,[%value_in]; } .loc 1 87 8 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r83; call (%value_in),sqrt,(%out_arg1); ld.param.f64 %r85,[%value_in]; } .loc 1 88 7 setp.lt.f64 %r86,%r75,0d0000000000000000; @ ! %r86 bra $L26; .loc 1 89 13 fma.rn.f64 %r45,%r85,0d0000000000000000,0d0000000000000000; .loc 1 89 7 mov.f64 %r46,%r85; bra $L4; $L26: .loc 1 91 11 fma.rn.f64 %r45,%r78,0d0000000000000000,%r85; .loc 1 91 7 mov.f64 %r46,%r78; $L4: .loc 1 94 10 st.f64 [%r70],%r45; st.f64 [%r70+8],%r46; bra $L1; $L2: .loc 1 96 5 setp.neu.f64 %r89,%r75,0d0000000000000000; @ %r89 bra $L8; .loc 1 97 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r78; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r91,[%value_in]; } .loc 1 98 7 mul.f64 %r25,%r91,0d3fe0000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r25; call (%value_in),sqrt,(%out_arg1); ld.param.f64 %r93,[%value_in]; } .loc 1 99 6 setp.gt.f64 %r94,%r78,0d0000000000000000; @ ! %r94 bra $L27; .loc 1 100 10 fma.rn.f64 %r47,%r93,0d0000000000000000,%r93; .loc 1 100 6 mov.f64 %r48,%r93; bra $L11; $L27: .loc 1 102 10 neg.f64 %r96,%r93; fma.rn.f64 %r47,%r96,0d0000000000000000,%r93; .loc 1 102 6 mov.f64 %r48,%r96; $L11: .loc 1 103 10 st.f64 [%r70],%r47; st.f64 [%r70+8],%r48; bra $L1; $L8: .loc 1 106 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r75; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r100,[%value_in]; } .loc 1 106 5 setp.gt.f64 %r101,%r100,0d4010000000000000; @ ! %r101 bra $L28; $L15: .loc 1 107 5 mul.f64 %r51,%r75,0d3fd0000000000000; .loc 1 108 5 mul.f64 %r52,%r78,0d3fd0000000000000; .loc 1 109 9 mov.f64 %r55,0d4000000000000000; bra $L14; $L28: .loc 1 106 26 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r78; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r103,[%value_in]; } .loc 1 106 22 setp.gt.f64 %r104,%r103,0d4010000000000000; @ %r104 bra $L15; .loc 1 112 5 mul.f64 %r51,%r75,0d4350000000000000; .loc 1 113 5 mul.f64 %r52,%r78,0d4350000000000000; .loc 1 114 9 mov.f64 %r55,0d3e40000000000000; $L14: .loc 1 121 8 fma.rn.f64 %r110,%r52,0d0000000000000000,%r51; .loc 1 122 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r110; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r52; call (%value_in),cabs,(%out_arg1,%out_arg2); ld.param.f64 %r113,[%value_in]; } .loc 1 123 5 setp.gt.f64 %r114,%r51,0d0000000000000000; @ ! %r114 bra $L29; .loc 1 124 26 mul.f64 %r116,%r51,0d3fe0000000000000; .loc 1 124 7 fma.rn.f64 %r117,%r113,0d3fe0000000000000,%r116; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r117; call (%value_in),sqrt,(%out_arg1); ld.param.f64 %r118,[%value_in]; } .loc 1 125 25 mul.f64 %r120,%r52,0d3fe0000000000000; .loc 1 125 15 div.rn.f64 %r121,%r120,%r118; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r121; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r122,[%value_in]; } .loc 1 125 5 mul.f64 %r53,%r122,%r55; .loc 1 126 5 mul.f64 %r54,%r55,%r118; bra $L18; $L29: .loc 1 128 7 mul.f64 %r124,%r51,0dbfe0000000000000; fma.rn.f64 %r38,%r113,0d3fe0000000000000,%r124; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; call (%value_in),sqrt,(%out_arg1); ld.param.f64 %r126,[%value_in]; } .loc 1 129 25 mul.f64 %r128,%r52,0d3fe0000000000000; .loc 1 129 15 div.rn.f64 %r129,%r128,%r126; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r129; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r130,[%value_in]; } .loc 1 129 5 mul.f64 %r54,%r130,%r55; .loc 1 130 5 mul.f64 %r53,%r55,%r126; $L18: mul.f64 %r69,%r53,0d0000000000000000; .loc 1 132 5 setp.lt.f64 %r131,%r52,0d0000000000000000; @ ! %r131 bra $L30; .loc 1 133 5 sub.f64 %r49,%r54,%r69; neg.f64 %r50,%r53; bra $L21; $L30: .loc 1 135 9 add.f64 %r49,%r54,%r69; .loc 1 135 5 mov.f64 %r50,%r53; $L21: .loc 1 136 9 st.f64 [%r70],%r49; st.f64 [%r70+8],%r50; $L1: .loc 1 137 1 ret; } lib_a-csqrtf.o/ 1591654536 399 399 100644 6609 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r27; .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 .f32 %r83; .reg .pred %r84; .reg .f32 %r85; .reg .f32 %r87; .reg .f32 %r88; .reg .pred %r89; .reg .f32 %r91; .reg .f32 %r93; .reg .pred %r94; .reg .f32 %r96; .reg .f32 %r100; .reg .pred %r101; .reg .f32 %r103; .reg .pred %r104; .reg .f32 %r110; .reg .f32 %r113; .reg .pred %r114; .reg .f32 %r116; .reg .f32 %r117; .reg .f32 %r118; .reg .f32 %r120; .reg .f32 %r121; .reg .f32 %r122; .reg .f32 %r124; .reg .f32 %r126; .reg .f32 %r128; .reg .f32 %r129; .reg .f32 %r130; .reg .pred %r131; 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 %r83,%r82,0f00000000,0f00000000; .loc 1 50 11 st.f32 [%r69],%r83; st.f32 [%r69+4],%r82; bra $L1; $L25: .loc 1 51 13 setp.neu.f32 %r84,%r74,0f00000000; @ %r84 bra $L6; .loc 1 52 17 fma.rn.f32 %r85,%r77,0f00000000,0f00000000; st.f32 [%r69],%r85; 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 %r87,[%value_in]; } .loc 1 54 17 fma.rn.f32 %r88,%r77,0f00000000,%r87; .loc 1 55 11 st.f32 [%r69],%r88; st.f32 [%r69+4],%r77; bra $L1; $L2: .loc 1 59 5 setp.neu.f32 %r89,%r74,0f00000000; @ %r89 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 %r91,[%value_in]; } .loc 1 61 7 mul.f32 %r27,%r91,0f3f000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r27; call (%value_in),sqrtf,(%out_arg1); ld.param.f32 %r93,[%value_in]; } .loc 1 62 6 setp.gt.f32 %r94,%r77,0f00000000; @ ! %r94 bra $L26; .loc 1 63 10 fma.rn.f32 %r47,%r93,0f00000000,%r93; .loc 1 63 6 mov.f32 %r48,%r93; bra $L10; $L26: .loc 1 65 10 neg.f32 %r96,%r93; fma.rn.f32 %r47,%r96,0f00000000,%r93; .loc 1 65 6 mov.f32 %r48,%r96; $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 %r100,[%value_in]; } .loc 1 70 5 setp.gt.f32 %r101,%r100,0f40800000; @ ! %r101 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 %r103,[%value_in]; } .loc 1 70 24 setp.gt.f32 %r104,%r103,0f40800000; @ %r104 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 %r110,%r52,0f00000000,%r51; .loc 1 86 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r110; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r52; call (%value_in),cabsf,(%out_arg1,%out_arg2); ld.param.f32 %r113,[%value_in]; } .loc 1 87 4 setp.gt.f32 %r114,%r51,0f00000000; @ ! %r114 bra $L28; .loc 1 88 29 mul.f32 %r116,%r51,0f3f000000; .loc 1 88 7 fma.rn.f32 %r117,%r113,0f3f000000,%r116; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r117; call (%value_in),sqrtf,(%out_arg1); ld.param.f32 %r118,[%value_in]; } .loc 1 89 27 mul.f32 %r120,%r52,0f3f000000; .loc 1 89 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 89 5 mul.f32 %r53,%r122,%r55; .loc 1 90 5 mul.f32 %r54,%r55,%r118; bra $L17; $L28: .loc 1 92 7 mul.f32 %r124,%r51,0fbf000000; fma.rn.f32 %r40,%r113,0f3f000000,%r124; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r40; call (%value_in),sqrtf,(%out_arg1); ld.param.f32 %r126,[%value_in]; } .loc 1 93 27 mul.f32 %r128,%r52,0f3f000000; .loc 1 93 15 div.rn.f32 %r129,%r128,%r126; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r129; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r130,[%value_in]; } .loc 1 93 5 mul.f32 %r54,%r130,%r55; .loc 1 94 5 mul.f32 %r53,%r55,%r126; $L17: mul.f32 %r68,%r53,0f00000000; .loc 1 97 5 setp.lt.f32 %r131,%r52,0f00000000; @ ! %r131 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-ctan.o/ 1591654536 399 399 100644 4517 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 8 .u64 $LC0[2] = {9221120237041090560,9218868437227405312 }; // 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 %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 %r62; .reg .f64 %r65; .reg .f64 %r67; .reg .f64 %r68; .reg .f64 %r71; .reg .f64 %r73; .reg .f64 %r74; .reg .f64 %r75; .reg .f64 %r76; 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 86 10 ld.const.f64 %r61,[$LC0]; st.f64 [%r39],%r61; ld.const.f64 %r62,[$LC0+8]; st.f64 [%r39+8],%r62; bra $L1; $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 %r65,[%value_in]; } .loc 1 89 33 add.f64 %r67,%r65,%r65; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r67; call (%value_in),sinh,(%out_arg1); ld.param.f64 %r68,[%value_in]; } .loc 1 89 54 div.rn.f64 %r38,%r68,%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 %r71,[%value_in]; } .loc 1 89 6 add.f64 %r73,%r71,%r71; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r73; call (%value_in),sin,(%out_arg1); ld.param.f64 %r74,[%value_in]; } .loc 1 89 26 div.rn.f64 %r75,%r74,%r37; .loc 1 89 30 fma.rn.f64 %r76,%r38,0d0000000000000000,%r75; .loc 1 90 9 st.f64 [%r39],%r76; st.f64 [%r39+8],%r38; $L1: .loc 1 91 1 ret; } lib_a-ctanf.o/ 1591654536 399 399 100644 4506 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 4 .u32 $LC0[2] = {2143289344,2139095040 }; // 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 %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 %r62; .reg .f32 %r65; .reg .f32 %r67; .reg .f32 %r68; .reg .f32 %r71; .reg .f32 %r73; .reg .f32 %r74; .reg .f32 %r75; .reg .f32 %r76; 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 53 10 ld.const.f32 %r61,[$LC0]; st.f32 [%r39],%r61; ld.const.f32 %r62,[$LC0+4]; st.f32 [%r39+4],%r62; bra $L1; $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 %r65,[%value_in]; } .loc 1 56 36 add.f32 %r67,%r65,%r65; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r67; call (%value_in),sinhf,(%out_arg1); ld.param.f32 %r68,[%value_in]; } .loc 1 56 60 div.rn.f32 %r38,%r68,%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 %r71,[%value_in]; } .loc 1 56 6 add.f32 %r73,%r71,%r71; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r73; call (%value_in),sinf,(%out_arg1); ld.param.f32 %r74,[%value_in]; } .loc 1 56 29 div.rn.f32 %r75,%r74,%r37; .loc 1 56 33 fma.rn.f32 %r76,%r38,0f00000000,%r75; .loc 1 57 9 st.f32 [%r39],%r76; st.f32 [%r39+4],%r38; $L1: .loc 1 58 1 ret; } lib_a-ctanh.o/ 1591654536 399 399 100644 2852 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %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; .reg .f64 %r52; 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 %r52,%r33,0d0000000000000000,%r51; .loc 1 82 9 st.f64 [%r34],%r52; st.f64 [%r34+8],%r33; .loc 1 83 1 ret; } lib_a-ctanhf.o/ 1591654536 399 399 100644 2867 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %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; .reg .f32 %r52; 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 %r52,%r33,0f00000000,%r51; .loc 1 49 9 st.f32 [%r34],%r52; st.f32 [%r34+4],%r33; .loc 1 50 1 ret; } lib_a-e_acos.o/ 1591654536 399 399 100644 6038 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r58; .reg .u32 %r59; .reg .f64 %r61; .reg .f64 %r65; .reg .f64 %r66; .reg .f64 %r67; .reg .f64 %r71; .reg .f64 %r73; .reg .u64 %r96; .reg .f64 %r97; .reg .f64 %r98; .reg .u64 %r99; .reg .u64 %r100; .reg .pred %r101; .reg .u32 %r102; .reg .u32 %r104; .reg .u32 %r105; .reg .pred %r106; .reg .pred %r107; .reg .pred %r108; .reg .pred %r109; .reg .f64 %r110; .reg .f64 %r111; .reg .f64 %r112; .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 .pred %r125; .reg .f64 %r126; .reg .f64 %r127; .reg .f64 %r128; .reg .f64 %r129; .reg .f64 %r130; .reg .f64 %r131; .reg .f64 %r132; .reg .f64 %r133; .reg .f64 %r134; .reg .f64 %r136; .reg .f64 %r137; .reg .f64 %r138; .reg .f64 %r139; .reg .f64 %r141; .reg .f64 %r142; .reg .f64 %r144; .reg .u64 %r145; .reg .f64 %r146; .reg .f64 %r147; .reg .f64 %r148; .reg .f64 %r149; .reg .f64 %r150; .reg .f64 %r151; .reg .f64 %r152; .reg .f64 %r153; .reg .f64 %r154; .reg .f64 %r155; .reg .f64 %r156; .reg .f64 %r157; .reg .f64 %r158; .reg .f64 %r159; .reg .f64 %r160; .reg .f64 %r161; .reg .f64 %r162; mov.f64 %r98,%ar0; .loc 1 71 2 mov.b64 %r99,%r98; shr.u64 %r100,%r99,32; cvt.u32.u64 %r58,%r100; .loc 1 72 5 and.b32 %r59,%r58,2147483647; .loc 1 73 4 setp.le.s32 %r101,%r59,1072693247; @ %r101 bra $L2; .loc 1 76 13 add.u32 %r102,%r59,-1072693248; .loc 1 76 25 cvt.u32.u64 %r105,%r99; or.b32 %r104,%r102,%r105; .loc 1 76 8 setp.ne.u32 %r106,%r104,0; @ %r106 bra $L3; .loc 1 77 5 setp.gt.s32 %r107,%r58,0; .loc 1 78 17 selp.f64 %r97,0d0000000000000000,0d400921fb54442d18,%r107; bra $L1; $L3: .loc 1 80 15 sub.f64 %r25,%r98,%r98; .loc 1 80 18 div.rn.f64 %r97,%r25,%r25; bra $L1; $L2: .loc 1 82 4 setp.gt.s32 %r108,%r59,1071644671; @ %r108 bra $L5; .loc 1 83 8 setp.le.s32 %r109,%r59,1012924416; @ %r109 bra $L8; .loc 1 84 8 mul.f64 %r61,%r98,%r98; .loc 1 88 36 neg.f64 %r110,%r98; .loc 1 85 44 fma.rn.f64 %r111,%r61,0d3f023de10dfdf709,0d3f49efe07501b288; .loc 1 85 37 fma.rn.f64 %r112,%r111,%r61,0dbfa48228b5688f3b; .loc 1 85 30 fma.rn.f64 %r113,%r112,%r61,0d3fc9c1550e884455; .loc 1 85 23 fma.rn.f64 %r114,%r113,%r61,0dbfd4d61203eb6f7d; .loc 1 85 16 fma.rn.f64 %r115,%r114,%r61,0d3fc5555555555555; .loc 1 85 8 mul.f64 %r116,%r115,%r61; .loc 1 86 34 fma.rn.f64 %r117,%r61,0d3fb3b8c5b12e9282,0dbfe6066c1b8d0159; .loc 1 86 27 fma.rn.f64 %r118,%r117,%r61,0d40002ae59c598ac8; .loc 1 86 20 fma.rn.f64 %r119,%r118,%r61,0dc0033a271c8a2d4b; .loc 1 86 8 fma.rn.f64 %r120,%r119,%r61,0d3ff0000000000000; .loc 1 87 8 div.rn.f64 %r121,%r116,%r120; .loc 1 88 36 fma.rn.f64 %r122,%r110,%r121,0d3c91a62633145c07; .loc 1 88 26 sub.f64 %r123,%r98,%r122; .loc 1 88 21 mov.f64 %r124,0d3ff921fb54442d18; sub.f64 %r97,%r124,%r123; bra $L1; $L5: .loc 1 89 13 setp.ge.s32 %r125,%r58,0; @ %r125 bra $L6; .loc 1 90 14 add.f64 %r126,%r98,0d3ff0000000000000; .loc 1 90 8 mul.f64 %r65,%r126,0d3fe0000000000000; .loc 1 91 44 fma.rn.f64 %r127,%r65,0d3f023de10dfdf709,0d3f49efe07501b288; .loc 1 91 37 fma.rn.f64 %r128,%r127,%r65,0dbfa48228b5688f3b; .loc 1 91 30 fma.rn.f64 %r129,%r128,%r65,0d3fc9c1550e884455; .loc 1 91 23 fma.rn.f64 %r130,%r129,%r65,0dbfd4d61203eb6f7d; .loc 1 91 16 fma.rn.f64 %r131,%r130,%r65,0d3fc5555555555555; .loc 1 91 8 mul.f64 %r66,%r131,%r65; .loc 1 92 34 fma.rn.f64 %r132,%r65,0d3fb3b8c5b12e9282,0dbfe6066c1b8d0159; .loc 1 92 27 fma.rn.f64 %r133,%r132,%r65,0d40002ae59c598ac8; .loc 1 92 20 fma.rn.f64 %r134,%r133,%r65,0dc0033a271c8a2d4b; .loc 1 92 8 fma.rn.f64 %r67,%r134,%r65,0d3ff0000000000000; .loc 1 93 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r65; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r136,[%value_in]; } .loc 1 94 8 div.rn.f64 %r137,%r66,%r67; .loc 1 95 8 fma.rn.f64 %r138,%r136,%r137,0dbc91a62633145c07; .loc 1 96 24 add.f64 %r139,%r138,%r136; .loc 1 96 16 fma.rn.f64 %r97,%r139,0dc000000000000000,0d400921fb54442d18; bra $L1; $L6: .loc 1 98 14 mov.f64 %r142,0d3ff0000000000000; sub.f64 %r141,%r142,%r98; .loc 1 98 8 mul.f64 %r71,%r141,0d3fe0000000000000; .loc 1 99 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r71; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r144,[%value_in]; } .loc 1 101 6 mov.b64 %r96,%r144; and.b64 %r145,%r96,-4294967296; mov.b64 %r73,%r145; .loc 1 102 13 neg.f64 %r146,%r73; fma.rn.f64 %r147,%r146,%r73,%r71; .loc 1 102 23 add.f64 %r148,%r144,%r73; .loc 1 102 9 div.rn.f64 %r149,%r147,%r148; .loc 1 103 44 fma.rn.f64 %r150,%r71,0d3f023de10dfdf709,0d3f49efe07501b288; .loc 1 103 37 fma.rn.f64 %r151,%r150,%r71,0dbfa48228b5688f3b; .loc 1 103 30 fma.rn.f64 %r152,%r151,%r71,0d3fc9c1550e884455; .loc 1 103 23 fma.rn.f64 %r153,%r152,%r71,0dbfd4d61203eb6f7d; .loc 1 103 16 fma.rn.f64 %r154,%r153,%r71,0d3fc5555555555555; .loc 1 103 8 mul.f64 %r155,%r154,%r71; .loc 1 104 34 fma.rn.f64 %r156,%r71,0d3fb3b8c5b12e9282,0dbfe6066c1b8d0159; .loc 1 104 27 fma.rn.f64 %r157,%r156,%r71,0d40002ae59c598ac8; .loc 1 104 20 fma.rn.f64 %r158,%r157,%r71,0dc0033a271c8a2d4b; .loc 1 104 8 fma.rn.f64 %r159,%r158,%r71,0d3ff0000000000000; .loc 1 105 8 div.rn.f64 %r160,%r155,%r159; .loc 1 106 8 fma.rn.f64 %r161,%r144,%r160,%r149; .loc 1 107 20 add.f64 %r162,%r161,%r73; .loc 1 107 16 add.f64 %r97,%r162,%r162; bra $L1; $L8: .loc 1 83 39 mov.f64 %r97,0d3ff921fb54442d18; $L1: .loc 1 109 1 mov.f64 %value,%r97; st.param.f64 [%value_out],%value; ret; } lib_a-e_acosh.o/1591654536 399 399 100644 3418 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r36; .reg .f64 %r37; .reg .f64 %r42; .reg .f64 %r43; .reg .u64 %r44; .reg .u64 %r45; .reg .pred %r46; .reg .pred %r47; .reg .pred %r48; .reg .f64 %r50; .reg .u32 %r51; .reg .u32 %r53; .reg .u32 %r54; .reg .pred %r55; .reg .pred %r56; .reg .f64 %r58; .reg .f64 %r59; .reg .f64 %r61; .reg .f64 %r62; .reg .f64 %r63; .reg .f64 %r64; .reg .f64 %r65; .reg .f64 %r66; .reg .f64 %r67; .reg .f64 %r69; .reg .f64 %r70; .reg .f64 %r71; .reg .f64 %r73; .reg .f64 %r74; mov.f64 %r43,%ar0; .loc 1 51 2 mov.b64 %r44,%r43; shr.u64 %r45,%r44,32; cvt.u32.u64 %r36,%r45; .loc 1 52 4 setp.gt.s32 %r46,%r36,1072693247; @ %r46 bra $L2; .loc 1 53 15 sub.f64 %r22,%r43,%r43; .loc 1 53 18 div.rn.f64 %r42,%r22,%r22; bra $L1; $L2: .loc 1 54 11 setp.le.s32 %r47,%r36,1102053375; @ %r47 bra $L4; .loc 1 55 8 setp.le.s32 %r48,%r36,2146435071; @ %r48 bra $L5; .loc 1 56 18 add.f64 %r42,%r43,%r43; bra $L1; $L5: .loc 1 58 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r43; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r50,[%value_in]; } .loc 1 58 26 add.f64 %r42,%r50,0d3fe62e42fefa39ef; bra $L1; $L4: .loc 1 59 16 add.u32 %r51,%r36,-1072693248; .loc 1 59 28 cvt.u32.u64 %r54,%r44; or.b32 %r53,%r51,%r54; .loc 1 59 11 setp.eq.u32 %r55,%r53,0; @ %r55 bra $L7; .loc 1 61 12 setp.le.s32 %r56,%r36,1073741824; @ %r56 bra $L6; .loc 1 63 40 fma.rn.f64 %r58,%r43,%r43,0dbff0000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r58; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r59,[%value_in]; } .loc 1 63 39 add.f64 %r61,%r59,%r43; .loc 1 63 36 mov.f64 %r63,0d3ff0000000000000; div.rn.f64 %r62,%r63,%r61; .loc 1 63 13 neg.f64 %r64,%r62; fma.rn.f64 %r65,%r43,0d4000000000000000,%r64; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r65; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r66,[%value_in]; } mov.f64 %r42,%r66; bra $L1; $L6: .loc 1 65 8 mov.f64 %r67,0d3ff0000000000000; sub.f64 %r37,%r43,%r67; .loc 1 66 43 mul.f64 %r69,%r37,%r37; .loc 1 66 21 fma.rn.f64 %r70,%r37,0d4000000000000000,%r69; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r70; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r71,[%value_in]; } .loc 1 66 13 add.f64 %r73,%r71,%r37; { .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 %r42,%r74; bra $L1; $L7: .loc 1 60 13 mov.f64 %r42,0d0000000000000000; $L1: .loc 1 68 1 mov.f64 %value,%r42; st.param.f64 [%value_out],%value; ret; } lib_a-e_asin.o/ 1591654536 399 399 100644 5605 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .f64 %r54; .reg .f64 %r59; .reg .f64 %r60; .reg .f64 %r61; .reg .f64 %r64; .reg .f64 %r66; .reg .u64 %r84; .reg .f64 %r85; .reg .f64 %r86; .reg .u64 %r87; .reg .u64 %r88; .reg .pred %r89; .reg .u32 %r90; .reg .u32 %r92; .reg .u32 %r93; .reg .pred %r94; .reg .f64 %r95; .reg .pred %r96; .reg .pred %r97; .reg .f64 %r98; .reg .pred %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 .f64 %r109; .reg .f64 %r110; .reg .f64 %r112; .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 %r124; .reg .pred %r125; .reg .f64 %r126; .reg .f64 %r127; .reg .f64 %r128; .reg .f64 %r129; .reg .u64 %r130; .reg .f64 %r131; .reg .f64 %r132; .reg .f64 %r133; .reg .f64 %r134; .reg .f64 %r135; .reg .f64 %r137; .reg .f64 %r138; .reg .f64 %r139; .reg .f64 %r141; .reg .f64 %r142; .reg .pred %r143; mov.f64 %r86,%ar0; .loc 1 80 2 mov.b64 %r87,%r86; shr.u64 %r88,%r87,32; cvt.u32.u64 %r52,%r88; .loc 1 81 5 and.b32 %r53,%r52,2147483647; .loc 1 82 4 setp.le.s32 %r89,%r53,1072693247; @ %r89 bra $L2; .loc 1 85 13 add.u32 %r90,%r53,-1072693248; .loc 1 85 25 cvt.u32.u64 %r93,%r87; or.b32 %r92,%r90,%r93; .loc 1 85 8 setp.ne.u32 %r94,%r92,0; @ %r94 bra $L3; .loc 1 87 21 mul.f64 %r95,%r86,0d3c91a62633145c07; .loc 1 87 19 fma.rn.f64 %r85,%r86,0d3ff921fb54442d18,%r95; bra $L1; $L3: .loc 1 88 15 sub.f64 %r26,%r86,%r86; .loc 1 88 18 div.rn.f64 %r85,%r26,%r26; bra $L1; $L2: .loc 1 89 12 setp.gt.s32 %r96,%r53,1071644671; @ %r96 bra $L5; .loc 1 90 8 setp.gt.s32 %r97,%r53,1044381695; @ %r97 bra $L6; .loc 1 91 10 add.f64 %r98,%r86,0d7e37e43c8800759c; .loc 1 91 5 setp.gt.f64 %r99,%r98,0d3ff0000000000000; @ ! %r99 bra $L5; bra $L9; $L6: .loc 1 93 5 mul.f64 %r54,%r86,%r86; .loc 1 94 41 fma.rn.f64 %r100,%r54,0d3f023de10dfdf709,0d3f49efe07501b288; .loc 1 94 34 fma.rn.f64 %r101,%r100,%r54,0dbfa48228b5688f3b; .loc 1 94 27 fma.rn.f64 %r102,%r101,%r54,0d3fc9c1550e884455; .loc 1 94 20 fma.rn.f64 %r103,%r102,%r54,0dbfd4d61203eb6f7d; .loc 1 94 13 fma.rn.f64 %r104,%r103,%r54,0d3fc5555555555555; .loc 1 94 5 mul.f64 %r105,%r104,%r54; .loc 1 95 31 fma.rn.f64 %r106,%r54,0d3fb3b8c5b12e9282,0dbfe6066c1b8d0159; .loc 1 95 24 fma.rn.f64 %r107,%r106,%r54,0d40002ae59c598ac8; .loc 1 95 17 fma.rn.f64 %r108,%r107,%r54,0dc0033a271c8a2d4b; .loc 1 95 5 fma.rn.f64 %r109,%r108,%r54,0d3ff0000000000000; .loc 1 96 5 div.rn.f64 %r110,%r105,%r109; .loc 1 97 11 fma.rn.f64 %r85,%r86,%r110,%r86; bra $L1; $L5: .loc 1 101 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r86; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r112,[%value_in]; } .loc 1 101 4 mov.f64 %r114,0d3ff0000000000000; sub.f64 %r113,%r114,%r112; .loc 1 102 4 mul.f64 %r59,%r113,0d3fe0000000000000; .loc 1 103 40 fma.rn.f64 %r115,%r59,0d3f023de10dfdf709,0d3f49efe07501b288; .loc 1 103 33 fma.rn.f64 %r116,%r115,%r59,0dbfa48228b5688f3b; .loc 1 103 26 fma.rn.f64 %r117,%r116,%r59,0d3fc9c1550e884455; .loc 1 103 19 fma.rn.f64 %r118,%r117,%r59,0dbfd4d61203eb6f7d; .loc 1 103 12 fma.rn.f64 %r119,%r118,%r59,0d3fc5555555555555; .loc 1 103 4 mul.f64 %r60,%r119,%r59; .loc 1 104 30 fma.rn.f64 %r120,%r59,0d3fb3b8c5b12e9282,0dbfe6066c1b8d0159; .loc 1 104 23 fma.rn.f64 %r121,%r120,%r59,0d40002ae59c598ac8; .loc 1 104 16 fma.rn.f64 %r122,%r121,%r59,0dc0033a271c8a2d4b; .loc 1 104 4 fma.rn.f64 %r61,%r122,%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 %r124,[%value_in]; } .loc 1 106 4 setp.le.s32 %r125,%r53,1072640818; @ %r125 bra $L7; .loc 1 107 8 div.rn.f64 %r126,%r60,%r61; .loc 1 108 25 fma.rn.f64 %r127,%r124,%r126,%r124; .loc 1 108 30 fma.rn.f64 %r128,%r127,0d4000000000000000,0dbc91a62633145c07; .loc 1 108 8 mov.f64 %r129,0d3ff921fb54442d18; sub.f64 %r85,%r129,%r128; bra $L8; $L7: .loc 1 111 6 mov.b64 %r84,%r124; and.b64 %r130,%r84,-4294967296; mov.b64 %r64,%r130; .loc 1 113 9 div.rn.f64 %r66,%r60,%r61; .loc 1 114 14 add.f64 %r131,%r124,%r124; .loc 1 112 13 neg.f64 %r132,%r64; fma.rn.f64 %r133,%r132,%r64,%r59; .loc 1 112 21 add.f64 %r134,%r124,%r64; .loc 1 112 9 div.rn.f64 %r135,%r133,%r134; .loc 1 114 27 fma.rn.f64 %r137,%r135,0dc000000000000000,0d3c91a62633145c07; .loc 1 114 9 neg.f64 %r138,%r137; fma.rn.f64 %r139,%r131,%r66,%r138; .loc 1 115 9 fma.rn.f64 %r141,%r132,0d4000000000000000,0d3fe921fb54442d18; .loc 1 116 21 sub.f64 %r51,%r139,%r141; .loc 1 116 9 mov.f64 %r142,0d3fe921fb54442d18; sub.f64 %r85,%r142,%r51; $L8: .loc 1 118 4 setp.gt.s32 %r143,%r52,0; @ %r143 bra $L1; .loc 1 118 33 neg.f64 %r85,%r85; bra $L1; $L9: .loc 1 91 25 mov.f64 %r85,%r86; $L1: .loc 1 119 1 mov.f64 %value,%r85; st.param.f64 [%value_out],%value; ret; } lib_a-e_atan2.o/1591654536 399 399 100644 6484 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 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 %r50; .reg .u32 %r51; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .u32 %r60; .reg .u64 %r61; .reg .f64 %r62; .reg .f64 %r63; .reg .f64 %r64; .reg .u64 %r65; .reg .u64 %r66; .reg .u32 %r68; .reg .u32 %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .pred %r72; .reg .u64 %r73; .reg .u64 %r74; .reg .u32 %r76; .reg .u32 %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .pred %r80; .reg .u32 %r81; .reg .u32 %r82; .reg .pred %r83; .reg .f64 %r85; .reg .u32 %r86; .reg .u32 %r87; .reg .u32 %r88; .reg .u32 %r89; .reg .pred %r90; .reg .pred %r91; .reg .pred %r92; .reg .u32 %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 .u32 %r106; .reg .pred %r107; .reg .u32 %r109; .reg .u32 %r111; .reg .u32 %r112; .reg .u16 %r114; .reg .u16 %r115; .reg .u16 %r116; .reg .u32 %r117; .reg .u16 %r118; .reg .pred %r119; .reg .f64 %r121; .reg .f64 %r122; .reg .f64 %r124; .reg .pred %r125; .reg .pred %r126; .reg .pred %r127; .reg .u64 %r129; .reg .u32 %r130; .reg .u32 %r131; .reg .u64 %r132; .reg .u64 %r133; .reg .u64 %r134; .reg .u64 %r135; .reg .f64 %r136; .reg .f64 %r137; .reg .f64 %r138; .reg .f64 %r139; .reg .f64 %r140; .reg .f64 %r141; mov.f64 %r63,%ar0; mov.f64 %r64,%ar1; .loc 1 69 2 mov.b64 %r65,%r64; shr.u64 %r66,%r65,32; cvt.u32.u64 %r50,%r66; cvt.u32.u64 %r58,%r65; .loc 1 70 5 and.b32 %r51,%r50,2147483647; .loc 1 73 15 neg.s32 %r68,%r58; .loc 1 73 14 or.b32 %r69,%r68,%r58; .loc 1 73 19 shr.u32 %r70,%r69,31; .loc 1 73 9 or.b32 %r71,%r70,%r51; .loc 1 73 4 setp.gt.u32 %r72,%r71,2146435072; @ %r72 bra $L2; mov.b64 %r73,%r63; shr.u64 %r74,%r73,32; cvt.u32.u64 %r57,%r74; cvt.u32.u64 %r56,%r73; .loc 1 72 5 and.b32 %r53,%r57,2147483647; .loc 1 74 15 neg.s32 %r76,%r56; .loc 1 74 14 or.b32 %r77,%r76,%r56; .loc 1 74 19 shr.u32 %r78,%r77,31; .loc 1 74 9 or.b32 %r79,%r78,%r53; .loc 1 73 37 setp.le.u32 %r80,%r79,2146435072; @ %r80 bra $L3; $L2: .loc 1 75 13 add.f64 %r62,%r64,%r63; bra $L1; $L3: .loc 1 76 9 add.u32 %r81,%r50,-1072693248; .loc 1 76 21 or.b32 %r82,%r81,%r58; .loc 1 76 4 setp.ne.u32 %r83,%r82,0; @ %r83 bra $L5; .loc 1 76 37 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r63; call (%value_in),atan,(%out_arg1); ld.param.f64 %r85,[%value_in]; } mov.f64 %r62,%r85; bra $L1; $L5: .loc 1 77 23 shr.s32 %r86,%r50,30; .loc 1 77 28 and.b32 %r87,%r86,2; .loc 1 77 15 shr.u32 %r88,%r57,31; .loc 1 77 4 or.b32 %r54,%r87,%r88; .loc 1 80 8 or.b32 %r89,%r53,%r56; .loc 1 80 4 setp.ne.u32 %r90,%r89,0; @ %r90 bra $L6; setp.eq.u32 %r91,%r54,2; @ %r91 bra $L15; setp.eq.u32 %r92,%r54,3; .loc 1 83 18 selp.f64 %r62,0dc00921fb54442d18,%r63,%r92; bra $L1; $L6: .loc 1 89 8 or.b32 %r93,%r51,%r58; .loc 1 89 4 setp.ne.u32 %r94,%r93,0; @ %r94 bra $L7; .loc 1 89 45 setp.ge.s32 %r95,%r57,0; selp.f64 %r62,0d3ff921fb54442d18,0dbff921fb54442d18,%r95; bra $L1; $L7: .loc 1 92 4 setp.ne.u32 %r96,%r51,2146435072; @ %r96 bra $L8; .loc 1 93 8 setp.ne.u32 %r97,%r53,2146435072; @ %r97 bra $L9; setp.eq.u32 %r98,%r54,2; @ %r98 bra $L18; setp.eq.u32 %r99,%r54,3; @ %r99 bra $L19; setp.eq.u32 %r100,%r54,1; .loc 1 95 29 selp.f64 %r62,0dbfe921fb54442d18,0d3fe921fb54442d18,%r100; bra $L1; $L9: setp.eq.u32 %r101,%r54,2; @ %r101 bra $L21; setp.eq.u32 %r102,%r54,3; @ %r102 bra $L22; setp.eq.u32 %r103,%r54,1; .loc 1 102 23 selp.f64 %r62,0d8000000000000000,0d0000000000000000,%r103; bra $L1; $L8: .loc 1 110 4 setp.ne.u32 %r104,%r53,2146435072; @ %r104 bra $L10; .loc 1 110 48 setp.ge.s32 %r105,%r57,0; .loc 1 89 45 selp.f64 %r62,0d3ff921fb54442d18,0dbff921fb54442d18,%r105; bra $L1; $L10: .loc 1 113 9 sub.u32 %r106,%r53,%r51; .loc 1 113 4 shr.s32 %r60,%r106,20; .loc 1 114 4 setp.gt.s32 %r107,%r60,60; @ %r107 bra $L25; .loc 1 115 12 shr.u32 %r109,%r50,31; .loc 1 115 17 set.u32.lt.s32 %r111,%r60,-60; neg.s32 %r112,%r111; .loc 1 115 14 cvt.u16.u32 %r115,%r109; cvt.u16.u32 %r116,%r112; and.b16 %r114,%r115,%r116; .loc 1 115 9 cvt.u32.u16 %r117,%r114; cvt.u16.u8 %r118,%r117; setp.ne.u16 %r119,%r118,0; @ %r119 bra $L26; .loc 1 116 9 div.rn.f64 %r121,%r63,%r64; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r121; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r122,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r122; call (%value_in),atan,(%out_arg1); ld.param.f64 %r124,[%value_in]; } mov.f64 %r62,%r124; bra $L11; $L25: .loc 1 114 14 mov.f64 %r62,0d3ff921fb54442d18; bra $L11; $L26: .loc 1 115 24 mov.f64 %r62,0d0000000000000000; $L11: setp.eq.u32 %r125,%r54,1; @ %r125 bra $L12; setp.eq.u32 %r126,%r54,2; @ %r126 bra $L13; setp.eq.u32 %r127,%r54,0; @ ! %r127 bra $L30; bra $L1; $L12: .loc 1 122 9 mov.b64 %r61,%r62; shr.u64 %r129,%r61,32; cvt.u32.u64 %r131,%r129; add.u32 %r130,%r131,-2147483648; cvt.u64.u32 %r132,%r130; shl.b64 %r133,%r132,32; and.b64 %r134,%r61,4294967295; or.b64 %r135,%r134,%r133; mov.b64 %r62,%r135; .loc 1 124 20 bra $L1; $L13: .loc 1 125 27 mov.f64 %r137,0d3ca1a62633145c07; sub.f64 %r136,%r62,%r137; .loc 1 125 24 mov.f64 %r138,0d400921fb54442d18; sub.f64 %r62,%r138,%r136; bra $L1; $L30: .loc 1 127 21 mov.f64 %r140,0d3ca1a62633145c07; sub.f64 %r139,%r62,%r140; .loc 1 127 28 mov.f64 %r141,0d400921fb54442d18; sub.f64 %r62,%r139,%r141; bra $L1; $L15: .loc 1 84 21 mov.f64 %r62,0d400921fb54442d18; bra $L1; $L18: .loc 1 97 33 mov.f64 %r62,0d4002d97c7f3321d2; bra $L1; $L19: .loc 1 98 33 mov.f64 %r62,0dc002d97c7f3321d2; bra $L1; $L21: .loc 1 84 21 mov.f64 %r62,0d400921fb54442d18; bra $L1; $L22: .loc 1 85 21 mov.f64 %r62,0dc00921fb54442d18; $L1: .loc 1 129 1 mov.f64 %value,%r62; st.param.f64 [%value_out],%value; ret; } lib_a-e_atanh.o/1591654536 399 399 100644 3324 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r42; .reg .f64 %r43; .reg .f64 %r45; .reg .f64 %r46; .reg .u64 %r47; .reg .u64 %r48; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .pred %r54; .reg .pred %r55; .reg .pred %r56; .reg .f64 %r57; .reg .pred %r58; .reg .u64 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u64 %r62; .reg .pred %r63; .reg .f64 %r65; .reg .f64 %r66; .reg .f64 %r67; .reg .f64 %r68; .reg .f64 %r69; .reg .f64 %r70; .reg .f64 %r72; .reg .f64 %r73; .reg .f64 %r74; .reg .f64 %r75; .reg .f64 %r76; .reg .pred %r77; .reg .u64 %r79; .reg .u64 %r80; .reg .u64 %r81; .reg .u64 %r82; 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 %r42,%r47; .loc 1 60 5 and.b32 %r39,%r38,2147483647; .loc 1 61 16 neg.s32 %r50,%r42; .loc 1 61 14 or.b32 %r51,%r50,%r42; .loc 1 61 21 shr.u32 %r52,%r51,31; .loc 1 61 9 or.b32 %r53,%r52,%r39; .loc 1 61 5 setp.le.u32 %r54,%r53,1072693248; @ %r54 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 %r55,%r39,1072693248; @ %r55 bra $L4; .loc 1 64 14 div.rn.f64 %r45,%r46,0d0000000000000000; bra $L1; $L4: .loc 1 65 4 setp.gt.s32 %r56,%r39,1043333119; @ %r56 bra $L5; .loc 1 65 25 add.f64 %r57,%r46,0d7e37e43c8800759c; .loc 1 65 18 setp.gt.f64 %r58,%r57,0d0000000000000000; @ ! %r58 bra $L11; bra $L10; $L5: .loc 1 66 2 cvt.u64.u32 %r59,%r39; shl.b64 %r60,%r59,32; and.b64 %r61,%r47,4294967295; or.b64 %r62,%r61,%r60; mov.b64 %r43,%r62; .loc 1 67 4 setp.gt.s32 %r63,%r39,1071644671; @ %r63 bra $L7; $L9: .loc 1 68 8 add.f64 %r40,%r43,%r43; .loc 1 69 23 mul.f64 %r65,%r40,%r43; .loc 1 69 30 mov.f64 %r67,0d3ff0000000000000; sub.f64 %r66,%r67,%r43; .loc 1 69 25 div.rn.f64 %r68,%r65,%r66; .loc 1 69 14 add.f64 %r69,%r68,%r40; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r69; call (%value_in),log1p,(%out_arg1); ld.param.f64 %r70,[%value_in]; } .loc 1 69 8 mul.f64 %r45,%r70,0d3fe0000000000000; bra $L8; $L7: .loc 1 71 22 add.f64 %r72,%r43,%r43; .loc 1 71 30 mov.f64 %r74,0d3ff0000000000000; sub.f64 %r73,%r74,%r43; .loc 1 71 14 div.rn.f64 %r75,%r72,%r73; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r75; call (%value_in),log1p,(%out_arg1); ld.param.f64 %r76,[%value_in]; } .loc 1 71 8 mul.f64 %r45,%r76,0d3fe0000000000000; $L8: .loc 1 72 4 setp.ge.s32 %r77,%r38,0; @ %r77 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 %r79,%r39; shl.b64 %r80,%r79,32; and.b64 %r81,%r47,4294967295; or.b64 %r82,%r81,%r80; mov.b64 %r43,%r82; bra $L9; $L1: .loc 1 73 1 mov.f64 %value,%r45; st.param.f64 [%value_out],%value; ret; } lib_a-e_cosh.o/ 1591654536 399 399 100644 4322 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 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 %r35; .reg .u32 %r36; .reg .u32 %r42; .reg .f64 %r43; .reg .f64 %r44; .reg .u64 %r45; .reg .u64 %r46; .reg .pred %r47; .reg .pred %r48; .reg .f64 %r50; .reg .f64 %r52; .reg .pred %r53; .reg .f64 %r54; .reg .f64 %r55; .reg .f64 %r56; .reg .pred %r57; .reg .f64 %r59; .reg .f64 %r61; .reg .f64 %r62; .reg .f64 %r63; .reg .pred %r64; .reg .f64 %r66; .reg .f64 %r68; .reg .pred %r70; .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 .f64 %r84; .reg .f64 %r86; .reg .f64 %r87; .reg .f64 %r88; .reg .f64 %r89; mov.f64 %r44,%ar0; .loc 1 57 2 mov.b64 %r45,%r44; shr.u64 %r46,%r45,32; cvt.u32.u64 %r35,%r46; .loc 1 58 5 and.b32 %r36,%r35,2147483647; .loc 1 61 4 setp.le.s32 %r47,%r36,2146435071; @ %r47 bra $L2; .loc 1 61 29 mul.f64 %r43,%r44,%r44; bra $L1; $L2: .loc 1 64 4 setp.gt.s32 %r48,%r36,1071001154; @ %r48 bra $L4; .loc 1 65 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r44; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r50,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r50; call (%value_in),expm1,(%out_arg1); ld.param.f64 %r52,[%value_in]; } .loc 1 66 8 add.f64 %r43,%r52,0d3ff0000000000000; .loc 1 67 9 setp.le.s32 %r53,%r36,1015021567; @ %r53 bra $L1; .loc 1 68 19 mul.f64 %r54,%r52,%r52; .loc 1 68 25 add.f64 %r55,%r43,%r43; .loc 1 68 22 div.rn.f64 %r56,%r54,%r55; .loc 1 68 16 add.f64 %r43,%r56,0d3ff0000000000000; bra $L1; $L4: .loc 1 72 5 setp.gt.s32 %r57,%r36,1077280767; @ %r57 bra $L5; .loc 1 73 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r44; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r59,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r59; call (%value_in),__ieee754_exp,(%out_arg1); ld.param.f64 %r61,[%value_in]; } .loc 1 74 21 mov.f64 %r63,0d3fe0000000000000; div.rn.f64 %r62,%r63,%r61; .loc 1 74 16 fma.rn.f64 %r43,%r61,0d3fe0000000000000,%r62; bra $L1; $L5: .loc 1 78 5 setp.gt.s32 %r64,%r36,1082535489; @ %r64 bra $L6; .loc 1 78 36 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r44; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r66,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r66; call (%value_in),__ieee754_exp,(%out_arg1); ld.param.f64 %r68,[%value_in]; } .loc 1 78 35 mul.f64 %r43,%r68,0d3fe0000000000000; bra $L1; $L6: cvt.u32.u64 %r42,%r45; .loc 1 82 5 setp.le.s32 %r70,%r36,1082536909; @ %r70 bra $L7; .loc 1 83 17 set.u32.eq.u32 %r72,%r36,1082536910; neg.s32 %r73,%r72; .loc 1 83 35 set.u32.le.u32 %r75,%r42,-1883637635; neg.s32 %r76,%r75; .loc 1 83 30 cvt.u16.u32 %r78,%r73; cvt.u16.u32 %r79,%r76; and.b16 %r77,%r78,%r79; .loc 1 82 20 cvt.u32.u16 %r80,%r77; cvt.u16.u8 %r81,%r80; setp.eq.u16 %r82,%r81,0; @ %r82 bra $L8; $L7: .loc 1 84 29 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r44; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r84,[%value_in]; } .loc 1 84 10 mul.f64 %r86,%r84,0d3fe0000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r86; call (%value_in),__ieee754_exp,(%out_arg1); ld.param.f64 %r87,[%value_in]; } .loc 1 85 8 mul.f64 %r88,%r87,0d3fe0000000000000; .loc 1 86 14 mul.f64 %r43,%r88,%r87; bra $L1; $L8: .loc 1 90 13 mov.f64 %r89,0d7e37e43c8800759c; mul.f64 %r43,%r89,0d7e37e43c8800759c; $L1: .loc 1 91 1 mov.f64 %value,%r43; st.param.f64 [%value_out],%value; ret; } lib_a-e_exp.o/ 1591654536 399 399 100644 6385 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 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 %r49; .reg .f64 %r50; .reg .u32 %r51; .reg .u32 %r53; .reg .u32 %r54; .reg .f64 %r56; .reg .f64 %r57; .reg .f64 %r58; .reg .f64 %r59; .reg .f64 %r60; .reg .f64 %r65; .reg .u32 %r74; .reg .f64 %r77; .reg .f64 %r78; .reg .u64 %r79; .reg .u64 %r80; .reg .pred %r81; .reg .pred %r82; .reg .u32 %r83; .reg .u32 %r85; .reg .u32 %r86; .reg .pred %r87; .reg .pred %r88; .reg .pred %r89; .reg .f64 %r90; .reg .pred %r91; .reg .pred %r92; .reg .pred %r93; .reg .u64 %r94; .reg .u64 %r95; .reg .u64 %r96; .reg .u64 %r97; .reg .f64 %r98; .reg .u64 %r99; .reg .u64 %r102; .reg .u32 %r103; .reg .u32 %r104; .reg .u64 %r105; .reg .u64 %r106; .reg .u64 %r107; .reg .u64 %r108; .reg .f64 %r109; .reg .f64 %r110; .reg .f64 %r112; .reg .f64 %r113; .reg .f64 %r114; .reg .f64 %r115; .reg .f64 %r116; .reg .pred %r117; .reg .pred %r118; .reg .f64 %r119; .reg .pred %r120; .reg .f64 %r122; .reg .f64 %r123; .reg .f64 %r124; .reg .f64 %r125; .reg .f64 %r126; .reg .f64 %r127; .reg .f64 %r128; .reg .f64 %r129; .reg .f64 %r130; .reg .f64 %r131; .reg .f64 %r132; .reg .u64 %r133; .reg .u64 %r134; .reg .pred %r135; .reg .u32 %r136; .reg .u32 %r137; .reg .u64 %r138; .reg .u64 %r139; .reg .u64 %r140; .reg .u64 %r141; .reg .u32 %r142; .reg .u32 %r143; .reg .u32 %r144; .reg .u64 %r145; .reg .u64 %r146; .reg .u64 %r147; .reg .u64 %r148; .reg .f64 %r150; .reg .f64 %r151; .reg .f64 %r152; .reg .f64 %r153; .reg .f64 %r154; .reg .f64 %r155; mov.f64 %r78,%ar0; mov.b64 %r79,%r78; shr.u64 %r80,%r79,32; cvt.u32.u64 %r54,%r80; .loc 1 116 16 shr.u32 %r22,%r54,31; .loc 1 117 5 and.b32 %r53,%r54,2147483647; .loc 1 120 4 setp.le.u32 %r81,%r53,1082535489; @ %r81 bra $L2; .loc 1 121 15 setp.le.u32 %r82,%r53,2146435071; @ %r82 bra $L3; .loc 1 124 10 and.b32 %r83,%r54,1048575; .loc 1 124 19 cvt.u32.u64 %r86,%r79; or.b32 %r85,%r83,%r86; .loc 1 124 5 setp.eq.u32 %r87,%r85,0; @ %r87 bra $L4; .loc 1 125 16 add.f64 %r77,%r78,%r78; bra $L1; $L4: .loc 1 126 26 setp.ne.u32 %r88,%r22,0; selp.f64 %r77,0d0000000000000000,%r78,%r88; bra $L1; $L3: .loc 1 128 8 setp.gt.f64 %r89,%r78,0d40862e42fefa39ef; @ ! %r89 bra $L23; .loc 1 128 37 mov.f64 %r90,0d7e37e43c8800759c; mul.f64 %r77,%r90,0d7e37e43c8800759c; bra $L1; $L23: .loc 1 129 8 setp.lt.f64 %r91,%r78,0dc0874910d52d3051; @ ! %r91 bra $L8; bra $L17; $L2: .loc 1 133 4 setp.le.u32 %r92,%r53,1071001154; @ %r92 bra $L9; .loc 1 134 8 setp.gt.u32 %r93,%r53,1072734897; @ %r93 bra $L8; .loc 1 135 15 cvta.const.u64 %r94,ln2HI; cvt.s64.s32 %r95,%r22; shl.b64 %r96,%r95,3; add.u64 %r97,%r94,%r96; .loc 1 135 6 ld.f64 %r98,[%r97]; sub.f64 %r49,%r78,%r98; .loc 1 135 24 cvta.const.u64 %r99,ln2LO; add.u64 %r102,%r99,%r96; ld.f64 %r50,[%r102]; .loc 1 135 42 mov.u32 %r104,1; sub.u32 %r103,%r104,%r22; .loc 1 135 39 sub.u32 %r51,%r103,%r22; bra $L10; $L8: .loc 1 137 21 cvta.const.u64 %r105,halF; cvt.s64.s32 %r106,%r22; shl.b64 %r107,%r106,3; add.u64 %r108,%r105,%r107; .loc 1 137 16 ld.f64 %r110,[%r108]; fma.rn.f64 %r109,%r78,0d3ff71547652b82fe,%r110; .loc 1 137 6 cvt.rzi.s32.f64 %r51,%r109; .loc 1 138 6 cvt.rn.f64.s32 %r56,%r51; .loc 1 139 6 fma.rn.f64 %r49,%r56,0dbfe62e42fee00000,%r78; .loc 1 140 6 mul.f64 %r50,%r56,0d3dea39ef35793c76; $L10: .loc 1 142 9 sub.f64 %r78,%r49,%r50; .loc 1 149 5 mul.f64 %r57,%r78,%r78; .loc 1 150 34 fma.rn.f64 %r112,%r57,0d3e66376972bea4d0,0dbebbbd41c5d26bf1; .loc 1 150 28 fma.rn.f64 %r113,%r112,%r57,0d3f11566aaf25de2c; .loc 1 150 22 fma.rn.f64 %r114,%r113,%r57,0dbf66c16c16bebd93; .loc 1 150 16 fma.rn.f64 %r115,%r114,%r57,0d3fc555555555553e; .loc 1 150 5 neg.f64 %r116,%r115; fma.rn.f64 %r65,%r116,%r57,%r78; mul.f64 %r155,%r78,%r65; .loc 1 151 4 setp.eq.u32 %r117,%r51,0; @ ! %r117 bra $L24; bra $L11; $L9: .loc 1 144 9 setp.gt.u32 %r118,%r53,1043333119; @ %r118 bra $L13; .loc 1 145 13 add.f64 %r119,%r78,0d7e37e43c8800759c; .loc 1 145 8 setp.gt.f64 %r120,%r119,0d3ff0000000000000; @ ! %r120 bra $L13; .loc 1 145 31 add.f64 %r77,%r78,0d3ff0000000000000; bra $L1; $L11: .loc 1 151 32 mov.f64 %r123,0d4000000000000000; sub.f64 %r122,%r65,%r123; .loc 1 151 29 div.rn.f64 %r124,%r155,%r122; .loc 1 151 37 sub.f64 %r125,%r124,%r78; .loc 1 151 22 mov.f64 %r126,0d3ff0000000000000; sub.f64 %r77,%r126,%r125; bra $L1; $L24: .loc 1 152 32 mov.f64 %r128,0d4000000000000000; sub.f64 %r127,%r128,%r65; .loc 1 152 27 div.rn.f64 %r129,%r155,%r127; .loc 1 152 21 sub.f64 %r130,%r50,%r129; .loc 1 152 36 sub.f64 %r131,%r130,%r49; .loc 1 152 11 mov.f64 %r132,0d3ff0000000000000; sub.f64 %r58,%r132,%r131; mov.b64 %r133,%r58; shr.u64 %r134,%r133,32; cvt.u32.u64 %r74,%r134; .loc 1 153 4 setp.lt.s32 %r135,%r51,-1021; @ %r135 bra $L15; .loc 1 156 6 shl.b32 %r136,%r51,20; add.u32 %r137,%r136,%r74; cvt.u64.u32 %r138,%r137; shl.b64 %r139,%r138,32; and.b64 %r140,%r133,4294967295; or.b64 %r141,%r140,%r139; mov.b64 %r77,%r141; .loc 1 157 13 bra $L1; $L15: .loc 1 161 6 add.u32 %r142,%r51,1000; shl.b32 %r143,%r142,20; add.u32 %r144,%r143,%r74; cvt.u64.u32 %r145,%r144; shl.b64 %r146,%r145,32; and.b64 %r147,%r133,4294967295; or.b64 %r148,%r147,%r146; mov.b64 %r59,%r148; .loc 1 162 14 mul.f64 %r77,%r59,0d0170000000000000; bra $L1; $L17: .loc 1 126 26 mov.f64 %r77,0d0000000000000000; bra $L1; $L13: .loc 1 149 5 mul.f64 %r60,%r78,%r78; .loc 1 150 5 neg.f64 %r150,%r60; .loc 1 150 34 fma.rn.f64 %r151,%r60,0d3e66376972bea4d0,0dbebbbd41c5d26bf1; .loc 1 150 28 fma.rn.f64 %r152,%r60,%r151,0d3f11566aaf25de2c; .loc 1 150 22 fma.rn.f64 %r153,%r60,%r152,0dbf66c16c16bebd93; .loc 1 150 16 fma.rn.f64 %r154,%r60,%r153,0d3fc555555555553e; .loc 1 150 5 fma.rn.f64 %r65,%r150,%r154,%r78; mul.f64 %r155,%r78,%r65; bra $L11; $L1: .loc 1 164 1 mov.f64 %value,%r77; st.param.f64 [%value_out],%value; ret; } lib_a-e_fmod.o/ 1591654536 399 399 100644 11019 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r46; .reg .u32 %r79; .reg .u32 %r86; .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 %r100; .reg .u32 %r101; .reg .u32 %r104; .reg .u32 %r106; .reg .u32 %r107; .reg .u32 %r108; .reg .u32 %r109; .reg .u32 %r110; .reg .u32 %r114; .reg .u32 %r115; .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 .u64 %r127; .reg .u64 %r128; .reg .u32 %r130; .reg .u32 %r132; .reg .u32 %r133; .reg .u32 %r135; .reg .u32 %r136; .reg .u16 %r137; .reg .u16 %r138; .reg .u16 %r139; .reg .u32 %r140; .reg .u16 %r141; .reg .pred %r142; .reg .u32 %r143; .reg .u32 %r144; .reg .u32 %r145; .reg .u32 %r146; .reg .pred %r147; .reg .pred %r149; .reg .u32 %r151; .reg .u32 %r152; .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 .u64 %r163; .reg .u32 %r164; .reg .u64 %r165; .reg .u64 %r166; .reg .u64 %r167; .reg .u32 %r168; .reg .pred %r169; .reg .pred %r170; .reg .pred %r171; .reg .pred %r173; .reg .pred %r174; .reg .pred %r176; .reg .u32 %r177; .reg .u32 %r178; .reg .pred %r179; .reg .pred %r180; .reg .pred %r181; .reg .pred %r183; .reg .pred %r184; .reg .pred %r186; .reg .u32 %r187; .reg .pred %r188; .reg .u32 %r189; .reg .pred %r190; .reg .u32 %r191; .reg .u32 %r192; .reg .u32 %r193; .reg .u32 %r194; .reg .u32 %r195; .reg .u32 %r197; .reg .pred %r198; .reg .u32 %r199; .reg .u32 %r200; .reg .u32 %r201; .reg .u32 %r202; .reg .u32 %r203; .reg .pred %r204; .reg .pred %r205; .reg .u32 %r206; .reg .u32 %r207; .reg .u32 %r209; .reg .pred %r210; .reg .u64 %r211; .reg .u32 %r212; .reg .u64 %r213; .reg .u64 %r214; .reg .u64 %r215; .reg .u32 %r216; .reg .u32 %r217; .reg .pred %r219; .reg .pred %r220; .reg .pred %r221; .reg .u32 %r222; .reg .pred %r223; .reg .pred %r224; .reg .u64 %r225; .reg .u32 %r226; .reg .u64 %r227; .reg .u64 %r228; .reg .u64 %r229; .reg .u32 %r230; .reg .u32 %r231; .reg .pred %r233; .reg .u32 %r235; .reg .u32 %r236; .reg .u32 %r237; .reg .u32 %r238; .reg .u32 %r239; .reg .u64 %r240; .reg .u64 %r244; .reg .u64 %r245; .reg .u64 %r246; .reg .u32 %r247; .reg .pred %r248; .reg .u32 %r249; .reg .u32 %r250; .reg .u32 %r251; .reg .pred %r252; .reg .u32 %r253; .reg .u32 %r254; .reg .u32 %r255; .reg .u32 %r256; .reg .u64 %r257; .reg .u64 %r261; .reg .u64 %r262; .reg .u64 %r263; .reg .pred %r265; mov.f64 %r123,%ar0; mov.f64 %r124,%ar1; .loc 1 40 2 mov.b64 %r125,%r123; shr.u64 %r126,%r125,32; cvt.u32.u64 %r97,%r126; .loc 1 41 2 mov.b64 %r127,%r124; shr.u64 %r128,%r127,32; cvt.u32.u64 %r98,%r128; cvt.u32.u64 %r96,%r127; .loc 1 43 5 and.b32 %r100,%r97,2147483647; .loc 1 44 5 and.b32 %r101,%r98,2147483647; .loc 1 47 8 or.b32 %r130,%r101,%r96; .loc 1 47 4 set.u32.eq.u32 %r132,%r130,0; neg.s32 %r133,%r132; .loc 1 47 15 set.u32.gt.s32 %r135,%r100,2146435071; neg.s32 %r136,%r135; cvt.u16.u32 %r138,%r133; cvt.u16.u32 %r139,%r136; or.b16 %r137,%r138,%r139; cvt.u32.u16 %r140,%r137; cvt.u16.u8 %r141,%r140; setp.ne.u16 %r142,%r141,0; @ %r142 bra $L2; .loc 1 48 14 neg.s32 %r143,%r96; .loc 1 48 13 or.b32 %r144,%r143,%r96; .loc 1 48 18 shr.u32 %r145,%r144,31; .loc 1 48 8 or.b32 %r146,%r145,%r101; .loc 1 47 33 setp.le.u32 %r147,%r146,2146435072; @ %r147 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 %r94,%r125; .loc 1 42 5 and.b32 %r119,%r97,-2147483648; .loc 1 50 4 setp.gt.s32 %r149,%r100,%r101; @ %r149 bra $L5; .loc 1 51 12 set.u32.lt.s32 %r151,%r100,%r101; neg.s32 %r152,%r151; .loc 1 51 21 set.u32.lt.u32 %r154,%r94,%r96; neg.s32 %r155,%r154; .loc 1 51 16 cvt.u16.u32 %r157,%r152; cvt.u16.u32 %r158,%r155; or.b16 %r156,%r157,%r158; .loc 1 51 8 cvt.u32.u16 %r159,%r156; cvt.u16.u8 %r160,%r159; setp.ne.u16 %r161,%r160,0; @ %r161 bra $L37; .loc 1 52 8 setp.ne.u32 %r162,%r94,%r96; @ %r162 bra $L5; .loc 1 53 14 cvta.const.u64 %r163,Zero; .loc 1 53 29 shr.u32 %r164,%r119,31; .loc 1 53 14 cvt.u64.u32 %r165,%r164; shl.b64 %r166,%r165,3; add.u64 %r167,%r163,%r166; ld.f64 %r122,[%r167]; bra $L1; $L5: .loc 1 57 4 and.b32 %r168,%r97,2146435072; setp.ne.u32 %r169,%r168,0; @ %r169 bra $L6; .loc 1 58 8 setp.ne.u32 %r170,%r100,0; @ %r170 bra $L7; .loc 1 59 21 mov.u32 %r104,%r94; .loc 1 59 3 setp.le.s32 %r171,%r94,0; @ %r171 bra $L38; .loc 1 59 11 mov.u32 %r93,-1043; $L9: .loc 1 59 41 add.u32 %r93,%r93,-1; .loc 1 59 32 add.u32 %r104,%r104,%r104; .loc 1 59 3 setp.gt.s32 %r173,%r104,0; @ %r173 bra $L9; bra $L8; $L7: .loc 1 61 20 shl.b32 %r106,%r100,11; .loc 1 61 3 setp.le.s32 %r174,%r106,0; @ %r174 bra $L39; .loc 1 61 11 mov.u32 %r93,-1022; $L10: .loc 1 61 46 add.u32 %r93,%r93,-1; .loc 1 61 37 add.u32 %r106,%r106,%r106; .loc 1 61 3 setp.gt.s32 %r176,%r106,0; @ %r176 bra $L10; bra $L8; $L6: .loc 1 63 17 shr.s32 %r177,%r100,20; .loc 1 63 12 add.u32 %r93,%r177,-1023; bra $L8; $L38: .loc 1 59 11 mov.u32 %r93,-1043; bra $L8; $L39: .loc 1 61 11 mov.u32 %r93,-1022; $L8: .loc 1 66 4 and.b32 %r178,%r98,2146435072; setp.ne.u32 %r179,%r178,0; @ %r179 bra $L11; .loc 1 67 8 setp.ne.u32 %r180,%r101,0; @ %r180 bra $L12; .loc 1 68 21 mov.u32 %r107,%r96; .loc 1 68 3 setp.le.s32 %r181,%r96,0; @ %r181 bra $L40; .loc 1 68 11 mov.u32 %r114,-1043; $L14: .loc 1 68 41 add.u32 %r114,%r114,-1; .loc 1 68 32 add.u32 %r107,%r107,%r107; .loc 1 68 3 setp.gt.s32 %r183,%r107,0; @ %r183 bra $L14; bra $L13; $L12: .loc 1 70 20 shl.b32 %r108,%r101,11; .loc 1 70 3 setp.le.s32 %r184,%r108,0; @ %r184 bra $L41; .loc 1 70 11 mov.u32 %r114,-1022; $L15: .loc 1 70 46 add.u32 %r114,%r114,-1; .loc 1 70 37 add.u32 %r108,%r108,%r108; .loc 1 70 3 setp.gt.s32 %r186,%r108,0; @ %r186 bra $L15; bra $L13; $L11: .loc 1 72 17 shr.s32 %r187,%r101,20; .loc 1 72 12 add.u32 %r114,%r187,-1023; bra $L13; $L40: .loc 1 68 11 mov.u32 %r114,-1043; bra $L13; $L41: .loc 1 70 11 mov.u32 %r114,-1022; $L13: .loc 1 75 4 setp.lt.s32 %r188,%r93,-1022; @ %r188 bra $L16; .loc 1 76 33 and.b32 %r38,%r97,1048575; .loc 1 76 9 or.b32 %r90,%r38,1048576; bra $L17; $L16: .loc 1 78 8 mov.u32 %r189,-1022; sub.u32 %r109,%r189,%r93; .loc 1 79 8 setp.gt.s32 %r190,%r109,31; @ %r190 bra $L18; .loc 1 80 31 add.u32 %r191,%r93,1054; .loc 1 80 26 shr.u32 %r192,%r94,%r191; .loc 1 80 18 shl.b32 %r193,%r100,%r109; .loc 1 80 22 or.b32 %r90,%r192,%r193; .loc 1 81 13 shl.b32 %r94,%r94,%r109; bra $L17; $L18: .loc 1 83 14 mov.u32 %r195,-1054; sub.u32 %r194,%r195,%r93; .loc 1 83 10 shl.b32 %r90,%r94,%r194; .loc 1 84 6 mov.u32 %r94,0; $L17: .loc 1 87 4 setp.lt.s32 %r265,%r114,-1022; @ %r265 bra $L19; .loc 1 88 33 and.b32 %r46,%r98,1048575; .loc 1 88 9 or.b32 %r91,%r46,1048576; bra $L20; $L19: .loc 1 90 8 mov.u32 %r197,-1022; sub.u32 %r110,%r197,%r114; .loc 1 91 8 setp.gt.s32 %r198,%r110,31; @ %r198 bra $L21; .loc 1 92 31 add.u32 %r199,%r114,1054; .loc 1 92 26 shr.u32 %r200,%r96,%r199; .loc 1 92 18 shl.b32 %r201,%r101,%r110; .loc 1 92 22 or.b32 %r91,%r200,%r201; .loc 1 93 13 shl.b32 %r96,%r96,%r110; bra $L20; $L21: .loc 1 95 14 mov.u32 %r203,-1054; sub.u32 %r202,%r203,%r114; .loc 1 95 10 shl.b32 %r91,%r96,%r202; .loc 1 96 6 mov.u32 %r96,0; $L20: .loc 1 101 4 sub.u32 %r118,%r93,%r114; .loc 1 102 7 bra $L22; $L27: .loc 1 103 27 setp.ge.u32 %r204,%r94,%r96; @ %r204 bra $L23; .loc 1 103 38 add.u32 %r92,%r92,-1; $L23: .loc 1 104 8 setp.ge.s32 %r205,%r92,0; @ %r205 bra $L24; .loc 1 104 22 add.u32 %r206,%r90,%r90; .loc 1 104 29 shr.u32 %r207,%r94,31; .loc 1 104 25 add.u32 %r90,%r206,%r207; .loc 1 104 39 add.u32 %r94,%r94,%r94; bra $L25; $L24: .loc 1 106 13 or.b32 %r209,%r92,%r117; .loc 1 106 9 setp.ne.u32 %r210,%r209,0; @ %r210 bra $L26; .loc 1 107 18 cvta.const.u64 %r211,Zero; .loc 1 107 33 shr.u32 %r212,%r119,31; .loc 1 107 18 cvt.u64.u32 %r213,%r212; shl.b64 %r214,%r213,3; add.u64 %r215,%r211,%r214; ld.f64 %r122,[%r215]; bra $L1; $L26: .loc 1 108 14 add.u32 %r216,%r92,%r92; .loc 1 108 21 shr.u32 %r217,%r117,31; .loc 1 108 17 add.u32 %r90,%r216,%r217; .loc 1 108 31 add.u32 %r94,%r117,%r117; $L25: add.u32 %r118,%r118,-1; $L22: sub.u32 %r92,%r90,%r91; sub.u32 %r117,%r94,%r96; .loc 1 102 7 setp.ne.u32 %r219,%r118,0; @ %r219 bra $L27; .loc 1 111 23 setp.ge.u32 %r220,%r94,%r96; @ %r220 bra $L28; .loc 1 111 34 add.u32 %r92,%r92,-1; $L28: .loc 1 112 4 setp.lt.s32 %r221,%r92,0; selp.u32 %r94,%r94,%r117,%r221; selp.u32 %r90,%r90,%r92,%r221; .loc 1 115 8 or.b32 %r222,%r90,%r94; .loc 1 115 4 setp.eq.u32 %r223,%r222,0; @ %r223 bra $L30; .loc 1 117 7 setp.le.s32 %r224,%r90,1048575; @ %r224 bra $L31; bra $L32; $L30: .loc 1 116 17 cvta.const.u64 %r225,Zero; .loc 1 116 32 shr.u32 %r226,%r119,31; .loc 1 116 17 cvt.u64.u32 %r227,%r226; shl.b64 %r228,%r227,3; add.u64 %r229,%r225,%r228; ld.f64 %r122,[%r229]; bra $L1; $L31: .loc 1 118 13 add.u32 %r230,%r90,%r90; .loc 1 118 20 shr.u32 %r231,%r94,31; .loc 1 118 16 add.u32 %r90,%r230,%r231; .loc 1 118 30 add.u32 %r94,%r94,%r94; .loc 1 119 9 add.u32 %r114,%r114,-1; .loc 1 117 7 setp.le.s32 %r233,%r90,1048575; @ %r233 bra $L31; setp.lt.s32 %r265,%r114,-1022; $L32: .loc 1 121 4 @ %r265 bra $L33; .loc 1 122 32 add.u32 %r235,%r114,1023; .loc 1 122 38 shl.b32 %r236,%r235,20; .loc 1 122 15 add.u32 %r237,%r90,-1048576; .loc 1 123 6 or.b32 %r238,%r237,%r119; or.b32 %r239,%r236,%r238; cvt.u64.u32 %r240,%r239; cvt.u64.u32 %r244,%r94; shl.b64 %r245,%r240,32; or.b64 %r246,%r245,%r244; mov.b64 %r122,%r246; bra $L1; $L33: .loc 1 125 8 mov.u32 %r247,-1022; sub.u32 %r115,%r247,%r114; .loc 1 126 8 setp.gt.s32 %r248,%r115,20; @ %r248 bra $L34; .loc 1 127 11 shr.u32 %r79,%r94,%r115; .loc 1 127 36 add.u32 %r249,%r114,1054; .loc 1 127 31 shl.b32 %r250,%r90,%r249; .loc 1 127 6 or.b32 %r95,%r250,%r79; .loc 1 128 6 shr.s32 %r251,%r90,%r115; or.b32 %r119,%r119,%r251; bra $L35; $L34: .loc 1 129 16 setp.gt.s32 %r252,%r115,31; @ %r252 bra $L36; .loc 1 130 24 shr.u32 %r86,%r94,%r115; .loc 1 130 16 add.u32 %r253,%r114,1054; .loc 1 130 11 shl.b32 %r254,%r90,%r253; .loc 1 130 6 or.b32 %r95,%r254,%r86; bra $L35; $L36: .loc 1 132 14 mov.u32 %r256,-1054; sub.u32 %r255,%r256,%r114; .loc 1 132 10 shr.s32 %r95,%r90,%r255; $L35: .loc 1 134 6 cvt.u64.u32 %r257,%r119; cvt.u64.u32 %r261,%r95; shl.b64 %r262,%r257,32; or.b64 %r263,%r262,%r261; mov.b64 %r122,%r263; bra $L1; $L37: .loc 1 51 34 mov.f64 %r122,%r123; $L1: .loc 1 138 1 mov.f64 %value,%r122; st.param.f64 [%value_out],%value; ret; } lib_a-e_hypot.o/1591654536 399 399 100644 6724 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r49; .reg .f64 %r53; .reg .u32 %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .f64 %r64; .reg .f64 %r65; .reg .f64 %r67; .reg .f64 %r69; .reg .f64 %r71; .reg .f64 %r73; .reg .u64 %r78; .reg .u64 %r79; .reg .u64 %r83; .reg .u64 %r84; .reg .f64 %r89; .reg .f64 %r90; .reg .f64 %r91; .reg .u32 %r92; .reg .f64 %r93; .reg .u64 %r94; .reg .u64 %r95; .reg .u64 %r96; .reg .u64 %r97; .reg .pred %r98; .reg .u64 %r100; .reg .u64 %r101; .reg .u64 %r102; .reg .u64 %r104; .reg .u64 %r105; .reg .u64 %r106; .reg .u32 %r107; .reg .pred %r108; .reg .pred %r109; .reg .pred %r110; .reg .u32 %r111; .reg .u32 %r113; .reg .u32 %r114; .reg .pred %r115; .reg .u32 %r116; .reg .u32 %r118; .reg .u32 %r119; .reg .pred %r120; .reg .u64 %r122; .reg .u64 %r123; .reg .u64 %r124; .reg .u64 %r126; .reg .u64 %r127; .reg .u64 %r128; .reg .pred %r129; .reg .pred %r130; .reg .u64 %r131; .reg .u32 %r132; .reg .u32 %r133; .reg .pred %r134; .reg .u64 %r136; .reg .u64 %r137; .reg .u64 %r138; .reg .u64 %r140; .reg .u64 %r141; .reg .u64 %r142; .reg .pred %r143; .reg .u64 %r145; .reg .f64 %r149; .reg .f64 %r150; .reg .f64 %r151; .reg .f64 %r152; .reg .f64 %r153; .reg .f64 %r154; .reg .f64 %r155; .reg .f64 %r156; .reg .f64 %r157; .reg .u64 %r159; .reg .u32 %r162; .reg .u64 %r163; .reg .u64 %r164; .reg .f64 %r167; .reg .f64 %r168; .reg .f64 %r169; .reg .f64 %r170; .reg .f64 %r171; .reg .f64 %r172; .reg .f64 %r173; .reg .f64 %r174; .reg .f64 %r175; .reg .f64 %r177; .reg .pred %r178; .reg .u32 %r179; .reg .u32 %r180; .reg .u64 %r181; .reg .u64 %r182; .reg .u64 %r186; .reg .u64 %r187; mov.f64 %r90,%ar0; mov.f64 %r91,%ar1; .loc 1 60 2 mov.b64 %r94,%r90; shr.u64 %r95,%r94,32; cvt.u32.u64 %r58,%r95; .loc 1 61 5 and.b32 %r56,%r58,2147483647; .loc 1 62 2 mov.b64 %r96,%r91; shr.u64 %r97,%r96,32; cvt.u32.u64 %r59,%r97; .loc 1 63 5 and.b32 %r57,%r59,2147483647; .loc 1 64 4 setp.ge.s32 %r98,%r56,%r57; @ %r98 bra $L2; mov.u32 %r92,%r56; mov.u32 %r56,%r57; mov.u32 %r57,%r92; mov.f64 %r93,%r90; .loc 1 64 16 mov.f64 %r90,%r91; .loc 1 64 20 mov.f64 %r91,%r93; $L2: .loc 1 65 2 mov.b64 %r78,%r90; cvt.u64.u32 %r186,%r56; shl.b64 %r100,%r186,32; and.b64 %r101,%r78,4294967295; or.b64 %r102,%r101,%r100; mov.b64 %r89,%r102; .loc 1 66 2 mov.b64 %r79,%r91; cvt.u64.u32 %r187,%r57; shl.b64 %r104,%r187,32; and.b64 %r105,%r79,4294967295; or.b64 %r106,%r105,%r104; mov.b64 %r53,%r106; .loc 1 67 8 sub.u32 %r107,%r56,%r57; .loc 1 67 4 setp.le.s32 %r108,%r107,62914560; @ %r108 bra $L3; .loc 1 67 33 add.f64 %r89,%r89,%r53; bra $L1; $L3: .loc 1 69 4 setp.le.s32 %r109,%r56,1596981248; @ %r109 bra $L13; .loc 1 70 7 setp.le.s32 %r110,%r56,2146435071; @ %r110 bra $L6; .loc 1 74 16 and.b32 %r111,%r56,1048575; .loc 1 74 25 cvt.u32.u64 %r114,%r102; or.b32 %r113,%r111,%r114; .loc 1 74 11 setp.eq.u32 %r115,%r113,0; @ %r115 bra $L7; .loc 1 72 11 add.f64 %r89,%r89,%r53; $L7: .loc 1 76 16 xor.b32 %r116,%r57,2146435072; .loc 1 76 28 cvt.u32.u64 %r119,%r106; or.b32 %r118,%r116,%r119; .loc 1 76 11 setp.ne.u32 %r120,%r118,0; .loc 1 76 40 selp.f64 %r89,%r89,%r53,%r120; bra $L1; $L6: .loc 1 80 8 add.u32 %r56,%r56,-629145600; .loc 1 80 26 add.u32 %r57,%r57,-629145600; .loc 1 81 5 cvt.u64.u32 %r186,%r56; shl.b64 %r122,%r186,32; and.b64 %r123,%r102,4294967295; or.b64 %r124,%r123,%r122; mov.b64 %r89,%r124; .loc 1 82 5 cvt.u64.u32 %r187,%r57; shl.b64 %r126,%r187,32; and.b64 %r127,%r106,4294967295; or.b64 %r128,%r127,%r126; mov.b64 %r53,%r128; .loc 1 80 43 mov.u32 %r55,600; bra $L5; $L13: .loc 1 68 3 mov.u32 %r55,0; $L5: .loc 1 84 4 setp.gt.s32 %r129,%r57,548405247; @ %r129 bra $L8; .loc 1 85 8 setp.gt.s32 %r130,%r57,1048575; @ %r130 bra $L9; .loc 1 88 9 mov.b64 %r131,%r53; cvt.u32.u64 %r133,%r131; or.b32 %r132,%r57,%r133; .loc 1 88 5 setp.eq.u32 %r134,%r132,0; @ %r134 bra $L1; .loc 1 90 3 mov.f64 %r64,0d7fd0000000000000; .loc 1 91 5 mul.f64 %r53,%r53,%r64; .loc 1 92 5 mul.f64 %r89,%r89,%r64; .loc 1 93 5 add.u32 %r55,%r55,-1022; bra $L8; $L9: .loc 1 95 13 add.u32 %r56,%r56,629145600; .loc 1 96 6 add.u32 %r57,%r57,629145600; .loc 1 97 5 add.u32 %r55,%r55,-600; .loc 1 98 3 mov.b64 %r83,%r89; cvt.u64.u32 %r186,%r56; shl.b64 %r136,%r186,32; and.b64 %r137,%r83,4294967295; or.b64 %r138,%r137,%r136; mov.b64 %r89,%r138; .loc 1 99 3 mov.b64 %r84,%r53; cvt.u64.u32 %r187,%r57; shl.b64 %r140,%r187,32; and.b64 %r141,%r84,4294967295; or.b64 %r142,%r141,%r140; mov.b64 %r53,%r142; $L8: .loc 1 103 4 sub.f64 %r65,%r89,%r53; .loc 1 104 5 setp.lt.f64 %r143,%r53,%r65; @ ! %r143 bra $L24; .loc 1 106 6 shl.b64 %r145,%r186,32; mov.b64 %r67,%r145; .loc 1 108 36 neg.f64 %r149,%r53; .loc 1 108 45 add.f64 %r150,%r89,%r67; .loc 1 107 9 sub.f64 %r151,%r89,%r67; .loc 1 108 42 mul.f64 %r152,%r150,%r151; .loc 1 108 39 neg.f64 %r153,%r152; fma.rn.f64 %r154,%r149,%r53,%r153; .loc 1 108 11 neg.f64 %r155,%r154; fma.rn.f64 %r156,%r67,%r67,%r155; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r156; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r157,[%value_in]; } mov.f64 %r89,%r157; bra $L12; $L24: .loc 1 112 6 shl.b64 %r159,%r187,32; mov.b64 %r69,%r159; .loc 1 115 6 add.u32 %r162,%r56,1048576; cvt.u64.u32 %r163,%r162; shl.b64 %r164,%r163,32; mov.b64 %r71,%r164; .loc 1 117 36 neg.f64 %r167,%r65; .loc 1 113 9 sub.f64 %r168,%r53,%r69; .loc 1 116 9 neg.f64 %r169,%r71; fma.rn.f64 %r170,%r89,0d4000000000000000,%r169; .loc 1 117 49 mul.f64 %r171,%r170,%r53; .loc 1 117 46 fma.rn.f64 %r172,%r168,%r71,%r171; .loc 1 117 39 neg.f64 %r173,%r172; fma.rn.f64 %r174,%r167,%r65,%r173; .loc 1 117 11 neg.f64 %r175,%r174; fma.rn.f64 %r49,%r69,%r71,%r175; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r49; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r177,[%value_in]; } mov.f64 %r89,%r177; $L12: .loc 1 119 4 setp.eq.u32 %r178,%r55,0; @ %r178 bra $L1; .loc 1 123 6 shl.b32 %r179,%r55,20; add.u32 %r180,%r179,1072693248; cvt.u64.u32 %r181,%r180; shl.b64 %r182,%r181,32; mov.b64 %r73,%r182; .loc 1 124 15 mul.f64 %r89,%r89,%r73; $L1: .loc 1 126 1 mov.f64 %value,%r89; st.param.f64 [%value_out],%value; ret; } lib_a-e_j0.o/ 1591654536 399 399 100644 18244 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r28; .reg .u32 %r35; .reg .u32 %r36; .reg .f64 %r37; .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 %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .pred %r53; .reg .pred %r54; .reg .pred %r55; .reg .f64 %r56; .reg .f64 %r57; .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; mov.f64 %r50,%ar0; .loc 1 339 2 mov.b64 %r51,%r50; shr.u64 %r52,%r51,32; cvt.u32.u64 %r35,%r52; .loc 1 340 5 and.b32 %r36,%r35,2147483647; .loc 1 341 4 setp.gt.s32 %r53,%r36,1075838975; @ %r53 bra $L3; .loc 1 342 9 setp.gt.s32 %r54,%r36,1074933386; @ %r54 bra $L4; .loc 1 343 9 setp.le.s32 %r55,%r36,1074191212; selp.f64 %r48,0d402d50b344391809,0d4065b296fc379081,%r55; selp.f64 %r47,0d40633c033ab6faff,0d40919ffcb8c39b7e,%r55; selp.f64 %r46,0d4070e78642ea079b,0d4092a66e6d1061d6,%r55; selp.f64 %r45,0d4061069e0ee8878f,0d40769839464a7c0e,%r55; selp.f64 %r44,0dc009de81af8fe70f,0dc03f72aca892d80f,%r55; selp.f64 %r43,0dc02662e6c5246303,0dc04d0a22420a1a45,%r55; selp.f64 %r42,0dc01e8af3edafa7f3,0dc035f74a4cb94e14,%r55; selp.f64 %r41,0dbff736398a24a843,0dc00345b2aea48074,%r55; selp.f64 %r40,0dbfb1ff62495e1e42,0dbfb1fff6f7c0e24b,%r55; selp.f64 %r28,0d40363865908b5959,0d4041ed9284077dd3,%r55; selp.f64 %r23,0dbe77d316e927026d,0dbe25e1036fe1aa86,%r55; bra $L2; $L3: 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 341 36 mov.f64 %r28,0d405d223307a96751; .loc 1 341 28 mov.f64 %r23,0d0000000000000000; bra $L2; $L4: 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 342 36 mov.f64 %r28,0d404e60810c98c5de; .loc 1 342 28 mov.f64 %r23,0dbda918b147e495cc; $L2: .loc 1 345 12 mul.f64 %r56,%r50,%r50; .loc 1 345 4 mov.f64 %r57,0d3ff0000000000000; div.rn.f64 %r37,%r57,%r56; .loc 1 346 42 fma.rn.f64 %r59,%r37,%r44,%r43; .loc 1 346 34 fma.rn.f64 %r60,%r59,%r37,%r42; .loc 1 346 26 fma.rn.f64 %r61,%r60,%r37,%r41; .loc 1 346 18 fma.rn.f64 %r62,%r61,%r37,%r40; .loc 1 346 4 fma.rn.f64 %r63,%r62,%r37,%r23; .loc 1 347 41 fma.rn.f64 %r64,%r37,%r48,%r47; .loc 1 347 33 fma.rn.f64 %r65,%r64,%r37,%r46; .loc 1 347 25 fma.rn.f64 %r66,%r65,%r37,%r45; .loc 1 347 17 fma.rn.f64 %r67,%r66,%r37,%r28; .loc 1 347 4 fma.rn.f64 %r68,%r67,%r37,0d3ff0000000000000; .loc 1 348 15 div.rn.f64 %r69,%r63,%r68; .loc 1 348 12 add.f64 %value,%r69,0d3ff0000000000000; .loc 1 349 1 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 %r28; .reg .u32 %r37; .reg .u32 %r38; .reg .f64 %r39; .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 %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .pred %r56; .reg .pred %r57; .reg .pred %r58; .reg .f64 %r59; .reg .f64 %r60; .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 %r74; .reg .f64 %r75; mov.f64 %r53,%ar0; .loc 1 475 2 mov.b64 %r54,%r53; shr.u64 %r55,%r54,32; cvt.u32.u64 %r37,%r55; .loc 1 476 5 and.b32 %r38,%r37,2147483647; .loc 1 477 4 setp.gt.s32 %r56,%r38,1075838975; @ %r56 bra $L8; .loc 1 478 9 setp.gt.s32 %r57,%r38,1074933386; @ %r57 bra $L9; .loc 1 479 9 setp.le.s32 %r58,%r38,1074191212; selp.f64 %r51,0dc0153e6af8b32931,0dc062a7eb201cf40f,%r58; selp.f64 %r50,0d406a95530e001365,0d40a3a8aad94fb1c0,%r58; selp.f64 %r49,0d408b977c9c5cc214,0d40b93c6cd7c76a28,%r58; selp.f64 %r48,0d408a664522b3bf22,0d40acf04be44dfc63,%r58; selp.f64 %r47,0d4070d591e4d14b40,0d40862d8386544eb3,%r58; selp.f64 %r46,0d403040b171814bb4,0d4064d77c81fa21e0,%r58; selp.f64 %r45,0d403faa8e29fbdc4a,0d406559dbe25efd1f,%r58; selp.f64 %r44,0d402cfdbfaaf96fe5,0d40454f98962daedd,%r58; selp.f64 %r43,0d3ffff897e727779c,0d400ac0fc61149cf5,%r58; selp.f64 %r42,0d3fb2bec53e883e34,0d3fb2bfee0e8d0842,%r58; selp.f64 %r28,0d403e5d96f7c07aed,0d40486122bfe343a6,%r58; selp.f64 %r23,0d3e84313b54f76bdb,0d3e32cd036adecb82,%r58; bra $L7; $L8: 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 477 36 mov.f64 %r28,0d406478d5365b39bc; .loc 1 477 28 mov.f64 %r23,0d0000000000000000; bra $L7; $L9: 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 478 36 mov.f64 %r28,0d4054b1b3fb5e1543; .loc 1 478 28 mov.f64 %r23,0d3db43d8f29cc8cd9; $L7: .loc 1 481 12 mul.f64 %r59,%r53,%r53; .loc 1 481 4 mov.f64 %r60,0d3ff0000000000000; div.rn.f64 %r39,%r60,%r59; .loc 1 482 42 fma.rn.f64 %r62,%r39,%r46,%r45; .loc 1 482 34 fma.rn.f64 %r63,%r62,%r39,%r44; .loc 1 482 26 fma.rn.f64 %r64,%r63,%r39,%r43; .loc 1 482 18 fma.rn.f64 %r65,%r64,%r39,%r42; .loc 1 482 4 fma.rn.f64 %r66,%r65,%r39,%r23; .loc 1 483 49 fma.rn.f64 %r67,%r39,%r51,%r50; .loc 1 483 41 fma.rn.f64 %r68,%r67,%r39,%r49; .loc 1 483 33 fma.rn.f64 %r69,%r68,%r39,%r48; .loc 1 483 25 fma.rn.f64 %r70,%r69,%r39,%r47; .loc 1 483 17 fma.rn.f64 %r71,%r70,%r39,%r28; .loc 1 483 4 fma.rn.f64 %r72,%r71,%r39,0d3ff0000000000000; .loc 1 484 19 div.rn.f64 %r73,%r66,%r72; .loc 1 484 16 mov.f64 %r75,0d3fc0000000000000; sub.f64 %r74,%r73,%r75; .loc 1 484 22 div.rn.f64 %value,%r74,%r53; .loc 1 485 1 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 %r45; .reg .f64 %r46; .reg .u32 %r47; .reg .u32 %r48; .reg .f64 %r52; .reg .f64 %r57; .reg .f64 %r63; .reg .f64 %r64; .reg .f64 %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .pred %r68; .reg .f64 %r69; .reg .f64 %r70; .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 %r94; .reg .f64 %r95; .reg .f64 %r96; .reg .f64 %r97; .reg .f64 %r98; .reg .pred %r99; .reg .f64 %r100; .reg .pred %r101; .reg .pred %r102; .reg .f64 %r104; .reg .f64 %r105; .reg .f64 %r106; .reg .f64 %r107; .reg .f64 %r108; .reg .f64 %r109; .reg .f64 %r110; .reg .f64 %r111; .reg .f64 %r112; .reg .pred %r113; .reg .f64 %r114; .reg .f64 %r115; .reg .f64 %r116; .reg .f64 %r117; .reg .f64 %r119; mov.f64 %r65,%ar0; .loc 1 104 2 mov.b64 %r66,%r65; shr.u64 %r67,%r66,32; cvt.u32.u64 %r47,%r67; .loc 1 105 5 and.b32 %r48,%r47,2147483647; .loc 1 106 4 setp.le.s32 %r68,%r48,2146435071; @ %r68 bra $L12; .loc 1 106 34 mul.f64 %r69,%r65,%r65; .loc 1 106 31 mov.f64 %r70,0d3ff0000000000000; div.rn.f64 %r64,%r70,%r69; bra $L11; $L12: .loc 1 107 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r65; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r72,[%value_in]; } .loc 1 108 4 and.b32 %r73,%r47,1073741824; setp.eq.u32 %r74,%r73,0; @ %r74 bra $L14; .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 $L15; .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 %r52,%r82; .loc 1 115 13 mul.f64 %r83,%r76,%r78; .loc 1 115 10 setp.lt.f64 %r84,%r83,0d0000000000000000; @ ! %r84 bra $L25; .loc 1 115 26 div.rn.f64 %r46,%r52,%r45; bra $L15; $L25: .loc 1 116 20 div.rn.f64 %r45,%r52,%r46; $L15: .loc 1 122 5 setp.le.s32 %r85,%r48,1207959552; @ %r85 bra $L18; .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 %r64,%r88,%r87; bra $L11; $L18: .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 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 %r94,[%value_in]; } .loc 1 125 28 mul.f64 %r95,%r45,%r92; .loc 1 125 26 neg.f64 %r96,%r95; fma.rn.f64 %r97,%r46,%r90,%r96; .loc 1 125 20 mul.f64 %r98,%r97,0d3fe20dd750429b6d; .loc 1 125 9 div.rn.f64 %r64,%r98,%r94; bra $L11; $L14: .loc 1 129 4 setp.gt.s32 %r99,%r48,1059061759; @ %r99 bra $L19; .loc 1 130 13 add.f64 %r100,%r72,0d7e37e43c8800759c; .loc 1 130 8 setp.gt.f64 %r101,%r100,0d3ff0000000000000; @ ! %r101 bra $L19; .loc 1 131 12 setp.le.s32 %r102,%r48,1044381695; @ %r102 bra $L22; .loc 1 132 33 mul.f64 %r104,%r72,0dbfd0000000000000; fma.rn.f64 %r64,%r104,%r72,0d3ff0000000000000; bra $L11; $L19: .loc 1 135 4 mul.f64 %r57,%r72,%r72; .loc 1 136 27 fma.rn.f64 %r105,%r57,0dbe33d5e773d63fce,0d3ebeb1d10c503919; .loc 1 136 20 fma.rn.f64 %r106,%r105,%r57,0dbf28e6a5b61ac6e9; .loc 1 136 13 fma.rn.f64 %r107,%r106,%r57,0d3f8ffffffffffffd; .loc 1 136 4 mul.f64 %r108,%r107,%r57; .loc 1 137 31 fma.rn.f64 %r109,%r57,0d3e1408bcf4745d8f,0d3ea13b54ce84d5a9; .loc 1 137 24 fma.rn.f64 %r110,%r109,%r57,0d3f1ea6d2dd57dbf4; .loc 1 137 17 fma.rn.f64 %r111,%r110,%r57,0d3f8ffce882c8c2a4; .loc 1 137 4 fma.rn.f64 %r112,%r111,%r57,0d3ff0000000000000; div.rn.f64 %r63,%r108,%r112; .loc 1 138 4 setp.gt.s32 %r113,%r48,1072693247; @ %r113 bra $L21; .loc 1 139 27 mov.f64 %r115,0d3fd0000000000000; sub.f64 %r114,%r63,%r115; .loc 1 139 17 fma.rn.f64 %r64,%r114,%r57,0d3ff0000000000000; bra $L11; $L21: .loc 1 142 17 fma.rn.f64 %r116,%r72,0d3fe0000000000000,0d3ff0000000000000; .loc 1 142 30 mul.f64 %r117,%r57,%r63; .loc 1 142 25 fma.rn.f64 %r119,%r72,0dbfe0000000000000,0d3ff0000000000000; .loc 1 142 28 fma.rn.f64 %r64,%r116,%r119,%r117; bra $L11; $L22: .loc 1 131 35 mov.f64 %r64,0d3ff0000000000000; $L11: .loc 1 144 1 mov.f64 %value,%r64; 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 %r42; .reg .f64 %r47; .reg .f64 %r48; .reg .u32 %r50; .reg .u32 %r52; .reg .f64 %r55; .reg .f64 %r59; .reg .f64 %r66; .reg .f64 %r67; .reg .u64 %r68; .reg .u64 %r69; .reg .pred %r70; .reg .f64 %r71; .reg .f64 %r72; .reg .u32 %r74; .reg .u32 %r75; .reg .pred %r76; .reg .f64 %r77; .reg .pred %r78; .reg .f64 %r79; .reg .u32 %r80; .reg .pred %r81; .reg .f64 %r83; .reg .f64 %r85; .reg .pred %r86; .reg .f64 %r88; .reg .f64 %r89; .reg .f64 %r90; .reg .pred %r91; .reg .pred %r92; .reg .f64 %r94; .reg .f64 %r95; .reg .f64 %r97; .reg .f64 %r99; .reg .f64 %r101; .reg .f64 %r102; .reg .f64 %r103; .reg .f64 %r104; .reg .pred %r105; .reg .f64 %r107; .reg .f64 %r108; .reg .f64 %r109; .reg .f64 %r110; .reg .f64 %r111; .reg .f64 %r112; .reg .f64 %r113; .reg .f64 %r114; .reg .f64 %r115; .reg .f64 %r116; .reg .f64 %r117; .reg .f64 %r119; .reg .f64 %r121; .reg .f64 %r122; mov.f64 %r67,%ar0; .loc 1 173 2 mov.b64 %r68,%r67; shr.u64 %r69,%r68,32; cvt.u32.u64 %r50,%r69; .loc 1 174 12 and.b32 %r52,%r50,2147483647; .loc 1 176 4 setp.le.s32 %r70,%r52,2146435071; @ %r70 bra $L27; .loc 1 176 35 fma.rn.f64 %r71,%r67,%r67,%r67; .loc 1 176 32 mov.f64 %r72,0d3ff0000000000000; div.rn.f64 %r66,%r72,%r71; bra $L26; $L27: .loc 1 177 15 cvt.u32.u64 %r75,%r68; or.b32 %r74,%r52,%r75; .loc 1 177 11 setp.ne.u32 %r76,%r74,0; @ %r76 bra $L29; .loc 1 177 35 mov.f64 %r77,0dbff0000000000000; div.rn.f64 %r66,%r77,0d0000000000000000; bra $L26; $L29: .loc 1 178 11 setp.ge.s32 %r78,%r50,0; @ %r78 bra $L30; .loc 1 178 29 mov.f64 %r79,0d0000000000000000; div.rn.f64 %r66,%r79,0d0000000000000000; bra $L26; $L30: .loc 1 179 11 and.b32 %r80,%r50,1073741824; setp.eq.u32 %r81,%r80,0; @ %r81 bra $L31; .loc 1 191 21 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r67; call (%value_in),sin,(%out_arg1); ld.param.f64 %r83,[%value_in]; } .loc 1 192 21 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r67; call (%value_in),cos,(%out_arg1); ld.param.f64 %r85,[%value_in]; } .loc 1 193 20 sub.f64 %r47,%r83,%r85; .loc 1 194 20 add.f64 %r48,%r83,%r85; .loc 1 199 19 setp.gt.s32 %r86,%r52,2145386495; @ %r86 bra $L32; .loc 1 200 26 add.f64 %r88,%r67,%r67; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r88; call (%value_in),cos,(%out_arg1); ld.param.f64 %r89,[%value_in]; } .loc 1 200 23 neg.f64 %r55,%r89; .loc 1 201 27 mul.f64 %r90,%r83,%r85; .loc 1 201 24 setp.lt.f64 %r91,%r90,0d0000000000000000; @ ! %r91 bra $L38; .loc 1 201 40 div.rn.f64 %r48,%r55,%r47; bra $L32; $L38: .loc 1 202 40 div.rn.f64 %r47,%r55,%r48; $L32: .loc 1 204 19 setp.le.s32 %r92,%r52,1207959552; @ %r92 bra $L35; .loc 1 204 54 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r67; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r94,[%value_in]; } .loc 1 204 49 mul.f64 %r95,%r47,0d3fe20dd750429b6d; .loc 1 204 37 div.rn.f64 %r66,%r95,%r94; bra $L26; $L35: .loc 1 206 25 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r67; call (%value_in),pzero,(%out_arg1); ld.param.f64 %r97,[%value_in]; } .loc 1 206 39 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r67; call (%value_in),qzero,(%out_arg1); ld.param.f64 %r99,[%value_in]; } .loc 1 207 47 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r67; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r101,[%value_in]; } .loc 1 207 42 mul.f64 %r102,%r48,%r99; .loc 1 207 40 fma.rn.f64 %r103,%r47,%r97,%r102; .loc 1 207 34 mul.f64 %r104,%r103,0d3fe20dd750429b6d; .loc 1 207 23 div.rn.f64 %r66,%r104,%r101; bra $L26; $L31: .loc 1 211 4 setp.gt.s32 %r105,%r52,1044381696; @ %r105 bra $L36; .loc 1 212 23 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r67; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r107,[%value_in]; } .loc 1 212 17 fma.rn.f64 %r66,%r107,0d3fe45f306dc9c883,0dbfb2e4d699cbd01f; bra $L26; $L36: .loc 1 214 4 mul.f64 %r59,%r67,%r67; .loc 1 215 44 fma.rn.f64 %r108,%r59,0dbdc5e43d693fb3c8,0d3e5500573b4eabd4; .loc 1 215 37 fma.rn.f64 %r109,%r108,%r59,0dbecffea773d25cad; .loc 1 215 30 fma.rn.f64 %r110,%r109,%r59,0d3f36c54d20b29b6b; .loc 1 215 23 fma.rn.f64 %r111,%r110,%r59,0dbf8c4ce8b16cfa97; .loc 1 215 16 fma.rn.f64 %r112,%r111,%r59,0d3fc69d019de9e3fc; .loc 1 215 4 fma.rn.f64 %r113,%r112,%r59,0dbfb2e4d699cbd01f; .loc 1 216 30 fma.rn.f64 %r114,%r59,0d3dfe50183bd6d9ef,0d3e91642d7ff202fd; .loc 1 216 23 fma.rn.f64 %r115,%r114,%r59,0d3f13ecbbf578c6c1; .loc 1 216 16 fma.rn.f64 %r116,%r115,%r59,0d3f8a127091c9c71a; .loc 1 216 4 fma.rn.f64 %r117,%r116,%r59,0d3ff0000000000000; .loc 1 217 10 div.rn.f64 %r42,%r113,%r117; .loc 1 217 20 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r67; call (%value_in),__ieee754_j0,(%out_arg1); ld.param.f64 %r119,[%value_in]; } .loc 1 217 36 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r67; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r121,[%value_in]; } .loc 1 217 35 mul.f64 %r122,%r119,%r121; .loc 1 217 13 fma.rn.f64 %r66,%r122,0d3fe45f306dc9c883,%r42; $L26: .loc 1 218 1 mov.f64 %value,%r66; st.param.f64 [%value_out],%value; ret; } lib_a-e_j1.o/ 1591654536 399 399 100644 17608 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r28; .reg .u32 %r35; .reg .u32 %r36; .reg .f64 %r37; .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 %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .pred %r53; .reg .pred %r54; .reg .pred %r55; .reg .f64 %r56; .reg .f64 %r57; .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; mov.f64 %r50,%ar0; .loc 1 337 2 mov.b64 %r51,%r50; shr.u64 %r52,%r51,32; cvt.u32.u64 %r35,%r52; .loc 1 338 5 and.b32 %r36,%r35,2147483647; .loc 1 339 11 setp.gt.s32 %r53,%r36,1075838975; @ %r53 bra $L3; .loc 1 340 16 setp.gt.s32 %r54,%r36,1074933386; @ %r54 bra $L4; .loc 1 341 16 setp.le.s32 %r55,%r36,1074191212; selp.f64 %r48,0d4020bab1f44e5192,0d4059f26d7c2eed53,%r55; selp.f64 %r47,0d405d6b7ada1884a9,0d408bd67da32e31e9,%r55; selp.f64 %r46,0d406d08d8d5a2dbd9,0d40905b7c5037d523,%r55; selp.f64 %r45,0d405f529314f92cd5,0d40750c3307f1a75f,%r55; selp.f64 %r44,0d40144b49a574c1fe,0d4048478f8ea83ee5,%r55; selp.f64 %r43,0d4031b1a8177f8ee2,0d4056c3854d2c1837,%r55; selp.f64 %r42,0d40287c377f71a964,0d40418f489da6d129,%r55; selp.f64 %r41,0d4002f2b7f98faec0,0d400f76bce85ead8a,%r55; selp.f64 %r40,0d3fbdff42be760d83,0d3fbdfff55b21d17b,%r55; selp.f64 %r28,0d40356fbd8ad5ecdc,0d40416549a134069c,%r55; selp.f64 %r23,0d3e7ce9d4f65544f4,0d3e29fc21a7ad9edd,%r55; bra $L2; $L3: 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 339 43 mov.f64 %r28,0d405c8d458e656cac; .loc 1 339 35 mov.f64 %r23,0d0000000000000000; bra $L2; $L4: 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 340 43 mov.f64 %r28,0d404da3eaa8af633d; .loc 1 340 35 mov.f64 %r23,0d3dad0667dae1ca7d; $L2: .loc 1 343 19 mul.f64 %r56,%r50,%r50; .loc 1 343 11 mov.f64 %r57,0d3ff0000000000000; div.rn.f64 %r37,%r57,%r56; .loc 1 344 49 fma.rn.f64 %r59,%r37,%r44,%r43; .loc 1 344 41 fma.rn.f64 %r60,%r59,%r37,%r42; .loc 1 344 33 fma.rn.f64 %r61,%r60,%r37,%r41; .loc 1 344 25 fma.rn.f64 %r62,%r61,%r37,%r40; .loc 1 344 11 fma.rn.f64 %r63,%r62,%r37,%r23; .loc 1 345 48 fma.rn.f64 %r64,%r37,%r48,%r47; .loc 1 345 40 fma.rn.f64 %r65,%r64,%r37,%r46; .loc 1 345 32 fma.rn.f64 %r66,%r65,%r37,%r45; .loc 1 345 24 fma.rn.f64 %r67,%r66,%r37,%r28; .loc 1 345 11 fma.rn.f64 %r68,%r67,%r37,0d3ff0000000000000; .loc 1 346 22 div.rn.f64 %r69,%r63,%r68; .loc 1 346 19 add.f64 %value,%r69,0d3ff0000000000000; .loc 1 347 1 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 %r28; .reg .u32 %r37; .reg .u32 %r38; .reg .f64 %r39; .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 %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .pred %r56; .reg .pred %r57; .reg .pred %r58; .reg .f64 %r59; .reg .f64 %r60; .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 %r74; mov.f64 %r53,%ar0; .loc 1 474 2 mov.b64 %r54,%r53; shr.u64 %r55,%r54,32; cvt.u32.u64 %r37,%r55; .loc 1 475 5 and.b32 %r38,%r37,2147483647; .loc 1 476 4 setp.gt.s32 %r56,%r38,1075838975; @ %r56 bra $L8; .loc 1 477 9 setp.gt.s32 %r57,%r38,1074933386; @ %r57 bra $L9; .loc 1 478 9 setp.le.s32 %r58,%r38,1074191212; selp.f64 %r51,0dc013d686e71be86b,0dc060e670290a311f,%r58; selp.f64 %r50,0d40637e5e3c3ed8d4,0d409dbc7a0dd4df4b,%r58; selp.f64 %r49,0d40871b2548d4c029,0d40b5abbaa61d54a6,%r58; selp.f64 %r48,0d4087ac05ce49a0f7,0d40aa684e448e7c9a,%r58; selp.f64 %r47,0d406f9f68db821cba,0d40850eebc031ee3e,%r58; selp.f64 %r46,0dc0355f3639cf6e52,0dc06b66b95f5c1bf6,%r58; selp.f64 %r45,0dc04529a3de104aaa,0dc06c87d34718d55f,%r58; selp.f64 %r44,0dc033a9e2c168907f,0dc04cec71c25d16da,%r58; selp.f64 %r43,0dc006048469bb4eda,0dc01270c23302d9ff,%r58; selp.f64 %r42,0dbfba3e8e9148b010,0dbfba3feb51aeed54,%r58; selp.f64 %r28,0d403d888a78ae64ff,0d4047d523ccd367e4,%r58; selp.f64 %r23,0dbe87f12644c626d2,0dbe35cfa9d38fc84f,%r58; bra $L7; $L8: 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 476 36 mov.f64 %r28,0d40642ca6de5bcde5; .loc 1 476 28 mov.f64 %r23,0d0000000000000000; bra $L7; $L9: 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 477 36 mov.f64 %r28,0d405451b2ff5a11b2; .loc 1 477 28 mov.f64 %r23,0dbdb6fa431aa1a098; $L7: .loc 1 480 12 mul.f64 %r59,%r53,%r53; .loc 1 480 4 mov.f64 %r60,0d3ff0000000000000; div.rn.f64 %r39,%r60,%r59; .loc 1 481 42 fma.rn.f64 %r62,%r39,%r46,%r45; .loc 1 481 34 fma.rn.f64 %r63,%r62,%r39,%r44; .loc 1 481 26 fma.rn.f64 %r64,%r63,%r39,%r43; .loc 1 481 18 fma.rn.f64 %r65,%r64,%r39,%r42; .loc 1 481 4 fma.rn.f64 %r66,%r65,%r39,%r23; .loc 1 482 49 fma.rn.f64 %r67,%r39,%r51,%r50; .loc 1 482 41 fma.rn.f64 %r68,%r67,%r39,%r49; .loc 1 482 33 fma.rn.f64 %r69,%r68,%r39,%r48; .loc 1 482 25 fma.rn.f64 %r70,%r69,%r39,%r47; .loc 1 482 17 fma.rn.f64 %r71,%r70,%r39,%r28; .loc 1 482 4 fma.rn.f64 %r72,%r71,%r39,0d3ff0000000000000; .loc 1 483 18 div.rn.f64 %r73,%r66,%r72; .loc 1 483 15 add.f64 %r74,%r73,0d3fd8000000000000; .loc 1 483 21 div.rn.f64 %value,%r74,%r53; .loc 1 484 1 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 %r40; .reg .f64 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .f64 %r52; .reg .f64 %r53; .reg .f64 %r59; .reg .f64 %r60; .reg .u64 %r61; .reg .u64 %r62; .reg .pred %r63; .reg .f64 %r64; .reg .f64 %r66; .reg .u32 %r67; .reg .pred %r68; .reg .f64 %r70; .reg .f64 %r72; .reg .f64 %r73; .reg .pred %r74; .reg .f64 %r76; .reg .f64 %r77; .reg .f64 %r78; .reg .pred %r79; .reg .pred %r80; .reg .f64 %r82; .reg .f64 %r83; .reg .f64 %r85; .reg .f64 %r87; .reg .f64 %r89; .reg .f64 %r90; .reg .f64 %r91; .reg .f64 %r92; .reg .f64 %r93; .reg .pred %r94; .reg .pred %r95; .reg .f64 %r96; .reg .pred %r97; .reg .f64 %r98; .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; mov.f64 %r60,%ar0; .loc 1 105 2 mov.b64 %r61,%r60; shr.u64 %r62,%r61,32; cvt.u32.u64 %r42,%r62; .loc 1 106 5 and.b32 %r43,%r42,2147483647; .loc 1 107 4 setp.le.s32 %r63,%r43,2146435071; @ %r63 bra $L12; .loc 1 107 31 mov.f64 %r64,0d3ff0000000000000; div.rn.f64 %r59,%r64,%r60; bra $L11; $L12: .loc 1 108 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r60; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r66,[%value_in]; } .loc 1 109 4 and.b32 %r67,%r42,1073741824; setp.eq.u32 %r68,%r67,0; @ %r68 bra $L14; .loc 1 110 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r66; call (%value_in),sin,(%out_arg1); ld.param.f64 %r70,[%value_in]; } .loc 1 111 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r66; call (%value_in),cos,(%out_arg1); ld.param.f64 %r72,[%value_in]; } .loc 1 112 8 neg.f64 %r73,%r70; .loc 1 112 6 sub.f64 %r40,%r73,%r72; .loc 1 113 6 sub.f64 %r41,%r70,%r72; .loc 1 114 5 setp.gt.s32 %r74,%r43,2145386495; @ %r74 bra $L15; .loc 1 115 11 add.f64 %r76,%r66,%r66; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r76; call (%value_in),cos,(%out_arg1); ld.param.f64 %r77,[%value_in]; } .loc 1 116 13 mul.f64 %r78,%r70,%r72; .loc 1 116 10 setp.gt.f64 %r79,%r78,0d0000000000000000; @ ! %r79 bra $L22; .loc 1 116 26 div.rn.f64 %r41,%r77,%r40; bra $L15; $L22: .loc 1 117 20 div.rn.f64 %r40,%r77,%r41; $L15: .loc 1 123 5 setp.le.s32 %r80,%r43,1207959552; @ %r80 bra $L18; .loc 1 123 40 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r66; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r82,[%value_in]; } .loc 1 123 35 mul.f64 %r83,%r41,0d3fe20dd750429b6d; .loc 1 123 23 div.rn.f64 %r59,%r83,%r82; bra $L19; $L18: .loc 1 125 11 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r66; call (%value_in),pone,(%out_arg1); ld.param.f64 %r85,[%value_in]; } .loc 1 125 24 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r66; call (%value_in),qone,(%out_arg1); ld.param.f64 %r87,[%value_in]; } .loc 1 126 33 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r66; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r89,[%value_in]; } .loc 1 126 28 mul.f64 %r90,%r40,%r87; .loc 1 126 26 neg.f64 %r91,%r90; fma.rn.f64 %r92,%r41,%r85,%r91; .loc 1 126 20 mul.f64 %r93,%r92,0d3fe20dd750429b6d; .loc 1 126 9 div.rn.f64 %r59,%r93,%r89; $L19: .loc 1 128 5 setp.ge.s32 %r94,%r42,0; @ %r94 bra $L11; .loc 1 128 19 neg.f64 %r59,%r59; bra $L11; $L14: mul.f64 %r59,%r60,0d3fe0000000000000; .loc 1 131 4 setp.gt.s32 %r95,%r43,1044381695; @ %r95 bra $L20; .loc 1 132 13 add.f64 %r96,%r60,0d7e37e43c8800759c; .loc 1 132 8 setp.gt.f64 %r97,%r96,0d3ff0000000000000; @ %r97 bra $L11; $L20: .loc 1 134 4 mul.f64 %r52,%r60,%r60; .loc 1 135 27 fma.rn.f64 %r98,%r52,0d3e6aaafa46ca0bd9,0dbef0c5c6ba169668; .loc 1 135 20 fma.rn.f64 %r99,%r98,%r52,0d3f570d9f98472c61; .loc 1 135 13 fma.rn.f64 %r100,%r99,%r52,0dbfb0000000000000; .loc 1 135 4 mul.f64 %r53,%r100,%r52; .loc 1 137 4 mul.f64 %r101,%r60,%r53; .loc 1 136 38 fma.rn.f64 %r102,%r52,0d3dab2acfcfb97ed8,0d3e35ac88c97dff2c; .loc 1 136 31 fma.rn.f64 %r103,%r102,%r52,0d3eb3bff8333f8498; .loc 1 136 24 fma.rn.f64 %r104,%r103,%r52,0d3f285f56b9cdf664; .loc 1 136 17 fma.rn.f64 %r105,%r104,%r52,0d3f939d0b12637e53; .loc 1 136 4 fma.rn.f64 %r106,%r105,%r52,0d3ff0000000000000; .loc 1 138 16 div.rn.f64 %r107,%r101,%r106; .loc 1 138 14 add.f64 %r59,%r59,%r107; $L11: .loc 1 139 1 mov.f64 %value,%r59; 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 %r43; .reg .f64 %r49; .reg .f64 %r50; .reg .u32 %r52; .reg .u32 %r54; .reg .f64 %r60; .reg .f64 %r65; .reg .f64 %r66; .reg .u64 %r67; .reg .u64 %r68; .reg .pred %r69; .reg .f64 %r70; .reg .f64 %r71; .reg .u32 %r73; .reg .u32 %r74; .reg .pred %r75; .reg .f64 %r76; .reg .pred %r77; .reg .f64 %r78; .reg .u32 %r79; .reg .pred %r80; .reg .f64 %r82; .reg .f64 %r84; .reg .f64 %r85; .reg .pred %r86; .reg .f64 %r88; .reg .f64 %r89; .reg .f64 %r90; .reg .pred %r91; .reg .pred %r92; .reg .f64 %r94; .reg .f64 %r95; .reg .f64 %r97; .reg .f64 %r99; .reg .f64 %r101; .reg .f64 %r102; .reg .f64 %r103; .reg .f64 %r104; .reg .pred %r105; .reg .f64 %r106; .reg .f64 %r107; .reg .f64 %r108; .reg .f64 %r109; .reg .f64 %r110; .reg .f64 %r111; .reg .f64 %r112; .reg .f64 %r113; .reg .f64 %r114; .reg .f64 %r115; .reg .f64 %r117; .reg .f64 %r119; .reg .f64 %r120; .reg .f64 %r121; .reg .f64 %r122; .reg .f64 %r123; .reg .f64 %r124; mov.f64 %r66,%ar0; .loc 1 174 2 mov.b64 %r67,%r66; shr.u64 %r68,%r67,32; cvt.u32.u64 %r52,%r68; .loc 1 175 12 and.b32 %r54,%r52,2147483647; .loc 1 177 4 setp.le.s32 %r69,%r54,2146435071; @ %r69 bra $L24; .loc 1 177 35 fma.rn.f64 %r70,%r66,%r66,%r66; .loc 1 177 32 mov.f64 %r71,0d3ff0000000000000; div.rn.f64 %r65,%r71,%r70; bra $L23; $L24: .loc 1 178 15 cvt.u32.u64 %r74,%r67; or.b32 %r73,%r54,%r74; .loc 1 178 11 setp.ne.u32 %r75,%r73,0; @ %r75 bra $L26; .loc 1 178 35 mov.f64 %r76,0dbff0000000000000; div.rn.f64 %r65,%r76,0d0000000000000000; bra $L23; $L26: .loc 1 179 11 setp.ge.s32 %r77,%r52,0; @ %r77 bra $L27; .loc 1 179 29 mov.f64 %r78,0d0000000000000000; div.rn.f64 %r65,%r78,0d0000000000000000; bra $L23; $L27: .loc 1 180 11 and.b32 %r79,%r52,1073741824; setp.eq.u32 %r80,%r79,0; @ %r80 bra $L28; .loc 1 181 21 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r66; call (%value_in),sin,(%out_arg1); ld.param.f64 %r82,[%value_in]; } .loc 1 182 21 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r66; call (%value_in),cos,(%out_arg1); ld.param.f64 %r84,[%value_in]; } .loc 1 183 22 neg.f64 %r85,%r82; .loc 1 183 20 sub.f64 %r49,%r85,%r84; .loc 1 184 20 sub.f64 %r50,%r82,%r84; .loc 1 185 19 setp.gt.s32 %r86,%r54,2145386495; @ %r86 bra $L29; .loc 1 186 25 add.f64 %r88,%r66,%r66; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r88; call (%value_in),cos,(%out_arg1); ld.param.f64 %r89,[%value_in]; } .loc 1 187 27 mul.f64 %r90,%r82,%r84; .loc 1 187 24 setp.gt.f64 %r91,%r90,0d0000000000000000; @ ! %r91 bra $L35; .loc 1 187 40 div.rn.f64 %r50,%r89,%r49; bra $L29; $L35: .loc 1 188 40 div.rn.f64 %r49,%r89,%r50; $L29: .loc 1 201 19 setp.le.s32 %r92,%r54,1207959552; @ %r92 bra $L32; .loc 1 201 54 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r66; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r94,[%value_in]; } .loc 1 201 49 mul.f64 %r95,%r49,0d3fe20dd750429b6d; .loc 1 201 37 div.rn.f64 %r65,%r95,%r94; bra $L23; $L32: .loc 1 203 25 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r66; call (%value_in),pone,(%out_arg1); ld.param.f64 %r97,[%value_in]; } .loc 1 203 38 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r66; call (%value_in),qone,(%out_arg1); ld.param.f64 %r99,[%value_in]; } .loc 1 204 47 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r66; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r101,[%value_in]; } .loc 1 204 42 mul.f64 %r102,%r50,%r99; .loc 1 204 40 fma.rn.f64 %r103,%r49,%r97,%r102; .loc 1 204 34 mul.f64 %r104,%r103,0d3fe20dd750429b6d; .loc 1 204 23 div.rn.f64 %r65,%r104,%r101; bra $L23; $L28: .loc 1 208 11 setp.gt.s32 %r105,%r54,1016070144; @ %r105 bra $L33; .loc 1 209 24 mov.f64 %r106,0dbfe45f306dc9c883; div.rn.f64 %r65,%r106,%r66; bra $L23; $L33: .loc 1 211 11 mul.f64 %r60,%r66,%r66; .loc 1 212 45 fma.rn.f64 %r107,%r60,0dbe78ac00569105b8,0d3ef8ab038fa6b88e; .loc 1 212 36 fma.rn.f64 %r108,%r107,%r60,0dbf5f55e54844f50f; .loc 1 212 27 fma.rn.f64 %r109,%r108,%r60,0d3fa9d3c776292cd1; .loc 1 212 11 fma.rn.f64 %r110,%r109,%r60,0dbfc91866143cbc8a; .loc 1 213 52 fma.rn.f64 %r111,%r60,0d3db25039daca772a,0d3e3abf1d5ba69a86; .loc 1 213 43 fma.rn.f64 %r112,%r111,%r60,0d3eb6c05a894e8ca6; .loc 1 213 34 fma.rn.f64 %r113,%r112,%r60,0d3f2a8c896c257764; .loc 1 213 25 fma.rn.f64 %r114,%r113,%r60,0d3f94650d3f4da9f0; .loc 1 213 11 fma.rn.f64 %r115,%r114,%r60,0d3ff0000000000000; .loc 1 214 20 div.rn.f64 %r43,%r110,%r115; .loc 1 214 31 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r66; call (%value_in),__ieee754_j1,(%out_arg1); ld.param.f64 %r117,[%value_in]; } .loc 1 214 47 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r66; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r119,[%value_in]; } .loc 1 214 67 mov.f64 %r121,0d3ff0000000000000; div.rn.f64 %r120,%r121,%r66; .loc 1 214 63 neg.f64 %r122,%r120; fma.rn.f64 %r123,%r117,%r119,%r122; .loc 1 214 29 mul.f64 %r124,%r123,0d3fe45f306dc9c883; .loc 1 214 24 fma.rn.f64 %r65,%r43,%r66,%r124; $L23: .loc 1 215 1 mov.f64 %value,%r65; st.param.f64 [%value_out],%value; ret; } lib_a-e_jn.o/ 1591654536 399 399 100644 19123 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r22; .reg .f64 %r32; .reg .u32 %r33; .reg .f64 %r48; .reg .u32 %r50; .reg .f64 %r52; .reg .f64 %r56; .reg .f64 %r60; .reg .f64 %r61; .reg .f64 %r66; .reg .f64 %r68; .reg .f64 %r70; .reg .f64 %r71; .reg .f64 %r72; .reg .f64 %r73; .reg .u32 %r74; .reg .f64 %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .u32 %r80; .reg .u32 %r81; .reg .u32 %r82; .reg .f64 %r85; .reg .f64 %r86; .reg .f64 %r87; .reg .u32 %r89; .reg .f64 %r94; .reg .u32 %r95; .reg .f64 %r97; .reg .f64 %r98; .reg .u32 %r99; .reg .u32 %r102; .reg .u32 %r104; .reg .u32 %r105; .reg .f64 %r106; .reg .f64 %r108; .reg .f64 %r109; .reg .u32 %r110; .reg .f64 %r111; .reg .u64 %r112; .reg .u64 %r113; .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 %r133; .reg .u32 %r134; .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 .f64 %r176; .reg .pred %r177; .reg .pred %r178; .reg .pred %r179; .reg .f64 %r180; .reg .pred %r181; .reg .f64 %r183; .reg .f64 %r184; .reg .pred %r185; .reg .f64 %r186; .reg .pred %r187; .reg .u32 %r188; .reg .u32 %r190; .reg .f64 %r192; .reg .f64 %r193; .reg .f64 %r194; .reg .pred %r195; .reg .f64 %r197; .reg .f64 %r198; .reg .f64 %r200; .reg .f64 %r201; .reg .pred %r202; .reg .f64 %r203; .reg .f64 %r204; .reg .pred %r205; .reg .f64 %r206; .reg .f64 %r207; .reg .pred %r208; .reg .pred %r209; .reg .f64 %r211; .reg .f64 %r212; .reg .pred %r213; .reg .f64 %r215; mov.u32 %r110,%ar0; mov.f64 %r111,%ar1; mov.b64 %r112,%r111; shr.u64 %r113,%r112,32; .loc 1 73 2 cvt.u32.u64 %r79,%r113; cvt.u32.u64 %r80,%r112; .loc 1 74 5 and.b32 %r81,%r79,2147483647; .loc 1 76 26 neg.s32 %r115,%r80; .loc 1 76 25 or.b32 %r116,%r115,%r80; .loc 1 76 31 shr.u32 %r117,%r116,31; .loc 1 76 8 or.b32 %r118,%r117,%r81; .loc 1 76 4 setp.le.u32 %r119,%r118,2146435072; @ %r119 bra $L2; .loc 1 76 57 add.f64 %r109,%r111,%r111; bra $L1; $L2: .loc 1 77 4 setp.ge.s32 %r120,%r110,0; @ %r120 bra $L4; .loc 1 78 5 neg.s32 %r110,%r110; .loc 1 79 5 neg.f64 %r111,%r111; .loc 1 80 6 add.u32 %r79,%r79,-2147483648; bra $L5; $L4: .loc 1 82 4 setp.ne.u32 %r121,%r110,0; @ %r121 bra $L5; .loc 1 82 18 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r111; call (%value_in),__ieee754_j0,(%out_arg1); ld.param.f64 %r123,[%value_in]; } mov.f64 %r109,%r123; bra $L1; $L5: .loc 1 83 4 setp.ne.u32 %r124,%r110,1; @ %r124 bra $L6; .loc 1 83 18 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r111; call (%value_in),__ieee754_j1,(%out_arg1); ld.param.f64 %r126,[%value_in]; } mov.f64 %r109,%r126; bra $L1; $L6: .loc 1 84 6 shr.u32 %r128,%r79,31; and.b32 %r82,%r128,%r110; .loc 1 85 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r111; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r130,[%value_in]; } .loc 1 86 8 or.b32 %r131,%r80,%r81; .loc 1 86 4 set.u32.eq.u32 %r133,%r131,0; neg.s32 %r134,%r133; .loc 1 86 15 set.u32.gt.s32 %r136,%r81,2146435071; neg.s32 %r137,%r136; cvt.u16.u32 %r139,%r134; cvt.u16.u32 %r140,%r137; 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 %r32,%r110; .loc 1 88 9 setp.le.f64 %r144,%r32,%r130; @ ! %r144 bra $L47; .loc 1 90 8 setp.le.s32 %r145,%r81,1389363199; @ %r145 bra $L10; .loc 1 104 11 and.b32 %r33,%r110,3; setp.eq.u32 %r146,%r33,2; @ %r146 bra $L11; setp.eq.u32 %r147,%r33,3; @ %r147 bra $L12; setp.eq.u32 %r148,%r33,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 %r73,%r150,%r152; .loc 1 105 7 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 %r73,%r154,%r156; .loc 1 106 7 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 %r73,%r161,%r160; .loc 1 107 7 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 %r73,%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,%r73,0d3fe20dd750429b6d; .loc 1 110 5 div.rn.f64 %r109,%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 %r48,%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 %r52,%r172; add.u32 %r102,%r110,%r110; mov.u32 %r105,2; $L15: .loc 1 116 14 cvt.rn.f64.s32 %r174,%r105; .loc 1 116 27 div.rn.f64 %r175,%r174,%r130; .loc 1 116 9 neg.f64 %r176,%r48; fma.rn.f64 %r109,%r175,%r52,%r176; add.u32 %r105,%r105,2; mov.f64 %r48,%r52; mov.f64 %r52,%r109; .loc 1 114 10 setp.ne.u32 %r177,%r102,%r105; @ %r177 bra $L15; bra $L7; $L47: .loc 1 121 8 setp.gt.s32 %r178,%r81,1041235967; @ %r178 bra $L16; .loc 1 125 5 setp.gt.s32 %r179,%r110,33; @ %r179 bra $L32; .loc 1 128 12 mul.f64 %r85,%r130,0d3fe0000000000000; add.u32 %r99,%r110,1; .loc 1 128 23 mov.f64 %r66,%r85; .loc 1 129 13 mov.f64 %r86,0d3ff0000000000000; .loc 1 129 19 mov.u32 %r74,2; $L17: .loc 1 130 9 cvt.rn.f64.s32 %r180,%r74; .loc 1 130 6 mul.f64 %r86,%r86,%r180; .loc 1 131 6 mul.f64 %r66,%r66,%r85; .loc 1 129 28 add.u32 %r74,%r74,1; .loc 1 129 7 setp.ne.u32 %r181,%r74,%r99; @ %r181 bra $L17; div.rn.f64 %r109,%r66,%r86; bra $L7; $L16: .loc 1 167 10 add.u32 %r50,%r110,%r110; .loc 1 167 13 cvt.rn.f64.s32 %r183,%r50; .loc 1 167 6 div.rn.f64 %r22,%r183,%r130; .loc 1 167 27 mov.f64 %r184,0d4000000000000000; div.rn.f64 %r87,%r184,%r130; .loc 1 168 14 add.f64 %r71,%r22,%r87; .loc 1 168 24 fma.rn.f64 %r70,%r22,%r71,0dbff0000000000000; .loc 1 169 8 setp.lt.f64 %r185,%r70,0d41cdcd6500000000; @ ! %r185 bra $L48; .loc 1 168 38 mov.u32 %r89,1; $L20: .loc 1 170 6 add.u32 %r89,%r89,1; .loc 1 170 14 add.f64 %r71,%r71,%r87; .loc 1 171 8 neg.f64 %r186,%r22; mov.f64 %r22,%r70; .loc 1 173 7 fma.rn.f64 %r70,%r71,%r70,%r186; .loc 1 169 8 setp.lt.f64 %r187,%r70,0d41cdcd6500000000; @ %r187 bra $L20; bra $L49; $L48: .loc 1 176 23 add.u32 %r188,%r110,1; .loc 1 176 17 add.u32 %r78,%r188,%r188; bra $L22; $L49: .loc 1 176 23 add.u32 %r190,%r89,%r110; .loc 1 176 17 add.u32 %r78,%r190,%r190; $L22: .loc 1 168 38 mov.f64 %r77,0d0000000000000000; .loc 1 176 44 mov.f64 %r194,0d3ff0000000000000; $L23: .loc 1 176 52 cvt.rn.f64.s32 %r192,%r78; div.rn.f64 %r193,%r192,%r130; .loc 1 176 54 sub.f64 %r56,%r193,%r77; .loc 1 176 44 div.rn.f64 %r77,%r194,%r56; .loc 1 176 36 add.u32 %r78,%r78,-2; .loc 1 176 3 setp.le.s32 %r195,%r50,%r78; @ %r195 bra $L23; .loc 1 189 13 mul.f64 %r197,%r32,%r87; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r197; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r198,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r198; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r200,[%value_in]; } add.u32 %r95,%r110,-1; add.u32 %r104,%r50,-2; .loc 1 189 7 mul.f64 %r201,%r32,%r200; .loc 1 190 5 setp.lt.f64 %r202,%r201,0d40862e42fefa39ef; @ ! %r202 bra $L50; .loc 1 191 23 cvt.rn.f64.s32 %r94,%r104; .loc 1 176 44 mov.f64 %r106,%r77; .loc 1 178 5 mov.f64 %r108,0d3ff0000000000000; .loc 1 196 7 mov.f64 %r204,0d4000000000000000; bra $L26; $L33: .loc 1 194 7 mov.f64 %r108,%r72; $L26: .loc 1 193 6 mul.f64 %r203,%r108,%r94; .loc 1 194 10 div.rn.f64 %r60,%r203,%r130; .loc 1 194 7 sub.f64 %r72,%r60,%r106; .loc 1 196 7 sub.f64 %r94,%r94,%r204; .loc 1 191 43 add.u32 %r95,%r95,-1; mov.f64 %r106,%r108; .loc 1 191 11 setp.ne.u32 %r205,%r95,0; @ %r205 bra $L33; bra $L27; $L50: .loc 1 199 23 cvt.rn.f64.s32 %r98,%r104; .loc 1 176 44 mov.f64 %r68,%r77; .loc 1 178 5 mov.f64 %r72,0d3ff0000000000000; .loc 1 204 7 mov.f64 %r207,0d4000000000000000; .loc 1 209 11 mov.f64 %r215,%r72; $L30: .loc 1 201 6 mul.f64 %r206,%r72,%r98; .loc 1 202 10 div.rn.f64 %r61,%r206,%r130; .loc 1 202 7 sub.f64 %r97,%r61,%r68; .loc 1 204 7 sub.f64 %r98,%r98,%r207; .loc 1 206 6 setp.gt.f64 %r208,%r97,0d54b249ad2594c37d; @ ! %r208 bra $L51; .loc 1 207 10 div.rn.f64 %r68,%r72,%r97; .loc 1 208 10 div.rn.f64 %r77,%r77,%r97; .loc 1 209 11 mov.f64 %r72,%r215; bra $L28; $L51: mov.f64 %r68,%r72; .loc 1 202 7 mov.f64 %r72,%r97; $L28: .loc 1 199 43 add.u32 %r95,%r95,-1; .loc 1 199 11 setp.ne.u32 %r209,%r95,0; @ %r209 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 %r211,[%value_in]; } .loc 1 213 13 mul.f64 %r212,%r211,%r77; .loc 1 213 9 div.rn.f64 %r109,%r212,%r72; bra $L7; $L31: .loc 1 87 8 mov.f64 %r109,0d0000000000000000; bra $L7; $L32: mov.f64 %r109,0d0000000000000000; $L7: .loc 1 216 4 setp.eq.u32 %r213,%r82,0; @ %r213 bra $L1; .loc 1 216 20 neg.f64 %r109,%r109; $L1: .loc 1 217 1 mov.f64 %value,%r109; 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 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .f64 %r56; .reg .u32 %r57; .reg .f64 %r62; .reg .f64 %r66; .reg .u32 %r67; .reg .f64 %r68; .reg .u64 %r69; .reg .u64 %r70; .reg .u32 %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .pred %r76; .reg .u32 %r77; .reg .pred %r78; .reg .f64 %r79; .reg .pred %r80; .reg .f64 %r81; .reg .pred %r82; .reg .u32 %r83; .reg .u32 %r84; .reg .u32 %r85; .reg .pred %r86; .reg .f64 %r88; .reg .pred %r89; .reg .f64 %r91; .reg .f64 %r92; .reg .pred %r93; .reg .pred %r94; .reg .pred %r95; .reg .pred %r96; .reg .pred %r97; .reg .f64 %r99; .reg .f64 %r101; .reg .f64 %r103; .reg .f64 %r105; .reg .f64 %r106; .reg .f64 %r108; .reg .f64 %r110; .reg .f64 %r112; .reg .f64 %r114; .reg .f64 %r116; .reg .f64 %r117; .reg .f64 %r119; .reg .f64 %r121; .reg .u64 %r122; .reg .u64 %r123; .reg .u32 %r124; .reg .pred %r125; .reg .u32 %r126; .reg .f64 %r127; .reg .f64 %r128; .reg .f64 %r129; .reg .u32 %r131; .reg .u32 %r132; .reg .u64 %r133; .reg .u64 %r134; .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 .pred %r145; mov.u32 %r67,%ar0; mov.f64 %r68,%ar1; .loc 1 230 2 mov.b64 %r69,%r68; shr.u64 %r70,%r69,32; cvt.u32.u64 %r52,%r70; cvt.u32.u64 %r53,%r69; .loc 1 231 5 and.b32 %r54,%r52,2147483647; .loc 1 233 26 neg.s32 %r72,%r53; .loc 1 233 25 or.b32 %r73,%r72,%r53; .loc 1 233 31 shr.u32 %r74,%r73,31; .loc 1 233 8 or.b32 %r75,%r74,%r54; .loc 1 233 4 setp.le.u32 %r76,%r75,2146435072; @ %r76 bra $L53; .loc 1 233 57 add.f64 %r66,%r68,%r68; bra $L52; $L53: .loc 1 234 8 or.b32 %r77,%r53,%r54; .loc 1 234 4 setp.ne.u32 %r78,%r77,0; @ %r78 bra $L55; .loc 1 234 28 mov.f64 %r79,0dbff0000000000000; div.rn.f64 %r66,%r79,0d0000000000000000; bra $L52; $L55: .loc 1 235 4 setp.ge.s32 %r80,%r52,0; @ %r80 bra $L56; .loc 1 235 22 mov.f64 %r81,0d0000000000000000; div.rn.f64 %r66,%r81,0d0000000000000000; bra $L52; $L56: .loc 1 237 4 setp.ge.s32 %r82,%r67,0; @ %r82 bra $L57; .loc 1 238 5 neg.s32 %r67,%r67; .loc 1 239 20 add.u32 %r83,%r67,%r67; and.b32 %r84,%r83,2; .loc 1 239 8 mov.u32 %r85,1; sub.u32 %r55,%r85,%r84; bra $L58; $L57: .loc 1 241 4 setp.ne.u32 %r86,%r67,0; @ %r86 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 %r88,[%value_in]; } mov.f64 %r66,%r88; bra $L52; $L67: .loc 1 236 7 mov.u32 %r55,1; $L58: .loc 1 242 4 setp.ne.u32 %r89,%r67,1; @ %r89 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 %r91,[%value_in]; } .loc 1 242 22 cvt.rn.f64.s32 %r92,%r55; mul.f64 %r66,%r92,%r91; bra $L52; $L59: .loc 1 243 4 setp.eq.u32 %r93,%r54,2146435072; @ %r93 bra $L68; .loc 1 244 4 setp.le.s32 %r94,%r54,1389363199; @ %r94 bra $L60; .loc 1 258 11 and.b32 %r33,%r67,3; setp.eq.u32 %r95,%r33,2; @ %r95 bra $L61; setp.eq.u32 %r96,%r33,3; @ %r96 bra $L62; setp.eq.u32 %r97,%r33,1; @ %r97 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 %r99,[%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 %r101,[%value_in]; } .loc 1 259 20 sub.f64 %r51,%r99,%r101; .loc 1 259 7 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 %r103,[%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 %r105,[%value_in]; } .loc 1 260 22 neg.f64 %r106,%r103; .loc 1 260 20 sub.f64 %r51,%r106,%r105; .loc 1 260 7 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 %r108,[%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 %r110,[%value_in]; } .loc 1 261 20 sub.f64 %r51,%r108,%r110; .loc 1 261 7 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 %r112,[%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 %r114,[%value_in]; } .loc 1 262 20 add.f64 %r51,%r112,%r114; $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 %r116,[%value_in]; } .loc 1 264 16 mul.f64 %r117,%r51,0d3fe20dd750429b6d; .loc 1 264 5 div.rn.f64 %r66,%r117,%r116; 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 %r119,[%value_in]; } mov.f64 %r62,%r119; .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 %r121,[%value_in]; } mov.f64 %r56,%r121; .loc 1 271 6 mov.b64 %r122,%r56; shr.u64 %r123,%r122,32; cvt.u32.u64 %r124,%r123; setp.eq.u32 %r125,%r124,-1048576; @ %r125 bra $L69; .loc 1 271 11 mov.u32 %r57,1; bra $L66; $L70: .loc 1 273 5 mov.f64 %r56,%r66; $L66: .loc 1 273 18 add.u32 %r126,%r57,%r57; .loc 1 273 8 cvt.rn.f64.s32 %r127,%r126; .loc 1 273 21 div.rn.f64 %r128,%r127,%r68; .loc 1 273 5 neg.f64 %r129,%r62; fma.rn.f64 %r66,%r128,%r56,%r129; .loc 1 271 37 add.u32 %r57,%r57,1; mov.f64 %r62,%r56; .loc 1 271 15 set.u32.lt.s32 %r131,%r57,%r67; neg.s32 %r132,%r131; .loc 1 271 23 mov.b64 %r133,%r66; shr.u64 %r134,%r133,32; cvt.u32.u64 %r136,%r134; set.u32.ne.u32 %r137,%r136,-1048576; neg.s32 %r138,%r137; .loc 1 271 17 cvt.u16.u32 %r140,%r132; cvt.u16.u32 %r141,%r138; and.b16 %r139,%r140,%r141; .loc 1 271 6 cvt.u32.u16 %r142,%r139; cvt.u16.u8 %r143,%r142; setp.ne.u16 %r144,%r143,0; @ %r144 bra $L70; bra $L65; $L69: .loc 1 268 10 mov.f64 %r66,%r121; $L65: .loc 1 278 4 setp.eq.u32 %r145,%r55,1; @ %r145 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/ 1591654536 399 399 100644 6147 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r57; .reg .u32 %r58; .reg .u32 %r60; .reg .u32 %r61; .reg .u32 %r62; .reg .f64 %r63; .reg .u32 %r64; .reg .f64 %r65; .reg .u32 %r66; .reg .f64 %r67; .reg .f64 %r68; .reg .f64 %r69; .reg .f64 %r70; .reg .f64 %r71; .reg .f64 %r72; .reg .u32 %r73; .reg .f64 %r74; .reg .f64 %r78; .reg .f64 %r79; .reg .f64 %r82; .reg .f64 %r85; .reg .u64 %r86; .reg .f64 %r87; .reg .f64 %r88; .reg .u64 %r89; .reg .u64 %r90; .reg .pred %r91; .reg .u32 %r92; .reg .u32 %r94; .reg .u32 %r95; .reg .pred %r96; .reg .f64 %r97; .reg .pred %r98; .reg .f64 %r99; .reg .u64 %r100; .reg .u64 %r101; .reg .pred %r102; .reg .u32 %r103; .reg .u32 %r104; .reg .u32 %r105; .reg .u32 %r106; .reg .u32 %r107; .reg .u64 %r108; .reg .u64 %r109; .reg .u64 %r110; .reg .u64 %r111; .reg .u32 %r112; .reg .f64 %r113; .reg .u32 %r114; .reg .u32 %r115; .reg .pred %r116; .reg .pred %r117; .reg .pred %r118; .reg .f64 %r119; .reg .f64 %r121; .reg .f64 %r122; .reg .pred %r123; .reg .f64 %r125; .reg .f64 %r126; .reg .f64 %r127; .reg .f64 %r128; .reg .f64 %r129; .reg .f64 %r130; .reg .f64 %r131; .reg .f64 %r132; .reg .f64 %r133; .reg .f64 %r134; .reg .u32 %r135; .reg .u32 %r136; .reg .u32 %r137; .reg .pred %r138; .reg .f64 %r139; .reg .f64 %r140; .reg .pred %r141; .reg .f64 %r142; .reg .f64 %r143; .reg .f64 %r144; .reg .f64 %r145; .reg .f64 %r146; .reg .f64 %r147; .reg .pred %r148; .reg .f64 %r150; .reg .f64 %r151; .reg .f64 %r152; mov.f64 %r88,%ar0; mov.b64 %r89,%r88; shr.u64 %r90,%r89,32; cvt.u32.u64 %r66,%r90; .loc 1 102 2 cvt.u32.u64 %r58,%r90; .loc 1 105 5 setp.gt.s32 %r91,%r66,1048575; @ %r91 bra $L13; .loc 1 106 14 and.b32 %r92,%r66,2147483647; .loc 1 106 26 cvt.u32.u64 %r95,%r89; or.b32 %r94,%r92,%r95; .loc 1 106 9 setp.ne.u32 %r96,%r94,0; @ %r96 bra $L3; .loc 1 107 16 mov.f64 %r97,0dc350000000000000; div.rn.f64 %r87,%r97,0d0000000000000000; bra $L1; $L3: .loc 1 108 9 setp.ge.s32 %r98,%r66,0; @ %r98 bra $L5; .loc 1 108 25 sub.f64 %r99,%r88,%r88; .loc 1 108 28 div.rn.f64 %r87,%r99,0d0000000000000000; bra $L1; $L5: .loc 1 109 17 mul.f64 %r88,%r88,0d4350000000000000; .loc 1 110 6 mov.b64 %r100,%r88; shr.u64 %r101,%r100,32; cvt.u32.u64 %r58,%r101; .loc 1 109 8 mov.u32 %r57,-54; bra $L2; $L13: .loc 1 104 3 mov.u32 %r57,0; $L2: .loc 1 112 5 setp.le.s32 %r102,%r58,2146435071; @ %r102 bra $L6; .loc 1 112 32 add.f64 %r87,%r88,%r88; bra $L1; $L6: .loc 1 113 10 shr.s32 %r103,%r58,20; .loc 1 113 15 add.u32 %r104,%r103,-1023; .loc 1 113 4 add.u32 %r60,%r104,%r57; .loc 1 114 5 and.b32 %r61,%r58,1048575; .loc 1 115 9 add.u32 %r105,%r61,614244; .loc 1 115 4 and.b32 %r62,%r105,1048576; .loc 1 116 2 mov.b64 %r86,%r88; xor.b32 %r106,%r62,1072693248; or.b32 %r107,%r106,%r61; cvt.u64.u32 %r108,%r107; shl.b64 %r109,%r108,32; and.b64 %r110,%r86,4294967295; or.b64 %r111,%r110,%r109; mov.b64 %r63,%r111; .loc 1 117 9 shr.s32 %r112,%r62,20; .loc 1 117 4 add.u32 %r64,%r112,%r60; .loc 1 118 4 mov.f64 %r113,0d3ff0000000000000; sub.f64 %r65,%r63,%r113; .loc 1 119 19 add.u32 %r114,%r61,2; .loc 1 119 16 and.b32 %r115,%r114,1048575; .loc 1 119 4 setp.gt.s32 %r116,%r115,2; @ %r116 bra $L7; .loc 1 120 13 setp.neu.f64 %r117,%r65,0d0000000000000000; @ %r117 bra $L8; .loc 1 120 27 setp.eq.u32 %r118,%r64,0; @ %r118 bra $L14; .loc 1 120 56 cvt.rn.f64.s32 %r67,%r64; .loc 1 121 51 mul.f64 %r119,%r67,0d3dea39ef35793c76; .loc 1 121 48 fma.rn.f64 %r87,%r67,0d3fe62e42fee00000,%r119; bra $L1; $L8: .loc 1 122 18 fma.rn.f64 %r121,%r65,0dbfd5555555555555,0d3fe0000000000000; .loc 1 122 11 mul.f64 %r122,%r65,%r65; .loc 1 122 8 mul.f64 %r68,%r121,%r122; .loc 1 123 8 setp.ne.u32 %r123,%r64,0; @ %r123 bra $L9; .loc 1 123 23 sub.f64 %r87,%r65,%r68; bra $L1; $L9: .loc 1 123 35 cvt.rn.f64.s32 %r69,%r64; .loc 1 124 32 fma.rn.f64 %r125,%r69,0dbdea39ef35793c76,%r68; .loc 1 124 43 sub.f64 %r126,%r125,%r65; .loc 1 124 28 neg.f64 %r127,%r126; fma.rn.f64 %r87,%r69,0d3fe62e42fee00000,%r127; bra $L1; $L7: .loc 1 126 13 add.f64 %r128,%r65,0d4000000000000000; .loc 1 126 5 div.rn.f64 %r70,%r65,%r128; .loc 1 127 5 cvt.rn.f64.s32 %r71,%r64; .loc 1 128 4 mul.f64 %r72,%r70,%r70; .loc 1 129 4 add.u32 %r73,%r61,-398458; .loc 1 130 4 mul.f64 %r74,%r72,%r72; .loc 1 132 19 fma.rn.f64 %r129,%r74,0d3fc39a09d078c69f,0d3fcc71c51d8e78af; .loc 1 132 12 fma.rn.f64 %r130,%r129,%r74,0d3fd999999997fa04; .loc 1 133 26 fma.rn.f64 %r131,%r74,0d3fc2f112df3e5244,0d3fc7466496cb03de; .loc 1 133 19 fma.rn.f64 %r132,%r131,%r74,0d3fd2492494229359; .loc 1 133 12 fma.rn.f64 %r133,%r132,%r74,0d3fe5555555555593; .loc 1 133 4 mul.f64 %r134,%r133,%r72; .loc 1 135 4 fma.rn.f64 %r78,%r130,%r74,%r134; .loc 1 131 4 mov.u32 %r136,440401; sub.u32 %r135,%r136,%r61; .loc 1 134 4 or.b32 %r137,%r135,%r73; .loc 1 136 4 setp.le.s32 %r138,%r137,0; @ %r138 bra $L10; .loc 1 137 14 mul.f64 %r139,%r65,0d3fe0000000000000; .loc 1 137 10 mul.f64 %r79,%r139,%r65; add.f64 %r140,%r78,%r79; mul.f64 %r82,%r140,%r70; .loc 1 138 8 setp.ne.u32 %r141,%r64,0; @ %r141 bra $L11; .loc 1 138 29 sub.f64 %r142,%r79,%r82; .loc 1 138 23 sub.f64 %r87,%r65,%r142; bra $L1; $L11: .loc 1 139 43 fma.rn.f64 %r143,%r71,0d3dea39ef35793c76,%r82; .loc 1 139 31 sub.f64 %r144,%r79,%r143; .loc 1 139 55 sub.f64 %r145,%r144,%r65; .loc 1 139 24 neg.f64 %r146,%r145; fma.rn.f64 %r87,%r71,0d3fe62e42fee00000,%r146; bra $L1; $L10: sub.f64 %r147,%r65,%r78; mul.f64 %r85,%r147,%r70; .loc 1 141 8 setp.ne.u32 %r148,%r64,0; @ %r148 bra $L12; .loc 1 141 23 sub.f64 %r87,%r65,%r85; bra $L1; $L12: .loc 1 142 34 fma.rn.f64 %r150,%r71,0dbdea39ef35793c76,%r85; .loc 1 142 45 sub.f64 %r151,%r150,%r65; .loc 1 142 24 neg.f64 %r152,%r151; fma.rn.f64 %r87,%r71,0d3fe62e42fee00000,%r152; bra $L1; $L14: .loc 1 120 41 mov.f64 %r87,0d0000000000000000; $L1: .loc 1 144 1 mov.f64 %value,%r87; st.param.f64 [%value_out],%value; ret; } lib_a-e_log10.o/1591654536 399 399 100644 3057 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r44; .reg .u64 %r47; .reg .f64 %r48; .reg .f64 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .pred %r52; .reg .u32 %r53; .reg .u32 %r55; .reg .u32 %r56; .reg .pred %r57; .reg .f64 %r58; .reg .pred %r59; .reg .f64 %r60; .reg .u64 %r61; .reg .u64 %r62; .reg .pred %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .u32 %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .u32 %r70; .reg .u64 %r71; .reg .u64 %r72; .reg .u64 %r73; .reg .u64 %r74; .reg .f64 %r76; .reg .f64 %r77; .reg .f64 %r78; mov.f64 %r49,%ar0; mov.b64 %r50,%r49; shr.u64 %r51,%r50,32; cvt.u32.u64 %r44,%r51; .loc 1 78 2 cvt.u32.u64 %r37,%r51; .loc 1 81 12 setp.gt.s32 %r52,%r44,1048575; @ %r52 bra $L7; .loc 1 82 21 and.b32 %r53,%r44,2147483647; .loc 1 82 33 cvt.u32.u64 %r56,%r50; or.b32 %r55,%r53,%r56; .loc 1 82 16 setp.ne.u32 %r57,%r55,0; @ %r57 bra $L3; .loc 1 83 30 mov.f64 %r58,0dc350000000000000; div.rn.f64 %r48,%r58,0d0000000000000000; bra $L1; $L3: .loc 1 84 16 setp.ge.s32 %r59,%r44,0; @ %r59 bra $L5; .loc 1 84 32 sub.f64 %r60,%r49,%r49; .loc 1 84 35 div.rn.f64 %r48,%r60,0d0000000000000000; bra $L1; $L5: .loc 1 85 24 mul.f64 %r49,%r49,0d4350000000000000; .loc 1 86 6 mov.b64 %r61,%r49; shr.u64 %r62,%r61,32; cvt.u32.u64 %r37,%r62; .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 %r63,%r37,2146435071; @ %r63 bra $L6; .loc 1 88 32 add.f64 %r48,%r49,%r49; bra $L1; $L6: .loc 1 89 10 shr.s32 %r64,%r37,20; .loc 1 89 15 add.u32 %r65,%r64,-1023; .loc 1 89 4 add.u32 %r38,%r65,%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 %r66,%r38,%r39; .loc 1 92 12 cvt.rn.f64.s32 %r41,%r66; .loc 1 93 2 mov.b64 %r47,%r49; .loc 1 91 37 mov.u32 %r68,1023; sub.u32 %r67,%r68,%r39; .loc 1 91 40 shl.b32 %r69,%r67,20; .loc 1 91 12 or.b32 %r70,%r69,%r29; .loc 1 93 2 cvt.u64.u32 %r71,%r70; shl.b64 %r72,%r71,32; and.b64 %r73,%r47,4294967295; or.b64 %r74,%r73,%r72; mov.b64 %r42,%r74; .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 %r76,[%value_in]; } .loc 1 94 27 mul.f64 %r77,%r76,0d3fdbcb7b1526e50e; .loc 1 94 5 fma.rn.f64 %r78,%r41,0d3d59fef311f12b36,%r77; .loc 1 95 11 fma.rn.f64 %r48,%r41,0d3fd34413509f6000,%r78; $L1: .loc 1 96 1 mov.f64 %value,%r48; st.param.f64 [%value_out],%value; ret; } lib_a-e_pow.o/ 1591654536 399 399 100644 23377 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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" // BEGIN GLOBAL FUNCTION DECL: nan .extern .func (.param .f64 %value_out) nan (.param .u64 %in_ar0); // 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: scalbn .extern .func (.param .f64 %value_out) scalbn (.param .f64 %in_ar0, .param .u32 %in_ar1); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[1] = {0 }; // 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 %r51; .reg .f64 %r54; .reg .u32 %r103; .reg .u32 %r118; .reg .f64 %r132; .reg .f64 %r135; .reg .f64 %r136; .reg .f64 %r137; .reg .f64 %r138; .reg .f64 %r139; .reg .u32 %r141; .reg .u32 %r142; .reg .u32 %r143; .reg .u32 %r144; .reg .u32 %r145; .reg .u32 %r146; .reg .f64 %r147; .reg .u32 %r149; .reg .u32 %r150; .reg .u32 %r151; .reg .u32 %r153; .reg .u32 %r154; .reg .u32 %r155; .reg .u32 %r156; .reg .u32 %r157; .reg .u32 %r158; .reg .u32 %r160; .reg .f64 %r162; .reg .f64 %r164; .reg .u32 %r166; .reg .u32 %r168; .reg .f64 %r169; .reg .f64 %r170; .reg .f64 %r171; .reg .f64 %r172; .reg .f64 %r173; .reg .f64 %r174; .reg .f64 %r176; .reg .f64 %r177; .reg .f64 %r178; .reg .f64 %r180; .reg .f64 %r182; .reg .f64 %r184; .reg .f64 %r186; .reg .f64 %r187; .reg .f64 %r189; .reg .f64 %r190; .reg .f64 %r191; .reg .u32 %r192; .reg .u32 %r194; .reg .u32 %r195; .reg .f64 %r196; .reg .f64 %r197; .reg .f64 %r198; .reg .f64 %r199; .reg .f64 %r200; .reg .f64 %r201; .reg .f64 %r202; .reg .f64 %r204; .reg .u32 %r205; .reg .u32 %r206; .reg .u32 %r209; .reg .u32 %r210; .reg .u32 %r217; .reg .f64 %r228; .reg .f64 %r229; .reg .u64 %r233; .reg .u64 %r234; .reg .u64 %r235; .reg .u64 %r237; .reg .u64 %r238; .reg .u64 %r239; .reg .u64 %r240; .reg .u64 %r242; .reg .f64 %r244; .reg .f64 %r245; .reg .f64 %r246; .reg .u64 %r247; .reg .u64 %r248; .reg .u32 %r250; .reg .pred %r251; .reg .u64 %r252; .reg .u64 %r253; .reg .pred %r255; .reg .u32 %r257; .reg .u32 %r258; .reg .u32 %r260; .reg .u32 %r261; .reg .u16 %r262; .reg .u16 %r263; .reg .u16 %r264; .reg .u32 %r265; .reg .u16 %r266; .reg .pred %r267; .reg .pred %r268; .reg .u32 %r270; .reg .u32 %r271; .reg .u32 %r273; .reg .u32 %r274; .reg .u16 %r275; .reg .u16 %r276; .reg .u16 %r277; .reg .u32 %r278; .reg .u16 %r279; .reg .pred %r280; .reg .u32 %r281; .reg .u32 %r282; .reg .pred %r283; .reg .u64 %r284; .reg .f64 %r285; .reg .pred %r286; .reg .pred %r287; .reg .pred %r288; .reg .u32 %r289; .reg .pred %r290; .reg .u32 %r291; .reg .u32 %r292; .reg .pred %r293; .reg .u32 %r294; .reg .u32 %r295; .reg .pred %r296; .reg .u32 %r297; .reg .u32 %r298; .reg .pred %r299; .reg .u32 %r300; .reg .u32 %r301; .reg .pred %r302; .reg .pred %r303; .reg .u32 %r304; .reg .u32 %r305; .reg .pred %r306; .reg .pred %r307; .reg .pred %r308; .reg .pred %r309; .reg .pred %r310; .reg .pred %r311; .reg .f64 %r312; .reg .pred %r313; .reg .u32 %r315; .reg .u32 %r316; .reg .u32 %r318; .reg .u32 %r319; .reg .u16 %r321; .reg .u16 %r322; .reg .u16 %r323; .reg .u32 %r324; .reg .u16 %r325; .reg .pred %r326; .reg .f64 %r328; .reg .f64 %r330; .reg .pred %r331; .reg .u32 %r332; .reg .u32 %r334; .reg .u32 %r335; .reg .u32 %r337; .reg .u32 %r338; .reg .u16 %r339; .reg .u16 %r340; .reg .u16 %r341; .reg .u32 %r342; .reg .u16 %r343; .reg .pred %r344; .reg .pred %r345; .reg .f64 %r346; .reg .pred %r347; .reg .u32 %r348; .reg .u32 %r349; .reg .pred %r350; .reg .pred %r351; .reg .u32 %r353; .reg .pred %r354; .reg .pred %r355; .reg .pred %r356; .reg .pred %r357; .reg .pred %r358; .reg .f64 %r359; .reg .pred %r360; .reg .pred %r361; .reg .pred %r362; .reg .pred %r363; .reg .pred %r364; .reg .f64 %r365; .reg .f64 %r366; .reg .f64 %r367; .reg .f64 %r368; .reg .f64 %r369; .reg .f64 %r370; .reg .f64 %r371; .reg .f64 %r373; .reg .f64 %r374; .reg .u64 %r375; .reg .f64 %r377; .reg .u32 %r378; .reg .pred %r379; .reg .u64 %r380; .reg .u64 %r381; .reg .u32 %r382; .reg .u32 %r383; .reg .pred %r384; .reg .pred %r385; .reg .u64 %r386; .reg .u64 %r387; .reg .u64 %r388; .reg .u64 %r389; .reg .f64 %r390; .reg .f64 %r391; .reg .u64 %r392; .reg .u32 %r393; .reg .u32 %r394; .reg .u32 %r395; .reg .u32 %r396; .reg .u64 %r397; .reg .u64 %r398; .reg .f64 %r401; .reg .f64 %r403; .reg .f64 %r404; .reg .f64 %r405; .reg .f64 %r406; .reg .f64 %r407; .reg .f64 %r408; .reg .f64 %r409; .reg .f64 %r410; .reg .f64 %r411; .reg .f64 %r412; .reg .f64 %r413; .reg .f64 %r414; .reg .f64 %r415; .reg .f64 %r416; .reg .u64 %r417; .reg .f64 %r419; .reg .f64 %r420; .reg .f64 %r421; .reg .f64 %r422; .reg .f64 %r423; .reg .f64 %r424; .reg .u64 %r425; .reg .f64 %r427; .reg .f64 %r428; .reg .f64 %r429; .reg .f64 %r430; .reg .f64 %r431; .reg .f64 %r432; .reg .f64 %r433; .reg .u64 %r434; .reg .f64 %r436; .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 .pred %r448; .reg .u32 %r449; .reg .u32 %r450; .reg .pred %r451; .reg .f64 %r452; .reg .f64 %r453; .reg .f64 %r454; .reg .pred %r455; .reg .f64 %r456; .reg .pred %r457; .reg .u32 %r458; .reg .u32 %r459; .reg .pred %r460; .reg .f64 %r461; .reg .f64 %r462; .reg .pred %r463; .reg .f64 %r464; .reg .pred %r465; .reg .u32 %r466; .reg .u32 %r467; .reg .u32 %r468; .reg .u32 %r469; .reg .u32 %r470; .reg .u32 %r471; .reg .u32 %r472; .reg .u32 %r473; .reg .u32 %r474; .reg .u64 %r475; .reg .u64 %r476; .reg .u32 %r479; .reg .u32 %r480; .reg .u32 %r481; .reg .pred %r482; .reg .u64 %r483; .reg .f64 %r484; .reg .f64 %r485; .reg .f64 %r486; .reg .f64 %r488; .reg .f64 %r489; .reg .f64 %r490; .reg .f64 %r491; .reg .f64 %r492; .reg .f64 %r493; .reg .f64 %r494; .reg .f64 %r495; .reg .f64 %r496; .reg .f64 %r497; .reg .f64 %r498; .reg .f64 %r499; .reg .f64 %r500; .reg .u64 %r501; .reg .u64 %r502; .reg .pred %r504; .reg .f64 %r507; .reg .u64 %r508; .reg .u64 %r509; .reg .u64 %r510; .reg .u64 %r511; .reg .u32 %r513; .reg .f64 %r515; .reg .pred %r516; .reg .u32 %r517; .reg .u32 %r519; .reg .u32 %r520; .reg .u32 %r522; .reg .u32 %r523; .reg .u16 %r524; .reg .u16 %r525; .reg .u16 %r526; .reg .u32 %r527; .reg .u16 %r528; .reg .pred %r529; mov.f64 %r245,%ar0; mov.f64 %r246,%ar1; .loc 1 115 2 mov.b64 %r247,%r246; shr.u64 %r248,%r247,32; cvt.u32.u64 %r150,%r248; cvt.u32.u64 %r166,%r247; .loc 1 116 26 and.b32 %r151,%r150,2147483647; .loc 1 119 8 or.b32 %r250,%r151,%r166; .loc 1 119 4 setp.eq.u32 %r251,%r250,0; @ %r251 bra $L44; mov.b64 %r252,%r245; shr.u64 %r253,%r252,32; cvt.u32.u64 %r156,%r253; .loc 1 114 2 cvt.u32.u64 %r149,%r253; cvt.u32.u64 %r157,%r252; .loc 1 116 5 and.b32 %r145,%r156,2147483647; .loc 1 122 4 setp.gt.s32 %r255,%r145,2146435072; @ %r255 bra $L3; .loc 1 122 28 set.u32.eq.u32 %r257,%r145,2146435072; neg.s32 %r258,%r257; .loc 1 122 46 set.u32.ne.u32 %r260,%r157,0; neg.s32 %r261,%r260; .loc 1 122 41 cvt.u16.u32 %r263,%r258; cvt.u16.u32 %r264,%r261; and.b16 %r262,%r263,%r264; .loc 1 122 21 cvt.u32.u16 %r265,%r262; cvt.u16.u8 %r266,%r265; setp.ne.u16 %r267,%r266,0; @ %r267 bra $L4; .loc 1 122 52 setp.gt.s32 %r268,%r151,2146435072; @ %r268 bra $L3; .loc 1 123 28 set.u32.eq.u32 %r270,%r151,2146435072; neg.s32 %r271,%r270; .loc 1 123 46 set.u32.ne.u32 %r273,%r166,0; neg.s32 %r274,%r273; .loc 1 123 41 cvt.u16.u32 %r276,%r271; cvt.u16.u32 %r277,%r274; and.b16 %r275,%r276,%r277; .loc 1 123 21 cvt.u32.u16 %r278,%r275; cvt.u16.u8 %r279,%r278; setp.eq.u16 %r280,%r279,0; @ %r280 bra $L5; $L3: .loc 1 124 13 add.u32 %r281,%r145,-1072693248; .loc 1 124 25 or.b32 %r282,%r281,%r157; .loc 1 124 8 setp.eq.u32 %r283,%r282,0; @ %r283 bra $L45; $L4: .loc 1 125 18 cvta.const.u64 %r284,$LC0; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r284; call (%value_in),nan,(%out_arg1); ld.param.f64 %r285,[%value_in]; } mov.f64 %r244,%r285; bra $L1; $L5: .loc 1 134 4 setp.ge.s32 %r286,%r156,0; @ %r286 bra $L46; .loc 1 135 8 setp.gt.s32 %r287,%r151,1128267775; @ %r287 bra $L47; .loc 1 136 13 setp.le.s32 %r288,%r151,1072693247; @ %r288 bra $L48; .loc 1 137 10 shr.s32 %r289,%r151,20; .loc 1 137 5 add.u32 %r153,%r289,-1023; .loc 1 138 5 setp.le.s32 %r290,%r153,20; @ %r290 bra $L7; .loc 1 139 18 mov.u32 %r291,52; sub.u32 %r34,%r291,%r153; .loc 1 139 13 shr.u32 %r154,%r166,%r34; .loc 1 140 12 shl.b32 %r292,%r154,%r34; .loc 1 140 9 setp.ne.u32 %r293,%r292,%r166; @ %r293 bra $L49; .loc 1 140 40 and.b32 %r294,%r154,1; .loc 1 140 34 mov.u32 %r295,2; sub.u32 %r141,%r295,%r294; bra $L6; $L7: .loc 1 141 12 setp.ne.u32 %r296,%r166,0; @ %r296 bra $L8; .loc 1 142 18 mov.u32 %r297,20; sub.u32 %r39,%r297,%r153; .loc 1 142 9 shr.s32 %r155,%r151,%r39; .loc 1 143 12 shl.b32 %r298,%r155,%r39; .loc 1 143 9 setp.ne.u32 %r299,%r298,%r151; @ %r299 bra $L50; .loc 1 143 40 and.b32 %r300,%r155,1; .loc 1 143 34 mov.u32 %r301,2; sub.u32 %r141,%r301,%r300; bra $L11; $L46: .loc 1 133 10 mov.u32 %r141,0; bra $L6; $L47: .loc 1 135 32 mov.u32 %r141,2; bra $L6; $L48: .loc 1 133 10 mov.u32 %r141,0; bra $L6; $L49: mov.u32 %r141,0; $L6: .loc 1 149 4 setp.ne.u32 %r302,%r166,0; @ %r302 bra $L10; .loc 1 150 9 setp.ne.u32 %r303,%r151,2146435072; @ %r303 bra $L11; .loc 1 151 17 add.u32 %r304,%r145,-1072693248; .loc 1 151 29 or.b32 %r305,%r304,%r157; .loc 1 151 12 setp.eq.u32 %r306,%r305,0; @ %r306 bra $L51; .loc 1 153 18 setp.le.s32 %r307,%r145,1072693247; @ %r307 bra $L12; .loc 1 154 24 setp.ge.s32 %r308,%r150,0; @ %r308 bra $L52; $L13: mov.f64 %r244,0d0000000000000000; bra $L1; $L12: .loc 1 156 23 setp.ge.s32 %r309,%r150,0; @ %r309 bra $L13; neg.f64 %r244,%r246; bra $L1; $L11: .loc 1 158 8 setp.ne.u32 %r310,%r151,1072693248; @ %r310 bra $L14; .loc 1 159 5 setp.ge.s32 %r311,%r150,0; @ %r311 bra $L53; .loc 1 159 22 mov.f64 %r312,0d3ff0000000000000; div.rn.f64 %r244,%r312,%r245; bra $L1; $L14: .loc 1 161 8 setp.ne.u32 %r313,%r150,1073741824; @ %r313 bra $L15; .loc 1 161 33 mul.f64 %r244,%r245,%r245; bra $L1; $L15: .loc 1 162 8 set.u32.eq.u32 %r315,%r150,1071644672; neg.s32 %r316,%r315; .loc 1 163 5 not.b32 %r318,%r149; shr.u32 %r319,%r318,31; cvt.u16.u32 %r322,%r316; cvt.u16.u32 %r323,%r319; and.b16 %r321,%r322,%r323; cvt.u32.u16 %r324,%r321; cvt.u16.u8 %r325,%r324; setp.eq.u16 %r326,%r325,0; @ %r326 bra $L10; .loc 1 164 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r245; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r328,[%value_in]; } mov.f64 %r244,%r328; bra $L1; $L10: .loc 1 168 9 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r245; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r330,[%value_in]; } mov.f64 %r244,%r330; .loc 1 170 4 setp.ne.u32 %r331,%r157,0; @ %r331 bra $L16; .loc 1 171 30 and.b32 %r332,%r149,1073741823; set.u32.eq.u32 %r334,%r332,1072693248; neg.s32 %r335,%r334; .loc 1 171 27 set.u32.eq.u32 %r337,%r145,0; neg.s32 %r338,%r337; .loc 1 171 30 cvt.u16.u32 %r340,%r335; cvt.u16.u32 %r341,%r338; or.b16 %r339,%r340,%r341; cvt.u32.u16 %r342,%r339; cvt.u16.u8 %r343,%r342; setp.eq.u16 %r344,%r343,0; @ %r344 bra $L16; bra $L43; $L59: .loc 1 133 10 mov.u32 %r141,%r157; $L43: .loc 1 173 5 setp.ge.s32 %r345,%r150,0; @ %r345 bra $L17; .loc 1 173 14 mov.f64 %r346,0d3ff0000000000000; div.rn.f64 %r244,%r346,%r244; $L17: .loc 1 174 5 setp.ge.s32 %r347,%r149,0; @ %r347 bra $L1; .loc 1 175 14 add.u32 %r348,%r145,-1072693248; .loc 1 175 26 or.b32 %r349,%r348,%r141; .loc 1 175 9 setp.ne.u32 %r350,%r349,0; @ %r350 bra $L18; .loc 1 176 10 sub.f64 %r48,%r244,%r244; .loc 1 176 6 div.rn.f64 %r244,%r48,%r48; bra $L1; $L18: .loc 1 177 16 setp.ne.u32 %r351,%r141,1; @ %r351 bra $L1; .loc 1 178 6 neg.f64 %r244,%r244; bra $L1; $L16: .loc 1 189 27 set.u32.ge.s32 %r51,%r156,0; .loc 1 189 30 or.b32 %r353,%r141,%r51; .loc 1 189 4 setp.ne.u32 %r354,%r353,0; @ %r354 bra $L19; $L42: .loc 1 189 52 sub.f64 %r54,%r245,%r245; .loc 1 189 55 div.rn.f64 %r244,%r54,%r54; bra $L1; $L19: .loc 1 192 4 setp.le.s32 %r355,%r151,1105199104; @ %r355 bra $L20; .loc 1 193 8 setp.le.s32 %r356,%r151,1139802112; @ %r356 bra $L21; .loc 1 194 5 setp.gt.s32 %r357,%r145,1072693247; @ %r357 bra $L22; .loc 1 194 46 setp.ge.s32 %r358,%r150,0; @ %r358 bra $L13; $L23: mov.f64 %r359,0d7e37e43c8800759c; mul.f64 %r244,%r359,0d7e37e43c8800759c; bra $L1; $L22: .loc 1 195 46 setp.gt.s32 %r360,%r150,0; @ %r360 bra $L23; bra $L13; $L21: .loc 1 198 8 setp.gt.s32 %r361,%r145,1072693246; @ %r361 bra $L24; .loc 1 198 48 setp.lt.s32 %r362,%r150,0; @ ! %r362 bra $L13; bra $L23; $L24: .loc 1 199 8 setp.le.s32 %r363,%r145,1072693248; @ %r363 bra $L25; .loc 1 199 48 setp.gt.s32 %r364,%r150,0; @ %r364 bra $L23; bra $L13; $L25: .loc 1 202 8 mov.f64 %r365,0d3ff0000000000000; sub.f64 %r162,%r330,%r365; .loc 1 203 48 neg.f64 %r366,%r162; fma.rn.f64 %r367,%r366,0d3fd0000000000000,0d3fd5555555555555; .loc 1 203 20 neg.f64 %r368,%r367; fma.rn.f64 %r369,%r368,%r162,0d3fe0000000000000; .loc 1 203 12 mul.f64 %r370,%r162,%r162; .loc 1 203 8 mul.f64 %r371,%r369,%r370; .loc 1 205 8 mul.f64 %r373,%r371,0dbff71547652b82fe; fma.rn.f64 %r164,%r162,0d3e54ae0bf85ddf44,%r373; .loc 1 206 9 fma.rn.f64 %r374,%r162,0d3ff7154760000000,%r164; .loc 1 207 6 mov.b64 %r233,%r374; and.b64 %r375,%r233,-4294967296; mov.b64 %r137,%r375; .loc 1 208 16 fma.rn.f64 %r377,%r366,0d3ff7154760000000,%r137; .loc 1 208 9 sub.f64 %r138,%r164,%r377; bra $L26; $L20: .loc 1 213 8 and.b32 %r378,%r149,2146435072; setp.ne.u32 %r379,%r378,0; @ %r379 bra $L54; .loc 1 214 7 mul.f64 %r244,%r330,0d4340000000000000; .loc 1 214 26 mov.b64 %r380,%r244; shr.u64 %r381,%r380,32; cvt.u32.u64 %r145,%r381; .loc 1 214 19 mov.u32 %r142,-53; bra $L27; $L54: .loc 1 211 8 mov.u32 %r142,0; $L27: .loc 1 215 17 shr.s32 %r382,%r145,20; .loc 1 215 22 add.u32 %r383,%r382,-1023; .loc 1 215 9 add.u32 %r143,%r383,%r142; .loc 1 216 9 and.b32 %r168,%r145,1048575; .loc 1 218 9 or.b32 %r146,%r168,1072693248; .loc 1 219 8 setp.le.s32 %r384,%r168,235662; @ %r384 bra $L55; .loc 1 220 13 setp.le.s32 %r385,%r168,767609; @ %r385 bra $L56; .loc 1 221 17 add.u32 %r143,%r143,1; .loc 1 221 24 add.u32 %r146,%r146,-1048576; mov.f64 %r229,0d0000000000000000; mov.f64 %r228,%r229; mov.u32 %r209,0; mov.f64 %r147,0d3ff0000000000000; bra $L28; $L55: mov.f64 %r229,0d0000000000000000; mov.f64 %r228,%r229; mov.u32 %r209,0; mov.f64 %r147,0d3ff0000000000000; bra $L28; $L56: mov.f64 %r229,0d3fe2b80340000000; mov.f64 %r228,0d3e4cfdeb43cfd006; mov.u32 %r209,262144; mov.f64 %r147,0d3ff8000000000000; $L28: .loc 1 222 6 mov.b64 %r234,%r244; cvt.u64.u32 %r386,%r146; shl.b64 %r387,%r386,32; and.b64 %r388,%r234,4294967295; or.b64 %r389,%r388,%r387; mov.b64 %r169,%r389; .loc 1 225 8 sub.f64 %r170,%r169,%r147; .loc 1 226 17 add.f64 %r390,%r147,%r169; .loc 1 226 8 mov.f64 %r391,0d3ff0000000000000; div.rn.f64 %r171,%r391,%r390; .loc 1 227 8 mul.f64 %r172,%r170,%r171; .loc 1 229 6 mov.b64 %r235,%r172; and.b64 %r392,%r235,-4294967296; mov.b64 %r173,%r392; .loc 1 232 6 shr.s32 %r393,%r146,1; or.b32 %r394,%r393,536870912; add.u32 %r395,%r394,524288; add.u32 %r396,%r395,%r209; cvt.u64.u32 %r397,%r396; shl.b64 %r398,%r397,32; mov.b64 %r174,%r398; .loc 1 234 26 neg.f64 %r401,%r173; .loc 1 234 17 fma.rn.f64 %r403,%r401,%r174,%r170; .loc 1 233 21 sub.f64 %r404,%r174,%r147; .loc 1 233 10 sub.f64 %r405,%r169,%r404; .loc 1 234 26 fma.rn.f64 %r406,%r401,%r405,%r403; .loc 1 234 10 mul.f64 %r176,%r406,%r171; .loc 1 236 9 mul.f64 %r177,%r172,%r172; .loc 1 237 12 mul.f64 %r407,%r177,%r177; .loc 1 238 19 add.f64 %r408,%r172,%r173; .loc 1 238 14 mul.f64 %r409,%r408,%r176; .loc 1 237 47 fma.rn.f64 %r410,%r177,0d3fca7e284a454eef,0d3fcd864a93c9db65; .loc 1 237 40 fma.rn.f64 %r411,%r410,%r177,0d3fd17460a91d4101; .loc 1 237 33 fma.rn.f64 %r412,%r411,%r177,0d3fd55555518f264d; .loc 1 237 26 fma.rn.f64 %r413,%r412,%r177,0d3fdb6db6db6fabff; .loc 1 237 19 fma.rn.f64 %r414,%r413,%r177,0d3fe3333333333303; .loc 1 238 8 fma.rn.f64 %r178,%r407,%r414,%r409; .loc 1 240 15 fma.rn.f64 %r415,%r173,%r173,0d4008000000000000; .loc 1 240 10 add.f64 %r416,%r415,%r178; .loc 1 241 6 mov.b64 %r237,%r416; and.b64 %r417,%r237,-4294967296; mov.b64 %r180,%r417; .loc 1 242 19 mov.f64 %r420,0d4008000000000000; sub.f64 %r419,%r180,%r420; .loc 1 242 24 fma.rn.f64 %r421,%r401,%r173,%r419; .loc 1 242 10 sub.f64 %r422,%r178,%r421; .loc 1 245 21 mul.f64 %r423,%r422,%r172; .loc 1 245 8 fma.rn.f64 %r182,%r176,%r180,%r423; .loc 1 247 10 fma.rn.f64 %r424,%r173,%r180,%r182; .loc 1 248 6 mov.b64 %r238,%r424; and.b64 %r425,%r238,-4294967296; mov.b64 %r184,%r425; .loc 1 249 18 fma.rn.f64 %r427,%r401,%r180,%r184; .loc 1 249 10 sub.f64 %r428,%r182,%r427; .loc 1 251 24 mul.f64 %r429,%r428,0d3feec709dc3a03fd; .loc 1 251 20 fma.rn.f64 %r430,%r184,0dbe3e2fe0145b01f5,%r429; .loc 1 251 10 add.f64 %r186,%r430,%r228; .loc 1 253 8 cvt.rn.f64.s32 %r187,%r143; .loc 1 254 17 fma.rn.f64 %r431,%r184,0d3feec709e0000000,%r186; .loc 1 254 22 add.f64 %r432,%r431,%r229; .loc 1 254 9 add.f64 %r433,%r432,%r187; .loc 1 255 6 mov.b64 %r239,%r433; and.b64 %r434,%r239,-4294967296; mov.b64 %r137,%r434; .loc 1 256 20 sub.f64 %r436,%r137,%r187; .loc 1 256 23 sub.f64 %r437,%r436,%r229; .loc 1 256 32 fma.rn.f64 %r438,%r184,0dbfeec709e0000000,%r437; .loc 1 256 9 sub.f64 %r138,%r186,%r438; $L26: .loc 1 260 38 add.u32 %r439,%r141,-1; .loc 1 260 30 or.b32 %r440,%r439,%r51; .loc 1 260 4 setp.ne.u32 %r441,%r440,0; .loc 1 261 8 selp.f64 %r139,0d3ff0000000000000,0dbff0000000000000,%r441; .loc 1 265 2 mov.b64 %r240,%r246; and.b64 %r442,%r240,-4294967296; mov.b64 %r189,%r442; .loc 1 266 10 sub.f64 %r443,%r246,%r189; .loc 1 266 19 mul.f64 %r444,%r138,%r246; .loc 1 266 6 fma.rn.f64 %r190,%r443,%r137,%r444; .loc 1 267 6 mul.f64 %r136,%r137,%r189; .loc 1 268 4 add.f64 %r191,%r190,%r136; mov.b64 %r445,%r191; shr.u64 %r446,%r445,32; cvt.u32.u64 %r160,%r446; .loc 1 269 2 cvt.u32.u64 %r192,%r446; cvt.u32.u64 %r158,%r445; .loc 1 270 5 setp.le.s32 %r448,%r160,1083179007; @ %r448 bra $L30; .loc 1 271 12 add.u32 %r449,%r160,-1083179008; .loc 1 271 24 or.b32 %r450,%r449,%r158; .loc 1 271 8 setp.eq.u32 %r451,%r450,0; @ %r451 bra $L31; .loc 1 272 11 mul.f64 %r452,%r139,0d7e37e43c8800759c; .loc 1 272 16 mul.f64 %r244,%r452,0d7e37e43c8800759c; bra $L1; $L31: .loc 1 274 9 add.f64 %r453,%r190,0d3c971547652b82fe; .loc 1 274 15 sub.f64 %r454,%r191,%r136; .loc 1 274 5 setp.gt.f64 %r455,%r453,%r454; @ ! %r455 bra $L32; .loc 1 274 29 mul.f64 %r456,%r139,0d7e37e43c8800759c; .loc 1 274 34 mul.f64 %r244,%r456,0d7e37e43c8800759c; bra $L1; $L30: .loc 1 276 14 and.b32 %r103,%r160,2147483647; .loc 1 276 11 setp.le.s32 %r457,%r103,1083231231; @ %r457 bra $L34; .loc 1 277 12 add.u32 %r458,%r160,1064252416; .loc 1 277 24 or.b32 %r459,%r458,%r158; .loc 1 277 8 setp.eq.u32 %r460,%r459,0; @ %r460 bra $L35; .loc 1 278 11 mul.f64 %r461,%r139,0d01a56e1fc2f8f359; .loc 1 278 16 mul.f64 %r244,%r461,0d01a56e1fc2f8f359; bra $L1; $L35: .loc 1 280 12 sub.f64 %r462,%r191,%r136; .loc 1 280 5 setp.ge.f64 %r463,%r462,%r190; @ ! %r463 bra $L32; .loc 1 280 26 mul.f64 %r464,%r139,0d01a56e1fc2f8f359; .loc 1 280 31 mul.f64 %r244,%r464,0d01a56e1fc2f8f359; bra $L1; $L34: .loc 1 289 4 setp.le.s32 %r465,%r103,1071644672; @ %r465 bra $L58; .loc 1 287 8 shr.s32 %r217,%r103,20; $L41: .loc 1 290 27 add.u32 %r466,%r217,-1022; .loc 1 290 23 mov.u32 %r468,1048576; shr.s32 %r467,%r468,%r466; .loc 1 290 8 add.u32 %r194,%r467,%r192; .loc 1 291 25 shr.s32 %r469,%r194,20; and.b32 %r470,%r469,2047; .loc 1 291 8 add.u32 %r195,%r470,-1023; .loc 1 293 6 mov.u32 %r472,1048575; shr.s32 %r471,%r472,%r195; not.b32 %r473,%r471; and.b32 %r474,%r473,%r194; cvt.u64.u32 %r475,%r474; shl.b64 %r476,%r475,32; mov.b64 %r196,%r476; .loc 1 294 13 and.b32 %r479,%r194,1048575; .loc 1 294 25 or.b32 %r118,%r479,1048576; .loc 1 294 42 mov.u32 %r481,20; sub.u32 %r480,%r481,%r195; .loc 1 294 8 shr.s32 %r144,%r118,%r480; .loc 1 295 8 setp.ge.s32 %r482,%r192,0; @ %r482 bra $L38; .loc 1 295 16 neg.s32 %r144,%r144; $L38: .loc 1 296 10 sub.f64 %r136,%r136,%r196; shl.b32 %r210,%r144,20; add.f64 %r191,%r190,%r136; bra $L37; $L58: mov.u32 %r210,0; .loc 1 288 4 mov.u32 %r144,%r210; $L37: .loc 1 299 2 mov.b64 %r242,%r191; and.b64 %r483,%r242,-4294967296; mov.b64 %r197,%r483; .loc 1 301 13 sub.f64 %r484,%r197,%r136; .loc 1 301 10 sub.f64 %r485,%r190,%r484; .loc 1 301 25 mul.f64 %r486,%r197,0dbe205c610ca86c39; .loc 1 301 4 fma.rn.f64 %r198,%r485,0d3fe62e42fefa39ef,%r486; .loc 1 302 4 fma.rn.f64 %r199,%r197,0d3fe62e4300000000,%r198; .loc 1 303 10 fma.rn.f64 %r488,%r197,0dbfe62e4300000000,%r199; .loc 1 303 4 sub.f64 %r200,%r198,%r488; .loc 1 304 5 mul.f64 %r201,%r199,%r199; .loc 1 305 35 fma.rn.f64 %r489,%r201,0d3e66376972bea4d0,0dbebbbd41c5d26bf1; .loc 1 305 29 fma.rn.f64 %r490,%r489,%r201,0d3f11566aaf25de2c; .loc 1 305 23 fma.rn.f64 %r491,%r490,%r201,0dbf66c16c16bebd93; .loc 1 305 17 fma.rn.f64 %r492,%r491,%r201,0d3fc555555555553e; .loc 1 305 6 neg.f64 %r493,%r492; fma.rn.f64 %r202,%r493,%r201,%r199; .loc 1 306 9 mul.f64 %r494,%r199,%r202; .loc 1 306 17 mov.f64 %r496,0d4000000000000000; sub.f64 %r495,%r202,%r496; .loc 1 306 13 div.rn.f64 %r497,%r494,%r495; .loc 1 306 25 fma.rn.f64 %r498,%r199,%r200,%r200; .loc 1 306 5 sub.f64 %r499,%r497,%r498; .loc 1 307 13 sub.f64 %r132,%r499,%r199; .loc 1 307 5 mov.f64 %r500,0d3ff0000000000000; sub.f64 %r204,%r500,%r132; .loc 1 308 2 mov.b64 %r501,%r204; shr.u64 %r502,%r501,32; cvt.u32.u64 %r205,%r502; .loc 1 309 4 add.u32 %r206,%r205,%r210; .loc 1 310 4 setp.gt.s32 %r504,%r206,1048575; @ %r504 bra $L39; .loc 1 310 21 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r204; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r144; call (%value_in),scalbn,(%out_arg1,%out_arg2); ld.param.f64 %r507,[%value_in]; } mov.f64 %r135,%r507; bra $L40; $L39: .loc 1 311 7 cvt.u64.u32 %r508,%r206; shl.b64 %r509,%r508,32; and.b64 %r510,%r501,4294967295; or.b64 %r511,%r510,%r509; mov.b64 %r135,%r511; $L40: .loc 1 312 10 mul.f64 %r244,%r135,%r139; bra $L1; $L44: .loc 1 119 24 mov.f64 %r244,0d3ff0000000000000; bra $L1; $L45: mov.f64 %r244,0d3ff0000000000000; bra $L1; $L51: mov.f64 %r244,0d3ff0000000000000; bra $L1; $L52: .loc 1 154 24 mov.f64 %r244,%r246; bra $L1; $L53: .loc 1 159 38 mov.f64 %r244,%r245; bra $L1; $L32: .loc 1 287 8 shr.s32 %r513,%r192,20; and.b32 %r217,%r513,2047; bra $L41; $L8: .loc 1 168 9 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r245; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r515,[%value_in]; } mov.f64 %r244,%r515; .loc 1 170 4 setp.ne.u32 %r516,%r157,0; @ %r516 bra $L42; .loc 1 171 30 and.b32 %r517,%r149,1073741823; set.u32.eq.u32 %r519,%r517,1072693248; neg.s32 %r520,%r519; .loc 1 171 27 set.u32.eq.u32 %r522,%r145,0; neg.s32 %r523,%r522; .loc 1 171 30 cvt.u16.u32 %r525,%r520; cvt.u16.u32 %r526,%r523; or.b16 %r524,%r525,%r526; cvt.u32.u16 %r527,%r524; cvt.u16.u8 %r528,%r527; setp.ne.u16 %r529,%r528,0; @ ! %r529 bra $L42; bra $L59; $L50: .loc 1 133 10 mov.u32 %r141,0; bra $L11; $L1: .loc 1 313 1 mov.f64 %value,%r244; st.param.f64 [%value_out],%value; ret; } /62 1591654536 399 399 100644 10843 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r41; .reg .f64 %r54; .reg .f64 %r58; .reg .f64 %r69; .reg .f64 %r70; .reg .u32 %r73; .reg .u32 %r74; .reg .f64 %r75; .reg .f64 %r76; .reg .f64 %r77; .reg .f64 %r78; .reg .f64 %r80; .reg .f64 %r83; .reg .u32 %r86; .reg .f64 %r87; .reg .f64 %r89; .reg .f64 %r91; .reg .f64 %r92; .reg .f64 %r93; .reg .u32 %r95; .reg .f64 %r96; .reg .f64 %r97; .reg .f64 %r98; .reg .u32 %r101; .reg .f64 %r102; .reg .u64 %r103; .reg .u64 %r104; .reg .u64 %r105; .reg .pred %r106; .reg .f64 %r107; .reg .pred %r108; .reg .pred %r109; .reg .f64 %r110; .reg .pred %r111; .reg .f64 %r112; .reg .f64 %r113; .reg .f64 %r114; .reg .f64 %r116; .reg .f64 %r117; .reg .f64 %r118; .reg .f64 %r119; .reg .pred %r121; .reg .f64 %r122; .reg .f64 %r123; .reg .f64 %r124; .reg .f64 %r125; .reg .pred %r126; .reg .f64 %r128; .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 %r140; .reg .u32 %r141; .reg .u32 %r142; .reg .u32 %r143; .reg .u32 %r144; .reg .pred %r145; .reg .f64 %r148; .reg .f64 %r149; .reg .f64 %r150; .reg .u64 %r151; .reg .u64 %r152; .reg .u32 %r153; .reg .u32 %r154; .reg .u32 %r155; .reg .u32 %r156; .reg .pred %r157; .reg .f64 %r160; .reg .f64 %r161; .reg .f64 %r162; .reg .f64 %r163; .reg .pred %r164; .reg .f64 %r165; .reg .f64 %r166; .reg .pred %r167; .reg .u32 %r170; .reg .u32 %r173; .reg .u32 %r174; .reg .u32 %r175; .reg .u64 %r176; .reg .u64 %r177; .reg .u64 %r178; .reg .u64 %r179; .reg .u32 %r180; .reg .pred %r181; .reg .pred %r182; .reg .u32 %r187; .reg .u64 %r188; .reg .u32 %r189; .reg .pred %r190; .reg .f64 %r191; .reg .f64 %r192; .reg .f64 %r193; .reg .f64 %r194; .reg .f64 %r196; mov.f64 %r102,%ar0; mov.u64 %r103,%ar1; .loc 1 98 2 mov.b64 %r104,%r102; shr.u64 %r105,%r104,32; cvt.u32.u64 %r73,%r105; .loc 1 99 5 and.b32 %r74,%r73,2147483647; .loc 1 100 4 setp.gt.s32 %r106,%r74,1072243195; @ %r106 bra $L2; .loc 1 101 12 st.f64 [%r103],%r102; .loc 1 101 22 mov.f64 %r107,0d0000000000000000; st.f64 [%r103+8],%r107; .loc 1 101 34 mov.u32 %r101,0; bra $L1; $L2: .loc 1 102 4 setp.gt.s32 %r108,%r74,1073928571; @ %r108 bra $L4; .loc 1 103 8 setp.le.s32 %r109,%r73,0; @ %r109 bra $L5; .loc 1 104 5 mov.f64 %r110,0d3ff921fb54400000; sub.f64 %r75,%r102,%r110; .loc 1 105 5 setp.eq.u32 %r111,%r74,1073291771; @ %r111 bra $L6; .loc 1 106 16 mov.f64 %r112,0d3dd0b4611a626331; sub.f64 %r22,%r75,%r112; .loc 1 106 12 st.f64 [%r103],%r22; .loc 1 107 16 sub.f64 %r113,%r75,%r22; .loc 1 107 22 sub.f64 %r114,%r113,%r112; .loc 1 107 12 st.f64 [%r103+8],%r114; .loc 1 113 10 mov.u32 %r101,1; bra $L1; $L6: .loc 1 109 9 mov.f64 %r116,0d3dd0b4611a600000; sub.f64 %r76,%r75,%r116; .loc 1 110 16 mov.f64 %r117,0d3ba3198a2e037073; sub.f64 %r25,%r76,%r117; .loc 1 110 12 st.f64 [%r103],%r25; .loc 1 111 16 sub.f64 %r118,%r76,%r25; .loc 1 111 22 sub.f64 %r119,%r118,%r117; .loc 1 111 12 st.f64 [%r103+8],%r119; .loc 1 113 10 mov.u32 %r101,1; bra $L1; $L5: .loc 1 115 5 add.f64 %r77,%r102,0d3ff921fb54400000; .loc 1 116 5 setp.eq.u32 %r121,%r74,1073291771; @ %r121 bra $L7; .loc 1 117 16 add.f64 %r28,%r77,0d3dd0b4611a626331; .loc 1 117 12 st.f64 [%r103],%r28; .loc 1 118 16 sub.f64 %r122,%r77,%r28; .loc 1 118 22 add.f64 %r123,%r122,0d3dd0b4611a626331; .loc 1 118 12 st.f64 [%r103+8],%r123; .loc 1 124 10 mov.u32 %r101,-1; bra $L1; $L7: .loc 1 120 9 add.f64 %r78,%r77,0d3dd0b4611a600000; .loc 1 121 16 add.f64 %r32,%r78,0d3ba3198a2e037073; .loc 1 121 12 st.f64 [%r103],%r32; .loc 1 122 16 sub.f64 %r124,%r78,%r32; .loc 1 122 22 add.f64 %r125,%r124,0d3ba3198a2e037073; .loc 1 122 12 st.f64 [%r103+8],%r125; .loc 1 124 10 mov.u32 %r101,-1; bra $L1; $L4: .loc 1 127 4 setp.gt.s32 %r126,%r74,1094263291; @ %r126 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 %r128,[%value_in]; } .loc 1 129 33 fma.rn.f64 %r129,%r128,0d3fe45f306dc9c883,0d3fe0000000000000; .loc 1 129 9 cvt.rzi.s32.f64 %r101,%r129; .loc 1 130 9 cvt.rn.f64.s32 %r80,%r101; .loc 1 131 9 neg.f64 %r196,%r80; fma.rn.f64 %r70,%r196,0d3ff921fb54400000,%r128; .loc 1 132 9 mul.f64 %r69,%r80,0d3dd0b4611a626331; .loc 1 133 8 setp.gt.s32 %r131,%r101,31; @ %r131 bra $L9; sub.f64 %r89,%r70,%r69; .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,%r74; @ %r138 bra $L10; .loc 1 134 8 st.f64 [%r103],%r89; bra $L11; $L9: sub.f64 %r89,%r70,%r69; $L10: .loc 1 137 13 shr.s32 %r41,%r74,20; .loc 1 140 22 mov.b64 %r139,%r89; shr.u64 %r140,%r139,32; cvt.u32.u64 %r142,%r140; shr.u32 %r141,%r142,20; .loc 1 140 27 and.b32 %r143,%r141,2047; .loc 1 140 15 sub.u32 %r144,%r41,%r143; .loc 1 141 12 setp.gt.s32 %r145,%r144,16; @ %r145 bra $L12; .loc 1 138 15 st.f64 [%r103],%r89; bra $L11; $L12: .loc 1 144 10 fma.rn.f64 %r83,%r196,0d3dd0b4611a600000,%r70; .loc 1 145 26 sub.f64 %r148,%r70,%r83; .loc 1 145 29 fma.rn.f64 %r149,%r196,0d3dd0b4611a600000,%r148; .loc 1 145 10 neg.f64 %r150,%r149; fma.rn.f64 %r69,%r80,0d3ba3198a2e037073,%r150; .loc 1 146 15 sub.f64 %r89,%r83,%r69; .loc 1 148 19 mov.b64 %r151,%r89; shr.u64 %r152,%r151,32; cvt.u32.u64 %r154,%r152; shr.u32 %r153,%r154,20; .loc 1 148 24 and.b32 %r155,%r153,2047; .loc 1 148 12 sub.u32 %r156,%r41,%r155; .loc 1 149 9 setp.gt.s32 %r157,%r156,49; @ %r157 bra $L13; .loc 1 146 12 st.f64 [%r103],%r89; .loc 1 144 10 mov.f64 %r70,%r83; bra $L11; $L13: .loc 1 152 11 fma.rn.f64 %r70,%r196,0d3ba3198a2e000000,%r83; .loc 1 153 27 sub.f64 %r160,%r83,%r70; .loc 1 153 30 fma.rn.f64 %r161,%r196,0d3ba3198a2e000000,%r160; .loc 1 153 11 neg.f64 %r162,%r161; fma.rn.f64 %r69,%r80,0d397b839a252049c1,%r162; .loc 1 154 16 sub.f64 %r89,%r70,%r69; .loc 1 154 13 st.f64 [%r103],%r89; $L11: .loc 1 158 15 sub.f64 %r163,%r70,%r89; .loc 1 158 21 sub.f64 %r54,%r163,%r69; .loc 1 158 11 st.f64 [%r103+8],%r54; .loc 1 159 8 setp.ge.s32 %r164,%r73,0; @ %r164 bra $L1; .loc 1 159 24 neg.f64 %r165,%r89; .loc 1 159 22 st.f64 [%r103],%r165; .loc 1 159 38 neg.f64 %r166,%r54; .loc 1 159 36 st.f64 [%r103+8],%r166; .loc 1 159 52 neg.s32 %r101,%r101; bra $L1; $L8: .loc 1 165 4 setp.le.s32 %r167,%r74,2146435071; @ %r167 bra $L14; .loc 1 166 17 sub.f64 %r58,%r102,%r102; .loc 1 166 15 st.f64 [%r103+8],%r58; .loc 1 166 10 st.f64 [%r103],%r58; .loc 1 166 28 mov.u32 %r101,0; bra $L1; $L14: .loc 1 170 2 cvt.u32.u64 %r170,%r104; .loc 1 171 17 shr.s32 %r173,%r74,20; .loc 1 171 6 add.u32 %r86,%r173,-1046; .loc 1 172 2 shl.b32 %r174,%r86,20; sub.u32 %r175,%r74,%r174; cvt.u64.u32 %r176,%r175; shl.b64 %r177,%r176,32; cvt.u64.u32 %r178,%r170; or.b64 %r179,%r178,%r177; mov.b64 %r87,%r179; .loc 1 174 20 cvt.rzi.s32.f64 %r180,%r87; .loc 1 174 11 cvt.rn.f64.s32 %r91,%r180; .loc 1 174 9 st.f64 [%frame],%r91; .loc 1 175 13 sub.f64 %r92,%r87,%r91; .loc 1 175 9 mul.f64 %r93,%r92,0d4170000000000000; .loc 1 174 20 cvt.rzi.s32.f64 %r95,%r93; .loc 1 174 11 cvt.rn.f64.s32 %r96,%r95; .loc 1 174 9 st.f64 [%frame+8],%r96; .loc 1 175 13 sub.f64 %r97,%r93,%r96; .loc 1 175 9 mul.f64 %r98,%r97,0d4170000000000000; .loc 1 177 8 st.f64 [%frame+16],%r98; .loc 1 179 7 setp.neu.f64 %r181,%r98,0d0000000000000000; @ %r181 bra $L16; setp.ne.u32 %r182,%r95,0; .loc 1 179 13 selp.u32 %r30,2,1,%r182; bra $L15; $L16: .loc 1 178 5 mov.u32 %r30,3; $L15: .loc 1 180 8 cvta.const.u64 %r188,two_over_pi; mov.u32 %r187,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],%r86; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r30; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r187; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r188; call (%value_in),__kernel_rem_pio2,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); ld.param.u32 %r189,[%value_in]; } mov.u32 %r101,%r189; .loc 1 181 4 setp.ge.s32 %r190,%r73,0; @ %r190 bra $L1; .loc 1 181 19 ld.f64 %r192,[%r103]; neg.f64 %r191,%r192; .loc 1 181 17 st.f64 [%r103],%r191; .loc 1 181 33 ld.f64 %r194,[%r103+8]; neg.f64 %r193,%r194; .loc 1 181 31 st.f64 [%r103+8],%r193; .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; } /82 1591654536 399 399 100644 4430 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r59; .reg .pred %r60; .reg .u64 %r61; .reg .u64 %r62; .reg .pred %r63; .reg .pred %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .pred %r67; .reg .pred %r68; .reg .f64 %r71; .reg .f64 %r72; .reg .u32 %r73; .reg .u64 %r74; .reg .u32 %r75; .reg .u32 %r76; .reg .u32 %r77; .reg .pred %r78; .reg .f64 %r80; .reg .f64 %r82; .reg .u32 %r83; .reg .pred %r84; .reg .f64 %r85; .reg .pred %r86; .reg .f64 %r87; .reg .pred %r88; .reg .pred %r89; .reg .pred %r90; .reg .u32 %r91; .reg .u64 %r93; .reg .u32 %r94; .reg .u32 %r95; .reg .u64 %r96; .reg .u64 %r97; .reg .u64 %r98; .reg .u64 %r99; 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 %r59,%r43,%r50; .loc 1 52 4 setp.ne.u32 %r60,%r59,0; @ %r60 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 %r61,%r54; shr.u64 %r62,%r61,32; cvt.u32.u64 %r47,%r62; .loc 1 49 5 and.b32 %r44,%r47,2147483647; .loc 1 53 4 setp.gt.s32 %r63,%r44,2146435071; @ %r63 bra $L4; .loc 1 53 21 setp.le.s32 %r64,%r43,2146435071; @ %r64 bra $L5; .loc 1 55 9 add.u32 %r65,%r43,-2146435072; .loc 1 55 21 or.b32 %r66,%r65,%r50; .loc 1 54 21 setp.eq.u32 %r67,%r66,0; @ %r67 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 %r68,%r43,2145386495; @ %r68 bra $L14; .loc 1 59 26 add.f64 %r71,%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],%r71; call (%value_in),__ieee754_fmod,(%out_arg1,%out_arg2); ld.param.f64 %r72,[%value_in]; } mov.f64 %r38,%r72; bra $L7; $L14: mov.f64 %r38,%r54; $L7: .loc 1 60 10 sub.u32 %r73,%r44,%r43; .loc 1 60 18 mov.b64 %r74,%r54; cvt.u32.u64 %r76,%r74; sub.u32 %r75,%r76,%r50; .loc 1 60 14 or.b32 %r77,%r73,%r75; .loc 1 60 5 setp.ne.u32 %r78,%r77,0; @ %r78 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 %r80,[%value_in]; } mov.f64 %r39,%r80; .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 %r82,[%value_in]; } .loc 1 63 5 and.b32 %r83,%r41,2145386496; setp.ne.u32 %r84,%r83,0; @ %r84 bra $L8; .loc 1 64 10 add.f64 %r85,%r39,%r39; .loc 1 64 8 setp.gt.f64 %r86,%r85,%r82; @ ! %r86 bra $L9; .loc 1 65 4 sub.f64 %r39,%r39,%r82; .loc 1 66 7 add.f64 %r87,%r39,%r39; .loc 1 66 5 setp.ge.f64 %r88,%r87,%r82; @ ! %r88 bra $L9; .loc 1 66 16 sub.f64 %r39,%r39,%r82; bra $L9; $L8: .loc 1 69 13 mul.f64 %r46,%r82,0d3fe0000000000000; .loc 1 70 8 setp.gt.f64 %r89,%r39,%r46; @ ! %r89 bra $L9; .loc 1 71 4 sub.f64 %r39,%r39,%r82; .loc 1 72 5 setp.le.f64 %r90,%r46,%r39; @ ! %r90 bra $L9; .loc 1 72 19 sub.f64 %r39,%r39,%r82; $L9: .loc 1 76 2 mov.b64 %r52,%r39; .loc 1 47 5 and.b32 %r91,%r47,-2147483648; .loc 1 76 2 shr.u64 %r93,%r52,32; cvt.u32.u64 %r95,%r93; xor.b32 %r94,%r91,%r95; cvt.u64.u32 %r96,%r94; shl.b64 %r97,%r96,32; and.b64 %r98,%r52,4294967295; or.b64 %r99,%r98,%r97; mov.b64 %r53,%r99; $L1: .loc 1 78 1 mov.f64 %value,%r53; st.param.f64 [%value_out],%value; ret; } lib_a-e_scalb.o/1591654536 399 399 100644 3617 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0); // 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 %r27; .reg .f64 %r29; .reg .f64 %r30; .reg .f64 %r31; .reg .u32 %r33; .reg .pred %r34; .reg .u32 %r36; .reg .pred %r37; .reg .u32 %r39; .reg .pred %r40; .reg .pred %r41; .reg .f64 %r42; .reg .f64 %r44; .reg .pred %r45; .reg .pred %r46; .reg .u32 %r48; .reg .f64 %r49; .reg .pred %r50; .reg .u32 %r52; .reg .f64 %r53; .reg .u32 %r56; .reg .f64 %r57; mov.f64 %r30,%ar0; mov.f64 %r31,%ar1; .loc 1 43 6 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r30; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r33,[%value_in]; } .loc 1 43 5 setp.ne.u32 %r34,%r33,0; @ ! %r34 bra $L3; .loc 1 43 16 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r31; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r36,[%value_in]; } .loc 1 43 14 setp.eq.u32 %r37,%r36,0; @ ! %r37 bra $L18; $L3: .loc 1 43 35 mul.f64 %r29,%r30,%r31; bra $L1; $L18: .loc 1 44 7 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r31; call (%value_in),finite,(%out_arg1); ld.param.u32 %r39,[%value_in]; } .loc 1 44 5 setp.ne.u32 %r40,%r39,0; @ %r40 bra $L7; .loc 1 45 8 setp.gt.f64 %r41,%r31,0d0000000000000000; @ %r41 bra $L3; .loc 1 46 25 neg.f64 %r42,%r30; div.rn.f64 %r29,%r42,%r31; bra $L1; $L7: .loc 1 48 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r31; call (%value_in),rint,(%out_arg1); ld.param.f64 %r44,[%value_in]; } .loc 1 48 5 setp.eq.f64 %r45,%r44,%r31; @ %r45 bra $L8; .loc 1 48 30 sub.f64 %r27,%r31,%r31; .loc 1 48 34 div.rn.f64 %r29,%r27,%r27; bra $L1; $L8: .loc 1 49 5 setp.gt.f64 %r46,%r31,0d40efbd0000000000; @ ! %r46 bra $L19; .loc 1 49 28 mov.u32 %r48,65000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r30; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r48; call (%value_in),scalbn,(%out_arg1,%out_arg2); ld.param.f64 %r49,[%value_in]; } mov.f64 %r29,%r49; bra $L1; $L19: .loc 1 50 5 setp.lt.f64 %r50,%r31,0dc0efbd0000000000; @ ! %r50 bra $L20; .loc 1 50 28 mov.u32 %r52,-65000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r30; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r52; call (%value_in),scalbn,(%out_arg1,%out_arg2); ld.param.f64 %r53,[%value_in]; } mov.f64 %r29,%r53; bra $L1; $L20: .loc 1 51 9 cvt.rzi.s32.f64 %r56,%r31; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r30; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r56; call (%value_in),scalbn,(%out_arg1,%out_arg2); ld.param.f64 %r57,[%value_in]; } mov.f64 %r29,%r57; $L1: .loc 1 53 1 mov.f64 %value,%r29; st.param.f64 [%value_out],%value; ret; } lib_a-e_sinh.o/ 1591654536 399 399 100644 4800 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r38; .reg .u32 %r39; .reg .u32 %r40; .reg .u32 %r44; .reg .f64 %r45; .reg .f64 %r48; .reg .f64 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .pred %r52; .reg .pred %r53; .reg .pred %r54; .reg .pred %r55; .reg .f64 %r56; .reg .pred %r57; .reg .f64 %r59; .reg .f64 %r61; .reg .pred %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 .pred %r71; .reg .f64 %r73; .reg .f64 %r75; .reg .pred %r77; .reg .u32 %r79; .reg .u32 %r80; .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 %r91; .reg .f64 %r93; .reg .f64 %r94; .reg .f64 %r95; .reg .f64 %r98; .reg .f64 %r100; mov.f64 %r49,%ar0; .loc 1 54 2 mov.b64 %r50,%r49; shr.u64 %r51,%r50,32; cvt.u32.u64 %r39,%r51; .loc 1 55 5 and.b32 %r40,%r39,2147483647; .loc 1 58 4 setp.le.s32 %r52,%r40,2146435071; @ %r52 bra $L2; .loc 1 58 29 add.f64 %r48,%r49,%r49; bra $L1; $L2: .loc 1 61 5 setp.ge.s32 %r53,%r39,0; .loc 1 61 14 selp.f64 %r38,0d3fe0000000000000,0dbfe0000000000000,%r53; .loc 1 63 5 setp.gt.s32 %r54,%r40,1077280767; @ %r54 bra $L5; .loc 1 64 9 setp.gt.s32 %r55,%r40,1043333119; @ %r55 bra $L6; .loc 1 65 11 add.f64 %r56,%r49,0d7fac7b1f3cac7433; .loc 1 65 5 setp.gt.f64 %r57,%r56,0d3ff0000000000000; @ ! %r57 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 %r59,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r59; call (%value_in),expm1,(%out_arg1); ld.param.f64 %r61,[%value_in]; } mov.f64 %r45,%r61; .loc 1 67 8 setp.gt.s32 %r62,%r40,1072693247; @ %r62 bra $L8; $L12: .loc 1 67 41 mul.f64 %r63,%r45,%r45; .loc 1 67 46 add.f64 %r64,%r45,0d3ff0000000000000; .loc 1 67 43 div.rn.f64 %r65,%r63,%r64; .loc 1 67 39 neg.f64 %r66,%r65; fma.rn.f64 %r67,%r45,0d4000000000000000,%r66; .loc 1 67 32 mul.f64 %r48,%r67,%r38; bra $L1; $L8: .loc 1 68 22 add.f64 %r68,%r61,0d3ff0000000000000; .loc 1 68 19 div.rn.f64 %r69,%r61,%r68; .loc 1 68 17 add.f64 %r70,%r69,%r61; .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 %r44,%r50; .loc 1 76 11 setp.le.s32 %r77,%r40,1082536909; @ %r77 bra $L10; .loc 1 76 32 set.u32.eq.u32 %r79,%r40,1082536910; neg.s32 %r80,%r79; .loc 1 76 50 set.u32.le.u32 %r82,%r44,-1883637635; neg.s32 %r83,%r82; .loc 1 76 45 cvt.u16.u32 %r85,%r80; cvt.u16.u32 %r86,%r83; and.b16 %r84,%r85,%r86; .loc 1 76 26 cvt.u32.u16 %r87,%r84; cvt.u16.u8 %r88,%r87; setp.eq.u16 %r89,%r88,0; @ %r89 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 %r91,[%value_in]; } .loc 1 77 10 mul.f64 %r93,%r91,0d3fe0000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r93; call (%value_in),__ieee754_exp,(%out_arg1); ld.param.f64 %r94,[%value_in]; } .loc 1 78 8 mul.f64 %r95,%r38,%r94; .loc 1 79 14 mul.f64 %r48,%r95,%r94; 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 %r98,[%value_in]; } { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r98; call (%value_in),expm1,(%out_arg1); ld.param.f64 %r100,[%value_in]; } mov.f64 %r45,%r100; bra $L12; $L1: .loc 1 84 1 mov.f64 %value,%r48; st.param.f64 [%value_out],%value; ret; } lib_a-e_sqrt.o/ 1591654536 399 399 100644 7039 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r22; .reg .f64 %r28; .reg .u32 %r32; .reg .u32 %r36; .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 %r68; .reg .u32 %r70; .reg .u32 %r71; .reg .u32 %r73; .reg .u32 %r75; .reg .u32 %r76; .reg .u32 %r77; .reg .u32 %r79; .reg .u32 %r83; .reg .u32 %r84; .reg .u32 %r91; .reg .u32 %r92; .reg .f64 %r97; .reg .f64 %r98; .reg .u64 %r99; .reg .u64 %r100; .reg .u32 %r102; .reg .pred %r103; .reg .pred %r104; .reg .u32 %r105; .reg .u32 %r106; .reg .pred %r107; .reg .pred %r108; .reg .pred %r109; .reg .pred %r110; .reg .u32 %r111; .reg .pred %r112; .reg .u32 %r114; .reg .pred %r115; .reg .u32 %r116; .reg .u32 %r117; .reg .u32 %r118; .reg .u32 %r119; .reg .u32 %r120; .reg .u32 %r122; .reg .pred %r123; .reg .u32 %r124; .reg .u32 %r125; .reg .pred %r126; .reg .u32 %r127; .reg .u32 %r128; .reg .pred %r130; .reg .pred %r131; .reg .u32 %r133; .reg .u32 %r134; .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 .u32 %r147; .reg .u32 %r148; .reg .pred %r150; .reg .u32 %r151; .reg .pred %r152; .reg .pred %r153; .reg .u32 %r154; .reg .u32 %r155; .reg .u32 %r156; .reg .pred %r157; .reg .u32 %r158; .reg .u32 %r159; .reg .u64 %r160; .reg .u64 %r164; .reg .u64 %r165; .reg .u64 %r166; .reg .pred %r168; mov.f64 %r98,%ar0; .loc 1 106 2 mov.b64 %r99,%r98; shr.u64 %r100,%r99,32; cvt.u32.u64 %r54,%r100; cvt.u32.u64 %r68,%r99; .loc 1 109 9 and.b32 %r102,%r54,2146435072; .loc 1 109 4 setp.ne.u32 %r103,%r102,2146435072; @ %r103 bra $L2; .loc 1 110 16 fma.rn.f64 %r97,%r98,%r98,%r98; bra $L1; $L2: .loc 1 114 4 setp.gt.s32 %r104,%r54,0; @ %r104 bra $L4; .loc 1 115 14 and.b32 %r105,%r54,2147483647; .loc 1 115 23 or.b32 %r106,%r105,%r68; .loc 1 115 8 setp.eq.u32 %r107,%r106,0; @ %r107 bra $L24; .loc 1 116 13 setp.eq.u32 %r108,%r54,0; @ %r108 bra $L5; .loc 1 117 12 sub.f64 %r28,%r98,%r98; .loc 1 117 15 div.rn.f64 %r97,%r28,%r28; bra $L1; $L4: .loc 1 120 4 shr.s32 %r64,%r54,20; .loc 1 121 4 setp.eq.u32 %r109,%r64,0; @ ! %r109 bra $L7; bra $L25; $L5: .loc 1 123 5 add.u32 %r54,%r54,-21; .loc 1 124 14 shr.u32 %r92,%r68,11; .loc 1 124 7 mov.u32 %r58,%r92; .loc 1 124 25 shl.b32 %r68,%r68,21; .loc 1 122 11 setp.eq.u32 %r110,%r92,0; @ %r110 bra $L5; .loc 1 126 18 and.b32 %r111,%r92,1048576; .loc 1 126 6 setp.ne.u32 %r112,%r111,0; @ ! %r112 bra $L6; bra $L26; $L25: cvt.u32.u64 %r58,%r100; .loc 1 120 4 mov.u32 %r54,%r64; $L6: mov.u32 %r61,0; bra $L9; $L27: .loc 1 126 35 mov.u32 %r61,%r70; $L9: .loc 1 126 42 add.u32 %r58,%r58,%r58; .loc 1 126 35 add.u32 %r70,%r61,1; .loc 1 126 18 and.b32 %r114,%r58,1048576; .loc 1 126 6 setp.eq.u32 %r115,%r114,0; @ %r115 bra $L27; mov.u32 %r116,32; sub.u32 %r91,%r116,%r70; mov.u32 %r92,%r58; mov.u32 %r22,%r68; shl.b32 %r68,%r68,%r70; bra $L8; $L26: .loc 1 124 25 mov.u32 %r22,%r68; .loc 1 126 6 mov.u32 %r91,32; mov.u32 %r61,-1; $L8: .loc 1 127 8 sub.u32 %r64,%r54,%r61; .loc 1 128 17 shr.u32 %r117,%r22,%r91; .loc 1 128 10 or.b32 %r54,%r117,%r92; $L7: .loc 1 131 4 add.u32 %r71,%r64,-1023; .loc 1 132 12 and.b32 %r32,%r54,1048575; .loc 1 132 6 or.b32 %r118,%r32,1048576; add.u32 %r119,%r118,%r118; shr.u32 %r120,%r68,31; add.u32 %r59,%r119,%r120; add.u32 %r55,%r68,%r68; .loc 1 133 6 and.b32 %r122,%r71,1; .loc 1 133 4 setp.eq.u32 %r123,%r122,0; @ %r123 bra $L10; add.u32 %r124,%r59,%r59; shr.u32 %r125,%r55,31; add.u32 %r59,%r124,%r125; shl.b32 %r55,%r68,2; $L10: .loc 1 137 4 shr.s32 %r73,%r71,1; mov.u32 %r83,22; .loc 1 142 4 mov.u32 %r63,0; .loc 1 142 14 mov.u32 %r60,%r63; .loc 1 143 4 mov.u32 %r75,2097152; $L12: .loc 1 146 12 add.u32 %r36,%r60,%r75; .loc 1 147 8 setp.gt.s32 %r126,%r36,%r59; @ %r126 bra $L11; .loc 1 148 11 add.u32 %r60,%r36,%r75; .loc 1 149 7 sub.u32 %r59,%r59,%r36; .loc 1 150 7 add.u32 %r63,%r63,%r75; $L11: .loc 1 152 10 shr.u32 %r127,%r55,31; add.u32 %r128,%r59,%r59; add.u32 %r59,%r127,%r128; .loc 1 153 10 add.u32 %r55,%r55,%r55; .loc 1 154 7 shr.u32 %r75,%r75,1; add.u32 %r83,%r83,-1; .loc 1 145 7 setp.ne.u32 %r130,%r83,0; @ %r130 bra $L12; mov.u32 %r84,32; .loc 1 142 9 mov.u32 %r57,%r83; .loc 1 142 19 mov.u32 %r53,%r57; .loc 1 157 4 mov.u32 %r77,-2147483648; $L18: .loc 1 159 9 add.u32 %r76,%r77,%r53; .loc 1 161 8 setp.gt.s32 %r131,%r59,%r60; @ %r131 bra $L13; .loc 1 161 21 set.u32.eq.u32 %r133,%r59,%r60; neg.s32 %r134,%r133; .loc 1 161 32 set.u32.le.u32 %r136,%r76,%r55; neg.s32 %r137,%r136; .loc 1 161 27 cvt.u16.u32 %r139,%r134; cvt.u16.u32 %r140,%r137; and.b16 %r138,%r139,%r140; .loc 1 161 16 cvt.u32.u16 %r141,%r138; cvt.u16.u8 %r142,%r141; setp.ne.u16 %r143,%r142,0; @ %r143 bra $L14; bra $L15; $L13: .loc 1 162 7 add.u32 %r53,%r76,%r77; .loc 1 163 5 setp.ge.s32 %r144,%r76,0; @ %r144 bra $L28; $L23: .loc 1 163 23 setp.lt.s32 %r145,%r53,0; @ %r145 bra $L29; .loc 1 163 42 add.u32 %r62,%r60,1; bra $L16; $L28: mov.u32 %r62,%r60; bra $L16; $L29: mov.u32 %r62,%r60; $L16: .loc 1 164 7 sub.u32 %r59,%r59,%r60; .loc 1 165 6 setp.le.u32 %r146,%r76,%r55; @ %r146 bra $L17; .loc 1 165 21 add.u32 %r59,%r59,-1; $L17: .loc 1 166 7 sub.u32 %r55,%r55,%r76; .loc 1 167 7 add.u32 %r57,%r57,%r77; mov.u32 %r60,%r62; $L15: .loc 1 169 10 add.u32 %r147,%r59,%r59; shr.u32 %r148,%r55,31; add.u32 %r59,%r147,%r148; .loc 1 170 10 add.u32 %r55,%r55,%r55; .loc 1 171 7 shr.u32 %r77,%r77,1; add.u32 %r84,%r84,-1; .loc 1 158 7 setp.ne.u32 %r150,%r84,0; @ %r150 bra $L18; .loc 1 175 9 or.b32 %r151,%r59,%r55; .loc 1 175 4 setp.ne.u32 %r152,%r151,0; @ %r152 bra $L19; shr.u32 %r56,%r57,1; bra $L20; $L19: .loc 1 179 13 setp.ne.u32 %r153,%r57,-1; @ %r153 bra $L21; .loc 1 179 52 add.u32 %r63,%r63,1; mov.u32 %r56,%r84; bra $L20; $L21: .loc 1 184 17 add.u32 %r154,%r57,1; shr.u32 %r56,%r154,1; $L20: .loc 1 187 10 shr.s32 %r155,%r63,1; .loc 1 187 6 add.u32 %r79,%r155,1071644672; .loc 1 189 8 and.b32 %r156,%r63,1; .loc 1 189 5 setp.eq.u32 %r157,%r156,0; @ %r157 bra $L22; .loc 1 189 20 or.b32 %r56,%r56,-2147483648; $L22: .loc 1 190 12 shl.b32 %r158,%r73,20; .loc 1 190 6 add.u32 %r159,%r158,%r79; .loc 1 191 2 cvt.u64.u32 %r160,%r159; cvt.u64.u32 %r164,%r56; shl.b64 %r165,%r160,32; or.b64 %r166,%r165,%r164; mov.b64 %r97,%r166; .loc 1 192 9 bra $L1; $L24: .loc 1 115 40 mov.f64 %r97,%r98; bra $L1; $L14: .loc 1 162 7 add.u32 %r53,%r76,%r77; .loc 1 163 5 setp.lt.s32 %r168,%r76,0; @ %r168 bra $L23; mov.u32 %r62,%r60; .loc 1 164 7 mov.u32 %r59,0; bra $L17; $L1: .loc 1 193 1 mov.f64 %value,%r97; st.param.f64 [%value_out],%value; ret; } lib_a-ef_acos.o/1591654536 399 399 100644 5422 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r57; .reg .u32 %r58; .reg .f32 %r59; .reg .f32 %r63; .reg .f32 %r64; .reg .f32 %r65; .reg .f32 %r69; .reg .f32 %r72; .reg .f32 %r94; .reg .f32 %r95; .reg .pred %r96; .reg .pred %r97; .reg .pred %r98; .reg .pred %r99; .reg .pred %r100; .reg .f32 %r101; .reg .f32 %r102; .reg .f32 %r103; .reg .f32 %r104; .reg .f32 %r105; .reg .f32 %r106; .reg .f32 %r107; .reg .f32 %r108; .reg .f32 %r109; .reg .f32 %r110; .reg .f32 %r111; .reg .f32 %r112; .reg .f32 %r113; .reg .f32 %r114; .reg .f32 %r115; .reg .pred %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 %r125; .reg .f32 %r127; .reg .f32 %r128; .reg .f32 %r129; .reg .f32 %r130; .reg .f32 %r132; .reg .f32 %r133; .reg .f32 %r135; .reg .u32 %r136; .reg .u32 %r137; .reg .f32 %r138; .reg .f32 %r139; .reg .f32 %r140; .reg .f32 %r141; .reg .f32 %r142; .reg .f32 %r143; .reg .f32 %r144; .reg .f32 %r145; .reg .f32 %r146; .reg .f32 %r147; .reg .f32 %r148; .reg .f32 %r149; .reg .f32 %r150; .reg .f32 %r151; .reg .f32 %r152; .reg .f32 %r153; .reg .f32 %r154; mov.f32 %r95,%ar0; .loc 1 47 2 mov.b32 %r57,%r95; .loc 1 48 5 and.b32 %r58,%r57,2147483647; .loc 1 49 4 setp.ne.u32 %r96,%r58,1065353216; @ %r96 bra $L2; .loc 1 50 8 setp.gt.s32 %r97,%r57,0; .loc 1 51 20 selp.f32 %r94,0f00000000,0f40490fdb,%r97; bra $L1; $L2: .loc 1 52 11 setp.le.s32 %r98,%r58,1065353216; @ %r98 bra $L4; .loc 1 53 15 sub.f32 %r22,%r95,%r95; .loc 1 53 18 div.rn.f32 %r94,%r22,%r22; bra $L1; $L4: .loc 1 55 4 setp.gt.s32 %r99,%r58,1056964607; @ %r99 bra $L5; .loc 1 56 8 setp.le.s32 %r100,%r58,587202560; @ %r100 bra $L8; .loc 1 57 8 mul.f32 %r59,%r95,%r95; .loc 1 61 36 neg.f32 %r101,%r95; .loc 1 58 44 fma.rn.f32 %r102,%r59,0f3811ef08,0f3a4f7f04; .loc 1 58 37 fma.rn.f32 %r103,%r102,%r59,0fbd241146; .loc 1 58 30 fma.rn.f32 %r104,%r103,%r59,0f3e4e0aa8; .loc 1 58 23 fma.rn.f32 %r105,%r104,%r59,0fbea6b090; .loc 1 58 16 fma.rn.f32 %r106,%r105,%r59,0f3e2aaaab; .loc 1 58 8 mul.f32 %r107,%r106,%r59; .loc 1 59 34 fma.rn.f32 %r108,%r59,0f3d9dc62e,0fbf303361; .loc 1 59 27 fma.rn.f32 %r109,%r108,%r59,0f4001572d; .loc 1 59 20 fma.rn.f32 %r110,%r109,%r59,0fc019d139; .loc 1 59 8 fma.rn.f32 %r111,%r110,%r59,0f3f800000; .loc 1 60 8 div.rn.f32 %r112,%r107,%r111; .loc 1 61 36 fma.rn.f32 %r113,%r101,%r112,0f33a22168; .loc 1 61 26 sub.f32 %r114,%r95,%r113; .loc 1 61 21 mov.f32 %r115,0f3fc90fda; sub.f32 %r94,%r115,%r114; bra $L1; $L5: .loc 1 62 13 setp.ge.s32 %r116,%r57,0; @ %r116 bra $L6; .loc 1 63 14 add.f32 %r117,%r95,0f3f800000; .loc 1 63 8 mul.f32 %r63,%r117,0f3f000000; .loc 1 64 44 fma.rn.f32 %r118,%r63,0f3811ef08,0f3a4f7f04; .loc 1 64 37 fma.rn.f32 %r119,%r118,%r63,0fbd241146; .loc 1 64 30 fma.rn.f32 %r120,%r119,%r63,0f3e4e0aa8; .loc 1 64 23 fma.rn.f32 %r121,%r120,%r63,0fbea6b090; .loc 1 64 16 fma.rn.f32 %r122,%r121,%r63,0f3e2aaaab; .loc 1 64 8 mul.f32 %r64,%r122,%r63; .loc 1 65 34 fma.rn.f32 %r123,%r63,0f3d9dc62e,0fbf303361; .loc 1 65 27 fma.rn.f32 %r124,%r123,%r63,0f4001572d; .loc 1 65 20 fma.rn.f32 %r125,%r124,%r63,0fc019d139; .loc 1 65 8 fma.rn.f32 %r65,%r125,%r63,0f3f800000; .loc 1 66 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r63; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r127,[%value_in]; } .loc 1 67 8 div.rn.f32 %r128,%r64,%r65; .loc 1 68 8 fma.rn.f32 %r129,%r127,%r128,0fb3a22168; .loc 1 69 31 add.f32 %r130,%r129,%r127; .loc 1 69 16 fma.rn.f32 %r94,%r130,0fc0000000,0f40490fda; bra $L1; $L6: .loc 1 72 14 mov.f32 %r133,0f3f800000; sub.f32 %r132,%r133,%r95; .loc 1 72 8 mul.f32 %r69,%r132,0f3f000000; .loc 1 73 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r69; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r135,[%value_in]; } .loc 1 76 6 mov.b32 %r137,%r135; and.b32 %r136,%r137,-4096; mov.b32 %r72,%r136; .loc 1 77 13 neg.f32 %r138,%r72; fma.rn.f32 %r139,%r138,%r72,%r69; .loc 1 77 23 add.f32 %r140,%r135,%r72; .loc 1 77 9 div.rn.f32 %r141,%r139,%r140; .loc 1 78 44 fma.rn.f32 %r142,%r69,0f3811ef08,0f3a4f7f04; .loc 1 78 37 fma.rn.f32 %r143,%r142,%r69,0fbd241146; .loc 1 78 30 fma.rn.f32 %r144,%r143,%r69,0f3e4e0aa8; .loc 1 78 23 fma.rn.f32 %r145,%r144,%r69,0fbea6b090; .loc 1 78 16 fma.rn.f32 %r146,%r145,%r69,0f3e2aaaab; .loc 1 78 8 mul.f32 %r147,%r146,%r69; .loc 1 79 34 fma.rn.f32 %r148,%r69,0f3d9dc62e,0fbf303361; .loc 1 79 27 fma.rn.f32 %r149,%r148,%r69,0f4001572d; .loc 1 79 20 fma.rn.f32 %r150,%r149,%r69,0fc019d139; .loc 1 79 8 fma.rn.f32 %r151,%r150,%r69,0f3f800000; .loc 1 80 8 div.rn.f32 %r152,%r147,%r151; .loc 1 81 8 fma.rn.f32 %r153,%r135,%r152,%r141; .loc 1 82 27 add.f32 %r154,%r153,%r72; .loc 1 82 23 add.f32 %r94,%r154,%r154; bra $L1; $L8: .loc 1 56 39 mov.f32 %r94,0f3fc90fdb; $L1: .loc 1 84 1 mov.f32 %value,%r94; st.param.f32 [%value_out],%value; ret; } /103 1591654536 399 399 100644 3159 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r33; .reg .f32 %r35; .reg .f32 %r38; .reg .f32 %r39; .reg .pred %r40; .reg .pred %r41; .reg .pred %r42; .reg .f32 %r44; .reg .pred %r45; .reg .pred %r46; .reg .f32 %r48; .reg .f32 %r49; .reg .f32 %r51; .reg .f32 %r52; .reg .f32 %r53; .reg .f32 %r54; .reg .f32 %r55; .reg .f32 %r56; .reg .f32 %r57; .reg .f32 %r59; .reg .f32 %r60; .reg .f32 %r61; .reg .f32 %r63; .reg .f32 %r64; mov.f32 %r39,%ar0; .loc 1 36 2 mov.b32 %r33,%r39; .loc 1 37 4 setp.gt.s32 %r40,%r33,1065353215; @ %r40 bra $L2; .loc 1 38 15 sub.f32 %r22,%r39,%r39; .loc 1 38 18 div.rn.f32 %r38,%r22,%r22; bra $L1; $L2: .loc 1 39 11 setp.le.s32 %r41,%r33,1300234239; @ %r41 bra $L4; .loc 1 40 8 setp.le.s32 %r42,%r33,2139095039; @ %r42 bra $L5; .loc 1 41 18 add.f32 %r38,%r39,%r39; bra $L1; $L5: .loc 1 43 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r39; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r44,[%value_in]; } .loc 1 43 27 add.f32 %r38,%r44,0f3f317218; bra $L1; $L4: .loc 1 44 12 setp.eq.u32 %r45,%r33,1065353216; @ %r45 bra $L7; .loc 1 46 12 setp.le.s32 %r46,%r33,1073741824; @ %r46 bra $L6; .loc 1 48 48 fma.rn.f32 %r48,%r39,%r39,0fbf800000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r48; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r49,[%value_in]; } .loc 1 48 47 add.f32 %r51,%r49,%r39; .loc 1 48 44 mov.f32 %r53,0f3f800000; div.rn.f32 %r52,%r53,%r51; .loc 1 48 13 neg.f32 %r54,%r52; fma.rn.f32 %r55,%r39,0f40000000,%r54; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r55; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r56,[%value_in]; } mov.f32 %r38,%r56; bra $L1; $L6: .loc 1 50 8 mov.f32 %r57,0f3f800000; sub.f32 %r35,%r39,%r57; .loc 1 51 52 mul.f32 %r59,%r35,%r35; .loc 1 51 22 fma.rn.f32 %r60,%r35,0f40000000,%r59; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r60; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r61,[%value_in]; } .loc 1 51 13 add.f32 %r63,%r61,%r35; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r63; call (%value_in),log1pf,(%out_arg1); ld.param.f32 %r64,[%value_in]; } mov.f32 %r38,%r64; bra $L1; $L7: .loc 1 45 13 mov.f32 %r38,0f00000000; $L1: .loc 1 53 1 mov.f32 %value,%r38; st.param.f32 [%value_out],%value; ret; } lib_a-ef_asin.o/1591654536 399 399 100644 5043 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r49; .reg .u32 %r50; .reg .u32 %r51; .reg .f32 %r53; .reg .f32 %r58; .reg .f32 %r59; .reg .f32 %r60; .reg .f32 %r64; .reg .f32 %r66; .reg .f32 %r81; .reg .f32 %r82; .reg .pred %r83; .reg .f32 %r84; .reg .pred %r85; .reg .pred %r86; .reg .pred %r87; .reg .f32 %r88; .reg .pred %r89; .reg .f32 %r90; .reg .f32 %r91; .reg .f32 %r92; .reg .f32 %r93; .reg .f32 %r94; .reg .f32 %r95; .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 %r105; .reg .f32 %r106; .reg .f32 %r107; .reg .f32 %r108; .reg .f32 %r109; .reg .f32 %r110; .reg .f32 %r111; .reg .f32 %r112; .reg .f32 %r114; .reg .pred %r115; .reg .f32 %r116; .reg .f32 %r117; .reg .f32 %r118; .reg .f32 %r119; .reg .u32 %r120; .reg .u32 %r121; .reg .f32 %r122; .reg .f32 %r123; .reg .f32 %r124; .reg .f32 %r125; .reg .f32 %r126; .reg .f32 %r128; .reg .f32 %r129; .reg .f32 %r130; .reg .f32 %r132; .reg .f32 %r133; .reg .pred %r134; mov.f32 %r82,%ar0; .loc 1 49 2 mov.b32 %r50,%r82; .loc 1 50 5 and.b32 %r51,%r50,2147483647; .loc 1 51 4 setp.ne.u32 %r83,%r51,1065353216; @ %r83 bra $L2; .loc 1 53 24 mul.f32 %r84,%r82,0fb33bbd2e; .loc 1 53 22 fma.rn.f32 %r81,%r82,0f3fc90fdb,%r84; bra $L1; $L2: .loc 1 54 11 setp.le.s32 %r85,%r51,1065353216; @ %r85 bra $L4; .loc 1 55 15 sub.f32 %r23,%r82,%r82; .loc 1 55 18 div.rn.f32 %r81,%r23,%r23; bra $L1; $L4: .loc 1 56 12 setp.gt.s32 %r86,%r51,1056964607; @ %r86 bra $L5; .loc 1 57 8 setp.gt.s32 %r87,%r51,838860799; @ %r87 bra $L6; .loc 1 58 10 add.f32 %r88,%r82,0f7149f2ca; .loc 1 58 5 setp.gt.f32 %r89,%r88,0f3f800000; @ ! %r89 bra $L5; bra $L9; $L6: .loc 1 60 5 mul.f32 %r53,%r82,%r82; .loc 1 61 41 fma.rn.f32 %r90,%r53,0f3811ef08,0f3a4f7f04; .loc 1 61 34 fma.rn.f32 %r91,%r90,%r53,0fbd241146; .loc 1 61 27 fma.rn.f32 %r92,%r91,%r53,0f3e4e0aa8; .loc 1 61 20 fma.rn.f32 %r93,%r92,%r53,0fbea6b090; .loc 1 61 13 fma.rn.f32 %r94,%r93,%r53,0f3e2aaaab; .loc 1 61 5 mul.f32 %r95,%r94,%r53; .loc 1 62 31 fma.rn.f32 %r96,%r53,0f3d9dc62e,0fbf303361; .loc 1 62 24 fma.rn.f32 %r97,%r96,%r53,0f4001572d; .loc 1 62 17 fma.rn.f32 %r98,%r97,%r53,0fc019d139; .loc 1 62 5 fma.rn.f32 %r99,%r98,%r53,0f3f800000; .loc 1 63 5 div.rn.f32 %r100,%r95,%r99; .loc 1 64 11 fma.rn.f32 %r81,%r82,%r100,%r82; bra $L1; $L5: .loc 1 68 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r82; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r102,[%value_in]; } .loc 1 68 4 mov.f32 %r104,0f3f800000; sub.f32 %r103,%r104,%r102; .loc 1 69 4 mul.f32 %r58,%r103,0f3f000000; .loc 1 70 40 fma.rn.f32 %r105,%r58,0f3811ef08,0f3a4f7f04; .loc 1 70 33 fma.rn.f32 %r106,%r105,%r58,0fbd241146; .loc 1 70 26 fma.rn.f32 %r107,%r106,%r58,0f3e4e0aa8; .loc 1 70 19 fma.rn.f32 %r108,%r107,%r58,0fbea6b090; .loc 1 70 12 fma.rn.f32 %r109,%r108,%r58,0f3e2aaaab; .loc 1 70 4 mul.f32 %r59,%r109,%r58; .loc 1 71 30 fma.rn.f32 %r110,%r58,0f3d9dc62e,0fbf303361; .loc 1 71 23 fma.rn.f32 %r111,%r110,%r58,0f4001572d; .loc 1 71 16 fma.rn.f32 %r112,%r111,%r58,0fc019d139; .loc 1 71 4 fma.rn.f32 %r60,%r112,%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 %r114,[%value_in]; } .loc 1 73 4 setp.le.s32 %r115,%r51,1064933785; @ %r115 bra $L7; .loc 1 74 8 div.rn.f32 %r116,%r59,%r60; .loc 1 75 32 fma.rn.f32 %r117,%r114,%r116,%r114; .loc 1 75 37 fma.rn.f32 %r118,%r117,0f40000000,0f333bbd2e; .loc 1 75 8 mov.f32 %r119,0f3fc90fdb; sub.f32 %r81,%r119,%r118; bra $L8; $L7: .loc 1 80 6 mov.b32 %r121,%r114; and.b32 %r120,%r121,-4096; mov.b32 %r64,%r120; .loc 1 82 9 div.rn.f32 %r66,%r59,%r60; .loc 1 83 21 add.f32 %r122,%r114,%r114; .loc 1 81 13 neg.f32 %r123,%r64; fma.rn.f32 %r124,%r123,%r64,%r58; .loc 1 81 21 add.f32 %r125,%r114,%r64; .loc 1 81 9 div.rn.f32 %r126,%r124,%r125; .loc 1 83 34 fma.rn.f32 %r128,%r126,0fc0000000,0fb33bbd2e; .loc 1 83 9 neg.f32 %r129,%r128; fma.rn.f32 %r130,%r122,%r66,%r129; .loc 1 84 9 fma.rn.f32 %r132,%r123,0f40000000,0f3f490fdb; .loc 1 85 21 sub.f32 %r49,%r130,%r132; .loc 1 85 9 mov.f32 %r133,0f3f490fdb; sub.f32 %r81,%r133,%r49; $L8: .loc 1 87 4 setp.gt.s32 %r134,%r50,0; @ %r134 bra $L1; .loc 1 87 33 neg.f32 %r81,%r81; bra $L1; $L9: .loc 1 58 25 mov.f32 %r81,%r82; $L1: .loc 1 88 1 mov.f32 %value,%r81; st.param.f32 [%value_out],%value; ret; } /121 1591654536 399 399 100644 5410 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 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 %r45; .reg .u32 %r46; .reg .f32 %r47; .reg .f32 %r48; .reg .f32 %r49; .reg .u32 %r51; .reg .u32 %r52; .reg .u32 %r54; .reg .u32 %r55; .reg .u16 %r56; .reg .u16 %r57; .reg .u16 %r58; .reg .u32 %r59; .reg .u16 %r60; .reg .pred %r61; .reg .pred %r62; .reg .f32 %r64; .reg .u32 %r65; .reg .u32 %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 .u32 %r83; .reg .pred %r84; .reg .u32 %r86; .reg .u32 %r88; .reg .u32 %r89; .reg .u16 %r91; .reg .u16 %r92; .reg .u16 %r93; .reg .u32 %r94; .reg .u16 %r95; .reg .pred %r96; .reg .f32 %r98; .reg .f32 %r99; .reg .f32 %r101; .reg .pred %r102; .reg .pred %r103; .reg .pred %r104; .reg .u32 %r105; .reg .f32 %r106; .reg .f32 %r107; .reg .f32 %r108; .reg .f32 %r109; mov.f32 %r48,%ar0; mov.f32 %r49,%ar1; .loc 1 41 2 mov.b32 %r39,%r49; .loc 1 42 5 and.b32 %r40,%r39,2147483647; .loc 1 43 2 mov.b32 %r45,%r48; .loc 1 44 5 and.b32 %r42,%r45,2147483647; .loc 1 45 5 set.u32.gt.s32 %r51,%r40,2139095040; neg.s32 %r52,%r51; .loc 1 46 5 set.u32.gt.s32 %r54,%r42,2139095040; neg.s32 %r55,%r54; .loc 1 45 25 cvt.u16.u32 %r57,%r52; cvt.u16.u32 %r58,%r55; or.b16 %r56,%r57,%r58; .loc 1 45 4 cvt.u32.u16 %r59,%r56; cvt.u16.u8 %r60,%r59; setp.eq.u16 %r61,%r60,0; @ %r61 bra $L2; .loc 1 47 13 add.f32 %r47,%r49,%r48; bra $L1; $L2: .loc 1 48 4 setp.ne.u32 %r62,%r39,1065353216; @ %r62 bra $L4; .loc 1 48 28 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r48; call (%value_in),atanf,(%out_arg1); ld.param.f32 %r64,[%value_in]; } mov.f32 %r47,%r64; bra $L1; $L4: .loc 1 49 23 shr.s32 %r65,%r39,30; .loc 1 49 28 and.b32 %r66,%r65,2; .loc 1 49 15 shr.u32 %r67,%r45,31; .loc 1 49 4 or.b32 %r43,%r66,%r67; .loc 1 52 4 setp.ne.u32 %r68,%r42,0; @ %r68 bra $L5; setp.eq.u32 %r69,%r43,2; @ %r69 bra $L14; setp.eq.u32 %r70,%r43,3; .loc 1 55 18 selp.f32 %r47,0fc0490fdb,%r48,%r70; bra $L1; $L5: .loc 1 61 4 setp.ne.u32 %r71,%r40,0; @ %r71 bra $L6; .loc 1 61 56 setp.ge.s32 %r72,%r45,0; selp.f32 %r47,0f3fc90fdb,0fbfc90fdb,%r72; bra $L1; $L6: .loc 1 64 4 setp.ne.u32 %r73,%r40,2139095040; @ %r73 bra $L7; .loc 1 65 8 setp.ne.u32 %r74,%r42,2139095040; @ %r74 bra $L8; setp.eq.u32 %r75,%r43,2; @ %r75 bra $L17; setp.eq.u32 %r76,%r43,3; @ %r76 bra $L18; setp.eq.u32 %r77,%r43,1; .loc 1 67 29 selp.f32 %r47,0fbf490fdb,0f3f490fdb,%r77; bra $L1; $L8: setp.eq.u32 %r78,%r43,2; @ %r78 bra $L20; setp.eq.u32 %r79,%r43,3; @ %r79 bra $L21; setp.eq.u32 %r80,%r43,1; .loc 1 74 23 selp.f32 %r47,0f80000000,0f00000000,%r80; bra $L1; $L7: .loc 1 82 4 setp.ne.u32 %r81,%r42,2139095040; @ %r81 bra $L9; .loc 1 82 59 setp.ge.s32 %r82,%r45,0; .loc 1 61 56 selp.f32 %r47,0f3fc90fdb,0fbfc90fdb,%r82; bra $L1; $L9: .loc 1 85 9 sub.u32 %r83,%r42,%r40; .loc 1 85 4 shr.s32 %r46,%r83,23; .loc 1 86 4 setp.gt.s32 %r84,%r46,60; @ %r84 bra $L24; .loc 1 87 12 shr.u32 %r86,%r39,31; .loc 1 87 17 set.u32.lt.s32 %r88,%r46,-60; neg.s32 %r89,%r88; .loc 1 87 14 cvt.u16.u32 %r92,%r86; cvt.u16.u32 %r93,%r89; and.b16 %r91,%r92,%r93; .loc 1 87 9 cvt.u32.u16 %r94,%r91; cvt.u16.u8 %r95,%r94; setp.ne.u16 %r96,%r95,0; @ %r96 bra $L25; .loc 1 88 9 div.rn.f32 %r98,%r48,%r49; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r98; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r99,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r99; call (%value_in),atanf,(%out_arg1); ld.param.f32 %r101,[%value_in]; } mov.f32 %r47,%r101; bra $L10; $L24: .loc 1 86 14 mov.f32 %r47,0f3fc90fdb; bra $L10; $L25: .loc 1 87 24 mov.f32 %r47,0f00000000; $L10: setp.eq.u32 %r102,%r43,1; @ %r102 bra $L11; setp.eq.u32 %r103,%r43,2; @ %r103 bra $L12; setp.eq.u32 %r104,%r43,0; @ ! %r104 bra $L29; bra $L1; $L11: .loc 1 94 9 mov.b32 %r105,%r47; add.u32 %r36,%r105,-2147483648; mov.b32 %r47,%r36; .loc 1 96 20 bra $L1; $L12: .loc 1 97 27 add.f32 %r106,%r47,0f33bbbd2e; .loc 1 97 24 mov.f32 %r107,0f40490fdb; sub.f32 %r47,%r107,%r106; bra $L1; $L29: .loc 1 99 21 add.f32 %r108,%r47,0f33bbbd2e; .loc 1 99 28 mov.f32 %r109,0f40490fdb; sub.f32 %r47,%r108,%r109; bra $L1; $L14: .loc 1 56 21 mov.f32 %r47,0f40490fdb; bra $L1; $L17: .loc 1 69 40 mov.f32 %r47,0f4016cbe4; bra $L1; $L18: .loc 1 70 40 mov.f32 %r47,0fc016cbe4; bra $L1; $L20: .loc 1 56 21 mov.f32 %r47,0f40490fdb; bra $L1; $L21: .loc 1 57 21 mov.f32 %r47,0fc0490fdb; $L1: .loc 1 101 1 mov.f32 %value,%r47; st.param.f32 [%value_out],%value; ret; } /139 1591654536 399 399 100644 2551 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r30; .reg .u32 %r31; .reg .f32 %r33; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r37; .reg .pred %r38; .reg .pred %r39; .reg .pred %r40; .reg .f32 %r41; .reg .pred %r42; .reg .f32 %r43; .reg .pred %r44; .reg .f32 %r46; .reg .f32 %r47; .reg .f32 %r48; .reg .f32 %r49; .reg .f32 %r51; .reg .f32 %r52; .reg .pred %r53; .reg .f32 %r55; mov.f32 %r37,%ar0; .loc 1 40 2 mov.b32 %r30,%r37; .loc 1 41 5 and.b32 %r31,%r30,2147483647; .loc 1 42 5 setp.le.s32 %r38,%r31,1065353216; @ %r38 bra $L2; .loc 1 43 15 sub.f32 %r22,%r37,%r37; .loc 1 43 18 div.rn.f32 %r36,%r22,%r22; bra $L1; $L2: .loc 1 44 4 setp.ne.u32 %r39,%r31,1065353216; @ %r39 bra $L4; .loc 1 45 14 div.rn.f32 %r36,%r37,0f00000000; bra $L1; $L4: .loc 1 46 4 setp.gt.s32 %r40,%r31,830472191; @ %r40 bra $L5; .loc 1 46 25 add.f32 %r41,%r37,0f7149f2ca; .loc 1 46 18 setp.gt.f32 %r42,%r41,0f00000000; @ ! %r42 bra $L11; bra $L10; $L5: .loc 1 47 2 mov.b32 %r34,%r31; add.f32 %r33,%r34,%r34; mov.f32 %r43,0f3f800000; sub.f32 %r35,%r43,%r34; .loc 1 48 4 setp.gt.s32 %r44,%r31,1056964607; @ %r44 bra $L7; $L9: .loc 1 50 31 mul.f32 %r46,%r33,%r34; .loc 1 50 33 div.rn.f32 %r47,%r46,%r35; .loc 1 50 21 add.f32 %r48,%r47,%r33; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r48; call (%value_in),log1pf,(%out_arg1); ld.param.f32 %r49,[%value_in]; } .loc 1 50 8 mul.f32 %r36,%r49,0f3f000000; bra $L8; $L7: .loc 1 52 21 div.rn.f32 %r51,%r33,%r35; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r51; call (%value_in),log1pf,(%out_arg1); ld.param.f32 %r52,[%value_in]; } .loc 1 52 8 mul.f32 %r36,%r52,0f3f000000; $L8: .loc 1 53 4 setp.ge.s32 %r53,%r30,0; @ %r53 bra $L1; .loc 1 53 34 neg.f32 %r36,%r36; bra $L1; $L10: .loc 1 46 42 mov.f32 %r36,%r37; bra $L1; $L11: .loc 1 47 2 mov.b32 %r34,%r31; add.f32 %r33,%r34,%r34; mov.f32 %r55,0f3f800000; sub.f32 %r35,%r55,%r34; bra $L9; $L1: .loc 1 54 1 mov.f32 %value,%r36; st.param.f32 [%value_out],%value; ret; } lib_a-ef_cosh.o/1591654536 399 399 100644 3665 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 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 .f32 %r70; mov.f32 %r40,%ar0; .loc 1 38 2 mov.b32 %r32,%r40; .loc 1 39 5 and.b32 %r33,%r32,2147483647; .loc 1 42 4 setp.le.s32 %r41,%r33,2139095039; @ %r41 bra $L2; .loc 1 42 39 mul.f32 %r39,%r40,%r40; bra $L1; $L2: .loc 1 45 4 setp.gt.s32 %r42,%r33,1051816471; @ %r42 bra $L4; .loc 1 46 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 47 8 add.f32 %r39,%r46,0f3f800000; .loc 1 48 9 setp.le.s32 %r47,%r33,603979775; @ %r47 bra $L1; .loc 1 49 19 mul.f32 %r48,%r46,%r46; .loc 1 49 25 add.f32 %r49,%r39,%r39; .loc 1 49 22 div.rn.f32 %r50,%r48,%r49; .loc 1 49 16 add.f32 %r39,%r50,0f3f800000; bra $L1; $L4: .loc 1 53 5 setp.gt.s32 %r51,%r33,1102053375; @ %r51 bra $L5; .loc 1 54 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 55 21 mov.f32 %r57,0f3f000000; div.rn.f32 %r56,%r57,%r55; .loc 1 55 16 fma.rn.f32 %r39,%r55,0f3f000000,%r56; bra $L1; $L5: .loc 1 59 5 setp.gt.s32 %r58,%r33,1118925335; @ %r58 bra $L6; .loc 1 60 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 60 15 mul.f32 %r39,%r62,0f3f000000; bra $L1; $L6: .loc 1 63 5 setp.gt.s32 %r63,%r33,1119016188; @ %r63 bra $L7; .loc 1 64 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 64 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 65 8 mul.f32 %r69,%r68,0f3f000000; .loc 1 66 14 mul.f32 %r39,%r69,%r68; bra $L1; $L7: .loc 1 70 13 mov.f32 %r70,0f7149f2ca; mul.f32 %r39,%r70,0f7149f2ca; $L1: .loc 1 71 1 mov.f32 %value,%r39; st.param.f32 [%value_out],%value; ret; } lib_a-ef_exp.o/ 1591654536 399 399 100644 5629 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 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 %r50; .reg .f32 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r56; .reg .f32 %r57; .reg .f32 %r58; .reg .f32 %r61; .reg .f32 %r66; .reg .u32 %r75; .reg .f32 %r76; .reg .f32 %r77; .reg .pred %r78; .reg .pred %r79; .reg .pred %r80; .reg .pred %r81; .reg .f32 %r82; .reg .u32 %r86; .reg .u32 %r87; .reg .u16 %r89; .reg .u16 %r90; .reg .u16 %r91; .reg .u32 %r92; .reg .u16 %r93; .reg .pred %r94; .reg .pred %r95; .reg .pred %r96; .reg .u64 %r97; .reg .u64 %r98; .reg .u64 %r99; .reg .u64 %r100; .reg .f32 %r101; .reg .u64 %r102; .reg .u64 %r105; .reg .u32 %r106; .reg .u32 %r107; .reg .u64 %r108; .reg .u64 %r109; .reg .u64 %r110; .reg .u64 %r111; .reg .f32 %r112; .reg .f32 %r113; .reg .f32 %r115; .reg .f32 %r116; .reg .f32 %r117; .reg .f32 %r118; .reg .f32 %r119; .reg .pred %r120; .reg .pred %r121; .reg .f32 %r122; .reg .pred %r123; .reg .f32 %r125; .reg .f32 %r126; .reg .f32 %r127; .reg .f32 %r128; .reg .f32 %r129; .reg .f32 %r130; .reg .f32 %r131; .reg .f32 %r132; .reg .f32 %r133; .reg .f32 %r134; .reg .f32 %r135; .reg .f32 %r136; .reg .pred %r137; .reg .u32 %r138; .reg .u32 %r139; .reg .u32 %r140; .reg .u32 %r141; .reg .u32 %r142; .reg .f32 %r143; .reg .f32 %r145; .reg .f32 %r146; .reg .f32 %r147; .reg .f32 %r148; .reg .f32 %r149; .reg .f32 %r150; mov.f32 %r77,%ar0; .loc 1 53 2 mov.b32 %r53,%r77; .loc 1 55 5 and.b32 %r56,%r53,2147483647; .loc 1 58 11 setp.le.u32 %r78,%r56,2139095040; @ %r78 bra $L2; .loc 1 59 21 add.f32 %r76,%r77,%r77; bra $L1; $L2: .loc 1 54 16 shr.u32 %r22,%r53,31; .loc 1 60 11 setp.ne.u32 %r79,%r56,2139095040; @ %r79 bra $L4; .loc 1 61 24 setp.ne.u32 %r80,%r22,0; selp.f32 %r76,0f00000000,%r77,%r80; bra $L1; $L4: .loc 1 62 4 setp.le.s32 %r81,%r53,1118925335; @ %r81 bra $L5; .loc 1 63 17 mov.f32 %r82,0f7149f2ca; mul.f32 %r76,%r82,0f7149f2ca; bra $L1; $L5: .loc 1 64 18 set.u32.gt.u32 %r86,%r56,1120924085; neg.s32 %r87,%r86; .loc 1 64 12 cvt.u16.u32 %r90,%r22; cvt.u16.u32 %r91,%r87; and.b16 %r89,%r90,%r91; .loc 1 64 4 cvt.u32.u16 %r92,%r89; cvt.u16.u8 %r93,%r92; setp.ne.u16 %r94,%r93,0; @ %r94 bra $L15; .loc 1 68 4 setp.le.u32 %r95,%r56,1051816472; @ %r95 bra $L6; .loc 1 69 8 setp.gt.u32 %r96,%r56,1065686417; @ %r96 bra $L7; .loc 1 70 15 cvta.const.u64 %r97,ln2HI; cvt.s64.s32 %r98,%r22; shl.b64 %r99,%r98,2; add.u64 %r100,%r97,%r99; .loc 1 70 6 ld.f32 %r101,[%r100]; sub.f32 %r50,%r77,%r101; .loc 1 70 24 cvta.const.u64 %r102,ln2LO; add.u64 %r105,%r102,%r99; ld.f32 %r51,[%r105]; .loc 1 70 42 mov.u32 %r107,1; sub.u32 %r106,%r107,%r22; .loc 1 70 39 sub.u32 %r52,%r106,%r22; bra $L8; $L7: .loc 1 72 21 cvta.const.u64 %r108,halF; cvt.s64.s32 %r109,%r22; shl.b64 %r110,%r109,2; add.u64 %r111,%r108,%r110; .loc 1 72 16 ld.f32 %r113,[%r111]; fma.rn.f32 %r112,%r77,0f3fb8aa3b,%r113; .loc 1 72 6 cvt.rzi.s32.f32 %r52,%r112; .loc 1 73 6 cvt.rn.f32.s32 %r57,%r52; .loc 1 74 6 fma.rn.f32 %r50,%r57,0fbf317180,%r77; .loc 1 75 6 mul.f32 %r51,%r57,0f3717f7d1; $L8: .loc 1 77 9 sub.f32 %r77,%r50,%r51; .loc 1 84 5 mul.f32 %r58,%r77,%r77; .loc 1 85 34 fma.rn.f32 %r115,%r58,0f3331bb4c,0fb5ddea0e; .loc 1 85 28 fma.rn.f32 %r116,%r115,%r58,0f388ab355; .loc 1 85 22 fma.rn.f32 %r117,%r116,%r58,0fbb360b61; .loc 1 85 16 fma.rn.f32 %r118,%r117,%r58,0f3e2aaaab; .loc 1 85 5 neg.f32 %r119,%r118; fma.rn.f32 %r66,%r119,%r58,%r77; mul.f32 %r150,%r77,%r66; .loc 1 86 4 setp.eq.u32 %r120,%r52,0; @ ! %r120 bra $L20; bra $L9; $L6: .loc 1 79 9 setp.gt.u32 %r121,%r56,830472191; @ %r121 bra $L11; .loc 1 80 13 add.f32 %r122,%r77,0f7149f2ca; .loc 1 80 8 setp.gt.f32 %r123,%r122,0f3f800000; @ ! %r123 bra $L11; .loc 1 80 31 add.f32 %r76,%r77,0f3f800000; bra $L1; $L9: .loc 1 86 32 mov.f32 %r126,0f40000000; sub.f32 %r125,%r66,%r126; .loc 1 86 29 div.rn.f32 %r127,%r150,%r125; .loc 1 86 44 sub.f32 %r128,%r127,%r77; .loc 1 86 22 mov.f32 %r129,0f3f800000; sub.f32 %r76,%r129,%r128; bra $L1; $L20: .loc 1 87 39 mov.f32 %r131,0f40000000; sub.f32 %r130,%r131,%r66; .loc 1 87 27 div.rn.f32 %r132,%r150,%r130; .loc 1 87 21 sub.f32 %r133,%r51,%r132; .loc 1 87 43 sub.f32 %r134,%r133,%r50; .loc 1 87 11 mov.f32 %r136,0f3f800000; sub.f32 %r135,%r136,%r134; mov.b32 %r75,%r135; .loc 1 88 4 setp.lt.s32 %r137,%r52,-125; @ %r137 bra $L13; .loc 1 91 6 shl.b32 %r138,%r52,23; add.u32 %r139,%r138,%r75; mov.b32 %r76,%r139; .loc 1 92 13 bra $L1; $L13: .loc 1 96 6 add.u32 %r140,%r52,100; shl.b32 %r141,%r140,23; add.u32 %r142,%r141,%r75; .loc 1 97 14 mov.b32 %r143,%r142; mul.f32 %r76,%r143,0f0d800000; bra $L1; $L15: .loc 1 61 24 mov.f32 %r76,0f00000000; bra $L1; $L11: .loc 1 84 5 mul.f32 %r61,%r77,%r77; .loc 1 85 5 neg.f32 %r145,%r61; .loc 1 85 34 fma.rn.f32 %r146,%r61,0f3331bb4c,0fb5ddea0e; .loc 1 85 28 fma.rn.f32 %r147,%r61,%r146,0f388ab355; .loc 1 85 22 fma.rn.f32 %r148,%r61,%r147,0fbb360b61; .loc 1 85 16 fma.rn.f32 %r149,%r61,%r148,0f3e2aaaab; .loc 1 85 5 fma.rn.f32 %r66,%r145,%r149,%r77; mul.f32 %r150,%r77,%r66; bra $L9; $L1: .loc 1 99 1 mov.f32 %value,%r76; st.param.f32 [%value_out],%value; ret; } lib_a-ef_fmod.o/1591654536 399 399 100644 6163 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .f32 %r26; .reg .u32 %r31; .reg .u32 %r32; .reg .u32 %r43; .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 %r64; .reg .f32 %r66; .reg .f32 %r67; .reg .f32 %r68; .reg .u32 %r70; .reg .u32 %r71; .reg .u32 %r73; .reg .u32 %r74; .reg .u16 %r75; .reg .u16 %r76; .reg .u16 %r77; .reg .u32 %r79; .reg .u32 %r80; .reg .u16 %r82; .reg .u16 %r84; .reg .u32 %r85; .reg .u16 %r86; .reg .pred %r87; .reg .pred %r88; .reg .pred %r89; .reg .u64 %r90; .reg .u32 %r91; .reg .u64 %r92; .reg .u64 %r93; .reg .u64 %r94; .reg .u32 %r95; .reg .pred %r96; .reg .pred %r97; .reg .pred %r99; .reg .u32 %r100; .reg .u32 %r101; .reg .pred %r102; .reg .pred %r103; .reg .pred %r105; .reg .u32 %r106; .reg .pred %r107; .reg .u32 %r108; .reg .u32 %r109; .reg .u32 %r111; .reg .u32 %r112; .reg .pred %r113; .reg .pred %r115; .reg .u64 %r116; .reg .u32 %r117; .reg .u64 %r118; .reg .u64 %r119; .reg .u64 %r120; .reg .pred %r122; .reg .pred %r123; .reg .pred %r124; .reg .pred %r125; .reg .u64 %r126; .reg .u32 %r127; .reg .u64 %r128; .reg .u64 %r129; .reg .u64 %r130; .reg .pred %r132; .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 .pred %r144; mov.f32 %r67,%ar0; mov.f32 %r68,%ar1; .loc 1 39 2 mov.b32 %r45,%r67; .loc 1 40 2 mov.b32 %r46,%r68; .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 %r70,%r49,2139095040; neg.s32 %r71,%r70; .loc 1 46 5 set.u32.eq.u32 %r73,%r49,0; neg.s32 %r74,%r73; .loc 1 47 29 cvt.u16.u32 %r76,%r71; cvt.u16.u32 %r77,%r74; or.b16 %r75,%r76,%r77; .loc 1 47 5 set.u32.gt.s32 %r79,%r48,2139095039; neg.s32 %r80,%r79; .loc 1 47 29 cvt.u16.u32 %r84,%r80; or.b16 %r82,%r75,%r84; cvt.u32.u16 %r85,%r82; cvt.u16.u8 %r86,%r85; setp.eq.u16 %r87,%r86,0; @ %r87 bra $L2; .loc 1 49 15 mul.f32 %r26,%r67,%r68; .loc 1 49 18 div.rn.f32 %r66,%r26,%r26; bra $L1; $L2: .loc 1 50 4 setp.lt.s32 %r88,%r48,%r49; @ %r88 bra $L25; .loc 1 41 5 and.b32 %r47,%r45,-2147483648; .loc 1 51 4 setp.ne.u32 %r89,%r48,%r49; @ %r89 bra $L4; .loc 1 52 17 cvta.const.u64 %r90,Zero; .loc 1 52 32 shr.u32 %r91,%r47,31; .loc 1 52 17 cvt.u64.u32 %r92,%r91; shl.b64 %r93,%r92,2; add.u64 %r94,%r90,%r93; ld.f32 %r66,[%r94]; bra $L1; $L4: .loc 1 57 4 and.b32 %r95,%r45,2139095040; setp.ne.u32 %r96,%r95,0; @ %r96 bra $L5; .loc 1 58 22 shl.b32 %r52,%r48,8; .loc 1 58 6 setp.le.s32 %r97,%r52,0; @ %r97 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 6 setp.gt.s32 %r99,%r52,0; @ %r99 bra $L7; bra $L6; $L5: .loc 1 59 17 shr.s32 %r100,%r48,23; .loc 1 59 12 add.u32 %r51,%r100,-127; bra $L6; $L26: .loc 1 58 14 mov.u32 %r51,-126; $L6: .loc 1 62 4 and.b32 %r101,%r46,2139095040; setp.ne.u32 %r102,%r101,0; @ %r102 bra $L8; .loc 1 63 22 shl.b32 %r55,%r49,8; .loc 1 63 6 setp.lt.s32 %r103,%r55,0; @ %r103 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 6 setp.ge.s32 %r105,%r55,0; @ %r105 bra $L10; bra $L9; $L8: .loc 1 64 17 shr.s32 %r106,%r49,23; .loc 1 64 12 add.u32 %r54,%r106,-127; bra $L9; $L27: .loc 1 63 14 mov.u32 %r54,-126; $L9: .loc 1 67 4 setp.lt.s32 %r107,%r51,-126; @ %r107 bra $L11; .loc 1 68 33 and.b32 %r31,%r45,8388607; .loc 1 68 9 or.b32 %r22,%r31,8388608; bra $L12; $L11: .loc 1 70 8 mov.u32 %r109,-126; sub.u32 %r108,%r109,%r51; .loc 1 71 9 shl.b32 %r22,%r48,%r108; $L12: .loc 1 73 4 setp.lt.s32 %r144,%r54,-126; @ %r144 bra $L13; .loc 1 74 33 and.b32 %r32,%r46,8388607; .loc 1 74 9 or.b32 %r43,%r32,8388608; bra $L14; $L13: .loc 1 76 8 mov.u32 %r112,-126; sub.u32 %r111,%r112,%r54; .loc 1 77 9 shl.b32 %r43,%r49,%r111; $L14: .loc 1 81 4 sub.u32 %r64,%r51,%r54; .loc 1 82 7 bra $L15; $L19: .loc 1 84 8 setp.ge.s32 %r113,%r44,0; @ %r113 bra $L16; .loc 1 84 18 add.u32 %r22,%r22,%r22; bra $L17; $L16: .loc 1 86 9 setp.ne.u32 %r115,%r44,0; @ %r115 bra $L18; .loc 1 87 18 cvta.const.u64 %r116,Zero; .loc 1 87 33 shr.u32 %r117,%r47,31; .loc 1 87 18 cvt.u64.u32 %r118,%r117; shl.b64 %r119,%r118,2; add.u64 %r120,%r116,%r119; ld.f32 %r66,[%r120]; bra $L1; $L18: .loc 1 88 10 add.u32 %r22,%r44,%r44; $L17: add.u32 %r64,%r64,-1; $L15: sub.u32 %r44,%r22,%r43; .loc 1 82 7 setp.ne.u32 %r122,%r64,0; @ %r122 bra $L19; .loc 1 92 4 setp.lt.s32 %r123,%r44,0; selp.u32 %r22,%r22,%r44,%r123; .loc 1 95 4 setp.eq.u32 %r124,%r22,0; @ %r124 bra $L21; .loc 1 97 7 setp.le.s32 %r125,%r22,8388607; @ %r125 bra $L22; bra $L23; $L21: .loc 1 96 17 cvta.const.u64 %r126,Zero; .loc 1 96 32 shr.u32 %r127,%r47,31; .loc 1 96 17 cvt.u64.u32 %r128,%r127; shl.b64 %r129,%r128,2; add.u64 %r130,%r126,%r129; ld.f32 %r66,[%r130]; bra $L1; $L22: .loc 1 98 9 add.u32 %r22,%r22,%r22; .loc 1 99 9 add.u32 %r54,%r54,-1; .loc 1 97 7 setp.le.s32 %r132,%r22,8388607; @ %r132 bra $L22; setp.lt.s32 %r144,%r54,-126; $L23: .loc 1 101 4 @ %r144 bra $L24; .loc 1 102 32 add.u32 %r134,%r54,127; .loc 1 102 37 shl.b32 %r135,%r134,23; .loc 1 102 15 add.u32 %r136,%r22,-8388608; .loc 1 103 6 or.b32 %r137,%r136,%r47; or.b32 %r138,%r135,%r137; mov.b32 %r66,%r138; bra $L1; $L24: .loc 1 107 8 mov.u32 %r140,-126; sub.u32 %r139,%r140,%r54; .loc 1 108 9 shr.s32 %r141,%r22,%r139; .loc 1 109 6 or.b32 %r142,%r141,%r47; mov.b32 %r66,%r142; bra $L1; $L25: .loc 1 50 19 mov.f32 %r66,%r67; $L1: .loc 1 113 1 mov.f32 %value,%r66; st.param.f32 [%value_out],%value; ret; } /157 1591654536 399 399 100644 4666 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r41; .reg .f32 %r45; .reg .u32 %r47; .reg .u32 %r48; .reg .u32 %r49; .reg .u32 %r52; .reg .u32 %r53; .reg .f32 %r54; .reg .f32 %r55; .reg .f32 %r57; .reg .f32 %r59; .reg .f32 %r66; .reg .f32 %r67; .reg .f32 %r68; .reg .u32 %r69; .reg .pred %r70; .reg .u32 %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 .u32 %r81; .reg .f32 %r83; .reg .f32 %r84; .reg .f32 %r85; .reg .f32 %r86; .reg .f32 %r87; .reg .f32 %r88; .reg .f32 %r89; .reg .f32 %r90; .reg .f32 %r91; .reg .u32 %r92; .reg .u32 %r93; .reg .f32 %r94; .reg .f32 %r95; .reg .f32 %r96; .reg .f32 %r97; .reg .f32 %r98; .reg .f32 %r99; .reg .f32 %r100; .reg .f32 %r101; .reg .f32 %r102; .reg .f32 %r104; .reg .pred %r105; .reg .u32 %r106; .reg .u32 %r107; .reg .f32 %r108; mov.f32 %r67,%ar0; mov.f32 %r68,%ar1; .loc 1 28 2 mov.b32 %r52,%r67; .loc 1 29 5 and.b32 %r48,%r52,2147483647; .loc 1 30 2 mov.b32 %r53,%r68; .loc 1 31 5 and.b32 %r49,%r53,2147483647; .loc 1 32 4 setp.ge.s32 %r70,%r48,%r49; @ %r70 bra $L2; mov.u32 %r69,%r48; mov.u32 %r48,%r49; mov.u32 %r49,%r69; $L2: .loc 1 33 2 mov.b32 %r66,%r48; .loc 1 34 2 mov.b32 %r45,%r49; .loc 1 35 8 sub.u32 %r71,%r48,%r49; .loc 1 35 4 setp.le.s32 %r72,%r71,251658240; @ %r72 bra $L3; .loc 1 35 34 add.f32 %r66,%r66,%r45; bra $L1; $L3: .loc 1 37 4 setp.le.s32 %r73,%r48,1484783616; @ %r73 bra $L13; .loc 1 38 7 setp.le.s32 %r74,%r48,2139095039; @ %r74 bra $L6; .loc 1 40 11 setp.eq.u32 %r75,%r48,2139095040; @ %r75 bra $L14; .loc 1 39 11 add.f32 %r66,%r66,%r45; bra $L7; $L14: .loc 1 40 41 mov.f32 %r66,0f7f800000; $L7: .loc 1 41 11 setp.ne.u32 %r76,%r49,2139095040; .loc 1 41 41 selp.f32 %r66,%r66,0f7f800000,%r76; bra $L1; $L6: .loc 1 45 8 add.u32 %r48,%r48,-570425344; .loc 1 45 27 add.u32 %r49,%r49,-570425344; .loc 1 46 5 mov.b32 %r66,%r48; .loc 1 47 5 mov.b32 %r45,%r49; .loc 1 45 45 mov.u32 %r47,68; bra $L5; $L13: .loc 1 36 3 mov.u32 %r47,0; $L5: .loc 1 49 4 setp.gt.s32 %r77,%r49,645922815; @ %r77 bra $L8; .loc 1 50 8 setp.eq.u32 %r78,%r49,0; @ %r78 bra $L1; .loc 1 52 15 setp.gt.s32 %r79,%r49,8388607; @ %r79 bra $L9; .loc 1 54 5 mul.f32 %r45,%r45,0f7e800000; .loc 1 55 5 mul.f32 %r66,%r66,0f7e800000; .loc 1 56 5 add.u32 %r47,%r47,-126; bra $L8; $L9: .loc 1 58 13 add.u32 %r48,%r48,570425344; .loc 1 59 6 add.u32 %r49,%r49,570425344; .loc 1 60 5 add.u32 %r47,%r47,-68; .loc 1 61 3 mov.b32 %r66,%r48; .loc 1 62 3 mov.b32 %r45,%r49; $L8: .loc 1 66 4 sub.f32 %r54,%r66,%r45; .loc 1 67 5 setp.lt.f32 %r80,%r45,%r54; @ ! %r80 bra $L22; .loc 1 68 6 and.b32 %r81,%r48,-4096; mov.b32 %r55,%r81; .loc 1 70 37 neg.f32 %r83,%r45; .loc 1 70 46 add.f32 %r84,%r66,%r55; .loc 1 69 9 sub.f32 %r85,%r66,%r55; .loc 1 70 43 mul.f32 %r86,%r84,%r85; .loc 1 70 40 neg.f32 %r87,%r86; fma.rn.f32 %r88,%r83,%r45,%r87; .loc 1 70 11 neg.f32 %r89,%r88; fma.rn.f32 %r90,%r55,%r55,%r89; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r90; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r91,[%value_in]; } mov.f32 %r66,%r91; bra $L12; $L22: .loc 1 73 6 and.b32 %r92,%r49,-4096; mov.b32 %r57,%r92; .loc 1 75 6 add.u32 %r93,%r48,8388608; mov.b32 %r59,%r93; .loc 1 77 37 neg.f32 %r94,%r54; .loc 1 74 9 sub.f32 %r95,%r45,%r57; .loc 1 76 9 neg.f32 %r96,%r59; fma.rn.f32 %r97,%r66,0f40000000,%r96; .loc 1 77 50 mul.f32 %r98,%r97,%r45; .loc 1 77 47 fma.rn.f32 %r99,%r95,%r59,%r98; .loc 1 77 40 neg.f32 %r100,%r99; fma.rn.f32 %r101,%r94,%r54,%r100; .loc 1 77 11 neg.f32 %r102,%r101; fma.rn.f32 %r41,%r57,%r59,%r102; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r41; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r104,[%value_in]; } mov.f32 %r66,%r104; $L12: .loc 1 79 4 setp.eq.u32 %r105,%r47,0; @ %r105 bra $L1; .loc 1 80 6 shl.b32 %r106,%r47,23; add.u32 %r107,%r106,1065353216; .loc 1 81 15 mov.b32 %r108,%r107; mul.f32 %r66,%r66,%r108; $L1: .loc 1 83 1 mov.f32 %value,%r66; st.param.f32 [%value_out],%value; ret; } lib_a-ef_j0.o/ 1591654536 399 399 100644 15875 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r28; .reg .u32 %r35; .reg .u32 %r36; .reg .f32 %r37; .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 %r55; .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; 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 mov.f32 %r55,0f3f800000; div.rn.f32 %r37,%r55,%r54; .loc 1 300 42 fma.rn.f32 %r57,%r37,%r44,%r43; .loc 1 300 34 fma.rn.f32 %r58,%r57,%r37,%r42; .loc 1 300 26 fma.rn.f32 %r59,%r58,%r37,%r41; .loc 1 300 18 fma.rn.f32 %r60,%r59,%r37,%r40; .loc 1 300 4 fma.rn.f32 %r61,%r60,%r37,%r23; .loc 1 301 41 fma.rn.f32 %r62,%r37,%r48,%r47; .loc 1 301 33 fma.rn.f32 %r63,%r62,%r37,%r46; .loc 1 301 25 fma.rn.f32 %r64,%r63,%r37,%r45; .loc 1 301 17 fma.rn.f32 %r65,%r64,%r37,%r28; .loc 1 301 4 fma.rn.f32 %r66,%r65,%r37,0f3f800000; .loc 1 302 15 div.rn.f32 %r67,%r61,%r66; .loc 1 302 12 add.f32 %value,%r67,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 %r28; .reg .u32 %r37; .reg .u32 %r38; .reg .f32 %r39; .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 %r58; .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; 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 mov.f32 %r58,0f3f800000; div.rn.f32 %r39,%r58,%r57; .loc 1 436 42 fma.rn.f32 %r60,%r39,%r46,%r45; .loc 1 436 34 fma.rn.f32 %r61,%r60,%r39,%r44; .loc 1 436 26 fma.rn.f32 %r62,%r61,%r39,%r43; .loc 1 436 18 fma.rn.f32 %r63,%r62,%r39,%r42; .loc 1 436 4 fma.rn.f32 %r64,%r63,%r39,%r23; .loc 1 437 49 fma.rn.f32 %r65,%r39,%r51,%r50; .loc 1 437 41 fma.rn.f32 %r66,%r65,%r39,%r49; .loc 1 437 33 fma.rn.f32 %r67,%r66,%r39,%r48; .loc 1 437 25 fma.rn.f32 %r68,%r67,%r39,%r47; .loc 1 437 17 fma.rn.f32 %r69,%r68,%r39,%r28; .loc 1 437 4 fma.rn.f32 %r70,%r69,%r39,0f3f800000; .loc 1 438 26 div.rn.f32 %r71,%r64,%r70; .loc 1 438 23 mov.f32 %r73,0f3e000000; sub.f32 %r72,%r71,%r73; .loc 1 438 29 div.rn.f32 %value,%r72,%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 %r43; .reg .f32 %r44; .reg .u32 %r46; .reg .u32 %r47; .reg .f32 %r51; .reg .f32 %r54; .reg .f32 %r61; .reg .f32 %r62; .reg .f32 %r63; .reg .pred %r64; .reg .f32 %r65; .reg .f32 %r66; .reg .f32 %r68; .reg .u32 %r69; .reg .pred %r70; .reg .f32 %r72; .reg .f32 %r74; .reg .pred %r75; .reg .f32 %r77; .reg .f32 %r78; .reg .f32 %r79; .reg .pred %r80; .reg .f32 %r82; .reg .f32 %r84; .reg .f32 %r86; .reg .f32 %r87; .reg .f32 %r88; .reg .f32 %r89; .reg .f32 %r90; .reg .pred %r91; .reg .f32 %r92; .reg .pred %r93; .reg .pred %r94; .reg .f32 %r96; .reg .f32 %r97; .reg .f32 %r98; .reg .f32 %r99; .reg .f32 %r100; .reg .f32 %r101; .reg .f32 %r102; .reg .f32 %r103; .reg .f32 %r104; .reg .pred %r105; .reg .f32 %r106; .reg .f32 %r107; .reg .f32 %r108; .reg .f32 %r109; .reg .f32 %r111; mov.f32 %r63,%ar0; .loc 1 59 2 mov.b32 %r46,%r63; .loc 1 60 5 and.b32 %r47,%r46,2147483647; .loc 1 61 4 setp.le.s32 %r64,%r47,2139095039; @ %r64 bra $L12; .loc 1 61 44 mul.f32 %r65,%r63,%r63; .loc 1 61 41 mov.f32 %r66,0f3f800000; div.rn.f32 %r62,%r66,%r65; bra $L11; $L12: .loc 1 62 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r63; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r68,[%value_in]; } .loc 1 63 4 and.b32 %r69,%r46,1073741824; setp.eq.u32 %r70,%r69,0; @ %r70 bra $L14; .loc 1 64 7 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r68; call (%value_in),sinf,(%out_arg1); ld.param.f32 %r72,[%value_in]; } .loc 1 65 7 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r68; call (%value_in),cosf,(%out_arg1); ld.param.f32 %r74,[%value_in]; } .loc 1 66 6 sub.f32 %r43,%r72,%r74; .loc 1 67 6 add.f32 %r44,%r72,%r74; .loc 1 68 5 setp.gt.s32 %r75,%r47,2130706431; @ %r75 bra $L15; .loc 1 69 12 add.f32 %r77,%r68,%r68; { .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 69 9 neg.f32 %r51,%r78; .loc 1 70 13 mul.f32 %r79,%r72,%r74; .loc 1 70 10 setp.lt.f32 %r80,%r79,0f00000000; @ ! %r80 bra $L24; .loc 1 70 26 div.rn.f32 %r44,%r51,%r43; bra $L15; $L24: .loc 1 71 20 div.rn.f32 %r43,%r51,%r44; $L15: .loc 1 79 11 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r68; call (%value_in),pzerof,(%out_arg1); ld.param.f32 %r82,[%value_in]; } .loc 1 79 26 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r68; call (%value_in),qzerof,(%out_arg1); ld.param.f32 %r84,[%value_in]; } .loc 1 80 33 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r68; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r86,[%value_in]; } .loc 1 80 28 mul.f32 %r87,%r43,%r84; .loc 1 80 26 neg.f32 %r88,%r87; fma.rn.f32 %r89,%r44,%r82,%r88; .loc 1 80 20 mul.f32 %r90,%r89,0f3f106ebb; .loc 1 80 9 div.rn.f32 %r62,%r90,%r86; .loc 1 82 10 bra $L11; $L14: .loc 1 84 4 setp.gt.s32 %r91,%r47,956301311; @ %r91 bra $L18; .loc 1 85 13 add.f32 %r92,%r68,0f7149f2ca; .loc 1 85 8 setp.gt.f32 %r93,%r92,0f3f800000; @ ! %r93 bra $L18; .loc 1 86 12 setp.le.s32 %r94,%r47,838860799; @ %r94 bra $L21; .loc 1 87 33 mul.f32 %r96,%r68,0fbe800000; fma.rn.f32 %r62,%r96,%r68,0f3f800000; bra $L11; $L18: .loc 1 90 4 mul.f32 %r54,%r68,%r68; .loc 1 91 27 fma.rn.f32 %r97,%r54,0fb19eaf3c,0f35f58e88; .loc 1 91 20 fma.rn.f32 %r98,%r97,%r54,0fb947352e; .loc 1 91 13 fma.rn.f32 %r99,%r98,%r54,0f3c800000; .loc 1 91 4 mul.f32 %r100,%r99,%r54; .loc 1 92 31 fma.rn.f32 %r101,%r54,0f30a045e8,0f3509daa6; .loc 1 92 24 fma.rn.f32 %r102,%r101,%r54,0f38f53697; .loc 1 92 17 fma.rn.f32 %r103,%r102,%r54,0f3c7fe744; .loc 1 92 4 fma.rn.f32 %r104,%r103,%r54,0f3f800000; div.rn.f32 %r61,%r100,%r104; .loc 1 93 4 setp.gt.s32 %r105,%r47,1065353215; @ %r105 bra $L20; .loc 1 94 34 mov.f32 %r107,0f3e800000; sub.f32 %r106,%r61,%r107; .loc 1 94 17 fma.rn.f32 %r62,%r106,%r54,0f3f800000; bra $L11; $L20: .loc 1 97 17 fma.rn.f32 %r108,%r68,0f3f000000,0f3f800000; .loc 1 97 30 mul.f32 %r109,%r54,%r61; .loc 1 97 25 fma.rn.f32 %r111,%r68,0fbf000000,0f3f800000; .loc 1 97 28 fma.rn.f32 %r62,%r108,%r111,%r109; bra $L11; $L21: .loc 1 86 35 mov.f32 %r62,0f3f800000; $L11: .loc 1 99 1 mov.f32 %value,%r62; 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 %r39; .reg .f32 %r44; .reg .f32 %r45; .reg .u32 %r47; .reg .u32 %r48; .reg .f32 %r51; .reg .f32 %r54; .reg .f32 %r61; .reg .f32 %r62; .reg .pred %r63; .reg .f32 %r64; .reg .f32 %r65; .reg .pred %r66; .reg .f32 %r67; .reg .pred %r68; .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 .f32 %r83; .reg .f32 %r85; .reg .f32 %r87; .reg .f32 %r88; .reg .f32 %r89; .reg .f32 %r90; .reg .pred %r91; .reg .f32 %r93; .reg .f32 %r94; .reg .f32 %r95; .reg .f32 %r96; .reg .f32 %r97; .reg .f32 %r98; .reg .f32 %r99; .reg .f32 %r100; .reg .f32 %r101; .reg .f32 %r102; .reg .f32 %r103; .reg .f32 %r105; .reg .f32 %r107; .reg .f32 %r108; mov.f32 %r62,%ar0; .loc 1 128 2 mov.b32 %r47,%r62; .loc 1 129 12 and.b32 %r48,%r47,2147483647; .loc 1 131 4 setp.le.s32 %r63,%r48,2139095039; @ %r63 bra $L26; .loc 1 131 45 fma.rn.f32 %r64,%r62,%r62,%r62; .loc 1 131 42 mov.f32 %r65,0f3f800000; div.rn.f32 %r61,%r65,%r64; bra $L25; $L26: .loc 1 132 11 setp.ne.u32 %r66,%r48,0; @ %r66 bra $L28; .loc 1 132 46 mov.f32 %r67,0fbf800000; div.rn.f32 %r61,%r67,0f00000000; bra $L25; $L28: .loc 1 133 11 setp.ge.s32 %r68,%r47,0; @ %r68 bra $L29; .loc 1 133 29 mov.f32 %r69,0f00000000; div.rn.f32 %r61,%r69,0f00000000; bra $L25; $L29: .loc 1 134 11 and.b32 %r70,%r47,1073741824; setp.eq.u32 %r71,%r70,0; @ %r71 bra $L30; .loc 1 146 21 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r62; call (%value_in),sinf,(%out_arg1); ld.param.f32 %r73,[%value_in]; } .loc 1 147 21 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r62; call (%value_in),cosf,(%out_arg1); ld.param.f32 %r75,[%value_in]; } .loc 1 148 20 sub.f32 %r44,%r73,%r75; .loc 1 149 20 add.f32 %r45,%r73,%r75; .loc 1 154 19 setp.gt.s32 %r76,%r48,2130706431; @ %r76 bra $L31; .loc 1 155 26 add.f32 %r78,%r62,%r62; { .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 155 23 neg.f32 %r51,%r79; .loc 1 156 27 mul.f32 %r80,%r73,%r75; .loc 1 156 24 setp.lt.f32 %r81,%r80,0f00000000; @ ! %r81 bra $L36; .loc 1 156 40 div.rn.f32 %r45,%r51,%r44; bra $L31; $L36: .loc 1 157 40 div.rn.f32 %r44,%r51,%r45; $L31: .loc 1 161 25 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r62; call (%value_in),pzerof,(%out_arg1); ld.param.f32 %r83,[%value_in]; } .loc 1 161 40 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r62; call (%value_in),qzerof,(%out_arg1); ld.param.f32 %r85,[%value_in]; } .loc 1 162 47 { .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 162 42 mul.f32 %r88,%r45,%r85; .loc 1 162 40 fma.rn.f32 %r89,%r44,%r83,%r88; .loc 1 162 34 mul.f32 %r90,%r89,0f3f106ebb; .loc 1 162 23 div.rn.f32 %r61,%r90,%r87; .loc 1 164 24 bra $L25; $L30: .loc 1 166 4 setp.gt.s32 %r91,%r48,838860800; @ %r91 bra $L34; .loc 1 167 23 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r62; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r93,[%value_in]; } .loc 1 167 17 fma.rn.f32 %r61,%r93,0f3f22f983,0fbd9726b5; bra $L25; $L34: .loc 1 169 4 mul.f32 %r54,%r62,%r62; .loc 1 170 44 fma.rn.f32 %r94,%r54,0fae2f21eb,0f32a802ba; .loc 1 170 37 fma.rn.f32 %r95,%r94,%r54,0fb67ff53c; .loc 1 170 30 fma.rn.f32 %r96,%r95,%r54,0f39b62a69; .loc 1 170 23 fma.rn.f32 %r97,%r96,%r54,0fbc626746; .loc 1 170 16 fma.rn.f32 %r98,%r97,%r54,0f3e34e80d; .loc 1 170 4 fma.rn.f32 %r99,%r98,%r54,0fbd9726b5; .loc 1 171 30 fma.rn.f32 %r100,%r54,0f2ff280c2,0f348b216c; .loc 1 171 23 fma.rn.f32 %r101,%r100,%r54,0f389f65e0; .loc 1 171 16 fma.rn.f32 %r102,%r101,%r54,0f3c509385; .loc 1 171 4 fma.rn.f32 %r103,%r102,%r54,0f3f800000; .loc 1 172 10 div.rn.f32 %r39,%r99,%r103; .loc 1 172 20 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r62; call (%value_in),__ieee754_j0f,(%out_arg1); ld.param.f32 %r105,[%value_in]; } .loc 1 172 37 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r62; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r107,[%value_in]; } .loc 1 172 36 mul.f32 %r108,%r105,%r107; .loc 1 172 13 fma.rn.f32 %r61,%r108,0f3f22f983,%r39; $L25: .loc 1 173 1 mov.f32 %value,%r61; st.param.f32 [%value_out],%value; ret; } lib_a-ef_j1.o/ 1591654536 399 399 100644 14820 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r28; .reg .u32 %r35; .reg .u32 %r36; .reg .f32 %r37; .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 %r55; .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; 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 mov.f32 %r55,0f3f800000; div.rn.f32 %r37,%r55,%r54; .loc 1 299 49 fma.rn.f32 %r57,%r37,%r44,%r43; .loc 1 299 41 fma.rn.f32 %r58,%r57,%r37,%r42; .loc 1 299 33 fma.rn.f32 %r59,%r58,%r37,%r41; .loc 1 299 25 fma.rn.f32 %r60,%r59,%r37,%r40; .loc 1 299 11 fma.rn.f32 %r61,%r60,%r37,%r23; .loc 1 300 48 fma.rn.f32 %r62,%r37,%r48,%r47; .loc 1 300 40 fma.rn.f32 %r63,%r62,%r37,%r46; .loc 1 300 32 fma.rn.f32 %r64,%r63,%r37,%r45; .loc 1 300 24 fma.rn.f32 %r65,%r64,%r37,%r28; .loc 1 300 11 fma.rn.f32 %r66,%r65,%r37,0f3f800000; .loc 1 301 22 div.rn.f32 %r67,%r61,%r66; .loc 1 301 19 add.f32 %value,%r67,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 %r28; .reg .u32 %r37; .reg .f32 %r39; .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 %r57; .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; 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 mov.f32 %r57,0f3f800000; div.rn.f32 %r39,%r57,%r56; .loc 1 436 42 fma.rn.f32 %r59,%r39,%r46,%r45; .loc 1 436 34 fma.rn.f32 %r60,%r59,%r39,%r44; .loc 1 436 26 fma.rn.f32 %r61,%r60,%r39,%r43; .loc 1 436 18 fma.rn.f32 %r62,%r61,%r39,%r42; .loc 1 436 4 fma.rn.f32 %r63,%r62,%r39,%r23; .loc 1 437 49 fma.rn.f32 %r64,%r39,%r51,%r50; .loc 1 437 41 fma.rn.f32 %r65,%r64,%r39,%r49; .loc 1 437 33 fma.rn.f32 %r66,%r65,%r39,%r48; .loc 1 437 25 fma.rn.f32 %r67,%r66,%r39,%r47; .loc 1 437 17 fma.rn.f32 %r68,%r67,%r39,%r28; .loc 1 437 4 fma.rn.f32 %r69,%r68,%r39,0f3f800000; .loc 1 438 25 div.rn.f32 %r70,%r63,%r69; .loc 1 438 22 add.f32 %r71,%r70,0f3ec00000; .loc 1 438 28 div.rn.f32 %value,%r71,%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 %r39; .reg .f32 %r40; .reg .u32 %r42; .reg .u32 %r43; .reg .f32 %r50; .reg .f32 %r51; .reg .f32 %r57; .reg .f32 %r58; .reg .pred %r59; .reg .f32 %r60; .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 .f32 %r77; .reg .f32 %r79; .reg .f32 %r81; .reg .f32 %r82; .reg .f32 %r83; .reg .f32 %r84; .reg .f32 %r85; .reg .pred %r86; .reg .pred %r87; .reg .f32 %r88; .reg .pred %r89; .reg .f32 %r90; .reg .f32 %r91; .reg .f32 %r92; .reg .f32 %r93; .reg .f32 %r94; .reg .f32 %r95; .reg .f32 %r96; .reg .f32 %r97; .reg .f32 %r98; .reg .f32 %r99; 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 mov.f32 %r60,0f3f800000; div.rn.f32 %r57,%r60,%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 %r39,%r69,%r68; .loc 1 68 6 sub.f32 %r40,%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 $L18; .loc 1 71 26 div.rn.f32 %r40,%r73,%r39; bra $L13; $L18: .loc 1 72 20 div.rn.f32 %r39,%r73,%r40; $L13: .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 %r77,[%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 %r79,[%value_in]; } .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 %r81,[%value_in]; } .loc 1 81 28 mul.f32 %r82,%r39,%r79; .loc 1 81 26 neg.f32 %r83,%r82; fma.rn.f32 %r84,%r40,%r77,%r83; .loc 1 81 20 mul.f32 %r85,%r84,0f3f106ebb; .loc 1 81 9 div.rn.f32 %r57,%r85,%r81; .loc 1 83 5 setp.ge.s32 %r86,%r42,0; @ %r86 bra $L9; .loc 1 83 19 neg.f32 %r57,%r57; bra $L9; $L12: mul.f32 %r57,%r58,0f3f000000; .loc 1 86 4 setp.gt.s32 %r87,%r43,838860799; @ %r87 bra $L16; .loc 1 87 13 add.f32 %r88,%r58,0f7149f2ca; .loc 1 87 8 setp.gt.f32 %r89,%r88,0f3f800000; @ %r89 bra $L9; $L16: .loc 1 89 4 mul.f32 %r50,%r58,%r58; .loc 1 90 27 fma.rn.f32 %r90,%r50,0f335557d2,0fb7862e36; .loc 1 90 20 fma.rn.f32 %r91,%r90,%r50,0f3ab86cfd; .loc 1 90 13 fma.rn.f32 %r92,%r91,%r50,0fbd800000; .loc 1 90 4 mul.f32 %r51,%r92,%r50; .loc 1 92 4 mul.f32 %r93,%r58,%r51; .loc 1 91 38 fma.rn.f32 %r94,%r50,0f2d59567e,0f31ad6446; .loc 1 91 31 fma.rn.f32 %r95,%r94,%r50,0f359dffc2; .loc 1 91 24 fma.rn.f32 %r96,%r95,%r50,0f3942fab6; .loc 1 91 17 fma.rn.f32 %r97,%r96,%r50,0f3c9ce859; .loc 1 91 4 fma.rn.f32 %r98,%r97,%r50,0f3f800000; .loc 1 93 23 div.rn.f32 %r99,%r93,%r98; .loc 1 93 21 add.f32 %r57,%r57,%r99; $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 %r41; .reg .f32 %r47; .reg .f32 %r48; .reg .u32 %r50; .reg .u32 %r51; .reg .f32 %r57; .reg .f32 %r62; .reg .f32 %r63; .reg .pred %r64; .reg .f32 %r65; .reg .f32 %r66; .reg .pred %r67; .reg .f32 %r68; .reg .pred %r69; .reg .f32 %r70; .reg .u32 %r71; .reg .pred %r72; .reg .f32 %r74; .reg .f32 %r76; .reg .f32 %r77; .reg .pred %r78; .reg .f32 %r80; .reg .f32 %r81; .reg .f32 %r82; .reg .pred %r83; .reg .pred %r84; .reg .f32 %r86; .reg .f32 %r87; .reg .f32 %r89; .reg .f32 %r91; .reg .f32 %r93; .reg .f32 %r94; .reg .f32 %r95; .reg .f32 %r96; .reg .pred %r97; .reg .f32 %r98; .reg .f32 %r99; .reg .f32 %r100; .reg .f32 %r101; .reg .f32 %r102; .reg .f32 %r103; .reg .f32 %r104; .reg .f32 %r105; .reg .f32 %r106; .reg .f32 %r107; .reg .f32 %r109; .reg .f32 %r111; .reg .f32 %r112; .reg .f32 %r113; .reg .f32 %r114; .reg .f32 %r115; .reg .f32 %r116; mov.f32 %r63,%ar0; .loc 1 129 2 mov.b32 %r50,%r63; .loc 1 130 12 and.b32 %r51,%r50,2147483647; .loc 1 132 4 setp.le.s32 %r64,%r51,2139095039; @ %r64 bra $L20; .loc 1 132 44 fma.rn.f32 %r65,%r63,%r63,%r63; .loc 1 132 41 mov.f32 %r66,0f3f800000; div.rn.f32 %r62,%r66,%r65; bra $L19; $L20: .loc 1 133 11 setp.ne.u32 %r67,%r51,0; @ %r67 bra $L22; .loc 1 133 46 mov.f32 %r68,0fbf800000; div.rn.f32 %r62,%r68,0f00000000; bra $L19; $L22: .loc 1 134 11 setp.ge.s32 %r69,%r50,0; @ %r69 bra $L23; .loc 1 134 29 mov.f32 %r70,0f00000000; div.rn.f32 %r62,%r70,0f00000000; bra $L19; $L23: .loc 1 135 11 and.b32 %r71,%r50,1073741824; setp.eq.u32 %r72,%r71,0; @ %r72 bra $L24; .loc 1 136 21 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r63; call (%value_in),sinf,(%out_arg1); ld.param.f32 %r74,[%value_in]; } .loc 1 137 21 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r63; call (%value_in),cosf,(%out_arg1); ld.param.f32 %r76,[%value_in]; } .loc 1 138 22 neg.f32 %r77,%r74; .loc 1 138 20 sub.f32 %r47,%r77,%r76; .loc 1 139 20 sub.f32 %r48,%r74,%r76; .loc 1 140 19 setp.gt.s32 %r78,%r51,2130706431; @ %r78 bra $L25; .loc 1 141 25 add.f32 %r80,%r63,%r63; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r80; call (%value_in),cosf,(%out_arg1); ld.param.f32 %r81,[%value_in]; } .loc 1 142 27 mul.f32 %r82,%r74,%r76; .loc 1 142 24 setp.gt.f32 %r83,%r82,0f00000000; @ ! %r83 bra $L31; .loc 1 142 40 div.rn.f32 %r48,%r81,%r47; bra $L25; $L31: .loc 1 143 40 div.rn.f32 %r47,%r81,%r48; $L25: .loc 1 156 19 setp.le.s32 %r84,%r51,1207959552; @ %r84 bra $L28; .loc 1 156 54 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r63; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r86,[%value_in]; } .loc 1 156 49 mul.f32 %r87,%r47,0f3f106ebb; .loc 1 156 37 div.rn.f32 %r62,%r87,%r86; bra $L19; $L28: .loc 1 158 25 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r63; call (%value_in),ponef,(%out_arg1); ld.param.f32 %r89,[%value_in]; } .loc 1 158 39 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r63; call (%value_in),qonef,(%out_arg1); ld.param.f32 %r91,[%value_in]; } .loc 1 159 47 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r63; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r93,[%value_in]; } .loc 1 159 42 mul.f32 %r94,%r48,%r91; .loc 1 159 40 fma.rn.f32 %r95,%r47,%r89,%r94; .loc 1 159 34 mul.f32 %r96,%r95,0f3f106ebb; .loc 1 159 23 div.rn.f32 %r62,%r96,%r93; bra $L19; $L24: .loc 1 163 11 setp.gt.s32 %r97,%r51,612368384; @ %r97 bra $L29; .loc 1 164 24 mov.f32 %r98,0fbf22f983; div.rn.f32 %r62,%r98,%r63; bra $L19; $L29: .loc 1 166 11 mul.f32 %r57,%r63,%r63; .loc 1 167 45 fma.rn.f32 %r99,%r57,0fb3c56003,0f37c5581c; .loc 1 167 36 fma.rn.f32 %r100,%r99,%r57,0fbafaaf2a; .loc 1 167 27 fma.rn.f32 %r101,%r100,%r57,0f3d4e9e3c; .loc 1 167 11 fma.rn.f32 %r102,%r101,%r57,0fbe48c331; .loc 1 168 52 fma.rn.f32 %r103,%r57,0f2d9281cf,0f31d5f8eb; .loc 1 168 43 fma.rn.f32 %r104,%r103,%r57,0f35b602d4; .loc 1 168 34 fma.rn.f32 %r105,%r104,%r57,0f3954644b; .loc 1 168 25 fma.rn.f32 %r106,%r105,%r57,0f3ca3286a; .loc 1 168 11 fma.rn.f32 %r107,%r106,%r57,0f3f800000; .loc 1 169 20 div.rn.f32 %r41,%r102,%r107; .loc 1 169 31 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r63; call (%value_in),__ieee754_j1f,(%out_arg1); ld.param.f32 %r109,[%value_in]; } .loc 1 169 48 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r63; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r111,[%value_in]; } .loc 1 169 69 mov.f32 %r113,0f3f800000; div.rn.f32 %r112,%r113,%r63; .loc 1 169 65 neg.f32 %r114,%r112; fma.rn.f32 %r115,%r109,%r111,%r114; .loc 1 169 29 mul.f32 %r116,%r115,0f3f22f983; .loc 1 169 24 fma.rn.f32 %r62,%r41,%r63,%r116; $L19: .loc 1 170 1 mov.f32 %value,%r62; st.param.f32 [%value_out],%value; ret; } lib_a-ef_jn.o/ 1591654536 399 399 100644 12830 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r28; .reg .f32 %r32; .reg .u32 %r34; .reg .f32 %r36; .reg .f32 %r37; .reg .f32 %r41; .reg .f32 %r45; .reg .f32 %r46; .reg .u32 %r49; .reg .f32 %r51; .reg .u32 %r52; .reg .f32 %r53; .reg .f32 %r55; .reg .f32 %r56; .reg .f32 %r58; .reg .f32 %r59; .reg .u32 %r60; .reg .u32 %r61; .reg .u32 %r62; .reg .f32 %r65; .reg .f32 %r66; .reg .f32 %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .f32 %r70; .reg .f32 %r74; .reg .u32 %r75; .reg .f32 %r77; .reg .f32 %r78; .reg .u32 %r81; .reg .u32 %r83; .reg .u32 %r84; .reg .f32 %r86; .reg .f32 %r87; .reg .u32 %r88; .reg .f32 %r89; .reg .pred %r90; .reg .pred %r91; .reg .pred %r92; .reg .f32 %r94; .reg .pred %r95; .reg .f32 %r97; .reg .u32 %r99; .reg .f32 %r101; .reg .u32 %r103; .reg .u32 %r104; .reg .u32 %r106; .reg .u32 %r107; .reg .u16 %r108; .reg .u16 %r109; .reg .u16 %r110; .reg .u32 %r111; .reg .u16 %r112; .reg .pred %r113; .reg .pred %r114; .reg .f32 %r116; .reg .f32 %r118; .reg .f32 %r120; .reg .f32 %r121; .reg .f32 %r122; .reg .pred %r123; .reg .pred %r124; .reg .pred %r125; .reg .f32 %r126; .reg .pred %r127; .reg .f32 %r129; .reg .f32 %r130; .reg .pred %r131; .reg .f32 %r132; .reg .pred %r133; .reg .u32 %r134; .reg .u32 %r136; .reg .f32 %r138; .reg .f32 %r139; .reg .f32 %r140; .reg .pred %r141; .reg .f32 %r143; .reg .f32 %r144; .reg .f32 %r146; .reg .f32 %r147; .reg .pred %r148; .reg .f32 %r149; .reg .f32 %r150; .reg .pred %r151; .reg .f32 %r152; .reg .f32 %r153; .reg .pred %r154; .reg .pred %r155; .reg .f32 %r157; .reg .f32 %r158; .reg .pred %r159; .reg .f32 %r161; mov.u32 %r88,%ar0; mov.f32 %r89,%ar1; .loc 1 47 2 mov.b32 %r60,%r89; .loc 1 48 5 and.b32 %r61,%r60,2147483647; .loc 1 50 4 setp.le.s32 %r90,%r61,2139095040; @ %r90 bra $L2; .loc 1 50 35 add.f32 %r87,%r89,%r89; bra $L1; $L2: .loc 1 51 4 setp.ge.s32 %r91,%r88,0; @ %r91 bra $L4; .loc 1 52 5 neg.s32 %r88,%r88; .loc 1 53 5 neg.f32 %r89,%r89; .loc 1 54 6 add.u32 %r60,%r60,-2147483648; bra $L5; $L4: .loc 1 56 4 setp.ne.u32 %r92,%r88,0; @ %r92 bra $L5; .loc 1 56 18 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r89; call (%value_in),__ieee754_j0f,(%out_arg1); ld.param.f32 %r94,[%value_in]; } mov.f32 %r87,%r94; bra $L1; $L5: .loc 1 57 4 setp.ne.u32 %r95,%r88,1; @ %r95 bra $L6; .loc 1 57 18 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r89; call (%value_in),__ieee754_j1f,(%out_arg1); ld.param.f32 %r97,[%value_in]; } mov.f32 %r87,%r97; bra $L1; $L6: .loc 1 58 6 shr.u32 %r99,%r60,31; and.b32 %r62,%r99,%r88; .loc 1 59 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r89; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r101,[%value_in]; } .loc 1 60 5 set.u32.eq.u32 %r103,%r61,0; neg.s32 %r104,%r103; .loc 1 60 28 set.u32.eq.u32 %r106,%r61,2139095040; neg.s32 %r107,%r106; .loc 1 60 26 cvt.u16.u32 %r109,%r104; cvt.u16.u32 %r110,%r107; or.b16 %r108,%r109,%r110; .loc 1 60 4 cvt.u32.u16 %r111,%r108; cvt.u16.u8 %r112,%r111; setp.ne.u16 %r113,%r112,0; @ %r113 bra $L26; .loc 1 62 10 cvt.rn.f32.s32 %r28,%r88; .loc 1 62 9 setp.le.f32 %r114,%r28,%r101; @ ! %r114 bra $L42; .loc 1 64 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r101; call (%value_in),__ieee754_j0f,(%out_arg1); ld.param.f32 %r116,[%value_in]; } mov.f32 %r32,%r116; .loc 1 65 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r101; call (%value_in),__ieee754_j1f,(%out_arg1); ld.param.f32 %r118,[%value_in]; } mov.f32 %r36,%r118; add.u32 %r81,%r88,%r88; mov.u32 %r83,2; $L10: .loc 1 68 10 cvt.rn.f32.s32 %r120,%r83; .loc 1 68 22 div.rn.f32 %r121,%r120,%r101; .loc 1 68 5 neg.f32 %r122,%r32; fma.rn.f32 %r87,%r121,%r36,%r122; add.u32 %r83,%r83,2; mov.f32 %r32,%r36; mov.f32 %r36,%r87; .loc 1 66 6 setp.ne.u32 %r123,%r81,%r83; @ %r123 bra $L10; bra $L7; $L42: .loc 1 72 8 setp.gt.s32 %r124,%r61,813694975; @ %r124 bra $L11; .loc 1 76 5 setp.gt.s32 %r125,%r88,33; @ %r125 bra $L27; .loc 1 79 12 mul.f32 %r65,%r101,0f3f000000; add.u32 %r68,%r88,1; .loc 1 79 30 mov.f32 %r66,%r65; .loc 1 80 13 mov.f32 %r56,0f3f800000; .loc 1 80 19 mov.u32 %r49,2; $L12: .loc 1 81 9 cvt.rn.f32.s32 %r126,%r49; .loc 1 81 6 mul.f32 %r56,%r56,%r126; .loc 1 82 6 mul.f32 %r66,%r66,%r65; .loc 1 80 28 add.u32 %r49,%r49,1; .loc 1 80 7 setp.ne.u32 %r127,%r49,%r68; @ %r127 bra $L12; div.rn.f32 %r87,%r66,%r56; bra $L7; $L11: .loc 1 118 10 add.u32 %r34,%r88,%r88; .loc 1 118 13 cvt.rn.f32.s32 %r129,%r34; .loc 1 118 6 div.rn.f32 %r37,%r129,%r101; .loc 1 118 26 mov.f32 %r130,0f40000000; div.rn.f32 %r67,%r130,%r101; .loc 1 119 14 add.f32 %r70,%r37,%r67; .loc 1 119 24 fma.rn.f32 %r53,%r37,%r70,0fbf800000; .loc 1 120 8 setp.lt.f32 %r131,%r53,0f4e6e6b28; @ ! %r131 bra $L43; .loc 1 119 45 mov.u32 %r69,1; $L15: .loc 1 121 6 add.u32 %r69,%r69,1; .loc 1 121 14 add.f32 %r70,%r70,%r67; .loc 1 122 8 neg.f32 %r132,%r37; mov.f32 %r37,%r53; .loc 1 124 7 fma.rn.f32 %r53,%r53,%r70,%r132; .loc 1 120 8 setp.lt.f32 %r133,%r53,0f4e6e6b28; @ %r133 bra $L15; bra $L44; $L43: .loc 1 127 23 add.u32 %r134,%r88,1; .loc 1 127 17 add.u32 %r52,%r134,%r134; bra $L17; $L44: .loc 1 127 23 add.u32 %r136,%r69,%r88; .loc 1 127 17 add.u32 %r52,%r136,%r136; $L17: .loc 1 119 45 mov.f32 %r58,0f00000000; .loc 1 127 44 mov.f32 %r140,0f3f800000; $L18: .loc 1 127 52 cvt.rn.f32.s32 %r138,%r52; div.rn.f32 %r139,%r138,%r101; .loc 1 127 54 sub.f32 %r41,%r139,%r58; .loc 1 127 44 div.rn.f32 %r58,%r140,%r41; .loc 1 127 36 add.u32 %r52,%r52,-2; .loc 1 127 3 setp.le.s32 %r141,%r34,%r52; @ %r141 bra $L18; .loc 1 140 13 mul.f32 %r143,%r28,%r67; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r143; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r144,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r144; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r146,[%value_in]; } add.u32 %r75,%r88,-1; add.u32 %r84,%r34,-2; .loc 1 140 7 mul.f32 %r147,%r28,%r146; .loc 1 141 5 setp.lt.f32 %r148,%r147,0f42b17180; @ ! %r148 bra $L45; .loc 1 142 23 cvt.rn.f32.s32 %r74,%r84; .loc 1 127 44 mov.f32 %r59,%r58; .loc 1 129 5 mov.f32 %r86,0f3f800000; .loc 1 147 7 mov.f32 %r150,0f40000000; bra $L21; $L28: .loc 1 145 7 mov.f32 %r86,%r55; $L21: .loc 1 144 6 mul.f32 %r149,%r86,%r74; .loc 1 145 10 div.rn.f32 %r45,%r149,%r101; .loc 1 145 7 sub.f32 %r55,%r45,%r59; .loc 1 147 7 sub.f32 %r74,%r74,%r150; .loc 1 142 42 add.u32 %r75,%r75,-1; mov.f32 %r59,%r86; .loc 1 142 11 setp.ne.u32 %r151,%r75,0; @ %r151 bra $L28; bra $L22; $L45: .loc 1 150 23 cvt.rn.f32.s32 %r78,%r84; .loc 1 127 44 mov.f32 %r51,%r58; .loc 1 129 5 mov.f32 %r55,0f3f800000; .loc 1 155 7 mov.f32 %r153,0f40000000; .loc 1 160 11 mov.f32 %r161,%r55; $L25: .loc 1 152 6 mul.f32 %r152,%r55,%r78; .loc 1 153 10 div.rn.f32 %r46,%r152,%r101; .loc 1 153 7 sub.f32 %r77,%r46,%r51; .loc 1 155 7 sub.f32 %r78,%r78,%r153; .loc 1 157 6 setp.gt.f32 %r154,%r77,0f501502f9; @ ! %r154 bra $L46; .loc 1 158 10 div.rn.f32 %r51,%r55,%r77; .loc 1 159 10 div.rn.f32 %r58,%r58,%r77; .loc 1 160 11 mov.f32 %r55,%r161; bra $L23; $L46: mov.f32 %r51,%r55; .loc 1 153 7 mov.f32 %r55,%r77; $L23: .loc 1 150 42 add.u32 %r75,%r75,-1; .loc 1 150 11 setp.ne.u32 %r155,%r75,0; @ %r155 bra $L25; $L22: .loc 1 164 14 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r101; call (%value_in),__ieee754_j0f,(%out_arg1); ld.param.f32 %r157,[%value_in]; } .loc 1 164 13 mul.f32 %r158,%r157,%r58; .loc 1 164 9 div.rn.f32 %r87,%r158,%r55; bra $L7; $L26: .loc 1 61 8 mov.f32 %r87,0f00000000; bra $L7; $L27: mov.f32 %r87,0f00000000; $L7: .loc 1 167 4 setp.eq.u32 %r159,%r62,0; @ %r159 bra $L1; .loc 1 167 20 neg.f32 %r87,%r87; $L1: .loc 1 168 1 mov.f32 %value,%r87; 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 .u32 %r32; .reg .u32 %r33; .reg .u32 %r35; .reg .f32 %r37; .reg .u32 %r40; .reg .f32 %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 %r75; .reg .u32 %r76; .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; mov.u32 %r45,%ar0; mov.f32 %r46,%ar1; .loc 1 181 2 mov.b32 %r32,%r46; .loc 1 182 5 and.b32 %r33,%r32,2147483647; .loc 1 184 4 setp.le.s32 %r47,%r33,2139095040; @ %r47 bra $L48; .loc 1 184 35 add.f32 %r44,%r46,%r46; bra $L47; $L48: .loc 1 185 4 setp.ne.u32 %r48,%r33,0; @ %r48 bra $L50; .loc 1 185 39 mov.f32 %r49,0fbf800000; div.rn.f32 %r44,%r49,0f00000000; bra $L47; $L50: .loc 1 186 4 setp.ge.s32 %r50,%r32,0; @ %r50 bra $L51; .loc 1 186 22 mov.f32 %r51,0f00000000; div.rn.f32 %r44,%r51,0f00000000; bra $L47; $L51: .loc 1 188 4 setp.ge.s32 %r52,%r45,0; @ %r52 bra $L52; .loc 1 189 5 neg.s32 %r45,%r45; .loc 1 190 20 add.u32 %r53,%r45,%r45; and.b32 %r54,%r53,2; .loc 1 190 8 mov.u32 %r55,1; sub.u32 %r35,%r55,%r54; bra $L53; $L52: .loc 1 192 4 setp.ne.u32 %r56,%r45,0; @ %r56 bra $L57; .loc 1 192 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 187 7 mov.u32 %r35,1; $L53: .loc 1 193 4 setp.ne.u32 %r59,%r45,1; @ %r59 bra $L54; .loc 1 193 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 193 22 cvt.rn.f32.s32 %r62,%r35; mul.f32 %r44,%r62,%r61; bra $L47; $L54: .loc 1 194 4 setp.eq.u32 %r63,%r33,2139095040; @ %r63 bra $L58; .loc 1 196 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 %r41,%r65; .loc 1 197 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 %r37,%r67; .loc 1 200 2 mov.b32 %r68,%r37; setp.eq.u32 %r69,%r68,-8388608; @ %r69 bra $L59; .loc 1 200 7 mov.u32 %r40,1; bra $L56; $L60: .loc 1 202 8 mov.f32 %r37,%r44; $L56: .loc 1 202 20 add.u32 %r70,%r40,%r40; .loc 1 202 11 cvt.rn.f32.s32 %r71,%r70; .loc 1 202 23 div.rn.f32 %r72,%r71,%r46; .loc 1 202 8 neg.f32 %r73,%r41; fma.rn.f32 %r44,%r72,%r37,%r73; .loc 1 200 31 add.u32 %r40,%r40,1; mov.f32 %r41,%r37; .loc 1 200 11 set.u32.lt.s32 %r75,%r40,%r45; neg.s32 %r76,%r75; .loc 1 200 17 mov.b32 %r78,%r44; set.u32.ne.u32 %r79,%r78,-8388608; neg.s32 %r80,%r79; .loc 1 200 13 cvt.u16.u32 %r82,%r76; cvt.u16.u32 %r83,%r80; and.b16 %r81,%r82,%r83; .loc 1 200 2 cvt.u32.u16 %r84,%r81; cvt.u16.u8 %r85,%r84; setp.ne.u16 %r86,%r85,0; @ %r86 bra $L60; bra $L55; $L59: .loc 1 197 6 mov.f32 %r44,%r67; $L55: .loc 1 206 4 setp.eq.u32 %r87,%r35,1; @ %r87 bra $L47; .loc 1 206 35 neg.f32 %r44,%r44; bra $L47; $L58: .loc 1 194 39 mov.f32 %r44,0f00000000; $L47: .loc 1 207 1 mov.f32 %value,%r44; st.param.f32 [%value_out],%value; ret; } lib_a-ef_log.o/ 1591654536 399 399 100644 5372 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r50; .reg .u32 %r51; .reg .u32 %r55; .reg .u32 %r56; .reg .u32 %r57; .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 .u32 %r67; .reg .f32 %r68; .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 .f32 %r109; .reg .f32 %r110; .reg .pred %r111; .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 .u32 %r123; .reg .u32 %r124; .reg .u32 %r125; .reg .pred %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 .f32 %r135; .reg .pred %r136; .reg .f32 %r138; .reg .f32 %r139; .reg .f32 %r140; mov.f32 %r85,%ar0; .loc 1 50 2 mov.b32 %r51,%r85; .loc 1 53 6 and.b32 %r86,%r51,2147483647; .loc 1 53 5 setp.ne.u32 %r87,%r86,0; @ %r87 bra $L2; .loc 1 54 19 mov.f32 %r88,0fcc000000; div.rn.f32 %r84,%r88,0f00000000; bra $L1; $L2: .loc 1 55 12 setp.ge.s32 %r89,%r51,0; @ %r89 bra $L4; .loc 1 55 28 sub.f32 %r90,%r85,%r85; .loc 1 55 31 div.rn.f32 %r84,%r90,0f00000000; bra $L1; $L4: .loc 1 56 5 setp.le.s32 %r91,%r51,2139095039; @ %r91 bra $L5; .loc 1 56 40 add.f32 %r84,%r85,%r85; bra $L1; $L5: .loc 1 57 5 setp.gt.s32 %r92,%r51,8388607; @ %r92 bra $L13; .loc 1 58 17 mul.f32 %r93,%r85,0f4c000000; .loc 1 59 6 mov.b32 %r51,%r93; .loc 1 58 8 mov.u32 %r50,-25; bra $L6; $L13: .loc 1 52 3 mov.u32 %r50,0; $L6: .loc 1 61 10 shr.s32 %r94,%r51,23; .loc 1 61 15 add.u32 %r95,%r94,-127; .loc 1 61 4 add.u32 %r55,%r95,%r50; .loc 1 62 5 and.b32 %r56,%r51,8388607; .loc 1 63 9 add.u32 %r96,%r56,4913952; .loc 1 63 4 and.b32 %r57,%r96,8388608; .loc 1 65 9 shr.s32 %r97,%r57,23; .loc 1 65 4 add.u32 %r59,%r97,%r55; .loc 1 64 2 xor.b32 %r98,%r57,1065353216; or.b32 %r99,%r98,%r56; .loc 1 66 4 mov.b32 %r100,%r99; mov.f32 %r101,0f3f800000; sub.f32 %r60,%r100,%r101; .loc 1 67 20 add.u32 %r102,%r56,15; .loc 1 67 25 and.b32 %r103,%r102,8388592; .loc 1 67 4 setp.ne.u32 %r104,%r103,0; @ %r104 bra $L7; .loc 1 68 14 setp.neu.f32 %r105,%r60,0f00000000; @ %r105 bra $L8; .loc 1 68 28 setp.eq.u32 %r106,%r59,0; @ %r106 bra $L14; .loc 1 68 57 cvt.rn.f32.s32 %r61,%r59; .loc 1 69 52 mul.f32 %r107,%r61,0f3717f7d1; .loc 1 69 49 fma.rn.f32 %r84,%r61,0f3f317180,%r107; bra $L1; $L8: .loc 1 70 25 fma.rn.f32 %r109,%r60,0fbeaaaaab,0f3f000000; .loc 1 70 11 mul.f32 %r110,%r60,%r60; .loc 1 70 8 mul.f32 %r62,%r109,%r110; .loc 1 71 8 setp.ne.u32 %r111,%r59,0; @ %r111 bra $L9; .loc 1 71 23 sub.f32 %r84,%r60,%r62; bra $L1; $L9: .loc 1 71 35 cvt.rn.f32.s32 %r63,%r59; .loc 1 72 32 fma.rn.f32 %r113,%r63,0fb717f7d1,%r62; .loc 1 72 43 sub.f32 %r114,%r113,%r60; .loc 1 72 28 neg.f32 %r115,%r114; fma.rn.f32 %r84,%r63,0f3f317180,%r115; bra $L1; $L7: .loc 1 74 20 add.f32 %r116,%r60,0f40000000; .loc 1 74 5 div.rn.f32 %r64,%r60,%r116; .loc 1 75 5 cvt.rn.f32.s32 %r65,%r59; .loc 1 76 4 mul.f32 %r66,%r64,%r64; .loc 1 77 4 add.u32 %r67,%r56,-3187664; .loc 1 78 4 mul.f32 %r68,%r66,%r66; .loc 1 80 19 fma.rn.f32 %r117,%r68,0f3e1cd04f,0f3e638e29; .loc 1 80 12 fma.rn.f32 %r118,%r117,%r68,0f3ecccccd; .loc 1 81 26 fma.rn.f32 %r119,%r68,0f3e178897,0f3e3a3325; .loc 1 81 19 fma.rn.f32 %r120,%r119,%r68,0f3e924925; .loc 1 81 12 fma.rn.f32 %r121,%r120,%r68,0f3f2aaaab; .loc 1 81 4 mul.f32 %r122,%r121,%r66; .loc 1 83 4 fma.rn.f32 %r72,%r118,%r68,%r122; .loc 1 79 4 mov.u32 %r124,3523208; sub.u32 %r123,%r124,%r56; .loc 1 82 4 or.b32 %r125,%r123,%r67; .loc 1 84 4 setp.le.s32 %r126,%r125,0; @ %r126 bra $L10; .loc 1 85 21 mul.f32 %r127,%r60,0f3f000000; .loc 1 85 10 mul.f32 %r73,%r127,%r60; add.f32 %r128,%r72,%r73; mul.f32 %r83,%r128,%r64; .loc 1 86 8 setp.ne.u32 %r129,%r59,0; @ %r129 bra $L11; .loc 1 86 29 sub.f32 %r130,%r73,%r83; .loc 1 86 23 sub.f32 %r84,%r60,%r130; bra $L1; $L11: .loc 1 87 43 fma.rn.f32 %r131,%r65,0f3717f7d1,%r83; .loc 1 87 31 sub.f32 %r132,%r73,%r131; .loc 1 87 55 sub.f32 %r133,%r132,%r60; .loc 1 87 24 neg.f32 %r134,%r133; fma.rn.f32 %r84,%r65,0f3f317180,%r134; bra $L1; $L10: sub.f32 %r135,%r60,%r72; mul.f32 %r81,%r135,%r64; .loc 1 89 8 setp.ne.u32 %r136,%r59,0; @ %r136 bra $L12; .loc 1 89 23 sub.f32 %r84,%r60,%r81; bra $L1; $L12: .loc 1 90 34 fma.rn.f32 %r138,%r65,0fb717f7d1,%r81; .loc 1 90 45 sub.f32 %r139,%r138,%r60; .loc 1 90 24 neg.f32 %r140,%r139; fma.rn.f32 %r84,%r65,0f3f317180,%r140; bra $L1; $L14: .loc 1 68 42 mov.f32 %r84,0f00000000; $L1: .loc 1 92 1 mov.f32 %value,%r84; st.param.f32 [%value_out],%value; ret; } /175 1591654536 399 399 100644 2518 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %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; .reg .f32 %r65; 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 %r65,%r42,0f355427db,%r64; .loc 1 61 11 fma.rn.f32 %r45,%r42,0f3e9a2080,%r65; $L1: .loc 1 62 1 mov.f32 %value,%r45; st.param.f32 [%value_out],%value; ret; } lib_a-ef_pow.o/ 1591654536 399 399 100644 18323 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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" // BEGIN GLOBAL FUNCTION DECL: nanf .extern .func (.param .f32 %value_out) nanf (.param .u64 %in_ar0); // 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: scalbnf .extern .func (.param .f32 %value_out) scalbnf (.param .f32 %in_ar0, .param .u32 %in_ar1); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[1] = {0 }; // 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 .f32 %r32; .reg .u32 %r33; .reg .u32 %r35; .reg .f32 %r38; .reg .u32 %r43; .reg .u32 %r65; .reg .u32 %r66; .reg .u32 %r70; .reg .u32 %r77; .reg .u32 %r102; .reg .f32 %r117; .reg .f32 %r119; .reg .f32 %r120; .reg .f32 %r121; .reg .f32 %r122; .reg .f32 %r123; .reg .u32 %r124; .reg .u32 %r125; .reg .u32 %r126; .reg .u32 %r127; .reg .u32 %r128; .reg .u32 %r129; .reg .u32 %r132; .reg .u32 %r134; .reg .u32 %r136; .reg .f32 %r137; .reg .f32 %r139; .reg .u32 %r144; .reg .f32 %r148; .reg .f32 %r149; .reg .f32 %r150; .reg .f32 %r151; .reg .f32 %r153; .reg .f32 %r154; .reg .f32 %r156; .reg .f32 %r157; .reg .f32 %r158; .reg .f32 %r160; .reg .f32 %r162; .reg .f32 %r164; .reg .f32 %r166; .reg .f32 %r167; .reg .f32 %r169; .reg .f32 %r170; .reg .f32 %r171; .reg .u32 %r173; .reg .u32 %r174; .reg .u32 %r175; .reg .f32 %r176; .reg .f32 %r177; .reg .f32 %r178; .reg .f32 %r179; .reg .f32 %r180; .reg .f32 %r181; .reg .f32 %r182; .reg .f32 %r184; .reg .u32 %r185; .reg .u32 %r186; .reg .u32 %r188; .reg .u32 %r208; .reg .f32 %r209; .reg .u32 %r210; .reg .f32 %r211; .reg .f32 %r212; .reg .f32 %r213; .reg .f32 %r214; .reg .f32 %r215; .reg .pred %r216; .reg .u32 %r218; .reg .u32 %r219; .reg .u32 %r221; .reg .u32 %r222; .reg .u16 %r223; .reg .u16 %r224; .reg .u16 %r225; .reg .u32 %r226; .reg .u16 %r227; .reg .pred %r228; .reg .pred %r229; .reg .u64 %r230; .reg .f32 %r231; .reg .pred %r233; .reg .pred %r234; .reg .u32 %r235; .reg .u32 %r237; .reg .u32 %r238; .reg .pred %r239; .reg .u32 %r240; .reg .u32 %r241; .reg .pred %r242; .reg .pred %r243; .reg .pred %r244; .reg .pred %r245; .reg .pred %r246; .reg .pred %r247; .reg .pred %r248; .reg .f32 %r249; .reg .pred %r250; .reg .u32 %r252; .reg .u32 %r253; .reg .u32 %r255; .reg .u32 %r256; .reg .u16 %r258; .reg .u16 %r259; .reg .u16 %r260; .reg .u32 %r261; .reg .u16 %r262; .reg .pred %r263; .reg .f32 %r265; .reg .f32 %r267; .reg .u32 %r268; .reg .u32 %r270; .reg .u32 %r271; .reg .u32 %r273; .reg .u32 %r274; .reg .u16 %r275; .reg .u16 %r276; .reg .u16 %r277; .reg .u32 %r278; .reg .u16 %r279; .reg .pred %r280; .reg .pred %r281; .reg .f32 %r282; .reg .u32 %r284; .reg .u32 %r285; .reg .pred %r286; .reg .pred %r287; .reg .u32 %r289; .reg .pred %r290; .reg .pred %r291; .reg .pred %r292; .reg .pred %r293; .reg .f32 %r294; .reg .pred %r295; .reg .pred %r296; .reg .f32 %r297; .reg .f32 %r298; .reg .f32 %r299; .reg .f32 %r300; .reg .f32 %r301; .reg .f32 %r302; .reg .f32 %r303; .reg .f32 %r305; .reg .f32 %r306; .reg .u32 %r307; .reg .f32 %r309; .reg .u32 %r310; .reg .pred %r311; .reg .f32 %r312; .reg .u32 %r313; .reg .u32 %r314; .reg .pred %r315; .reg .pred %r316; .reg .f32 %r317; .reg .f32 %r318; .reg .u32 %r319; .reg .u32 %r320; .reg .u32 %r321; .reg .u32 %r322; .reg .u32 %r323; .reg .u32 %r324; .reg .f32 %r325; .reg .f32 %r327; .reg .f32 %r328; .reg .f32 %r329; .reg .f32 %r330; .reg .f32 %r331; .reg .f32 %r332; .reg .f32 %r333; .reg .f32 %r334; .reg .f32 %r335; .reg .f32 %r336; .reg .f32 %r337; .reg .f32 %r338; .reg .f32 %r339; .reg .f32 %r340; .reg .u32 %r341; .reg .f32 %r343; .reg .f32 %r344; .reg .f32 %r345; .reg .f32 %r346; .reg .f32 %r347; .reg .f32 %r348; .reg .u32 %r349; .reg .f32 %r351; .reg .f32 %r352; .reg .f32 %r353; .reg .f32 %r354; .reg .f32 %r355; .reg .f32 %r356; .reg .f32 %r357; .reg .u32 %r358; .reg .f32 %r360; .reg .f32 %r361; .reg .f32 %r362; .reg .u32 %r363; .reg .u32 %r364; .reg .pred %r365; .reg .u32 %r366; .reg .f32 %r367; .reg .f32 %r368; .reg .pred %r369; .reg .pred %r370; .reg .f32 %r371; .reg .pred %r372; .reg .f32 %r373; .reg .f32 %r374; .reg .pred %r375; .reg .f32 %r376; .reg .pred %r377; .reg .f32 %r378; .reg .pred %r379; .reg .f32 %r380; .reg .pred %r381; .reg .f32 %r382; .reg .pred %r383; .reg .u32 %r384; .reg .u32 %r385; .reg .u32 %r386; .reg .u32 %r387; .reg .u32 %r388; .reg .u32 %r389; .reg .u32 %r390; .reg .u32 %r391; .reg .u32 %r392; .reg .u32 %r393; .reg .u32 %r394; .reg .u32 %r395; .reg .pred %r396; .reg .f32 %r397; .reg .u32 %r398; .reg .f32 %r399; .reg .f32 %r400; .reg .f32 %r401; .reg .f32 %r403; .reg .f32 %r404; .reg .f32 %r405; .reg .f32 %r406; .reg .f32 %r407; .reg .f32 %r408; .reg .f32 %r409; .reg .f32 %r410; .reg .f32 %r411; .reg .f32 %r412; .reg .f32 %r413; .reg .f32 %r414; .reg .f32 %r415; .reg .pred %r417; .reg .f32 %r420; .reg .pred %r422; mov.f32 %r214,%ar0; mov.f32 %r215,%ar1; .loc 1 72 2 mov.b32 %r33,%r215; .loc 1 73 26 and.b32 %r132,%r33,2147483647; .loc 1 76 4 setp.eq.u32 %r216,%r132,0; @ %r216 bra $L36; .loc 1 71 2 mov.b32 %r134,%r214; .loc 1 73 5 and.b32 %r128,%r134,2147483647; .loc 1 79 5 set.u32.gt.s32 %r218,%r128,2139095040; neg.s32 %r219,%r218; .loc 1 80 5 set.u32.gt.s32 %r221,%r132,2139095040; neg.s32 %r222,%r221; .loc 1 79 26 cvt.u16.u32 %r224,%r219; cvt.u16.u32 %r225,%r222; or.b16 %r223,%r224,%r225; .loc 1 79 4 cvt.u32.u16 %r226,%r223; cvt.u16.u8 %r227,%r226; setp.eq.u16 %r228,%r227,0; @ %r228 bra $L3; .loc 1 81 8 setp.eq.u32 %r229,%r128,1065353216; @ %r229 bra $L37; .loc 1 82 18 cvta.const.u64 %r230,$LC0; { .param .f32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r230; call (%value_in),nanf,(%out_arg1); ld.param.f32 %r231,[%value_in]; } mov.f32 %r213,%r231; bra $L1; $L3: .loc 1 91 4 setp.ge.s32 %r422,%r134,0; @ %r422 bra $L38; .loc 1 92 8 setp.gt.s32 %r233,%r132,1266679807; @ %r233 bra $L39; .loc 1 93 13 setp.le.s32 %r234,%r132,1065353215; @ %r234 bra $L40; .loc 1 94 10 shr.s32 %r235,%r132,23; .loc 1 95 14 mov.u32 %r237,150; sub.u32 %r26,%r237,%r235; .loc 1 95 5 shr.s32 %r136,%r132,%r26; .loc 1 96 8 shl.b32 %r238,%r136,%r26; .loc 1 96 5 setp.ne.u32 %r239,%r238,%r132; @ %r239 bra $L41; .loc 1 96 36 and.b32 %r240,%r136,1; .loc 1 96 30 mov.u32 %r241,2; sub.u32 %r124,%r241,%r240; bra $L6; $L38: .loc 1 90 10 mov.u32 %r124,0; bra $L4; $L39: .loc 1 92 32 mov.u32 %r124,2; $L4: .loc 1 101 5 setp.ne.u32 %r242,%r132,2139095040; @ %r242 bra $L6; .loc 1 102 9 setp.eq.u32 %r243,%r128,1065353216; @ %r243 bra $L42; .loc 1 104 14 setp.le.s32 %r244,%r128,1065353216; @ %r244 bra $L7; .loc 1 105 27 setp.ge.s32 %r245,%r33,0; @ %r245 bra $L43; $L8: mov.f32 %r213,0f00000000; bra $L1; $L7: .loc 1 107 26 setp.ge.s32 %r246,%r33,0; @ %r246 bra $L8; neg.f32 %r213,%r215; bra $L1; $L6: .loc 1 109 4 setp.ne.u32 %r247,%r132,1065353216; @ %r247 bra $L9; .loc 1 110 8 setp.ge.s32 %r248,%r33,0; @ %r248 bra $L44; .loc 1 110 25 mov.f32 %r249,0f3f800000; div.rn.f32 %r213,%r249,%r214; bra $L1; $L9: .loc 1 112 4 setp.ne.u32 %r250,%r33,1073741824; @ %r250 bra $L10; .loc 1 112 29 mul.f32 %r213,%r214,%r214; bra $L1; $L10: .loc 1 113 4 set.u32.eq.u32 %r252,%r33,1056964608; neg.s32 %r253,%r252; .loc 1 114 8 not.b32 %r255,%r134; shr.u32 %r256,%r255,31; cvt.u16.u32 %r259,%r253; cvt.u16.u32 %r260,%r256; and.b16 %r258,%r259,%r260; cvt.u32.u16 %r261,%r258; cvt.u16.u8 %r262,%r261; setp.eq.u16 %r263,%r262,0; @ %r263 bra $L11; .loc 1 115 13 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r214; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r265,[%value_in]; } mov.f32 %r213,%r265; bra $L1; $L11: .loc 1 118 9 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r214; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r267,[%value_in]; } mov.f32 %r213,%r267; .loc 1 120 53 and.b32 %r268,%r134,1073741823; set.u32.eq.u32 %r270,%r268,1065353216; neg.s32 %r271,%r270; .loc 1 120 32 set.u32.eq.u32 %r273,%r128,0; neg.s32 %r274,%r273; .loc 1 120 53 cvt.u16.u32 %r276,%r271; cvt.u16.u32 %r277,%r274; or.b16 %r275,%r276,%r277; cvt.u32.u16 %r278,%r275; cvt.u16.u8 %r279,%r278; setp.eq.u16 %r280,%r279,0; @ %r280 bra $L12; .loc 1 122 8 setp.ge.s32 %r281,%r33,0; @ %r281 bra $L13; .loc 1 122 17 mov.f32 %r282,0f3f800000; div.rn.f32 %r213,%r282,%r213; $L13: .loc 1 123 8 @ %r422 bra $L1; .loc 1 124 10 add.u32 %r284,%r128,-1065353216; .loc 1 124 22 or.b32 %r285,%r284,%r124; .loc 1 124 5 setp.ne.u32 %r286,%r285,0; @ %r286 bra $L14; .loc 1 125 13 sub.f32 %r32,%r213,%r213; .loc 1 125 9 div.rn.f32 %r213,%r32,%r32; bra $L1; $L14: .loc 1 126 12 setp.ne.u32 %r287,%r124,1; @ %r287 bra $L1; .loc 1 127 9 neg.f32 %r213,%r213; bra $L1; $L12: .loc 1 133 27 set.u32.ge.s32 %r35,%r134,0; .loc 1 133 30 or.b32 %r289,%r124,%r35; .loc 1 133 4 setp.ne.u32 %r290,%r289,0; @ %r290 bra $L15; .loc 1 133 52 sub.f32 %r38,%r214,%r214; .loc 1 133 55 div.rn.f32 %r213,%r38,%r38; bra $L1; $L15: .loc 1 136 4 setp.le.s32 %r291,%r132,1291845632; @ %r291 bra $L16; .loc 1 138 8 setp.gt.s32 %r292,%r128,1065353207; @ %r292 bra $L17; .loc 1 138 48 setp.ge.s32 %r293,%r33,0; @ %r293 bra $L8; $L19: mov.f32 %r294,0f7149f2ca; mul.f32 %r213,%r294,0f7149f2ca; bra $L1; $L17: .loc 1 139 8 setp.le.s32 %r295,%r128,1065353223; @ %r295 bra $L18; .loc 1 139 48 setp.gt.s32 %r296,%r33,0; @ %r296 bra $L19; bra $L8; $L18: .loc 1 142 8 mov.f32 %r297,0f3f800000; sub.f32 %r137,%r267,%r297; .loc 1 143 52 neg.f32 %r298,%r137; fma.rn.f32 %r299,%r298,0f3e800000,0f3eaaaaab; .loc 1 143 27 neg.f32 %r300,%r299; fma.rn.f32 %r301,%r300,%r137,0f3f000000; .loc 1 143 12 mul.f32 %r302,%r137,%r137; .loc 1 143 8 mul.f32 %r303,%r301,%r302; .loc 1 145 8 mul.f32 %r305,%r303,0fbfb8aa3b; fma.rn.f32 %r139,%r137,0f36eca570,%r305; .loc 1 146 9 fma.rn.f32 %r306,%r137,0f3fb8aa00,%r139; .loc 1 148 6 mov.b32 %r307,%r306; and.b32 %r43,%r307,-4096; mov.b32 %r121,%r43; .loc 1 149 16 fma.rn.f32 %r309,%r298,0f3fb8aa00,%r121; .loc 1 149 9 sub.f32 %r122,%r139,%r309; bra $L20; $L16: .loc 1 154 8 and.b32 %r310,%r134,2139095040; setp.ne.u32 %r311,%r310,0; @ %r311 bra $L45; .loc 1 155 7 mul.f32 %r312,%r267,0f4b800000; .loc 1 155 26 mov.b32 %r128,%r312; .loc 1 155 19 mov.u32 %r125,-24; bra $L21; $L45: .loc 1 152 8 mov.u32 %r125,0; $L21: .loc 1 156 17 shr.s32 %r313,%r128,23; .loc 1 156 22 add.u32 %r314,%r313,-127; .loc 1 156 9 add.u32 %r126,%r314,%r125; .loc 1 157 9 and.b32 %r144,%r128,8388607; .loc 1 159 9 or.b32 %r129,%r144,1065353216; .loc 1 160 8 setp.le.s32 %r315,%r144,1885297; @ %r315 bra $L46; .loc 1 161 13 setp.le.s32 %r316,%r144,6140886; @ %r316 bra $L47; .loc 1 162 17 add.u32 %r126,%r126,1; .loc 1 162 24 add.u32 %r129,%r129,-8388608; mov.f32 %r212,0f00000000; mov.f32 %r211,%r212; mov.u32 %r210,0; mov.f32 %r209,0f3f800000; bra $L22; $L46: mov.f32 %r212,0f00000000; mov.f32 %r211,%r212; mov.u32 %r210,0; mov.f32 %r209,0f3f800000; bra $L22; $L47: mov.f32 %r212,0f3f15c000; mov.f32 %r211,0f35d1cfdc; mov.u32 %r210,2097152; mov.f32 %r209,0f3fc00000; $L22: .loc 1 163 6 mov.b32 %r148,%r129; .loc 1 166 8 sub.f32 %r149,%r148,%r209; .loc 1 167 17 add.f32 %r317,%r148,%r209; .loc 1 167 8 mov.f32 %r318,0f3f800000; div.rn.f32 %r150,%r318,%r317; .loc 1 168 8 mul.f32 %r151,%r149,%r150; .loc 1 171 6 mov.b32 %r320,%r151; and.b32 %r319,%r320,-4096; mov.b32 %r153,%r319; .loc 1 173 6 shr.s32 %r321,%r129,1; or.b32 %r322,%r321,536870912; add.u32 %r323,%r322,262144; add.u32 %r324,%r323,%r210; mov.b32 %r154,%r324; .loc 1 175 26 neg.f32 %r325,%r153; .loc 1 175 17 fma.rn.f32 %r327,%r325,%r154,%r149; .loc 1 174 21 sub.f32 %r328,%r154,%r209; .loc 1 174 10 sub.f32 %r329,%r148,%r328; .loc 1 175 26 fma.rn.f32 %r330,%r325,%r329,%r327; .loc 1 175 10 mul.f32 %r156,%r330,%r150; .loc 1 177 9 mul.f32 %r157,%r151,%r151; .loc 1 178 12 mul.f32 %r331,%r157,%r157; .loc 1 179 19 add.f32 %r332,%r151,%r153; .loc 1 179 14 mul.f32 %r333,%r332,%r156; .loc 1 178 47 fma.rn.f32 %r334,%r157,0f3e53f142,0f3e6c3255; .loc 1 178 40 fma.rn.f32 %r335,%r334,%r157,0f3e8ba305; .loc 1 178 33 fma.rn.f32 %r336,%r335,%r157,0f3eaaaaab; .loc 1 178 26 fma.rn.f32 %r337,%r336,%r157,0f3edb6db7; .loc 1 178 19 fma.rn.f32 %r338,%r337,%r157,0f3f19999a; .loc 1 179 8 fma.rn.f32 %r158,%r331,%r338,%r333; .loc 1 181 22 fma.rn.f32 %r339,%r153,%r153,0f40400000; .loc 1 181 10 add.f32 %r340,%r339,%r158; .loc 1 183 6 mov.b32 %r341,%r340; and.b32 %r66,%r341,-4096; mov.b32 %r160,%r66; .loc 1 184 19 mov.f32 %r344,0f40400000; sub.f32 %r343,%r160,%r344; .loc 1 184 31 fma.rn.f32 %r345,%r325,%r153,%r343; .loc 1 184 10 sub.f32 %r346,%r158,%r345; .loc 1 187 21 mul.f32 %r347,%r346,%r151; .loc 1 187 8 fma.rn.f32 %r162,%r156,%r160,%r347; .loc 1 189 10 fma.rn.f32 %r348,%r153,%r160,%r162; .loc 1 191 6 mov.b32 %r349,%r348; and.b32 %r70,%r349,-4096; mov.b32 %r164,%r70; .loc 1 192 18 fma.rn.f32 %r351,%r325,%r160,%r164; .loc 1 192 10 sub.f32 %r352,%r162,%r351; .loc 1 194 24 mul.f32 %r353,%r352,0f3f76384f; .loc 1 194 20 fma.rn.f32 %r354,%r164,0f369dc3a0,%r353; .loc 1 194 10 add.f32 %r166,%r354,%r211; .loc 1 196 8 cvt.rn.f32.s32 %r167,%r126; .loc 1 197 17 fma.rn.f32 %r355,%r164,0f3f763800,%r166; .loc 1 197 22 add.f32 %r356,%r355,%r212; .loc 1 197 9 add.f32 %r357,%r356,%r167; .loc 1 199 6 mov.b32 %r358,%r357; and.b32 %r77,%r358,-4096; mov.b32 %r121,%r77; .loc 1 200 20 sub.f32 %r360,%r121,%r167; .loc 1 200 23 sub.f32 %r361,%r360,%r212; .loc 1 200 32 fma.rn.f32 %r362,%r164,0fbf763800,%r361; .loc 1 200 9 sub.f32 %r122,%r166,%r362; $L20: .loc 1 204 38 add.u32 %r363,%r124,-1; .loc 1 204 30 or.b32 %r364,%r363,%r35; .loc 1 204 4 setp.ne.u32 %r365,%r364,0; .loc 1 205 8 selp.f32 %r123,0f3f800000,0fbf800000,%r365; .loc 1 209 2 and.b32 %r366,%r33,-4096; mov.b32 %r169,%r366; .loc 1 210 10 sub.f32 %r367,%r215,%r169; .loc 1 210 19 mul.f32 %r368,%r122,%r215; .loc 1 210 6 fma.rn.f32 %r170,%r367,%r121,%r368; .loc 1 211 6 mul.f32 %r120,%r121,%r169; .loc 1 212 4 add.f32 %r171,%r170,%r120; .loc 1 213 2 mov.b32 %r65,%r171; .loc 1 214 4 and.b32 %r173,%r65,2147483647; .loc 1 215 5 setp.le.s32 %r369,%r65,0; @ %r369 bra $L24; .loc 1 216 9 setp.le.s32 %r370,%r173,1124073472; @ %r370 bra $L25; .loc 1 217 18 mul.f32 %r371,%r123,0f7149f2ca; .loc 1 217 23 mul.f32 %r213,%r371,0f7149f2ca; bra $L1; $L25: .loc 1 218 14 setp.ne.u32 %r372,%r173,1124073472; @ %r372 bra $L26; .loc 1 219 16 add.f32 %r373,%r170,0f3338aa3c; .loc 1 219 22 sub.f32 %r374,%r171,%r120; .loc 1 219 12 setp.gt.f32 %r375,%r373,%r374; @ ! %r375 bra $L27; .loc 1 219 36 mul.f32 %r376,%r123,0f7149f2ca; .loc 1 219 41 mul.f32 %r213,%r376,0f7149f2ca; bra $L1; $L24: .loc 1 221 9 setp.le.s32 %r377,%r173,1125515264; @ %r377 bra $L29; .loc 1 222 18 mul.f32 %r378,%r123,0f0da24260; .loc 1 222 23 mul.f32 %r213,%r378,0f0da24260; bra $L1; $L29: .loc 1 223 14 setp.ne.u32 %r379,%r173,1125515264; @ %r379 bra $L26; .loc 1 224 19 sub.f32 %r380,%r171,%r120; .loc 1 224 12 setp.ge.f32 %r381,%r380,%r170; @ ! %r381 bra $L27; .loc 1 224 33 mul.f32 %r382,%r123,0f0da24260; .loc 1 224 38 mul.f32 %r213,%r382,0f0da24260; bra $L1; $L26: .loc 1 231 4 setp.le.s32 %r383,%r173,1056964608; @ %r383 bra $L49; .loc 1 229 8 shr.s32 %r188,%r173,23; $L35: .loc 1 232 27 add.u32 %r384,%r188,-126; .loc 1 232 23 mov.u32 %r386,8388608; shr.s32 %r385,%r386,%r384; .loc 1 232 8 add.u32 %r174,%r385,%r65; .loc 1 233 25 shr.s32 %r387,%r174,23; and.b32 %r388,%r387,255; .loc 1 233 8 add.u32 %r175,%r388,-127; .loc 1 234 6 mov.u32 %r390,8388607; shr.s32 %r389,%r390,%r175; not.b32 %r391,%r389; and.b32 %r392,%r391,%r174; mov.b32 %r176,%r392; .loc 1 235 13 and.b32 %r393,%r174,8388607; .loc 1 235 25 or.b32 %r102,%r393,8388608; .loc 1 235 42 mov.u32 %r395,23; sub.u32 %r394,%r395,%r175; .loc 1 235 8 shr.s32 %r127,%r102,%r394; .loc 1 236 8 setp.ge.s32 %r396,%r65,0; @ %r396 bra $L32; .loc 1 236 16 neg.s32 %r127,%r127; $L32: .loc 1 237 10 sub.f32 %r120,%r120,%r176; add.f32 %r397,%r170,%r120; mov.b32 %r65,%r397; shl.b32 %r208,%r127,23; bra $L31; $L49: mov.u32 %r208,0; .loc 1 230 4 mov.u32 %r127,%r208; $L31: .loc 1 241 2 and.b32 %r398,%r65,-4096; mov.b32 %r177,%r398; .loc 1 243 13 sub.f32 %r399,%r177,%r120; .loc 1 243 10 sub.f32 %r400,%r170,%r399; .loc 1 243 25 mul.f32 %r401,%r177,0f35bfbe8c; .loc 1 243 4 fma.rn.f32 %r178,%r400,0f3f317218,%r401; .loc 1 244 4 fma.rn.f32 %r179,%r177,0f3f317200,%r178; .loc 1 245 10 fma.rn.f32 %r403,%r177,0fbf317200,%r179; .loc 1 245 4 sub.f32 %r180,%r178,%r403; .loc 1 246 5 mul.f32 %r181,%r179,%r179; .loc 1 247 35 fma.rn.f32 %r404,%r181,0f3331bb4c,0fb5ddea0e; .loc 1 247 29 fma.rn.f32 %r405,%r404,%r181,0f388ab355; .loc 1 247 23 fma.rn.f32 %r406,%r405,%r181,0fbb360b61; .loc 1 247 17 fma.rn.f32 %r407,%r406,%r181,0f3e2aaaab; .loc 1 247 6 neg.f32 %r408,%r407; fma.rn.f32 %r182,%r408,%r181,%r179; .loc 1 248 9 mul.f32 %r409,%r179,%r182; .loc 1 248 17 mov.f32 %r411,0f40000000; sub.f32 %r410,%r182,%r411; .loc 1 248 13 div.rn.f32 %r412,%r409,%r410; .loc 1 248 25 fma.rn.f32 %r413,%r179,%r180,%r180; .loc 1 248 5 sub.f32 %r414,%r412,%r413; .loc 1 249 13 sub.f32 %r117,%r414,%r179; .loc 1 249 5 mov.f32 %r415,0f3f800000; sub.f32 %r184,%r415,%r117; .loc 1 250 2 mov.b32 %r185,%r184; .loc 1 251 4 add.u32 %r186,%r185,%r208; .loc 1 252 4 setp.gt.s32 %r417,%r186,8388607; @ %r417 bra $L33; .loc 1 252 21 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r184; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r127; call (%value_in),scalbnf,(%out_arg1,%out_arg2); ld.param.f32 %r420,[%value_in]; } mov.f32 %r119,%r420; bra $L34; $L33: .loc 1 253 7 mov.b32 %r119,%r186; $L34: .loc 1 254 10 mul.f32 %r213,%r119,%r123; bra $L1; $L36: .loc 1 76 35 mov.f32 %r213,0f3f800000; bra $L1; $L37: mov.f32 %r213,0f3f800000; bra $L1; $L42: mov.f32 %r213,0f3f800000; bra $L1; $L43: .loc 1 105 27 mov.f32 %r213,%r215; bra $L1; $L44: .loc 1 110 41 mov.f32 %r213,%r214; bra $L1; $L27: .loc 1 229 8 shr.s32 %r188,%r173,23; bra $L35; $L40: .loc 1 90 10 mov.u32 %r124,0; bra $L6; $L41: mov.u32 %r124,0; bra $L6; $L1: .loc 1 255 1 mov.f32 %value,%r213; st.param.f32 [%value_out],%value; ret; } /193 1591654536 399 399 100644 10462 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r32; .reg .f32 %r35; .reg .u32 %r45; .reg .f32 %r58; .reg .f32 %r61; .reg .f32 %r66; .reg .f32 %r71; .reg .f32 %r72; .reg .u32 %r75; .reg .u32 %r76; .reg .f32 %r77; .reg .f32 %r78; .reg .f32 %r79; .reg .f32 %r80; .reg .f32 %r82; .reg .f32 %r85; .reg .u32 %r87; .reg .f32 %r88; .reg .u32 %r91; .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 .f32 %r127; .reg .pred %r129; .reg .u32 %r130; .reg .u64 %r131; .reg .u32 %r132; .reg .u64 %r133; .reg .u64 %r134; .reg .u64 %r135; .reg .u32 %r136; .reg .pred %r137; .reg .u32 %r138; .reg .u32 %r139; .reg .u32 %r140; .reg .u32 %r141; .reg .pred %r142; .reg .f32 %r145; .reg .f32 %r146; .reg .f32 %r147; .reg .u32 %r148; .reg .u32 %r149; .reg .u32 %r150; .reg .u32 %r151; .reg .pred %r152; .reg .f32 %r155; .reg .f32 %r156; .reg .f32 %r157; .reg .f32 %r158; .reg .pred %r159; .reg .f32 %r160; .reg .f32 %r161; .reg .pred %r162; .reg .u32 %r163; .reg .u32 %r164; .reg .u32 %r165; .reg .u32 %r166; .reg .u32 %r167; .reg .pred %r168; .reg .pred %r169; .reg .u32 %r174; .reg .u64 %r175; .reg .u32 %r176; .reg .pred %r177; .reg .f32 %r178; .reg .f32 %r179; .reg .f32 %r180; .reg .f32 %r181; .reg .f32 %r183; mov.f32 %r102,%ar0; mov.u64 %r103,%ar1; .loc 1 110 2 mov.b32 %r75,%r102; .loc 1 111 5 and.b32 %r76,%r75,2147483647; .loc 1 112 4 setp.gt.s32 %r104,%r76,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,%r76,1075235811; @ %r106 bra $L4; and.b32 %r91,%r75,2147483632; .loc 1 115 8 setp.le.s32 %r107,%r75,0; @ %r107 bra $L5; .loc 1 116 5 mov.f32 %r108,0f3fc90f80; sub.f32 %r77,%r102,%r108; .loc 1 117 5 setp.eq.u32 %r109,%r91,1070141392; @ %r109 bra $L6; .loc 1 118 16 mov.f32 %r110,0f37354443; sub.f32 %r24,%r77,%r110; .loc 1 118 12 st.f32 [%r103],%r24; .loc 1 119 16 sub.f32 %r111,%r77,%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 %r78,%r77,%r114; .loc 1 122 16 mov.f32 %r115,0f2e85a308; sub.f32 %r28,%r78,%r115; .loc 1 122 12 st.f32 [%r103],%r28; .loc 1 123 16 sub.f32 %r116,%r78,%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 %r79,%r102,0f3fc90f80; .loc 1 128 5 setp.eq.u32 %r119,%r91,1070141392; @ %r119 bra $L7; .loc 1 129 16 add.f32 %r32,%r79,0f37354443; .loc 1 129 12 st.f32 [%r103],%r32; .loc 1 130 16 sub.f32 %r120,%r79,%r32; .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 %r80,%r79,0f37354400; .loc 1 133 16 add.f32 %r35,%r80,0f2e85a308; .loc 1 133 12 st.f32 [%r103],%r35; .loc 1 134 16 sub.f32 %r122,%r80,%r35; .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,%r76,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 %r127,%r126,0f3f22f984,0f3f000000; .loc 1 141 9 cvt.rzi.s32.f32 %r101,%r127; .loc 1 142 9 cvt.rn.f32.s32 %r82,%r101; .loc 1 143 9 neg.f32 %r183,%r82; fma.rn.f32 %r72,%r183,0f3fc90f80,%r126; .loc 1 144 9 mul.f32 %r71,%r82,0f37354443; .loc 1 145 8 setp.gt.s32 %r129,%r101,31; @ %r129 bra $L9; sub.f32 %r66,%r72,%r71; .loc 1 145 18 and.b32 %r130,%r75,2147483392; .loc 1 145 40 cvta.const.u64 %r131,npio2_hw; .loc 1 145 42 add.u32 %r132,%r101,-1; .loc 1 145 40 cvt.s64.s32 %r133,%r132; shl.b64 %r134,%r133,2; add.u64 %r135,%r131,%r134; .loc 1 145 13 ld.u32 %r136,[%r135]; setp.eq.u32 %r137,%r130,%r136; @ %r137 bra $L10; .loc 1 146 8 st.f32 [%r103],%r66; bra $L11; $L9: sub.f32 %r66,%r72,%r71; $L10: .loc 1 149 13 shr.s32 %r45,%r76,23; .loc 1 152 22 mov.b32 %r139,%r66; shr.u32 %r138,%r139,23; .loc 1 152 27 and.b32 %r140,%r138,255; .loc 1 152 15 sub.u32 %r141,%r45,%r140; .loc 1 153 12 setp.gt.s32 %r142,%r141,8; @ %r142 bra $L12; .loc 1 150 15 st.f32 [%r103],%r66; bra $L11; $L12: .loc 1 156 10 fma.rn.f32 %r85,%r183,0f37354400,%r72; .loc 1 157 26 sub.f32 %r145,%r72,%r85; .loc 1 157 29 fma.rn.f32 %r146,%r183,0f37354400,%r145; .loc 1 157 10 neg.f32 %r147,%r146; fma.rn.f32 %r71,%r82,0f2e85a308,%r147; .loc 1 158 15 sub.f32 %r66,%r85,%r71; .loc 1 160 19 mov.b32 %r149,%r66; shr.u32 %r148,%r149,23; .loc 1 160 24 and.b32 %r150,%r148,255; .loc 1 160 12 sub.u32 %r151,%r45,%r150; .loc 1 161 9 setp.gt.s32 %r152,%r151,25; @ %r152 bra $L13; .loc 1 158 12 st.f32 [%r103],%r66; .loc 1 156 10 mov.f32 %r72,%r85; bra $L11; $L13: .loc 1 164 11 fma.rn.f32 %r72,%r183,0f2e85a300,%r85; .loc 1 165 27 sub.f32 %r155,%r85,%r72; .loc 1 165 30 fma.rn.f32 %r156,%r183,0f2e85a300,%r155; .loc 1 165 11 neg.f32 %r157,%r156; fma.rn.f32 %r71,%r82,0f248d3132,%r157; .loc 1 166 16 sub.f32 %r66,%r72,%r71; .loc 1 166 13 st.f32 [%r103],%r66; $L11: .loc 1 170 15 sub.f32 %r158,%r72,%r66; .loc 1 170 21 sub.f32 %r58,%r158,%r71; .loc 1 170 11 st.f32 [%r103+4],%r58; .loc 1 171 8 setp.ge.s32 %r159,%r75,0; @ %r159 bra $L1; .loc 1 171 24 neg.f32 %r160,%r66; .loc 1 171 22 st.f32 [%r103],%r160; .loc 1 171 38 neg.f32 %r161,%r58; .loc 1 171 36 st.f32 [%r103+4],%r161; .loc 1 171 52 neg.s32 %r101,%r101; bra $L1; $L8: .loc 1 177 4 setp.le.s32 %r162,%r76,2139095039; @ %r162 bra $L14; .loc 1 178 17 sub.f32 %r61,%r102,%r102; .loc 1 178 15 st.f32 [%r103+4],%r61; .loc 1 178 10 st.f32 [%r103],%r61; .loc 1 178 28 mov.u32 %r101,0; bra $L1; $L14: .loc 1 181 17 shr.s32 %r163,%r76,23; .loc 1 181 6 add.u32 %r87,%r163,-134; .loc 1 182 2 shl.b32 %r164,%r87,23; sub.u32 %r165,%r76,%r164; mov.b32 %r88,%r165; .loc 1 184 19 cvt.rzi.s32.f32 %r166,%r88; .loc 1 184 11 cvt.rn.f32.s32 %r93,%r166; .loc 1 184 9 st.f32 [%frame],%r93; .loc 1 185 13 sub.f32 %r94,%r88,%r93; .loc 1 185 9 mul.f32 %r95,%r94,0f43800000; .loc 1 184 19 cvt.rzi.s32.f32 %r167,%r95; .loc 1 184 11 cvt.rn.f32.s32 %r98,%r167; .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 7 setp.neu.f32 %r168,%r100,0f00000000; @ %r168 bra $L16; setp.neu.f32 %r169,%r98,0f00000000; .loc 1 189 13 selp.u32 %r22,2,1,%r169; bra $L15; $L16: .loc 1 188 5 mov.u32 %r22,3; $L15: .loc 1 190 8 cvta.const.u64 %r175,two_over_pi; mov.u32 %r174,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],%r87; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r22; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r174; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r175; call (%value_in),__kernel_rem_pio2f,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); ld.param.u32 %r176,[%value_in]; } mov.u32 %r101,%r176; .loc 1 191 4 setp.ge.s32 %r177,%r75,0; @ %r177 bra $L1; .loc 1 191 19 ld.f32 %r179,[%r103]; neg.f32 %r178,%r179; .loc 1 191 17 st.f32 [%r103],%r178; .loc 1 191 33 ld.f32 %r181,[%r103+4]; neg.f32 %r180,%r181; .loc 1 191 31 st.f32 [%r103+4],%r180; .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; } /214 1591654536 399 399 100644 3749 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r48; .reg .u32 %r49; .reg .u32 %r51; .reg .u32 %r52; .reg .u16 %r53; .reg .u16 %r54; .reg .u16 %r55; .reg .u32 %r57; .reg .u32 %r58; .reg .u16 %r60; .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; 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; .loc 1 44 29 set.u32.gt.s32 %r51,%r35,2139095040; neg.s32 %r52,%r51; cvt.u16.u32 %r54,%r49; cvt.u16.u32 %r55,%r52; or.b16 %r53,%r54,%r55; .loc 1 44 5 set.u32.gt.s32 %r57,%r36,2139095039; neg.s32 %r58,%r57; .loc 1 44 29 cvt.u16.u32 %r62,%r58; or.b16 %r60,%r53,%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; } /236 1591654536 399 399 100644 3609 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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: __fpclassifyf .extern .func (.param .u32 %value_out) __fpclassifyf (.param .f32 %in_ar0); // 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 %r27; .reg .f32 %r29; .reg .f32 %r30; .reg .f32 %r31; .reg .u32 %r33; .reg .pred %r34; .reg .u32 %r36; .reg .pred %r37; .reg .u32 %r39; .reg .pred %r40; .reg .pred %r41; .reg .f32 %r42; .reg .f32 %r44; .reg .pred %r45; .reg .pred %r46; .reg .u32 %r48; .reg .f32 %r49; .reg .pred %r50; .reg .u32 %r52; .reg .f32 %r53; .reg .u32 %r56; .reg .f32 %r57; mov.f32 %r30,%ar0; mov.f32 %r31,%ar1; .loc 1 38 6 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r30; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r33,[%value_in]; } .loc 1 38 5 setp.ne.u32 %r34,%r33,0; @ ! %r34 bra $L3; .loc 1 38 16 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r31; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r36,[%value_in]; } .loc 1 38 14 setp.eq.u32 %r37,%r36,0; @ ! %r37 bra $L18; $L3: .loc 1 38 35 mul.f32 %r29,%r30,%r31; bra $L1; $L18: .loc 1 39 7 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r31; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r39,[%value_in]; } .loc 1 39 5 setp.ne.u32 %r40,%r39,0; @ %r40 bra $L7; .loc 1 40 8 setp.gt.f32 %r41,%r31,0f00000000; @ %r41 bra $L3; .loc 1 41 25 neg.f32 %r42,%r30; div.rn.f32 %r29,%r42,%r31; bra $L1; $L7: .loc 1 43 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r31; call (%value_in),rintf,(%out_arg1); ld.param.f32 %r44,[%value_in]; } .loc 1 43 5 setp.eq.f32 %r45,%r44,%r31; @ %r45 bra $L8; .loc 1 43 31 sub.f32 %r27,%r31,%r31; .loc 1 43 35 div.rn.f32 %r29,%r27,%r27; bra $L1; $L8: .loc 1 45 5 setp.gt.f32 %r46,%r31,0f477de800; @ ! %r46 bra $L19; .loc 1 45 35 mov.u32 %r48,65000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r30; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r48; call (%value_in),scalbnf,(%out_arg1,%out_arg2); ld.param.f32 %r49,[%value_in]; } mov.f32 %r29,%r49; bra $L1; $L19: .loc 1 46 5 setp.lt.f32 %r50,%r31,0fc77de800; @ ! %r50 bra $L20; .loc 1 46 35 mov.u32 %r52,-65000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r30; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r52; call (%value_in),scalbnf,(%out_arg1,%out_arg2); ld.param.f32 %r53,[%value_in]; } mov.f32 %r29,%r53; bra $L1; $L20: .loc 1 51 9 cvt.rzi.s32.f32 %r56,%r31; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r30; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r56; call (%value_in),scalbnf,(%out_arg1,%out_arg2); ld.param.f32 %r57,[%value_in]; } mov.f32 %r29,%r57; $L1: .loc 1 53 1 mov.f32 %value,%r29; st.param.f32 [%value_out],%value; ret; } lib_a-ef_sinh.o/1591654536 399 399 100644 4137 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %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 .f32 %r64; .reg .pred %r65; .reg .f32 %r67; .reg .f32 %r69; .reg .pred %r70; .reg .f32 %r72; .reg .f32 %r74; .reg .f32 %r75; .reg .f32 %r76; .reg .f32 %r79; .reg .f32 %r81; 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 %r61,%r41,0f40000000,%r60; .loc 1 47 32 mul.f32 %r44,%r61,%r35; bra $L1; $L8: .loc 1 48 22 add.f32 %r62,%r55,0f3f800000; .loc 1 48 19 div.rn.f32 %r63,%r55,%r62; .loc 1 48 17 add.f32 %r64,%r63,%r55; .loc 1 48 14 mul.f32 %r44,%r64,%r35; bra $L1; $L5: .loc 1 52 5 setp.gt.s32 %r65,%r37,1118925335; @ %r65 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 %r67,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r67; call (%value_in),__ieee754_expf,(%out_arg1); ld.param.f32 %r69,[%value_in]; } .loc 1 52 38 mul.f32 %r44,%r69,%r35; bra $L1; $L9: .loc 1 55 5 setp.gt.s32 %r70,%r37,1119016188; @ %r70 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 %r72,[%value_in]; } .loc 1 56 10 mul.f32 %r74,%r72,0f3f000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r74; call (%value_in),__ieee754_expf,(%out_arg1); ld.param.f32 %r75,[%value_in]; } .loc 1 57 8 mul.f32 %r76,%r35,%r75; .loc 1 58 14 mul.f32 %r44,%r76,%r75; 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 %r79,[%value_in]; } { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r79; call (%value_in),expm1f,(%out_arg1); ld.param.f32 %r81,[%value_in]; } mov.f32 %r41,%r81; bra $L11; $L1: .loc 1 63 1 mov.f32 %value,%r44; st.param.f32 [%value_out],%value; ret; } lib_a-ef_sqrt.o/1591654536 399 399 100644 3157 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r23; .reg .f32 %r24; .reg .u32 %r25; .reg .u32 %r28; .reg .u32 %r32; .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 %r47; .reg .u32 %r48; .reg .u32 %r50; .reg .u32 %r52; .reg .u32 %r53; .reg .f32 %r54; .reg .f32 %r55; .reg .pred %r56; .reg .pred %r57; .reg .pred %r58; .reg .u32 %r59; .reg .pred %r60; .reg .pred %r61; .reg .u32 %r63; .reg .pred %r64; .reg .u32 %r66; .reg .pred %r67; .reg .pred %r68; .reg .pred %r70; .reg .pred %r71; .reg .u32 %r72; .reg .u32 %r73; .reg .u32 %r74; mov.f32 %r55,%ar0; .loc 1 35 2 mov.b32 %r42,%r55; .loc 1 36 5 and.b32 %r41,%r42,2147483647; .loc 1 39 4 setp.le.u32 %r56,%r41,2139095039; @ %r56 bra $L2; .loc 1 40 16 fma.rn.f32 %r54,%r55,%r55,%r55; bra $L1; $L2: .loc 1 43 4 setp.eq.u32 %r57,%r41,0; @ %r57 bra $L12; .loc 1 35 2 mov.u32 %r37,%r42; .loc 1 44 4 setp.ge.s32 %r58,%r42,0; @ %r58 bra $L4; .loc 1 44 20 sub.f32 %r24,%r55,%r55; .loc 1 44 23 div.rn.f32 %r54,%r24,%r24; bra $L1; $L4: .loc 1 47 4 shr.s32 %r40,%r37,23; .loc 1 48 4 and.b32 %r59,%r37,2139095040; setp.ne.u32 %r60,%r59,0; @ %r60 bra $L5; and.b32 %r52,%r37,8388608; .loc 1 49 6 setp.ne.u32 %r61,%r52,0; @ ! %r61 bra $L7; bra $L13; $L14: .loc 1 49 35 mov.u32 %r52,%r23; $L7: .loc 1 49 41 add.u32 %r37,%r37,%r37; .loc 1 49 35 add.u32 %r23,%r52,1; .loc 1 49 6 and.b32 %r63,%r37,8388608; setp.eq.u32 %r64,%r63,0; @ %r64 bra $L14; bra $L6; $L13: mov.u32 %r52,-1; $L6: .loc 1 50 8 sub.u32 %r40,%r40,%r52; $L5: .loc 1 52 4 add.u32 %r43,%r40,-127; .loc 1 53 10 and.b32 %r25,%r37,8388607; .loc 1 53 5 or.b32 %r44,%r25,8388608; add.u32 %r47,%r44,%r44; .loc 1 54 6 and.b32 %r66,%r43,1; .loc 1 54 4 setp.eq.u32 %r67,%r66,0; @ %r67 bra $L8; shl.b32 %r47,%r44,2; $L8: .loc 1 56 4 shr.s32 %r45,%r43,1; mov.u32 %r53,25; .loc 1 60 4 mov.u32 %r39,0; .loc 1 60 8 mov.u32 %r38,%r39; .loc 1 61 4 mov.u32 %r48,16777216; $L10: .loc 1 64 11 add.u32 %r28,%r38,%r48; .loc 1 65 8 setp.gt.s32 %r68,%r28,%r47; @ %r68 bra $L9; .loc 1 66 11 add.u32 %r38,%r28,%r48; .loc 1 67 7 sub.u32 %r47,%r47,%r28; .loc 1 68 7 add.u32 %r39,%r39,%r48; $L9: .loc 1 70 9 add.u32 %r47,%r47,%r47; .loc 1 71 7 shr.u32 %r48,%r48,1; add.u32 %r53,%r53,-1; .loc 1 63 7 setp.ne.u32 %r70,%r53,0; @ %r70 bra $L10; .loc 1 75 4 setp.eq.u32 %r71,%r47,0; @ %r71 bra $L11; .loc 1 82 9 add.u32 %r32,%r39,1; and.b32 %r39,%r32,-2; $L11: .loc 1 85 9 shr.s32 %r72,%r39,1; .loc 1 85 13 add.u32 %r50,%r72,1056964608; .loc 1 86 11 shl.b32 %r73,%r45,23; .loc 1 86 5 add.u32 %r74,%r73,%r50; .loc 1 87 2 mov.b32 %r54,%r74; .loc 1 88 9 bra $L1; $L12: .loc 1 43 35 mov.f32 %r54,%r55; $L1: .loc 1 89 1 mov.f32 %value,%r54; st.param.f32 [%value_out],%value; ret; } /254 1591654536 399 399 100644 1386 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_gamma_r .visible .func (.param .f64 %value_out) __ieee754_gamma_r (.param .f64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libm/math/er_gamma.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_gamma_r .visible .func (.param .f64 %value_out) __ieee754_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 %r24; .reg .u64 %r25; .reg .f64 %r28; .reg .f64 %r30; mov.f64 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 31 9 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; 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]; } .loc 1 32 1 mov.f64 %value,%r30; st.param.f64 [%value_out],%value; ret; } /272 1591654536 399 399 100644 19441 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r77; .reg .f64 %r91; .reg .f64 %r92; .reg .f64 %r93; .reg .f64 %r94; .reg .u32 %r96; .reg .u32 %r97; .reg .u32 %r98; .reg .f64 %r99; .reg .f64 %r101; .reg .f64 %r102; .reg .f64 %r103; .reg .f64 %r106; .reg .f64 %r107; .reg .u32 %r114; .reg .f64 %r115; .reg .f64 %r122; .reg .f64 %r123; .reg .f64 %r126; .reg .f64 %r128; .reg .f64 %r130; .reg .u32 %r135; .reg .u32 %r136; .reg .f64 %r137; .reg .u32 %r138; .reg .f64 %r139; .reg .f64 %r142; .reg .f64 %r145; .reg .f64 %r151; .reg .f64 %r154; .reg .f64 %r173; .reg .f64 %r174; .reg .u64 %r175; .reg .u64 %r176; .reg .u64 %r177; .reg .u32 %r178; .reg .pred %r179; .reg .u32 %r181; .reg .pred %r182; .reg .f64 %r183; .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 .f64 %r206; .reg .f64 %r207; .reg .u64 %r208; .reg .pred %r209; .reg .pred %r210; .reg .pred %r211; .reg .pred %r212; .reg .pred %r213; .reg .f64 %r215; .reg .f64 %r217; .reg .f64 %r218; .reg .f64 %r219; .reg .f64 %r221; .reg .f64 %r222; .reg .f64 %r223; .reg .f64 %r224; .reg .f64 %r226; .reg .u32 %r227; .reg .f64 %r228; .reg .f64 %r230; .reg .f64 %r231; .reg .f64 %r232; .reg .f64 %r233; .reg .f64 %r234; .reg .f64 %r235; .reg .f64 %r236; .reg .f64 %r238; .reg .u32 %r239; .reg .f64 %r240; .reg .pred %r241; .reg .f64 %r243; .reg .f64 %r244; .reg .f64 %r246; .reg .f64 %r247; .reg .f64 %r248; .reg .pred %r249; .reg .u32 %r250; .reg .u32 %r251; .reg .u32 %r252; .reg .pred %r253; .reg .u32 %r254; .reg .u32 %r255; .reg .pred %r256; .reg .u32 %r257; .reg .pred %r258; .reg .pred %r259; .reg .f64 %r261; .reg .pred %r262; .reg .f64 %r263; .reg .pred %r264; .reg .f64 %r265; .reg .pred %r266; .reg .f64 %r267; .reg .pred %r268; .reg .f64 %r269; .reg .f64 %r270; .reg .f64 %r272; .reg .f64 %r273; .reg .f64 %r274; .reg .f64 %r275; .reg .f64 %r276; .reg .f64 %r277; .reg .f64 %r278; .reg .f64 %r279; .reg .f64 %r280; .reg .f64 %r281; .reg .f64 %r282; .reg .f64 %r283; .reg .f64 %r284; .reg .f64 %r285; .reg .f64 %r286; .reg .f64 %r287; .reg .f64 %r288; .reg .f64 %r289; .reg .f64 %r290; .reg .f64 %r291; .reg .f64 %r292; .reg .f64 %r293; .reg .f64 %r294; .reg .f64 %r295; .reg .f64 %r296; .reg .f64 %r297; .reg .f64 %r298; .reg .f64 %r299; .reg .f64 %r300; .reg .f64 %r301; .reg .f64 %r302; .reg .f64 %r303; .reg .f64 %r304; .reg .f64 %r305; .reg .f64 %r306; .reg .f64 %r307; .reg .f64 %r308; .reg .f64 %r309; .reg .f64 %r310; .reg .f64 %r311; .reg .f64 %r312; .reg .f64 %r313; .reg .f64 %r314; .reg .f64 %r315; .reg .f64 %r316; .reg .pred %r317; .reg .f64 %r318; .reg .f64 %r319; .reg .f64 %r320; .reg .f64 %r321; .reg .f64 %r322; .reg .f64 %r323; .reg .f64 %r324; .reg .f64 %r325; .reg .f64 %r326; .reg .f64 %r327; .reg .f64 %r328; .reg .f64 %r329; .reg .f64 %r330; .reg .f64 %r331; .reg .f64 %r332; .reg .pred %r333; .reg .pred %r334; .reg .pred %r335; .reg .pred %r336; .reg .pred %r337; .reg .pred %r338; .reg .f64 %r339; .reg .f64 %r340; .reg .f64 %r341; .reg .f64 %r343; .reg .f64 %r344; .reg .f64 %r345; .reg .pred %r346; .reg .f64 %r348; .reg .f64 %r349; .reg .f64 %r350; .reg .f64 %r351; .reg .f64 %r352; .reg .f64 %r353; .reg .f64 %r354; .reg .f64 %r355; .reg .f64 %r356; .reg .f64 %r357; .reg .f64 %r358; .reg .f64 %r361; .reg .f64 %r362; .reg .f64 %r363; .reg .u32 %r366; .reg .u32 %r367; .reg .pred %r368; .reg .u32 %r369; .reg .u32 %r370; .reg .pred %r371; .reg .pred %r372; mov.f64 %r174,%ar0; mov.u64 %r175,%ar1; .loc 1 222 2 mov.b64 %r176,%r174; shr.u64 %r177,%r176,32; cvt.u32.u64 %r96,%r177; .loc 1 225 12 mov.u32 %r178,1; st.u32 [%r175],%r178; .loc 1 226 5 and.b32 %r98,%r96,2147483647; .loc 1 227 4 setp.le.s32 %r179,%r98,2146435071; @ %r179 bra $L2; .loc 1 227 29 mul.f64 %r173,%r174,%r174; bra $L1; $L2: .loc 1 222 2 cvt.u32.u64 %r97,%r176; .loc 1 228 8 or.b32 %r181,%r97,%r98; .loc 1 228 4 setp.ne.u32 %r182,%r181,0; @ %r182 bra $L4; $L8: .loc 1 228 27 mov.f64 %r183,0d3ff0000000000000; div.rn.f64 %r173,%r183,0d0000000000000000; bra $L1; $L4: .loc 1 229 4 setp.gt.s32 %r184,%r98,999292927; @ %r184 bra $L5; .loc 1 230 8 setp.ge.s32 %r185,%r96,0; @ %r185 bra $L6; .loc 1 231 20 mov.u32 %r186,-1; st.u32 [%r175],%r186; .loc 1 232 18 neg.f64 %r188,%r174; { .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 232 17 neg.f64 %r173,%r189; bra $L1; $L6: .loc 1 233 21 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r174; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r191,[%value_in]; } .loc 1 233 20 neg.f64 %r173,%r191; bra $L1; $L5: .loc 1 235 4 setp.ge.s32 %r372,%r96,0; @ %r372 bra $L7; .loc 1 236 8 setp.gt.s32 %r193,%r98,1127219199; @ %r193 bra $L8; .loc 1 175 4 setp.gt.s32 %r194,%r98,1070596095; @ %r194 bra $L9; .loc 1 175 27 mul.f64 %r198,%r174,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 %r126,%r174; .loc 1 182 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r126; call (%value_in),floor,(%out_arg1); ld.param.f64 %r201,[%value_in]; } .loc 1 183 4 setp.eq.f64 %r202,%r126,%r201; @ %r202 bra $L11; .loc 1 184 9 mul.f64 %r128,%r126,0d3fe0000000000000; .loc 1 185 21 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r128; call (%value_in),floor,(%out_arg1); ld.param.f64 %r204,[%value_in]; } .loc 1 185 19 sub.f64 %r130,%r128,%r204; .loc 1 185 10 add.f64 %r137,%r130,%r130; .loc 1 186 26 mul.f64 %r205,%r137,0d4010000000000000; .loc 1 186 10 cvt.rzi.s32.f64 %r138,%r205; bra $L12; $L11: .loc 1 192 3 mov.f64 %r207,0d4330000000000000; sub.f64 %r206,%r207,%r174; mov.b64 %r208,%r206; cvt.u32.u64 %r135,%r208; .loc 1 193 5 and.b32 %r136,%r135,1; .loc 1 194 20 cvt.rn.f64.s32 %r137,%r136; .loc 1 195 18 shl.b32 %r138,%r136,2; $L12: setp.gt.s32 %r209,%r138,4; @ %r209 bra $L13; setp.ge.s32 %r210,%r138,3; @ %r210 bra $L14; setp.eq.u32 %r211,%r138,0; @ %r211 bra $L15; setp.lt.s32 %r212,%r138,0; @ ! %r212 bra $L53; bra $L16; $L13: setp.gt.s32 %r213,%r138,6; @ ! %r213 bra $L54; bra $L16; $L15: .loc 1 199 21 mul.f64 %r139,%r137,0d400921fb54442d18; mov.f64 %r215,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r139; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r215; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r138; call (%value_in),__kernel_sin,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r217,[%value_in]; } neg.f64 %r154,%r217; bra $L10; $L53: .loc 1 201 41 mov.f64 %r219,0d3fe0000000000000; sub.f64 %r218,%r219,%r137; .loc 1 201 21 mul.f64 %r142,%r218,0d400921fb54442d18; mov.f64 %r221,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r142; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r221; call (%value_in),__kernel_cos,(%out_arg1,%out_arg2); ld.param.f64 %r222,[%value_in]; } neg.f64 %r154,%r222; bra $L10; $L14: .loc 1 203 41 mov.f64 %r224,0d3ff0000000000000; sub.f64 %r223,%r224,%r137; .loc 1 203 21 mul.f64 %r145,%r223,0d400921fb54442d18; mov.u32 %r227,0; mov.f64 %r226,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r145; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r226; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r227; call (%value_in),__kernel_sin,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r228,[%value_in]; } neg.f64 %r154,%r228; bra $L10; $L54: .loc 1 205 39 mov.f64 %r232,0d3ff8000000000000; sub.f64 %r231,%r137,%r232; .loc 1 205 21 mul.f64 %r233,%r231,0d400921fb54442d18; mov.f64 %r230,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r233; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r230; call (%value_in),__kernel_cos,(%out_arg1,%out_arg2); ld.param.f64 %r234,[%value_in]; } mov.f64 %r154,%r234; bra $L10; $L16: .loc 1 206 39 mov.f64 %r236,0d4000000000000000; sub.f64 %r235,%r137,%r236; .loc 1 206 21 mul.f64 %r151,%r235,0d400921fb54442d18; mov.u32 %r239,0; mov.f64 %r238,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r151; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r238; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r239; call (%value_in),__kernel_sin,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r240,[%value_in]; } neg.f64 %r154,%r240; $L10: .loc 1 239 8 setp.eq.f64 %r241,%r154,0d0000000000000000; @ %r241 bra $L8; .loc 1 240 30 mul.f64 %r243,%r174,%r154; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r243; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r244,[%value_in]; } .loc 1 240 13 mov.f64 %r247,0d400921fb54442d18; div.rn.f64 %r246,%r247,%r244; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r246; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r248,[%value_in]; } mov.f64 %r173,%r248; .loc 1 241 8 setp.lt.f64 %r249,%r154,0d0000000000000000; @ ! %r249 bra $L20; .loc 1 241 27 mov.u32 %r250,-1; st.u32 [%r175],%r250; $L20: .loc 1 246 10 add.u32 %r251,%r98,-1072693248; .loc 1 246 22 or.b32 %r252,%r251,%r97; .loc 1 246 4 setp.eq.u32 %r253,%r252,0; @ %r253 bra $L1; .loc 1 242 8 neg.f64 %r174,%r174; .loc 1 246 37 add.u32 %r254,%r98,-1073741824; .loc 1 246 49 or.b32 %r255,%r254,%r97; .loc 1 246 30 setp.eq.u32 %r256,%r255,0; @ %r256 bra $L41; $L40: .loc 1 248 9 and.b32 %r257,%r96,1073741824; setp.ne.u32 %r258,%r257,0; @ %r258 bra $L24; .loc 1 249 8 setp.gt.s32 %r259,%r98,1072483532; @ %r259 bra $L25; .loc 1 250 8 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r174; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r261,[%value_in]; } .loc 1 250 5 neg.f64 %r99,%r261; .loc 1 251 5 setp.le.s32 %r262,%r98,1072130371; @ %r262 bra $L26; .loc 1 251 25 mov.f64 %r263,0d3ff0000000000000; sub.f64 %r101,%r263,%r174; bra $L27; $L26: .loc 1 252 10 setp.le.s32 %r264,%r98,1070442080; @ %r264 bra $L28; .loc 1 252 29 mov.f64 %r265,0d3fdd8b618d5af8fc; sub.f64 %r102,%r174,%r265; bra $L29; $L25: .loc 1 256 12 setp.le.s32 %r266,%r98,1073460418; @ %r266 bra $L30; .loc 1 256 31 mov.f64 %r267,0d4000000000000000; sub.f64 %r101,%r267,%r174; .loc 1 255 7 mov.f64 %r99,0d0000000000000000; bra $L27; $L30: .loc 1 257 17 setp.le.s32 %r268,%r98,1072936131; @ %r268 bra $L31; .loc 1 257 36 mov.f64 %r269,0d3ff762d86356be3f; sub.f64 %r102,%r174,%r269; .loc 1 255 7 mov.f64 %r99,0d0000000000000000; bra $L29; $L31: .loc 1 258 10 mov.f64 %r270,0d3ff0000000000000; sub.f64 %r174,%r174,%r270; .loc 1 255 7 mov.f64 %r99,0d0000000000000000; bra $L28; $L27: .loc 1 262 5 mul.f64 %r103,%r101,%r101; .loc 1 264 37 fma.rn.f64 %r272,%r103,0d3f07858e90a45837,0d3f1c5088987dfb07; .loc 1 264 31 fma.rn.f64 %r273,%r272,%r103,0d3f40b6c689b99c00; .loc 1 264 25 fma.rn.f64 %r274,%r273,%r103,0d3f67add8ccb7926b; .loc 1 264 19 fma.rn.f64 %r275,%r274,%r103,0d3f951322ac92547b; .loc 1 264 13 fma.rn.f64 %r276,%r275,%r103,0d3fd4a34cc4a60fad; .loc 1 263 34 fma.rn.f64 %r277,%r103,0d3efa7074428cfa52,0d3f2cf2eced10e54d; .loc 1 263 28 fma.rn.f64 %r278,%r277,%r103,0d3f538a94116f3f5d; .loc 1 263 22 fma.rn.f64 %r279,%r278,%r103,0d3f7e404fb68fefe8; .loc 1 263 16 fma.rn.f64 %r280,%r279,%r103,0d3fb13e001a5562a7; .loc 1 263 6 fma.rn.f64 %r281,%r280,%r103,0d3fb3c467e37db0c8; .loc 1 265 9 mul.f64 %r282,%r281,%r101; .loc 1 265 6 fma.rn.f64 %r283,%r276,%r103,%r282; .loc 1 266 11 fma.rn.f64 %r284,%r101,0dbfe0000000000000,%r283; .loc 1 266 6 add.f64 %r94,%r284,%r99; .loc 1 266 3 bra $L32; $L29: .loc 1 268 5 mul.f64 %r106,%r102,%r102; .loc 1 269 5 mul.f64 %r107,%r106,%r102; .loc 1 272 29 fma.rn.f64 %r285,%r107,0d3f35fd3ee8c2d3f4,0dbf41a6109c73e0ec; .loc 1 272 22 fma.rn.f64 %r286,%r285,%r107,0d3f6282d32e15c915; .loc 1 272 16 fma.rn.f64 %r287,%r286,%r107,0dbf851f9fba91ec6a; .loc 1 272 6 fma.rn.f64 %r288,%r287,%r107,0d3fb08b4294d5419b; .loc 1 271 29 fma.rn.f64 %r289,%r107,0dbf347f24ecc38c38,0d3f4cdf0cef61a8e9; .loc 1 271 22 fma.rn.f64 %r290,%r289,%r107,0dbf6e2effb3e914d7; .loc 1 271 16 fma.rn.f64 %r291,%r290,%r107,0d3f9266e7970af9ec; .loc 1 271 6 fma.rn.f64 %r292,%r291,%r107,0dbfc2e4278dc6c509; .loc 1 273 22 fma.rn.f64 %r293,%r288,%r102,%r292; .loc 1 273 16 neg.f64 %r294,%r293; fma.rn.f64 %r295,%r294,%r107,0dbc50c7caa48a971f; .loc 1 273 6 neg.f64 %r296,%r295; .loc 1 270 29 fma.rn.f64 %r297,%r107,0d3f34af6d6c0ebbf7,0dbf56fe8ebf2d1af1; .loc 1 270 22 fma.rn.f64 %r298,%r297,%r107,0d3f78fce0e370e344; .loc 1 270 16 fma.rn.f64 %r299,%r298,%r107,0dbfa0c9a8df35b713; .loc 1 270 6 fma.rn.f64 %r300,%r299,%r107,0d3fdef72bc8ee38a2; .loc 1 273 6 fma.rn.f64 %r301,%r106,%r300,%r296; .loc 1 274 12 mov.f64 %r303,0d3fbf19b9bcc38a42; sub.f64 %r302,%r301,%r303; .loc 1 274 5 add.f64 %r94,%r302,%r99; .loc 1 274 3 bra $L32; $L28: .loc 1 276 37 fma.rn.f64 %r304,%r174,0d3f8b678bbf2bab09,0d3fcd4eaef6010924; .loc 1 276 31 fma.rn.f64 %r305,%r304,%r174,0d3fef497644ea8450; .loc 1 276 25 fma.rn.f64 %r306,%r305,%r174,0d3ff7475cd119bd6f; .loc 1 276 19 fma.rn.f64 %r307,%r306,%r174,0d3fe4401e8b005dff; .loc 1 276 13 fma.rn.f64 %r308,%r307,%r174,0dbfb3c467e37db0c8; .loc 1 276 6 mul.f64 %r309,%r308,%r174; .loc 1 277 35 fma.rn.f64 %r310,%r174,0d3f6a5abb57d0cf61,0d3fbaae55d6537c88; .loc 1 277 29 fma.rn.f64 %r311,%r310,%r174,0d3fe89dfbe45050af; .loc 1 277 23 fma.rn.f64 %r312,%r311,%r174,0d40010725a42b18f5; .loc 1 277 17 fma.rn.f64 %r313,%r312,%r174,0d4003a5d7c2bd619c; .loc 1 277 6 fma.rn.f64 %r314,%r313,%r174,0d3ff0000000000000; .loc 1 278 20 div.rn.f64 %r315,%r309,%r314; .loc 1 278 16 fma.rn.f64 %r316,%r174,0dbfe0000000000000,%r315; .loc 1 278 5 add.f64 %r94,%r316,%r99; bra $L32; $L24: .loc 1 281 9 setp.gt.s32 %r317,%r98,1075838975; @ %r317 bra $L33; .loc 1 282 8 cvt.rzi.s32.f64 %r114,%r174; .loc 1 284 12 cvt.rn.f64.s32 %r318,%r114; .loc 1 284 8 sub.f64 %r115,%r174,%r318; .loc 1 285 45 fma.rn.f64 %r319,%r115,0d3f00bfecdd17e945,0d3f5e26b67368f239; .loc 1 285 39 fma.rn.f64 %r320,%r319,%r115,0d3f9b481c7e939961; .loc 1 285 33 fma.rn.f64 %r321,%r320,%r115,0d3fc2bb9cbee5f2f7; .loc 1 285 27 fma.rn.f64 %r322,%r321,%r115,0d3fd4d98f4f139f59; .loc 1 285 21 fma.rn.f64 %r323,%r322,%r115,0d3fcb848b36e20878; .loc 1 285 15 fma.rn.f64 %r324,%r323,%r115,0dbfb3c467e37db0c8; .loc 1 285 8 mul.f64 %r325,%r324,%r115; .loc 1 286 43 fma.rn.f64 %r326,%r115,0d3edebaf7a5b38140,0d3f497ddaca41a95b; .loc 1 286 37 fma.rn.f64 %r327,%r326,%r115,0d3f9317ea742ed475; .loc 1 286 31 fma.rn.f64 %r328,%r327,%r115,0d3fc601edccfbdf27; .loc 1 286 25 fma.rn.f64 %r329,%r328,%r115,0d3fe71a1893d3dcdc; .loc 1 286 19 fma.rn.f64 %r330,%r329,%r115,0d3ff645a762c4ab74; .loc 1 286 8 fma.rn.f64 %r331,%r330,%r115,0d3ff0000000000000; .loc 1 287 18 div.rn.f64 %r332,%r325,%r331; .loc 1 287 8 fma.rn.f64 %r94,%r115,0d3fe0000000000000,%r332; setp.eq.u32 %r333,%r114,5; @ %r333 bra $L42; setp.gt.s32 %r334,%r114,5; @ %r334 bra $L35; setp.eq.u32 %r335,%r114,3; @ %r335 bra $L43; setp.eq.u32 %r336,%r114,4; @ %r336 bra $L44; bra $L32; $L35: setp.eq.u32 %r337,%r114,6; @ %r337 bra $L45; setp.ne.u32 %r338,%r114,7; @ %r338 bra $L32; .loc 1 290 21 add.f64 %r77,%r115,0d4018000000000000; bra $L38; $L45: .loc 1 288 8 mov.f64 %r77,0d3ff0000000000000; $L38: .loc 1 291 21 add.f64 %r339,%r115,0d4014000000000000; .loc 1 291 16 mul.f64 %r91,%r339,%r77; bra $L34; $L42: .loc 1 288 8 mov.f64 %r91,0d3ff0000000000000; $L34: .loc 1 292 21 add.f64 %r340,%r115,0d4010000000000000; .loc 1 292 16 mul.f64 %r92,%r340,%r91; bra $L37; $L44: .loc 1 288 8 mov.f64 %r92,0d3ff0000000000000; $L37: .loc 1 293 21 add.f64 %r341,%r115,0d4008000000000000; .loc 1 293 16 mul.f64 %r93,%r341,%r92; bra $L36; $L43: .loc 1 288 8 mov.f64 %r93,0d3ff0000000000000; $L36: .loc 1 294 21 add.f64 %r343,%r115,0d4000000000000000; .loc 1 294 16 mul.f64 %r344,%r343,%r93; .loc 1 295 12 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r344; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r345,[%value_in]; } .loc 1 295 9 add.f64 %r94,%r94,%r345; .loc 1 295 7 bra $L32; $L33: .loc 1 298 12 setp.gt.s32 %r346,%r98,1133510655; @ %r346 bra $L39; .loc 1 299 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r174; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r348,[%value_in]; } .loc 1 300 8 mov.f64 %r349,0d3ff0000000000000; div.rn.f64 %r122,%r349,%r174; .loc 1 301 8 mul.f64 %r123,%r122,%r122; .loc 1 303 12 mov.f64 %r351,0d3fe0000000000000; sub.f64 %r350,%r174,%r351; .loc 1 302 42 fma.rn.f64 %r352,%r123,0dbf5ab89d0b9e43e4,0d3f4b67ba4cdad5d1; .loc 1 302 36 fma.rn.f64 %r353,%r352,%r123,0dbf4380cb8c0fe741; .loc 1 302 30 fma.rn.f64 %r354,%r353,%r123,0d3f4a019f98cf38b6; .loc 1 302 24 fma.rn.f64 %r355,%r354,%r123,0dbf66c16c16b02e5c; .loc 1 302 18 fma.rn.f64 %r356,%r355,%r123,0d3fb555555555553b; .loc 1 302 8 fma.rn.f64 %r357,%r356,%r122,0d3fdacfe390c97d69; .loc 1 303 21 sub.f64 %r358,%r348,%r349; .loc 1 303 8 fma.rn.f64 %r94,%r350,%r358,%r357; bra $L32; $L39: .loc 1 306 14 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r174; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r361,[%value_in]; } .loc 1 306 30 mov.f64 %r363,0d3ff0000000000000; sub.f64 %r362,%r361,%r363; .loc 1 306 8 mul.f64 %r94,%r362,%r174; $L32: .loc 1 307 4 @ ! %r372 bra $L23; bra $L46; $L41: .loc 1 246 61 mov.f64 %r94,0d0000000000000000; $L23: sub.f64 %r173,%r173,%r94; bra $L1; $L46: mov.f64 %r173,%r94; bra $L1; $L47: mov.f64 %r173,0d0000000000000000; bra $L1; $L48: mov.f64 %r173,0d0000000000000000; bra $L1; $L7: .loc 1 246 10 add.u32 %r366,%r98,-1072693248; .loc 1 246 22 or.b32 %r367,%r366,%r97; .loc 1 246 4 setp.eq.u32 %r368,%r367,0; @ %r368 bra $L47; .loc 1 246 37 add.u32 %r369,%r98,-1073741824; .loc 1 246 49 or.b32 %r370,%r369,%r97; .loc 1 246 30 setp.eq.u32 %r371,%r370,0; @ %r371 bra $L48; .loc 1 219 15 mov.f64 %r173,0d0000000000000000; bra $L40; $L1: .loc 1 309 1 mov.f64 %value,%r173; st.param.f64 [%value_out],%value; ret; } /291 1591654536 399 399 100644 1397 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __ieee754_gammaf_r .visible .func (.param .f32 %value_out) __ieee754_gammaf_r (.param .f32 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libm/math/erf_gamma.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_gammaf_r .visible .func (.param .f32 %value_out) __ieee754_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 %r24; .reg .u64 %r25; .reg .f32 %r28; .reg .f32 %r30; mov.f32 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 33 9 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; 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]; } .loc 1 34 1 mov.f32 %value,%r30; st.param.f32 [%value_out],%value; ret; } /310 1591654536 399 399 100644 17828 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r76; .reg .f32 %r90; .reg .f32 %r91; .reg .f32 %r92; .reg .u32 %r94; .reg .u32 %r95; .reg .f32 %r97; .reg .f32 %r98; .reg .f32 %r99; .reg .f32 %r100; .reg .f32 %r103; .reg .f32 %r104; .reg .u32 %r111; .reg .f32 %r113; .reg .f32 %r119; .reg .f32 %r120; .reg .f32 %r123; .reg .f32 %r125; .reg .f32 %r127; .reg .u32 %r131; .reg .u32 %r132; .reg .f32 %r133; .reg .u32 %r134; .reg .f32 %r136; .reg .f32 %r139; .reg .f32 %r142; .reg .f32 %r147; .reg .f32 %r149; .reg .f32 %r152; .reg .f32 %r168; .reg .f32 %r169; .reg .u64 %r170; .reg .u32 %r171; .reg .pred %r172; .reg .pred %r173; .reg .f32 %r174; .reg .pred %r175; .reg .pred %r176; .reg .u32 %r177; .reg .f32 %r179; .reg .f32 %r180; .reg .f32 %r182; .reg .pred %r184; .reg .pred %r185; .reg .f32 %r187; .reg .u32 %r188; .reg .f32 %r189; .reg .f32 %r190; .reg .f32 %r192; .reg .pred %r193; .reg .f32 %r195; .reg .f32 %r196; .reg .f32 %r197; .reg .f32 %r198; .reg .pred %r199; .reg .pred %r200; .reg .pred %r201; .reg .pred %r202; .reg .pred %r203; .reg .f32 %r205; .reg .f32 %r207; .reg .f32 %r208; .reg .f32 %r209; .reg .f32 %r211; .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 %r259; .reg .f32 %r260; .reg .f32 %r261; .reg .f32 %r262; .reg .f32 %r263; .reg .f32 %r264; .reg .f32 %r265; .reg .f32 %r266; .reg .f32 %r267; .reg .f32 %r268; .reg .f32 %r269; .reg .f32 %r270; .reg .f32 %r271; .reg .f32 %r272; .reg .f32 %r273; .reg .f32 %r274; .reg .f32 %r275; .reg .f32 %r276; .reg .f32 %r277; .reg .f32 %r278; .reg .f32 %r279; .reg .f32 %r280; .reg .f32 %r281; .reg .f32 %r282; .reg .f32 %r283; .reg .f32 %r284; .reg .f32 %r285; .reg .f32 %r286; .reg .f32 %r287; .reg .f32 %r288; .reg .f32 %r289; .reg .f32 %r290; .reg .f32 %r291; .reg .f32 %r292; .reg .f32 %r293; .reg .f32 %r294; .reg .f32 %r295; .reg .f32 %r296; .reg .f32 %r297; .reg .f32 %r298; .reg .f32 %r299; .reg .f32 %r300; .reg .f32 %r301; .reg .f32 %r302; .reg .f32 %r303; .reg .pred %r304; .reg .f32 %r305; .reg .f32 %r306; .reg .f32 %r307; .reg .f32 %r308; .reg .f32 %r309; .reg .f32 %r310; .reg .f32 %r311; .reg .f32 %r312; .reg .f32 %r313; .reg .f32 %r314; .reg .f32 %r315; .reg .f32 %r316; .reg .f32 %r317; .reg .f32 %r318; .reg .f32 %r319; .reg .pred %r320; .reg .pred %r321; .reg .pred %r322; .reg .pred %r323; .reg .pred %r324; .reg .pred %r325; .reg .f32 %r326; .reg .f32 %r327; .reg .f32 %r328; .reg .f32 %r330; .reg .f32 %r331; .reg .f32 %r332; .reg .pred %r333; .reg .f32 %r335; .reg .f32 %r336; .reg .f32 %r337; .reg .f32 %r338; .reg .f32 %r339; .reg .f32 %r340; .reg .f32 %r341; .reg .f32 %r342; .reg .f32 %r343; .reg .f32 %r344; .reg .f32 %r345; .reg .f32 %r348; .reg .f32 %r349; .reg .f32 %r350; .reg .u32 %r353; .reg .u32 %r354; .reg .pred %r355; .reg .pred %r356; mov.f32 %r169,%ar0; mov.u64 %r170,%ar1; .loc 1 157 2 mov.b32 %r94,%r169; .loc 1 160 12 mov.u32 %r171,1; st.u32 [%r170],%r171; .loc 1 161 5 and.b32 %r95,%r94,2147483647; .loc 1 162 4 setp.le.s32 %r172,%r95,2139095039; @ %r172 bra $L2; .loc 1 162 29 mul.f32 %r168,%r169,%r169; bra $L1; $L2: .loc 1 163 4 setp.ne.u32 %r173,%r95,0; @ %r173 bra $L4; $L8: .loc 1 163 22 mov.f32 %r174,0f3f800000; div.rn.f32 %r168,%r174,0f00000000; bra $L1; $L4: .loc 1 164 4 setp.gt.s32 %r175,%r95,478150655; @ %r175 bra $L5; .loc 1 165 8 setp.ge.s32 %r176,%r94,0; @ %r176 bra $L6; .loc 1 166 20 mov.u32 %r177,-1; st.u32 [%r170],%r177; .loc 1 167 18 neg.f32 %r179,%r169; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r179; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r180,[%value_in]; } .loc 1 167 17 neg.f32 %r168,%r180; bra $L1; $L6: .loc 1 168 21 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r169; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r182,[%value_in]; } .loc 1 168 20 neg.f32 %r168,%r182; bra $L1; $L5: .loc 1 170 4 setp.ge.s32 %r356,%r94,0; @ %r356 bra $L7; .loc 1 171 8 setp.gt.s32 %r184,%r95,1258291199; @ %r184 bra $L8; .loc 1 110 4 setp.gt.s32 %r185,%r95,1048575999; @ %r185 bra $L9; .loc 1 110 27 mul.f32 %r189,%r169,0f40490fdb; mov.u32 %r188,0; mov.f32 %r187,0f00000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r189; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r187; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r188; call (%value_in),__kernel_sinf,(%out_arg1,%out_arg2,%out_arg3); ld.param.f32 %r190,[%value_in]; } mov.f32 %r149,%r190; bra $L10; $L9: .loc 1 111 4 neg.f32 %r123,%r169; .loc 1 117 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r123; call (%value_in),floorf,(%out_arg1); ld.param.f32 %r192,[%value_in]; } .loc 1 118 4 setp.eq.f32 %r193,%r123,%r192; @ %r193 bra $L11; .loc 1 119 9 mul.f32 %r125,%r123,0f3f000000; .loc 1 120 28 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r125; call (%value_in),floorf,(%out_arg1); ld.param.f32 %r195,[%value_in]; } .loc 1 120 26 sub.f32 %r127,%r125,%r195; .loc 1 120 10 add.f32 %r133,%r127,%r127; .loc 1 121 26 mul.f32 %r196,%r133,0f40800000; .loc 1 121 10 cvt.rzi.s32.f32 %r134,%r196; bra $L12; $L11: .loc 1 127 3 mov.f32 %r198,0f4b000000; sub.f32 %r197,%r198,%r169; mov.b32 %r131,%r197; .loc 1 128 5 and.b32 %r132,%r131,1; .loc 1 129 20 cvt.rn.f32.s32 %r133,%r132; .loc 1 130 18 shl.b32 %r134,%r132,2; $L12: setp.gt.s32 %r199,%r134,4; @ %r199 bra $L13; setp.ge.s32 %r200,%r134,3; @ %r200 bra $L14; setp.eq.u32 %r201,%r134,0; @ %r201 bra $L15; setp.lt.s32 %r202,%r134,0; @ ! %r202 bra $L49; bra $L16; $L13: setp.gt.s32 %r203,%r134,6; @ ! %r203 bra $L50; bra $L16; $L15: .loc 1 134 21 mul.f32 %r136,%r133,0f40490fdb; mov.f32 %r205,0f00000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r136; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r205; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r134; call (%value_in),__kernel_sinf,(%out_arg1,%out_arg2,%out_arg3); ld.param.f32 %r207,[%value_in]; } neg.f32 %r149,%r207; bra $L10; $L49: .loc 1 136 49 mov.f32 %r209,0f3f000000; sub.f32 %r208,%r209,%r133; .loc 1 136 21 mul.f32 %r139,%r208,0f40490fdb; mov.f32 %r211,0f00000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r139; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r211; call (%value_in),__kernel_cosf,(%out_arg1,%out_arg2); ld.param.f32 %r212,[%value_in]; } neg.f32 %r149,%r212; bra $L10; $L14: .loc 1 138 42 mov.f32 %r214,0f3f800000; sub.f32 %r213,%r214,%r133; .loc 1 138 21 mul.f32 %r142,%r213,0f40490fdb; mov.u32 %r217,0; mov.f32 %r216,0f00000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r142; .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]; } neg.f32 %r149,%r218; bra $L10; $L50: .loc 1 140 40 mov.f32 %r222,0f3fc00000; sub.f32 %r221,%r133,%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 %r149,%r224; bra $L10; $L16: .loc 1 141 40 mov.f32 %r226,0f40000000; sub.f32 %r225,%r133,%r226; .loc 1 141 21 mul.f32 %r147,%r225,0f40490fdb; mov.u32 %r229,0; mov.f32 %r228,0f00000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r147; .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]; } neg.f32 %r149,%r230; $L10: .loc 1 174 8 setp.eq.f32 %r231,%r149,0f00000000; @ %r231 bra $L8; .loc 1 175 31 mul.f32 %r233,%r169,%r149; { .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 175 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 %r168,%r238; .loc 1 176 8 setp.lt.f32 %r239,%r149,0f00000000; @ ! %r239 bra $L20; .loc 1 176 27 mov.u32 %r240,-1; st.u32 [%r170],%r240; $L20: .loc 1 181 8 add.u32 %r241,%r95,-1065353216; and.b32 %r242,%r241,-8388609; .loc 1 181 5 setp.eq.u32 %r243,%r242,0; @ %r243 bra $L1; .loc 1 177 8 neg.f32 %r169,%r169; .loc 1 175 13 mov.f32 %r152,%r238; $L39: .loc 1 183 9 and.b32 %r244,%r94,1073741824; setp.ne.u32 %r245,%r244,0; @ %r245 bra $L23; .loc 1 184 8 setp.gt.s32 %r246,%r95,1063675494; @ %r246 bra $L24; .loc 1 185 8 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r169; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r248,[%value_in]; } .loc 1 185 5 neg.f32 %r97,%r248; .loc 1 186 5 setp.le.s32 %r249,%r95,1060850207; @ %r249 bra $L25; .loc 1 186 25 mov.f32 %r250,0f3f800000; sub.f32 %r98,%r250,%r169; bra $L26; $L25: .loc 1 187 10 setp.le.s32 %r251,%r95,1047343879; @ %r251 bra $L27; .loc 1 187 29 mov.f32 %r252,0f3eec5b0c; sub.f32 %r99,%r169,%r252; bra $L28; $L24: .loc 1 191 12 setp.le.s32 %r253,%r95,1071490583; @ %r253 bra $L29; .loc 1 191 31 mov.f32 %r254,0f40000000; sub.f32 %r98,%r254,%r169; .loc 1 190 7 mov.f32 %r97,0f00000000; bra $L26; $L29: .loc 1 192 17 setp.le.s32 %r255,%r95,1067296287; @ %r255 bra $L30; .loc 1 192 36 mov.f32 %r256,0f3fbb16c3; sub.f32 %r99,%r169,%r256; .loc 1 190 7 mov.f32 %r97,0f00000000; bra $L28; $L30: .loc 1 193 10 mov.f32 %r257,0f3f800000; sub.f32 %r169,%r169,%r257; .loc 1 190 7 mov.f32 %r97,0f00000000; bra $L27; $L26: .loc 1 197 5 mul.f32 %r100,%r98,%r98; .loc 1 199 37 fma.rn.f32 %r259,%r100,0f383c2c75,0f38e28445; .loc 1 199 31 fma.rn.f32 %r260,%r259,%r100,0f3a05b634; .loc 1 199 25 fma.rn.f32 %r261,%r260,%r100,0f3b3d6ec6; .loc 1 199 19 fma.rn.f32 %r262,%r261,%r100,0f3ca89915; .loc 1 199 13 fma.rn.f32 %r263,%r262,%r100,0f3ea51a66; .loc 1 198 34 fma.rn.f32 %r264,%r100,0f37d383a2,0f39679767; .loc 1 198 28 fma.rn.f32 %r265,%r264,%r100,0f3a9c54a1; .loc 1 198 22 fma.rn.f32 %r266,%r265,%r100,0f3bf2027e; .loc 1 198 16 fma.rn.f32 %r267,%r266,%r100,0f3d89f001; .loc 1 198 6 fma.rn.f32 %r268,%r267,%r100,0f3d9e233f; .loc 1 200 9 mul.f32 %r269,%r268,%r98; .loc 1 200 6 fma.rn.f32 %r270,%r263,%r100,%r269; .loc 1 201 11 fma.rn.f32 %r271,%r98,0fbf000000,%r270; .loc 1 201 6 add.f32 %r168,%r271,%r97; .loc 1 201 3 bra $L31; $L28: .loc 1 203 5 mul.f32 %r103,%r99,%r99; .loc 1 204 5 mul.f32 %r104,%r103,%r99; .loc 1 207 29 fma.rn.f32 %r272,%r104,0f39afe9f7,0fba0d3085; .loc 1 207 22 fma.rn.f32 %r273,%r272,%r104,0f3b141699; .loc 1 207 16 fma.rn.f32 %r274,%r273,%r104,0fbc28fcfe; .loc 1 207 6 fma.rn.f32 %r275,%r274,%r104,0f3d845a15; .loc 1 206 29 fma.rn.f32 %r276,%r104,0fb9a3f927,0f3a66f867; .loc 1 206 22 fma.rn.f32 %r277,%r276,%r104,0fbb7177fe; .loc 1 206 16 fma.rn.f32 %r278,%r277,%r104,0f3c93373d; .loc 1 206 6 fma.rn.f32 %r279,%r278,%r104,0fbe17213c; .loc 1 208 22 fma.rn.f32 %r280,%r275,%r99,%r279; .loc 1 208 16 neg.f32 %r281,%r280; fma.rn.f32 %r282,%r281,%r104,0f31e61c52; .loc 1 208 6 neg.f32 %r283,%r282; .loc 1 205 29 fma.rn.f32 %r284,%r104,0f39a57b6b,0fbab7f476; .loc 1 205 22 fma.rn.f32 %r285,%r284,%r104,0f3bc7e707; .loc 1 205 16 fma.rn.f32 %r286,%r285,%r104,0fbd064d47; .loc 1 205 6 fma.rn.f32 %r287,%r286,%r104,0f3ef7b95e; .loc 1 208 6 fma.rn.f32 %r288,%r103,%r287,%r283; .loc 1 209 12 mov.f32 %r290,0f3df8cdcd; sub.f32 %r289,%r288,%r290; .loc 1 209 5 add.f32 %r168,%r289,%r97; .loc 1 209 3 bra $L31; $L27: .loc 1 211 37 fma.rn.f32 %r291,%r169,0f3c5b3c5e,0f3e6a7578; .loc 1 211 31 fma.rn.f32 %r292,%r291,%r169,0f3f7a4bb2; .loc 1 211 25 fma.rn.f32 %r293,%r292,%r169,0f3fba3ae7; .loc 1 211 19 fma.rn.f32 %r294,%r293,%r169,0f3f2200f4; .loc 1 211 13 fma.rn.f32 %r295,%r294,%r169,0fbd9e233f; .loc 1 211 6 mul.f32 %r296,%r295,%r169; .loc 1 212 35 fma.rn.f32 %r297,%r169,0f3b52d5db,0f3dd572af; .loc 1 212 29 fma.rn.f32 %r298,%r297,%r169,0f3f44efdf; .loc 1 212 23 fma.rn.f32 %r299,%r298,%r169,0f4008392d; .loc 1 212 17 fma.rn.f32 %r300,%r299,%r169,0f401d2ebe; .loc 1 212 6 fma.rn.f32 %r301,%r300,%r169,0f3f800000; .loc 1 213 27 div.rn.f32 %r302,%r296,%r301; .loc 1 213 23 fma.rn.f32 %r303,%r169,0fbf000000,%r302; .loc 1 213 5 add.f32 %r168,%r303,%r97; bra $L31; $L23: .loc 1 216 9 setp.gt.s32 %r304,%r95,1090519039; @ %r304 bra $L32; .loc 1 217 8 cvt.rzi.s32.f32 %r111,%r169; .loc 1 219 12 cvt.rn.f32.s32 %r305,%r111; .loc 1 219 8 sub.f32 %r113,%r169,%r305; .loc 1 220 45 fma.rn.f32 %r306,%r113,0f3805ff67,0f3af135b4; .loc 1 220 39 fma.rn.f32 %r307,%r306,%r113,0f3cda40e4; .loc 1 220 33 fma.rn.f32 %r308,%r307,%r113,0f3e15dce6; .loc 1 220 27 fma.rn.f32 %r309,%r308,%r113,0f3ea6cc7a; .loc 1 220 21 fma.rn.f32 %r310,%r309,%r113,0f3e5c245a; .loc 1 220 15 fma.rn.f32 %r311,%r310,%r113,0fbd9e233f; .loc 1 220 8 mul.f32 %r312,%r311,%r113; .loc 1 221 43 fma.rn.f32 %r313,%r113,0f36f5d7bd,0f3a4beed6; .loc 1 221 37 fma.rn.f32 %r314,%r313,%r113,0f3c98bf54; .loc 1 221 31 fma.rn.f32 %r315,%r314,%r113,0f3e300f6e; .loc 1 221 25 fma.rn.f32 %r316,%r315,%r113,0f3f38d0c5; .loc 1 221 19 fma.rn.f32 %r317,%r316,%r113,0f3fb22d3b; .loc 1 221 8 fma.rn.f32 %r318,%r317,%r113,0f3f800000; .loc 1 222 18 div.rn.f32 %r319,%r312,%r318; .loc 1 222 8 fma.rn.f32 %r168,%r113,0f3f000000,%r319; setp.eq.u32 %r320,%r111,5; @ %r320 bra $L40; setp.gt.s32 %r321,%r111,5; @ %r321 bra $L34; setp.eq.u32 %r322,%r111,3; @ %r322 bra $L41; setp.eq.u32 %r323,%r111,4; @ %r323 bra $L42; bra $L31; $L34: setp.eq.u32 %r324,%r111,6; @ %r324 bra $L43; setp.ne.u32 %r325,%r111,7; @ %r325 bra $L31; .loc 1 225 21 add.f32 %r76,%r113,0f40c00000; bra $L37; $L43: .loc 1 223 8 mov.f32 %r76,0f3f800000; $L37: .loc 1 226 21 add.f32 %r326,%r113,0f40a00000; .loc 1 226 16 mul.f32 %r90,%r326,%r76; bra $L33; $L40: .loc 1 223 8 mov.f32 %r90,0f3f800000; $L33: .loc 1 227 21 add.f32 %r327,%r113,0f40800000; .loc 1 227 16 mul.f32 %r91,%r327,%r90; bra $L36; $L42: .loc 1 223 8 mov.f32 %r91,0f3f800000; $L36: .loc 1 228 21 add.f32 %r328,%r113,0f40400000; .loc 1 228 16 mul.f32 %r92,%r328,%r91; bra $L35; $L41: .loc 1 223 8 mov.f32 %r92,0f3f800000; $L35: .loc 1 229 21 add.f32 %r330,%r113,0f40000000; .loc 1 229 16 mul.f32 %r331,%r330,%r92; .loc 1 230 12 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r331; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r332,[%value_in]; } .loc 1 230 9 add.f32 %r168,%r168,%r332; .loc 1 230 7 bra $L31; $L32: .loc 1 233 12 setp.gt.s32 %r333,%r95,1551892479; @ %r333 bra $L38; .loc 1 234 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r169; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r335,[%value_in]; } .loc 1 235 8 mov.f32 %r336,0f3f800000; div.rn.f32 %r119,%r336,%r169; .loc 1 236 8 mul.f32 %r120,%r119,%r119; .loc 1 238 12 mov.f32 %r338,0f3f000000; sub.f32 %r337,%r169,%r338; .loc 1 237 42 fma.rn.f32 %r339,%r120,0fbad5c4e8,0f3a5b3dd2; .loc 1 237 36 fma.rn.f32 %r340,%r339,%r120,0fba1c065c; .loc 1 237 30 fma.rn.f32 %r341,%r340,%r120,0f3a500cfd; .loc 1 237 24 fma.rn.f32 %r342,%r341,%r120,0fbb360b61; .loc 1 237 18 fma.rn.f32 %r343,%r342,%r120,0f3daaaaab; .loc 1 237 8 fma.rn.f32 %r344,%r343,%r119,0f3ed67f1d; .loc 1 238 21 sub.f32 %r345,%r335,%r336; .loc 1 238 8 fma.rn.f32 %r168,%r337,%r345,%r344; bra $L31; $L38: .loc 1 241 14 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r169; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r348,[%value_in]; } .loc 1 241 31 mov.f32 %r350,0f3f800000; sub.f32 %r349,%r348,%r350; .loc 1 241 8 mul.f32 %r168,%r349,%r169; $L31: .loc 1 242 4 @ %r356 bra $L1; sub.f32 %r168,%r152,%r168; bra $L1; $L44: .loc 1 181 40 mov.f32 %r168,0f00000000; bra $L1; $L7: .loc 1 181 8 add.u32 %r353,%r95,-1065353216; and.b32 %r354,%r353,-8388609; .loc 1 181 5 setp.eq.u32 %r355,%r354,0; @ %r355 bra $L44; .loc 1 154 14 mov.f32 %r152,0f00000000; bra $L39; $L1: .loc 1 244 1 mov.f32 %value,%r168; st.param.f32 [%value_out],%value; ret; } lib_a-erfcl.o/ 1591654536 399 399 100644 796 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654536 399 399 100644 788 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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-exp2l.o/ 1591654536 399 399 100644 796 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } lib_a-expl.o/ 1591654536 399 399 100644 788 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654536 399 399 100644 804 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654536 399 399 100644 796 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // 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; .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),fabs,(%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-fdiml.o/ 1591654536 399 399 100644 1003 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } lib_a-floorl.o/ 1591654536 399 399 100644 804 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 DECL: floor .extern .func (.param .f64 %value_out) floor (.param .f64 %in_ar0); // 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; .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),floor,(%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-fmal.o/ 1591654536 399 399 100644 1202 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 DECL: fma .extern .func (.param .f64 %value_out) fma (.param .f64 %in_ar0, .param .f64 %in_ar1, .param .f64 %in_ar2); // 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; .reg .f64 %r29; mov.f64 %r23,%ar0; mov.f64 %r24,%ar1; mov.f64 %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 .f64 %out_arg3; st.param.f64 [%out_arg3],%r25; call (%value_in),fma,(%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-fmaxl.o/ 1591654536 399 399 100644 1003 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654536 399 399 100644 1003 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654536 399 399 100644 1003 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654536 399 399 100644 1011 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654536 399 399 100644 1011 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 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),hypot,(%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-ilogbl.o/ 1591654536 399 399 100644 804 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654536 399 399 100644 3353 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .f64 %r46; .reg .f64 %r52; .reg .f64 %r54; .reg .f64 %r58; .reg .f64 %r59; .reg .f64 %r60; .reg .u64 %r61; .reg .u64 %r62; .reg .pred %r63; .reg .u32 %r64; .reg .pred %r65; .reg .f64 %r66; .reg .f64 %r67; .reg .f64 %r68; .reg .f64 %r69; .reg .f64 %r70; .reg .pred %r71; .reg .f64 %r72; .reg .f64 %r73; .reg .f64 %r74; .reg .f64 %r75; .reg .f64 %r76; .reg .f64 %r77; .reg .pred %r78; .reg .u32 %r79; .reg .u64 %r80; .reg .u64 %r84; .reg .f64 %r85; .reg .f64 %r86; .reg .f64 %r87; .reg .f64 %r88; .reg .f64 %r89; .reg .f64 %r90; .reg .f64 %r91; .reg .f64 %r93; .reg .f64 %r94; .reg .f64 %r95; .reg .f64 %r96; .reg .f64 %r97; mov.f64 %r59,%ar0; mov.f64 %r60,%ar1; .loc 1 75 2 mov.b64 %r61,%r59; shr.u64 %r62,%r61,32; cvt.u32.u64 %r37,%r62; .loc 1 76 5 and.b32 %r38,%r37,2147483647; .loc 1 77 4 setp.gt.s32 %r63,%r38,1044381695; @ %r63 bra $L2; .loc 1 78 10 cvt.rzi.s32.f64 %r64,%r59; .loc 1 78 8 setp.eq.u32 %r65,%r64,0; @ ! %r65 bra $L10; bra $L8; $L2: .loc 1 80 5 mul.f64 %r46,%r59,%r59; .loc 1 81 36 fma.rn.f64 %r66,%r46,0dbda8fae9be8838d4,0d3e21ee9ebdb4b1c4; .loc 1 81 30 fma.rn.f64 %r67,%r66,%r46,0dbe927e4f809c52ad; .loc 1 81 24 fma.rn.f64 %r68,%r67,%r46,0d3efa01a019cb1590; .loc 1 81 18 fma.rn.f64 %r69,%r68,%r46,0dbf56c16c16c15177; .loc 1 81 12 fma.rn.f64 %r70,%r69,%r46,0d3fa555555555554c; .loc 1 81 5 mul.f64 %r52,%r70,%r46; .loc 1 82 4 setp.gt.s32 %r71,%r38,1070805810; @ %r71 bra $L5; $L7: .loc 1 83 36 mul.f64 %r72,%r59,%r60; .loc 1 83 33 neg.f64 %r73,%r72; fma.rn.f64 %r74,%r46,%r52,%r73; .loc 1 83 26 neg.f64 %r75,%r74; fma.rn.f64 %r76,%r46,0d3fe0000000000000,%r75; .loc 1 83 17 mov.f64 %r77,0d3ff0000000000000; sub.f64 %r58,%r77,%r76; bra $L1; $L5: .loc 1 85 8 setp.gt.s32 %r78,%r38,1072234496; @ %r78 bra $L9; .loc 1 88 10 add.u32 %r79,%r38,-2097152; cvt.u64.u32 %r80,%r79; shl.b64 %r84,%r80,32; mov.b64 %r36,%r84; mov.f64 %r85,0d3ff0000000000000; sub.f64 %r54,%r85,%r36; bra $L6; $L9: mov.f64 %r54,0d3fe7000000000000; .loc 1 86 6 mov.f64 %r36,0d3fd2000000000000; $L6: .loc 1 90 9 neg.f64 %r86,%r36; fma.rn.f64 %r87,%r46,0d3fe0000000000000,%r86; .loc 1 92 29 mul.f64 %r88,%r59,%r60; .loc 1 92 27 neg.f64 %r89,%r88; fma.rn.f64 %r90,%r46,%r52,%r89; .loc 1 92 21 sub.f64 %r91,%r87,%r90; .loc 1 92 15 sub.f64 %r58,%r54,%r91; bra $L1; $L8: .loc 1 78 29 mov.f64 %r58,0d3ff0000000000000; bra $L1; $L10: .loc 1 80 5 mul.f64 %r46,%r59,%r59; .loc 1 81 36 fma.rn.f64 %r93,%r46,0dbda8fae9be8838d4,0d3e21ee9ebdb4b1c4; .loc 1 81 30 fma.rn.f64 %r94,%r46,%r93,0dbe927e4f809c52ad; .loc 1 81 24 fma.rn.f64 %r95,%r46,%r94,0d3efa01a019cb1590; .loc 1 81 18 fma.rn.f64 %r96,%r46,%r95,0dbf56c16c16c15177; .loc 1 81 12 fma.rn.f64 %r97,%r46,%r96,0d3fa555555555554c; .loc 1 81 5 mul.f64 %r52,%r97,%r46; bra $L7; $L1: .loc 1 94 1 mov.f64 %value,%r58; st.param.f64 [%value_out],%value; ret; } /330 1591654536 399 399 100644 25781 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r38; .reg .u32 %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u32 %r42; .reg .f64 %r43; .reg .u32 %r45; .reg .u32 %r51; .reg .u32 %r53; .reg .u32 %r55; .reg .u64 %r71; .reg .u32 %r75; .reg .u64 %r82; .reg .f64 %r90; .reg .f64 %r93; .reg .u32 %r99; .reg .u32 %r102; .reg .u32 %r103; .reg .u32 %r105; .reg .u64 %r106; .reg .u64 %r108; .reg .u64 %r109; .reg .f64 %r113; .reg .u32 %r114; .reg .f64 %r116; .reg .u64 %r121; .reg .f64 %r122; .reg .u64 %r123; .reg .u64 %r124; .reg .f64 %r125; .reg .u32 %r126; .reg .u32 %r128; .reg .u32 %r130; .reg .f64 %r131; .reg .f64 %r133; .reg .f64 %r136; .reg .u32 %r137; .reg .u32 %r138; .reg .u32 %r141; .reg .f64 %r143; .reg .u32 %r145; .reg .u32 %r146; .reg .f64 %r149; .reg .f64 %r150; .reg .f64 %r151; .reg .f64 %r152; .reg .f64 %r156; .reg .u32 %r157; .reg .f64 %r158; .reg .f64 %r159; .reg .f64 %r160; .reg .u32 %r162; .reg .u64 %r163; .reg .u64 %r164; .reg .u32 %r165; .reg .u32 %r172; .reg .u64 %r173; .reg .u64 %r175; .reg .u64 %r177; .reg .u64 %r181; .reg .u32 %r186; .reg .u64 %r187; .reg .u64 %r190; .reg .f64 %r191; .reg .f64 %r195; .reg .f64 %r196; .reg .f64 %r200; .reg .u32 %r201; .reg .u32 %r202; .reg .u64 %r204; .reg .u64 %r205; .reg .u64 %r207; .reg .u64 %r216; .reg .u64 %r217; .reg .u64 %r223; .reg .u64 %r224; .reg .u64 %r235; .reg .u64 %r237; .reg .u64 %r244; .reg .u64 %r249; .reg .u64 %r262; .reg .u64 %r263; .reg .u64 %r264; .reg .u64 %r270; .reg .u64 %r272; .reg .u64 %r282; .reg .u64 %r283; .reg .u64 %r295; .reg .u64 %r297; .reg .u64 %r299; .reg .u64 %r300; .reg .u64 %r312; .reg .u64 %r313; .reg .u64 %r314; .reg .u64 %r325; .reg .u64 %r326; .reg .u32 %r327; .reg .u32 %r332; .reg .u64 %r333; .reg .u64 %r334; .reg .u32 %r342; .reg .u64 %r345; .reg .u64 %r346; .reg .u32 %r347; .reg .u32 %r348; .reg .u32 %r349; .reg .u64 %r350; .reg .u64 %r351; .reg .u64 %r352; .reg .u64 %r353; .reg .u64 %r354; .reg .pred %r355; .reg .u32 %r356; .reg .u32 %r357; .reg .u32 %r359; .reg .u32 %r360; .reg .pred %r362; .reg .u64 %r365; .reg .u64 %r366; .reg .u64 %r367; .reg .u64 %r368; .reg .u64 %r369; .reg .u32 %r370; .reg .pred %r371; .reg .u32 %r372; .reg .pred %r373; .reg .u64 %r375; .reg .u64 %r376; .reg .f64 %r377; .reg .f64 %r378; .reg .pred %r379; .reg .pred %r380; .reg .u64 %r383; .reg .u64 %r384; .reg .u64 %r385; .reg .u64 %r386; .reg .u64 %r387; .reg .u64 %r389; .reg .u64 %r390; .reg .u64 %r394; .reg .u32 %r395; .reg .u64 %r396; .reg .u64 %r397; .reg .f64 %r399; .reg .u32 %r400; .reg .f64 %r402; .reg .u32 %r403; .reg .f64 %r404; .reg .pred %r405; .reg .f64 %r408; .reg .f64 %r410; .reg .f64 %r411; .reg .f64 %r413; .reg .u64 %r415; .reg .u64 %r416; .reg .u64 %r417; .reg .u64 %r418; .reg .u32 %r419; .reg .u32 %r420; .reg .u32 %r425; .reg .u32 %r426; .reg .u32 %r428; .reg .u64 %r429; .reg .u64 %r430; .reg .u64 %r431; .reg .u32 %r433; .reg .pred %r434; .reg .pred %r435; .reg .pred %r437; .reg .pred %r438; .reg .pred %r440; .reg .pred %r441; .reg .u64 %r442; .reg .u64 %r443; .reg .u64 %r444; .reg .u32 %r446; .reg .u32 %r447; .reg .pred %r448; .reg .u64 %r449; .reg .u64 %r450; .reg .u64 %r451; .reg .u32 %r455; .reg .u32 %r456; .reg .u64 %r457; .reg .u64 %r458; .reg .u64 %r459; .reg .u32 %r462; .reg .u32 %r463; .reg .pred %r464; .reg .u64 %r468; .reg .u64 %r469; .reg .u64 %r470; .reg .u64 %r471; .reg .u32 %r476; .reg .u32 %r477; .reg .u64 %r478; .reg .u64 %r479; .reg .u64 %r480; .reg .u64 %r481; .reg .u32 %r486; .reg .u32 %r487; .reg .pred %r488; .reg .f64 %r489; .reg .pred %r490; .reg .f64 %r493; .reg .pred %r494; .reg .pred %r495; .reg .u64 %r498; .reg .u64 %r501; .reg .u32 %r502; .reg .u32 %r503; .reg .u64 %r504; .reg .u64 %r505; .reg .u32 %r506; .reg .pred %r507; .reg .pred %r508; .reg .u32 %r514; .reg .pred %r515; .reg .u32 %r516; .reg .pred %r517; .reg .u64 %r518; .reg .u64 %r519; .reg .u64 %r520; .reg .u64 %r521; .reg .u32 %r523; .reg .u64 %r524; .reg .u64 %r525; .reg .u64 %r526; .reg .u64 %r527; .reg .u64 %r528; .reg .u64 %r529; .reg .u64 %r533; .reg .u32 %r534; .reg .f64 %r537; .reg .pred %r538; .reg .pred %r539; .reg .u64 %r540; .reg .u64 %r541; .reg .u64 %r542; .reg .u32 %r544; .reg .pred %r545; .reg .u64 %r549; .reg .u32 %r550; .reg .pred %r551; .reg .u32 %r554; .reg .f64 %r555; .reg .pred %r556; .reg .f64 %r557; .reg .u64 %r559; .reg .u64 %r560; .reg .f64 %r562; .reg .f64 %r564; .reg .u32 %r565; .reg .u64 %r566; .reg .u64 %r567; .reg .u64 %r568; .reg .u64 %r571; .reg .u64 %r572; .reg .u32 %r574; .reg .f64 %r575; .reg .f64 %r577; .reg .pred %r578; .reg .f64 %r584; .reg .u32 %r585; .reg .f64 %r586; .reg .pred %r587; .reg .f64 %r588; .reg .pred %r589; .reg .pred %r590; .reg .pred %r591; .reg .pred %r593; .reg .pred %r594; .reg .f64 %r599; .reg .pred %r600; .reg .pred %r601; .reg .f64 %r606; .reg .pred %r607; .reg .f64 %r608; .reg .f64 %r610; .reg .pred %r611; .reg .f64 %r613; .reg .pred %r614; .reg .u64 %r617; .reg .u64 %r618; .reg .u64 %r622; .reg .u64 %r625; .reg .u32 %r626; .reg .u64 %r627; .reg .u64 %r628; .reg .f64 %r629; .reg .f64 %r630; .reg .pred %r631; .reg .u64 %r633; .reg .u64 %r634; .reg .u64 %r638; .reg .u32 %r639; .reg .u64 %r640; .reg .u64 %r642; .reg .f64 %r643; .reg .f64 %r644; .reg .pred %r645; .reg .u64 %r647; .reg .u64 %r648; .reg .f64 %r649; .reg .pred %r650; .reg .pred %r651; .reg .f64 %r652; .reg .f64 %r653; .reg .f64 %r654; .reg .u32 %r655; .reg .pred %r656; .reg .pred %r657; .reg .pred %r658; .reg .pred %r659; .reg .pred %r660; .reg .pred %r661; .reg .pred %r662; .reg .pred %r663; .reg .pred %r664; .reg .pred %r665; .reg .f64 %r666; .reg .pred %r667; .reg .u32 %r668; .reg .u64 %r669; .reg .u32 %r670; .reg .pred %r671; .reg .pred %r672; .reg .u64 %r673; .reg .pred %r674; .reg .pred %r675; .reg .u64 %r677; .reg .u64 %r678; .reg .u64 %r679; .reg .u64 %r680; .reg .f64 %r681; .reg .u64 %r682; .reg .u64 %r683; .reg .pred %r684; .reg .pred %r685; .reg .pred %r686; .reg .u64 %r687; .reg .u32 %r688; .reg .u64 %r689; .reg .u64 %r690; .reg .u64 %r691; .reg .u64 %r692; .reg .u64 %r693; .reg .pred %r694; .reg .u64 %r695; .reg .f64 %r696; mov.u64 %r345,%ar0; mov.u64 %r346,%ar1; mov.u32 %r347,%ar2; mov.u32 %r348,%ar3; mov.u32 %r349,%ar4; mov.u64 %r350,%ar5; .loc 1 176 5 cvta.const.u64 %r351,init_jk; cvt.s64.s32 %r352,%r349; shl.b64 %r353,%r352,2; add.u64 %r354,%r351,%r353; ld.u32 %r126,[%r354]; .loc 1 180 5 add.u32 %r670,%r348,-1; .loc 1 181 20 setp.lt.s32 %r355,%r347,-20; @ %r355 bra $L75; .loc 1 181 10 add.u32 %r356,%r347,-3; .loc 1 181 5 div.s32 %r103,%r356,24; add.u32 %r357,%r103,1; shl.b32 %r359,%r357,2; sub.u32 %r360,%r357,%r359; shl.b32 %r186,%r360,3; bra $L2; $L75: mov.u32 %r186,-24; .loc 1 181 29 mov.u32 %r103,0; $L2: .loc 1 182 5 add.u32 %r41,%r347,%r186; .loc 1 185 4 sub.u32 %r130,%r103,%r670; .loc 1 185 15 add.u32 %r128,%r126,%r670; .loc 1 186 2 setp.ge.s32 %r362,%r128,0; @ %r362 bra $L3; $L8: .loc 1 189 2 setp.lt.s32 %r675,%r126,0; @ %r675 bra $L4; mov.u64 %r326,%frame; mov.u32 %r327,%r670; add.u32 %r332,%r126,%r348; cvt.u64.u32 %r365,%r670; shl.b64 %r366,%r365,3; add.u64 %r367,%r345,8; add.u64 %r325,%r366,%r367; setp.ge.s32 %r674,%r670,0; add.u64 %r695,%frame,320; bra $L5; $L3: add.u64 %r333,%frame,320; cvt.s64.s32 %r368,%r130; shl.b64 %r369,%r368,2; add.u64 %r334,%r350,%r369; add.u32 %r370,%r128,1; add.u32 %r342,%r370,%r130; .loc 1 186 43 mov.f64 %r696,0d0000000000000000; $L7: setp.lt.s32 %r371,%r130,0; @ %r371 bra $L76; ld.u32 %r372,[%r334]; cvt.rn.f64.s32 %r122,%r372; bra $L6; $L76: mov.f64 %r122,%r696; $L6: .loc 1 186 29 st.f64 [%r333],%r122; .loc 1 186 20 add.u32 %r130,%r130,1; add.u64 %r333,%r333,8; add.u64 %r334,%r334,4; .loc 1 186 2 setp.ne.u32 %r373,%r130,%r342; @ %r373 bra $L7; bra $L8; $L10: cvt.s64.s32 %r375,%r327; shl.b64 %r376,%r375,3; add.u64 %r314,%r695,%r376; .loc 1 190 6 mov.u64 %r313,%r345; .loc 1 190 16 mov.f64 %r131,0d0000000000000000; $L9: .loc 1 190 35 ld.f64 %r377,[%r313]; ld.f64 %r378,[%r314]; fma.rn.f64 %r131,%r377,%r378,%r131; add.u64 %r313,%r313,8; add.u64 %r314,%r314,-8; .loc 1 190 6 setp.ne.u64 %r379,%r313,%r325; @ %r379 bra $L9; $L11: .loc 1 190 59 st.f64 [%r326],%r131; add.u64 %r326,%r326,8; add.u32 %r327,%r327,1; .loc 1 189 2 setp.eq.u32 %r380,%r327,%r332; @ %r380 bra $L4; $L5: .loc 1 190 6 @ %r674 bra $L10; .loc 1 190 16 mov.f64 %r131,0d0000000000000000; bra $L11; $L4: add.u64 %r679,%frame,480; cvt.s64.s32 %r383,%r126; shl.b64 %r384,%r383,2; add.u64 %r385,%r384,-8; add.u64 %r264,%r679,%r385; cvt.u64.u32 %r386,%r670; shl.b64 %r387,%r386,3; add.u64 %r235,%r345,%r387; .loc 1 176 5 mov.u32 %r102,%r126; setp.le.s32 %r667,%r41,0; add.u64 %r683,%frame,484; setp.eq.u32 %r684,%r41,1; setp.eq.u32 %r685,%r41,2; .loc 1 213 9 setp.ne.u32 %r686,%r41,0; add.u64 %r687,%frame,472; .loc 1 245 16 add.u32 %r688,%r126,-1; .loc 1 245 13 cvt.s64.s32 %r689,%r688; shl.b64 %r690,%r689,2; add.u64 %r691,%frame,%r690; add.u64 %r692,%r691,480; add.u64 %r693,%frame,320; setp.lt.s32 %r694,%r670,0; $L12: .loc 1 196 16 cvt.s64.s32 %r680,%r102; shl.b64 %r389,%r680,3; add.u64 %r390,%frame,%r389; ld.f64 %r43,[%r390]; .loc 1 196 2 setp.le.s32 %r671,%r102,0; @ %r671 bra $L13; mov.u64 %r299,%r679; add.u64 %r394,%r389,-8; add.u64 %r300,%frame,%r394; add.u32 %r395,%r102,-1; cvt.u64.u32 %r396,%r395; shl.b64 %r397,%r396,2; add.u64 %r312,%r397,%r683; $L14: .loc 1 197 42 mul.f64 %r399,%r43,0d3e70000000000000; .loc 1 197 24 cvt.rzi.s32.f64 %r400,%r399; .loc 1 197 12 cvt.rn.f64.s32 %r133,%r400; .loc 1 198 28 fma.rn.f64 %r402,%r133,0dc170000000000000,%r43; .loc 1 198 15 cvt.rzi.s32.f64 %r403,%r402; st.u32 [%r299],%r403; .loc 1 199 12 ld.f64 %r404,[%r300]; add.f64 %r43,%r133,%r404; add.u64 %r299,%r299,4; add.u64 %r300,%r300,-8; .loc 1 196 2 setp.ne.u64 %r405,%r299,%r312; @ %r405 bra $L14; $L13: .loc 1 203 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r43; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r41; call (%value_in),scalbn,(%out_arg1,%out_arg2); ld.param.f64 %r408,[%value_in]; } .loc 1 204 11 mul.f64 %r410,%r408,0d3fc0000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r410; call (%value_in),floor,(%out_arg1); ld.param.f64 %r411,[%value_in]; } .loc 1 204 4 fma.rn.f64 %r136,%r411,0dc020000000000000,%r408; .loc 1 205 5 cvt.rzi.s32.f64 %r105,%r136; .loc 1 206 7 cvt.rn.f64.s32 %r413,%r105; .loc 1 206 4 sub.f64 %r116,%r136,%r413; .loc 1 208 4 @ %r667 bra $L15; .loc 1 209 17 add.u32 %r38,%r102,-1; .loc 1 209 14 cvt.s64.s32 %r415,%r38; shl.b64 %r416,%r415,2; add.u64 %r417,%frame,%r416; add.u64 %r418,%r417,480; ld.u32 %r39,[%r418]; .loc 1 209 25 mov.u32 %r419,24; sub.u32 %r40,%r419,%r41; .loc 1 209 9 shr.s32 %r137,%r39,%r40; .loc 1 209 34 add.u32 %r105,%r105,%r137; .loc 1 210 19 shl.b32 %r420,%r137,%r40; .loc 1 210 15 sub.u32 %r45,%r39,%r420; st.u32 [%r418],%r45; .loc 1 211 24 mov.u32 %r426,23; sub.u32 %r425,%r426,%r41; .loc 1 211 9 shr.s32 %r114,%r45,%r425; bra $L16; $L15: .loc 1 213 9 @ %r686 bra $L17; .loc 1 213 27 add.u32 %r428,%r102,-1; .loc 1 213 24 cvt.s64.s32 %r429,%r428; shl.b64 %r430,%r429,2; add.u64 %r431,%frame,%r430; .loc 1 213 20 ld.u32 %r433,[%r431+480]; shr.s32 %r114,%r433,23; bra $L16; $L17: .loc 1 214 9 setp.ge.f64 %r434,%r116,0d3fe0000000000000; @ %r434 bra $L18; .loc 1 207 5 mov.u32 %r114,0; bra $L19; $L16: .loc 1 216 4 setp.le.s32 %r435,%r114,0; @ %r435 bra $L19; .loc 1 217 8 add.u32 %r105,%r105,1; .loc 1 218 6 @ ! %r671 bra $L74; bra $L77; $L85: .loc 1 214 20 mov.u32 %r114,2; $L74: .loc 1 219 5 ld.u32 %r138,[%frame+480]; .loc 1 221 9 setp.ne.u32 %r437,%r138,0; @ %r437 bra $L78; .loc 1 218 6 setp.eq.u32 %r438,%r102,1; @ %r438 bra $L20; add.u64 %r297,%frame,484; .loc 1 218 21 mov.u32 %r172,1; bra $L22; $L23: add.u64 %r297,%r297,4; mov.u32 %r172,%r202; .loc 1 218 6 setp.eq.u32 %r440,%r102,%r172; @ %r440 bra $L20; $L22: .loc 1 219 5 ld.u32 %r138,[%r297]; add.u32 %r202,%r172,1; .loc 1 221 9 setp.eq.u32 %r441,%r138,0; @ %r441 bra $L23; bra $L21; $L78: mov.u32 %r202,1; mov.u32 %r172,0; $L21: .loc 1 222 21 cvt.s64.s32 %r442,%r172; shl.b64 %r443,%r442,2; add.u64 %r444,%frame,%r443; .loc 1 222 32 mov.u32 %r447,16777216; sub.u32 %r446,%r447,%r138; .loc 1 222 21 st.u32 [%r444+480],%r446; .loc 1 218 6 setp.le.s32 %r448,%r102,%r202; @ %r448 bra $L79; .loc 1 219 5 cvt.s64.s32 %r449,%r202; shl.b64 %r450,%r449,2; add.u64 %r451,%frame,%r450; ld.u32 %r162,[%r451+480]; add.u64 %r283,%r679,%r450; add.u32 %r455,%r102,-1; sub.u32 %r456,%r455,%r202; cvt.u64.u32 %r457,%r456; add.u64 %r458,%r457,%r449; shl.b64 %r459,%r458,2; add.u64 %r295,%r459,%r683; .loc 1 224 28 mov.u32 %r463,16777215; $L24: sub.u32 %r462,%r463,%r162; .loc 1 224 17 st.u32 [%r283],%r462; add.u64 %r283,%r283,4; .loc 1 218 6 setp.eq.u64 %r464,%r283,%r295; @ %r464 bra $L80; .loc 1 219 5 ld.u32 %r162,[%r283]; bra $L24; $L77: .loc 1 217 20 mov.u32 %r138,0; bra $L20; $L79: .loc 1 222 10 mov.u32 %r138,1; bra $L20; $L80: mov.u32 %r138,1; $L20: .loc 1 226 8 @ %r667 bra $L25; @ %r684 bra $L26; @ %r685 bra $L27; bra $L25; $L26: .loc 1 229 19 add.u32 %r51,%r102,-1; cvt.s64.s32 %r468,%r51; shl.b64 %r469,%r468,2; add.u64 %r470,%frame,%r469; add.u64 %r471,%r470,480; ld.u32 %r477,[%r471]; and.b32 %r476,%r477,8388607; st.u32 [%r471],%r476; .loc 1 229 10 bra $L25; $L27: .loc 1 231 19 add.u32 %r55,%r102,-1; cvt.s64.s32 %r478,%r55; shl.b64 %r479,%r478,2; add.u64 %r480,%frame,%r479; add.u64 %r481,%r480,480; ld.u32 %r487,[%r481]; and.b32 %r486,%r487,4194303; st.u32 [%r481],%r486; $L25: .loc 1 234 8 setp.ne.u32 %r488,%r114,2; @ %r488 bra $L19; .loc 1 235 5 mov.f64 %r489,0d3ff0000000000000; sub.f64 %r116,%r489,%r116; .loc 1 236 5 setp.eq.u32 %r490,%r138,0; @ %r490 bra $L19; .loc 1 236 21 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r489; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r41; call (%value_in),scalbn,(%out_arg1,%out_arg2); ld.param.f64 %r493,[%value_in]; } .loc 1 236 18 sub.f64 %r116,%r116,%r493; $L19: .loc 1 241 4 setp.neu.f64 %r494,%r116,0d0000000000000000; @ %r494 bra $L28; .loc 1 243 12 add.u32 %r146,%r102,-1; .loc 1 243 6 setp.gt.s32 %r495,%r126,%r146; @ %r495 bra $L29; shl.b64 %r272,%r680,2; add.u64 %r498,%r272,-4; add.u64 %r270,%r679,%r498; add.u64 %r501,%r687,%r272; not.b32 %r502,%r126; add.u32 %r503,%r502,%r102; cvt.u64.u32 %r504,%r503; shl.b64 %r505,%r504,2; sub.u64 %r282,%r501,%r505; .loc 1 242 8 mov.u32 %r141,0; $L30: .loc 1 243 31 ld.u32 %r506,[%r270]; or.b32 %r141,%r141,%r506; add.u64 %r270,%r270,-4; .loc 1 243 6 setp.ne.u64 %r507,%r270,%r282; @ %r507 bra $L30; .loc 1 244 8 setp.ne.u32 %r508,%r141,0; @ %r508 bra $L31; $L29: .loc 1 245 3 ld.u32 %r514,[%r692]; setp.ne.u32 %r515,%r514,0; @ %r515 bra $L32; mov.u64 %r263,%r264; .loc 1 245 8 mov.u32 %r53,1; $L33: .loc 1 245 24 add.u32 %r53,%r53,1; add.u64 %r263,%r263,-4; .loc 1 245 3 ld.u32 %r516,[%r263+4]; setp.eq.u32 %r517,%r516,0; @ %r517 bra $L33; bra $L119; $L32: .loc 1 247 8 add.u32 %r668,%r102,1; mov.u32 %r145,%r668; .loc 1 247 19 mov.u32 %r165,%r668; bra $L35; $L119: .loc 1 247 8 add.u32 %r668,%r102,1; mov.u32 %r145,%r668; .loc 1 247 19 add.u32 %r165,%r102,%r53; $L35: cvt.s64.s32 %r518,%r103; cvt.s64.s32 %r519,%r668; add.u64 %r520,%r518,%r519; shl.b64 %r521,%r520,2; add.u64 %r237,%r350,%r521; add.u32 %r523,%r670,%r668; cvt.s64.s32 %r524,%r523; shl.b64 %r525,%r524,3; add.u64 %r244,%r693,%r525; add.u64 %r526,%r680,1; shl.b64 %r527,%r526,3; add.u64 %r249,%frame,%r527; cvt.s64.s32 %r528,%r348; add.u64 %r529,%r528,%r680; sub.u64 %r533,%r529,%r524; shl.b64 %r262,%r533,3; add.u64 %r682,%r262,-8; $L38: .loc 1 248 17 ld.u32 %r534,[%r237]; cvt.rn.f64.s32 %r200,%r534; .loc 1 248 15 st.f64 [%r244],%r200; .loc 1 249 7 @ %r694 bra $L81; add.u64 %r224,%r682,%r244; mov.u64 %r223,%r345; .loc 1 249 17 mov.f64 %r143,0d0000000000000000; $L37: .loc 1 249 36 ld.f64 %r537,[%r223]; fma.rn.f64 %r143,%r537,%r200,%r143; .loc 1 249 7 setp.eq.u64 %r538,%r223,%r235; @ %r538 bra $L36; ld.f64 %r200,[%r224]; add.u64 %r223,%r223,8; add.u64 %r224,%r224,-8; bra $L37; $L81: .loc 1 249 17 mov.f64 %r143,0d0000000000000000; $L36: .loc 1 250 12 st.f64 [%r249],%r143; .loc 1 247 23 add.u32 %r145,%r145,1; add.u64 %r237,%r237,4; add.u64 %r244,%r244,8; add.u64 %r249,%r249,8; .loc 1 247 3 setp.le.s32 %r539,%r145,%r165; @ %r539 bra $L38; mov.u32 %r102,%r165; bra $L12; $L31: .loc 1 259 18 add.u32 %r41,%r41,-24; .loc 1 260 14 cvt.s64.s32 %r540,%r146; shl.b64 %r541,%r540,2; add.u64 %r542,%frame,%r541; .loc 1 260 11 ld.u32 %r544,[%r542+480]; setp.ne.u32 %r545,%r544,0; @ %r545 bra $L39; add.u64 %r549,%r541,-4; add.u64 %r217,%r679,%r549; $L40: .loc 1 260 27 add.u32 %r146,%r146,-1; .loc 1 260 33 add.u32 %r41,%r41,-24; add.u64 %r217,%r217,-4; .loc 1 260 11 ld.u32 %r550,[%r217+4]; setp.eq.u32 %r551,%r550,0; @ %r551 bra $L40; bra $L39; $L28: .loc 1 262 10 neg.s32 %r554,%r41; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r116; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r554; call (%value_in),scalbn,(%out_arg1,%out_arg2); ld.param.f64 %r555,[%value_in]; } .loc 1 263 8 setp.ge.f64 %r556,%r555,0d4170000000000000; @ ! %r556 bra $L120; .loc 1 264 35 mul.f64 %r557,%r555,0d3e70000000000000; .loc 1 264 17 cvt.rzi.s32.f64 %r75,%r557; .loc 1 265 10 shl.b64 %r559,%r680,2; add.u64 %r560,%frame,%r559; .loc 1 264 6 cvt.rn.f64.s32 %r562,%r75; .loc 1 265 25 fma.rn.f64 %r564,%r562,0dc170000000000000,%r555; .loc 1 265 12 cvt.rzi.s32.f64 %r565,%r564; st.u32 [%r560+480],%r565; .loc 1 266 6 add.u32 %r146,%r102,1; .loc 1 266 15 add.u32 %r41,%r41,24; .loc 1 267 10 cvt.s64.s32 %r566,%r146; shl.b64 %r567,%r566,2; add.u64 %r568,%frame,%r567; st.u32 [%r568+480],%r75; bra $L39; $L120: .loc 1 268 20 shl.b64 %r571,%r680,2; add.u64 %r572,%frame,%r571; .loc 1 268 22 cvt.rzi.s32.f64 %r574,%r555; st.u32 [%r572+480],%r574; .loc 1 268 20 mov.u32 %r146,%r102; $L39: .loc 1 272 7 mov.f64 %r575,0d3ff0000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r575; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r41; call (%value_in),scalbn,(%out_arg1,%out_arg2); ld.param.f64 %r577,[%value_in]; } mov.f64 %r149,%r577; .loc 1 273 2 setp.lt.s32 %r578,%r146,0; @ %r578 bra $L43; cvt.s64.s32 %r204,%r146; shl.b64 %r205,%r204,2; add.u64 %r121,%r679,%r205; shl.b64 %r678,%r204,3; add.u64 %r82,%frame,%r678; add.u64 %r216,%frame,476; mov.u64 %r207,%r82; $L44: .loc 1 274 16 ld.u32 %r585,[%r121]; cvt.rn.f64.s32 %r584,%r585; .loc 1 274 15 mul.f64 %r586,%r584,%r149; .loc 1 274 11 st.f64 [%r207],%r586; .loc 1 274 33 mul.f64 %r149,%r149,0d3e70000000000000; add.u64 %r121,%r121,-4; add.u64 %r207,%r207,-8; .loc 1 273 2 setp.ne.u64 %r587,%r121,%r216; @ %r587 bra $L44; add.u64 %r677,%frame,160; mov.u64 %r71,%r677; mov.u32 %r201,0; .loc 1 279 6 mov.f64 %r681,0d3ff921fb40000000; bra $L45; $L47: .loc 1 279 44 ld.f64 %r588,[%r187]; fma.rn.f64 %r150,%r588,%r191,%r150; .loc 1 279 37 add.u32 %r42,%r42,1; .loc 1 279 6 setp.lt.s32 %r589,%r126,%r42; @ %r589 bra $L46; add.u64 %r187,%r187,8; add.u64 %r23,%r23,8; .loc 1 279 26 setp.gt.s32 %r590,%r42,%r201; @ %r590 bra $L46; ld.f64 %r191,[%r23]; bra $L47; $L82: .loc 1 279 12 mov.f64 %r150,0d0000000000000000; $L46: .loc 1 280 15 st.f64 [%r71],%r150; add.u32 %r99,%r201,1; add.u64 %r71,%r71,8; add.u64 %r82,%r82,-8; .loc 1 278 2 setp.eq.u32 %r591,%r201,%r146; @ %r591 bra $L48; mov.u32 %r201,%r99; $L45: .loc 1 279 6 @ %r675 bra $L82; cvta.const.u64 %r23,PIo2; mov.u64 %r187,%r82; mov.f64 %r191,%r681; .loc 1 279 12 mov.f64 %r150,0d0000000000000000; .loc 1 279 18 mov.u32 %r42,0; bra $L47; $L70: .loc 1 300 3 setp.gt.s32 %r593,%r146,0; @ %r593 bra $L49; .loc 1 310 10 mov.f64 %r160,0d0000000000000000; bra $L50; $L121: .loc 1 305 3 setp.gt.s32 %r594,%r146,1; @ %r594 bra $L51; .loc 1 310 10 mov.f64 %r160,0d0000000000000000; bra $L50; $L73: add.u64 %r181,%r677,%r678; add.u64 %r177,%r677,-8; .loc 1 278 2 mov.f64 %r151,0d0000000000000000; $L52: .loc 1 287 26 ld.f64 %r599,[%r181]; add.f64 %r151,%r151,%r599; add.u64 %r181,%r181,-8; .loc 1 287 3 setp.ne.u64 %r600,%r177,%r181; @ %r600 bra $L52; bra $L68; $L84: .loc 1 286 6 mov.f64 %r151,0d0000000000000000; $L68: .loc 1 288 21 setp.eq.u32 %r601,%r114,0; @ %r601 bra $L53; neg.f64 %r151,%r151; $L53: .loc 1 288 8 st.f64 [%r346],%r151; .loc 1 289 3 bra $L54; $L72: add.u64 %r173,%r677,%r678; add.u64 %r164,%r677,-8; .loc 1 292 6 mov.f64 %r152,0d0000000000000000; $L55: .loc 1 293 26 ld.f64 %r606,[%r173]; add.f64 %r152,%r152,%r606; add.u64 %r173,%r173,-8; .loc 1 293 3 setp.ne.u64 %r607,%r164,%r173; @ %r607 bra $L55; bra $L67; $L83: .loc 1 292 6 mov.f64 %r152,0d0000000000000000; $L67: ld.f64 %r608,[%frame+160]; sub.f64 %r156,%r608,%r152; .loc 1 294 21 setp.eq.u32 %r672,%r114,0; @ %r672 bra $L56; neg.f64 %r610,%r152; .loc 1 294 8 st.f64 [%r346],%r610; .loc 1 296 3 setp.le.s32 %r611,%r146,0; @ %r611 bra $L57; $L65: add.u64 %r175,%frame,168; .loc 1 292 6 mov.u32 %r157,1; $L58: .loc 1 296 26 ld.f64 %r613,[%r175]; add.f64 %r156,%r156,%r613; .loc 1 296 19 add.u32 %r157,%r157,1; add.u64 %r175,%r175,8; .loc 1 296 3 setp.ge.s32 %r614,%r146,%r157; @ %r614 bra $L58; .loc 1 297 21 @ %r672 bra $L59; $L57: neg.f64 %r156,%r156; $L59: .loc 1 297 8 st.f64 [%r346+8],%r156; .loc 1 298 3 bra $L54; $L49: cvt.s64.s32 %r669,%r146; shl.b64 %r617,%r669,3; add.u64 %r618,%frame,%r617; ld.f64 %r125,[%r618+160]; add.u64 %r677,%frame,160; add.u64 %r622,%r617,-8; add.u64 %r106,%r677,%r622; add.u64 %r673,%frame,144; add.u64 %r625,%r673,%r617; add.u32 %r626,%r146,-1; cvt.u64.u32 %r627,%r626; shl.b64 %r628,%r627,3; sub.u64 %r190,%r625,%r628; $L60: .loc 1 301 19 ld.f64 %r90,[%r106]; .loc 1 301 15 add.f64 %r158,%r90,%r125; .loc 1 302 24 sub.f64 %r629,%r90,%r158; .loc 1 302 14 add.f64 %r630,%r629,%r125; st.f64 [%r106+8],%r630; .loc 1 303 15 st.f64 [%r106],%r158; add.u64 %r106,%r106,-8; mov.f64 %r125,%r158; .loc 1 300 3 setp.ne.u64 %r631,%r106,%r190; @ %r631 bra $L60; bra $L121; $L51: shl.b64 %r633,%r669,3; add.u64 %r634,%frame,%r633; ld.f64 %r113,[%r634+160]; add.u64 %r638,%r633,-8; add.u64 %r123,%r677,%r638; add.u32 %r639,%r146,-2; cvt.u64.u32 %r640,%r639; shl.b64 %r109,%r640,3; add.u64 %r642,%r673,%r633; sub.u64 %r108,%r642,%r109; $L62: .loc 1 306 19 ld.f64 %r93,[%r123]; .loc 1 306 15 add.f64 %r159,%r93,%r113; .loc 1 307 24 sub.f64 %r643,%r93,%r159; .loc 1 307 14 add.f64 %r644,%r643,%r113; st.f64 [%r123+8],%r644; .loc 1 308 15 st.f64 [%r123],%r159; add.u64 %r123,%r123,-8; mov.f64 %r113,%r159; .loc 1 305 3 setp.ne.u64 %r645,%r108,%r123; @ %r645 bra $L62; add.u64 %r163,%r677,%r633; add.u64 %r647,%r677,-8; add.u64 %r648,%r647,%r633; sub.u64 %r124,%r648,%r109; .loc 1 310 10 mov.f64 %r160,0d0000000000000000; $L63: .loc 1 310 33 ld.f64 %r649,[%r163]; add.f64 %r160,%r160,%r649; add.u64 %r163,%r163,-8; .loc 1 310 3 setp.ne.u64 %r650,%r124,%r163; @ %r650 bra $L63; $L50: ld.f64 %r195,[%frame+160]; ld.f64 %r196,[%frame+168]; .loc 1 311 5 setp.ne.u32 %r651,%r114,0; @ %r651 bra $L64; .loc 1 312 12 st.f64 [%r346],%r195; .loc 1 312 27 st.f64 [%r346+8],%r196; .loc 1 312 42 st.f64 [%r346+16],%r160; bra $L54; $L64: .loc 1 314 14 neg.f64 %r652,%r195; .loc 1 314 12 st.f64 [%r346],%r652; .loc 1 314 29 neg.f64 %r653,%r196; .loc 1 314 27 st.f64 [%r346+8],%r653; .loc 1 314 44 neg.f64 %r654,%r160; .loc 1 314 42 st.f64 [%r346+16],%r654; $L54: .loc 1 317 10 and.b32 %r655,%r105,7; bra $L122; $L56: .loc 1 294 8 st.f64 [%r346],%r152; .loc 1 296 3 setp.gt.s32 %r656,%r146,0; @ %r656 bra $L65; bra $L59; $L43: setp.gt.s32 %r657,%r349,2; @ %r657 bra $L66; setp.gt.s32 %r658,%r349,0; @ %r658 bra $L83; setp.eq.u32 %r659,%r349,0; @ %r659 bra $L84; bra $L54; $L66: setp.eq.u32 %r660,%r349,3; @ %r660 bra $L70; bra $L54; $L48: setp.gt.s32 %r661,%r349,2; @ %r661 bra $L71; setp.gt.s32 %r662,%r349,0; @ %r662 bra $L72; setp.eq.u32 %r663,%r349,0; @ %r663 bra $L73; bra $L54; $L71: setp.eq.u32 %r664,%r349,3; @ %r664 bra $L70; bra $L54; $L18: .loc 1 217 8 add.u32 %r105,%r105,1; .loc 1 218 6 setp.gt.s32 %r665,%r102,0; @ %r665 bra $L85; .loc 1 235 5 mov.f64 %r666,0d3ff0000000000000; sub.f64 %r116,%r666,%r116; mov.u32 %r114,2; bra $L19; $L122: .loc 1 318 1 mov.u32 %value,%r655; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } lib_a-k_sin.o/ 1591654536 399 399 100644 2237 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r31; .reg .f64 %r33; .reg .f64 %r34; .reg .f64 %r35; .reg .f64 %r42; .reg .f64 %r43; .reg .f64 %r44; .reg .u32 %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .u32 %r48; .reg .pred %r49; .reg .u32 %r50; .reg .pred %r51; .reg .f64 %r52; .reg .f64 %r53; .reg .f64 %r54; .reg .pred %r55; .reg .f64 %r56; .reg .f64 %r57; .reg .f64 %r58; .reg .f64 %r59; .reg .f64 %r60; .reg .f64 %r61; .reg .f64 %r62; mov.f64 %r43,%ar0; mov.f64 %r44,%ar1; mov.u32 %r45,%ar2; .loc 1 68 2 mov.b64 %r46,%r43; shr.u64 %r47,%r46,32; cvt.u32.u64 %r31,%r47; .loc 1 69 5 and.b32 %r48,%r31,2147483647; .loc 1 70 4 setp.gt.s32 %r49,%r48,1044381695; @ %r49 bra $L2; .loc 1 71 9 cvt.rzi.s32.f64 %r50,%r43; .loc 1 71 8 setp.eq.u32 %r51,%r50,0; @ %r51 bra $L5; $L2: .loc 1 72 4 mul.f64 %r33,%r43,%r43; .loc 1 73 4 mul.f64 %r34,%r43,%r33; .loc 1 74 27 fma.rn.f64 %r52,%r33,0d3de5d93a5acfd57c,0dbe5ae5e68a2b9ceb; .loc 1 74 21 fma.rn.f64 %r53,%r52,%r33,0d3ec71de357b1fe7d; .loc 1 74 15 fma.rn.f64 %r54,%r53,%r33,0dbf2a01a019c161d5; .loc 1 74 4 fma.rn.f64 %r35,%r54,%r33,0d3f8111111110f8a6; .loc 1 75 4 setp.ne.u32 %r55,%r45,0; @ %r55 bra $L4; .loc 1 75 26 fma.rn.f64 %r56,%r33,%r35,0dbfc5555555555549; .loc 1 75 20 fma.rn.f64 %r42,%r56,%r34,%r43; bra $L1; $L4: .loc 1 76 34 mul.f64 %r57,%r34,%r35; .loc 1 76 32 neg.f64 %r58,%r57; fma.rn.f64 %r59,%r44,0d3fe0000000000000,%r58; .loc 1 76 37 neg.f64 %r60,%r44; fma.rn.f64 %r61,%r59,%r33,%r60; .loc 1 76 40 fma.rn.f64 %r62,%r34,0d3fc5555555555549,%r61; .loc 1 76 20 sub.f64 %r42,%r43,%r62; bra $L1; $L5: .loc 1 71 27 mov.f64 %r42,%r43; $L1: .loc 1 77 1 mov.f64 %value,%r42; st.param.f64 [%value_out],%value; ret; } /350 1591654536 399 399 100644 73426 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // 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 VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[5] = {97,99,111,115,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[6] = {97,99,111,115,102,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[5] = {97,115,105,110,0 }; // BEGIN VAR DEF: $LC3 .const .align 1 .u8 $LC3[6] = {97,115,105,110,102,0 }; // BEGIN VAR DEF: $LC4 .const .align 1 .u8 $LC4[6] = {97,116,97,110,50,0 }; // BEGIN VAR DEF: $LC5 .const .align 1 .u8 $LC5[7] = {97,116,97,110,50,102,0 }; // BEGIN VAR DEF: $LC6 .const .align 1 .u8 $LC6[6] = {104,121,112,111,116,0 }; // BEGIN VAR DEF: $LC7 .const .align 1 .u8 $LC7[7] = {104,121,112,111,116,102,0 }; // BEGIN VAR DEF: $LC8 .const .align 1 .u8 $LC8[5] = {99,111,115,104,0 }; // BEGIN VAR DEF: $LC9 .const .align 1 .u8 $LC9[6] = {99,111,115,104,102,0 }; // BEGIN VAR DEF: $LC10 .const .align 1 .u8 $LC10[4] = {101,120,112,0 }; // BEGIN VAR DEF: $LC11 .const .align 1 .u8 $LC11[5] = {101,120,112,102,0 }; // BEGIN VAR DEF: $LC12 .const .align 1 .u8 $LC12[3] = {121,48,0 }; // BEGIN VAR DEF: $LC13 .const .align 1 .u8 $LC13[4] = {121,48,102,0 }; // BEGIN VAR DEF: $LC14 .const .align 1 .u8 $LC14[3] = {121,49,0 }; // BEGIN VAR DEF: $LC15 .const .align 1 .u8 $LC15[4] = {121,49,102,0 }; // BEGIN VAR DEF: $LC16 .const .align 1 .u8 $LC16[3] = {121,110,0 }; // BEGIN VAR DEF: $LC17 .const .align 1 .u8 $LC17[4] = {121,110,102,0 }; // BEGIN VAR DEF: $LC18 .const .align 1 .u8 $LC18[7] = {108,103,97,109,109,97,0 }; // BEGIN VAR DEF: $LC19 .const .align 1 .u8 $LC19[8] = {108,103,97,109,109,97,102,0 }; // BEGIN VAR DEF: $LC33 .const .align 1 .u8 $LC33[11] = {114,101,109,97,105,110,100,101,114,102,0 }; // BEGIN VAR DEF: $LC34 .const .align 1 .u8 $LC34[6] = {97,99,111,115,104,0 }; // BEGIN VAR DEF: $LC35 .const .align 1 .u8 $LC35[7] = {97,99,111,115,104,102,0 }; // BEGIN VAR DEF: $LC36 .const .align 1 .u8 $LC36[6] = {97,116,97,110,104,0 }; // BEGIN VAR DEF: $LC37 .const .align 1 .u8 $LC37[7] = {97,116,97,110,104,102,0 }; // BEGIN VAR DEF: $LC38 .const .align 1 .u8 $LC38[6] = {115,99,97,108,98,0 }; // BEGIN VAR DEF: $LC39 .const .align 1 .u8 $LC39[7] = {115,99,97,108,98,102,0 }; // BEGIN VAR DEF: $LC30 .const .align 1 .u8 $LC30[5] = {102,109,111,100,0 }; // BEGIN VAR DEF: $LC31 .const .align 1 .u8 $LC31[6] = {102,109,111,100,102,0 }; // BEGIN VAR DEF: $LC32 .const .align 1 .u8 $LC32[10] = {114,101,109,97,105,110,100,101,114,0 }; // BEGIN VAR DEF: $LC27 .const .align 1 .u8 $LC27[6] = {115,105,110,104,102,0 }; // BEGIN VAR DEF: $LC40 .const .align 1 .u8 $LC40[3] = {106,48,0 }; // BEGIN VAR DEF: $LC41 .const .align 1 .u8 $LC41[4] = {106,48,102,0 }; // BEGIN VAR DEF: $LC42 .const .align 1 .u8 $LC42[3] = {106,49,0 }; // BEGIN VAR DEF: $LC20 .const .align 1 .u8 $LC20[4] = {108,111,103,0 }; // BEGIN VAR DEF: $LC21 .const .align 1 .u8 $LC21[5] = {108,111,103,102,0 }; // BEGIN VAR DEF: $LC22 .const .align 1 .u8 $LC22[6] = {108,111,103,49,48,0 }; // BEGIN VAR DEF: $LC23 .const .align 1 .u8 $LC23[7] = {108,111,103,49,48,102,0 }; // BEGIN VAR DEF: $LC24 .const .align 1 .u8 $LC24[4] = {112,111,119,0 }; // BEGIN VAR DEF: $LC25 .const .align 1 .u8 $LC25[5] = {112,111,119,102,0 }; // BEGIN VAR DEF: $LC26 .const .align 1 .u8 $LC26[5] = {115,105,110,104,0 }; // BEGIN VAR DEF: $LC28 .const .align 1 .u8 $LC28[5] = {115,113,114,116,0 }; // BEGIN VAR DEF: $LC29 .const .align 1 .u8 $LC29[6] = {115,113,114,116,102,0 }; // BEGIN VAR DEF: $LC43 .const .align 1 .u8 $LC43[4] = {106,49,102,0 }; // BEGIN VAR DEF: $LC44 .const .align 1 .u8 $LC44[3] = {106,110,0 }; // BEGIN VAR DEF: $LC45 .const .align 1 .u8 $LC45[4] = {106,110,102,0 }; // BEGIN VAR DEF: $LC46 .const .align 1 .u8 $LC46[6] = {103,97,109,109,97,0 }; // BEGIN VAR DEF: $LC47 .const .align 1 .u8 $LC47[7] = {103,97,109,109,97,102,0 }; // 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 .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 %r34; .reg .u32 %r38; .reg .u32 %r42; .reg .u32 %r50; .reg .u32 %r54; .reg .u32 %r58; .reg .u32 %r62; .reg .u32 %r66; .reg .u32 %r70; .reg .u32 %r74; .reg .u32 %r78; .reg .u32 %r82; .reg .u32 %r86; .reg .u32 %r90; .reg .u32 %r94; .reg .u32 %r101; .reg .u32 %r111; .reg .u32 %r115; .reg .u32 %r120; .reg .u32 %r124; .reg .u32 %r129; .reg .u32 %r187; .reg .u32 %r191; .reg .u32 %r201; .reg .u64 %r202; .reg .u64 %r203; .reg .u64 %r204; .reg .u64 %r205; .reg .u64 %r206; .reg .u64 %r207; .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 %r216; .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 %r225; .reg .u64 %r226; .reg .f64 %r227; .reg .f64 %r228; .reg .u64 %r229; .reg .u64 %r230; .reg .u64 %r231; .reg .u64 %r232; .reg .u64 %r233; .reg .u64 %r234; .reg .u64 %r235; .reg .f64 %r236; .reg .u64 %r237; .reg .u64 %r238; .reg .u64 %r239; .reg .u64 %r240; .reg .u64 %r241; .reg .u64 %r242; .reg .u64 %r243; .reg .u64 %r244; .reg .u64 %r245; .reg .u64 %r246; .reg .u32 %r247; .reg .f64 %r248; .reg .u32 %r249; .reg .f64 %r250; .reg .f64 %r251; .reg .f64 %r252; .reg .u32 %r253; .reg .u32 %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 .pred %r263; .reg .pred %r264; .reg .pred %r265; .reg .pred %r266; .reg .pred %r267; .reg .pred %r268; .reg .pred %r269; .reg .pred %r270; .reg .pred %r271; .reg .pred %r272; .reg .pred %r273; .reg .pred %r274; .reg .pred %r275; .reg .pred %r276; .reg .pred %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 .pred %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 .pred %r311; .reg .pred %r312; .reg .pred %r313; .reg .pred %r314; .reg .pred %r315; .reg .pred %r316; .reg .pred %r317; .reg .pred %r318; .reg .pred %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 .pred %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 .pred %r353; .reg .pred %r354; .reg .pred %r355; .reg .pred %r356; .reg .pred %r357; .reg .pred %r358; .reg .pred %r359; .reg .pred %r360; .reg .u32 %r361; .reg .pred %r362; .reg .f64 %r363; .reg .u32 %r364; .reg .pred %r365; .reg .u64 %r366; .reg .u32 %r367; .reg .u32 %r369; .reg .pred %r370; .reg .u64 %r371; .reg .u32 %r372; .reg .u32 %r373; .reg .pred %r374; .reg .f64 %r375; .reg .u32 %r376; .reg .pred %r377; .reg .u64 %r378; .reg .u32 %r379; .reg .u32 %r381; .reg .pred %r382; .reg .u64 %r383; .reg .u32 %r384; .reg .u32 %r385; .reg .pred %r386; .reg .f64 %r387; .reg .u32 %r388; .reg .pred %r389; .reg .u64 %r390; .reg .u32 %r391; .reg .u32 %r393; .reg .pred %r394; .reg .u64 %r395; .reg .u32 %r396; .reg .u32 %r397; .reg .pred %r398; .reg .pred %r399; .reg .f64 %r400; .reg .f64 %r401; .reg .pred %r402; .reg .u64 %r403; .reg .u32 %r404; .reg .u32 %r406; .reg .pred %r407; .reg .u64 %r408; .reg .u32 %r409; .reg .u32 %r410; .reg .pred %r411; .reg .pred %r412; .reg .f64 %r413; .reg .f64 %r414; .reg .pred %r415; .reg .u64 %r416; .reg .u32 %r417; .reg .u32 %r419; .reg .pred %r420; .reg .u64 %r421; .reg .u32 %r422; .reg .u32 %r423; .reg .pred %r424; .reg .pred %r425; .reg .f64 %r426; .reg .f64 %r427; .reg .pred %r428; .reg .u64 %r429; .reg .u32 %r430; .reg .u32 %r432; .reg .pred %r433; .reg .u64 %r434; .reg .u32 %r435; .reg .u32 %r436; .reg .pred %r437; .reg .f64 %r438; .reg .u32 %r439; .reg .pred %r440; .reg .u64 %r441; .reg .u32 %r442; .reg .u32 %r444; .reg .pred %r445; .reg .u64 %r446; .reg .u32 %r447; .reg .u32 %r448; .reg .pred %r449; .reg .pred %r450; .reg .f64 %r451; .reg .f64 %r452; .reg .pred %r453; .reg .u64 %r454; .reg .u32 %r455; .reg .u32 %r457; .reg .pred %r458; .reg .u64 %r459; .reg .u32 %r460; .reg .u32 %r461; .reg .pred %r462; .reg .pred %r463; .reg .f64 %r464; .reg .f64 %r465; .reg .pred %r466; .reg .u64 %r467; .reg .u32 %r468; .reg .u32 %r470; .reg .pred %r471; .reg .u64 %r472; .reg .u32 %r473; .reg .u32 %r474; .reg .pred %r475; .reg .pred %r476; .reg .f64 %r477; .reg .f64 %r478; .reg .pred %r479; .reg .u64 %r480; .reg .u32 %r481; .reg .u32 %r483; .reg .pred %r484; .reg .u64 %r485; .reg .u32 %r486; .reg .u32 %r487; .reg .pred %r488; .reg .pred %r489; .reg .f64 %r490; .reg .f64 %r491; .reg .pred %r492; .reg .u64 %r493; .reg .u32 %r494; .reg .u32 %r496; .reg .pred %r497; .reg .u64 %r498; .reg .u32 %r499; .reg .u32 %r500; .reg .pred %r501; .reg .pred %r502; .reg .f64 %r503; .reg .f64 %r504; .reg .pred %r505; .reg .u64 %r506; .reg .u32 %r507; .reg .u32 %r509; .reg .pred %r510; .reg .u64 %r511; .reg .u32 %r512; .reg .u32 %r513; .reg .pred %r514; .reg .pred %r515; .reg .f64 %r516; .reg .f64 %r517; .reg .pred %r518; .reg .u64 %r519; .reg .u32 %r520; .reg .u32 %r522; .reg .pred %r523; .reg .u64 %r524; .reg .u32 %r525; .reg .u32 %r526; .reg .pred %r527; .reg .pred %r528; .reg .f64 %r529; .reg .f64 %r530; .reg .pred %r531; .reg .u64 %r532; .reg .u32 %r533; .reg .u32 %r535; .reg .pred %r536; .reg .u64 %r537; .reg .u32 %r538; .reg .u32 %r539; .reg .pred %r540; .reg .pred %r541; .reg .f64 %r542; .reg .f64 %r543; .reg .pred %r544; .reg .u64 %r545; .reg .u32 %r546; .reg .u32 %r548; .reg .pred %r549; .reg .u64 %r550; .reg .u32 %r551; .reg .u32 %r552; .reg .pred %r553; .reg .pred %r554; .reg .f64 %r555; .reg .f64 %r556; .reg .pred %r557; .reg .u64 %r558; .reg .u32 %r559; .reg .u32 %r561; .reg .pred %r562; .reg .u64 %r563; .reg .u32 %r564; .reg .u32 %r565; .reg .pred %r566; .reg .pred %r567; .reg .f64 %r568; .reg .f64 %r569; .reg .pred %r570; .reg .u64 %r571; .reg .u32 %r572; .reg .u32 %r574; .reg .pred %r575; .reg .u64 %r576; .reg .u32 %r577; .reg .u32 %r578; .reg .pred %r579; .reg .pred %r580; .reg .f64 %r581; .reg .f64 %r582; .reg .pred %r583; .reg .u64 %r584; .reg .u32 %r585; .reg .u32 %r587; .reg .pred %r588; .reg .u64 %r589; .reg .u32 %r590; .reg .u32 %r591; .reg .pred %r592; .reg .pred %r593; .reg .f64 %r594; .reg .f64 %r595; .reg .pred %r596; .reg .u64 %r597; .reg .u32 %r598; .reg .u32 %r600; .reg .pred %r601; .reg .u64 %r602; .reg .u32 %r603; .reg .u32 %r604; .reg .pred %r605; .reg .f64 %r606; .reg .u32 %r607; .reg .pred %r608; .reg .u32 %r610; .reg .pred %r611; .reg .u64 %r612; .reg .u32 %r613; .reg .u32 %r614; .reg .pred %r615; .reg .pred %r616; .reg .f64 %r617; .reg .pred %r618; .reg .f64 %r620; .reg .pred %r621; .reg .f64 %r622; .reg .f64 %r623; .reg .pred %r624; .reg .f64 %r626; .reg .pred %r627; .reg .f64 %r628; .reg .pred %r629; .reg .u64 %r630; .reg .u32 %r631; .reg .u32 %r633; .reg .pred %r634; .reg .u64 %r635; .reg .u32 %r636; .reg .u32 %r637; .reg .pred %r638; .reg .f64 %r639; .reg .u32 %r640; .reg .pred %r641; .reg .u64 %r642; .reg .u32 %r643; .reg .u32 %r645; .reg .pred %r646; .reg .u64 %r647; .reg .u32 %r648; .reg .u32 %r649; .reg .pred %r650; .reg .pred %r651; .reg .f64 %r652; .reg .f64 %r653; .reg .pred %r654; .reg .u64 %r655; .reg .u32 %r656; .reg .u32 %r658; .reg .pred %r659; .reg .u64 %r660; .reg .u32 %r661; .reg .u32 %r662; .reg .pred %r663; .reg .pred %r664; .reg .f64 %r665; .reg .f64 %r666; .reg .f64 %r667; .reg .pred %r668; .reg .u64 %r669; .reg .u32 %r670; .reg .u32 %r672; .reg .pred %r673; .reg .u64 %r674; .reg .u32 %r675; .reg .u32 %r676; .reg .pred %r677; .reg .pred %r678; .reg .pred %r679; .reg .pred %r680; .reg .pred %r681; .reg .u64 %r682; .reg .u32 %r683; .reg .u32 %r685; .reg .pred %r686; .reg .u64 %r687; .reg .u32 %r688; .reg .u32 %r689; .reg .pred %r690; .reg .pred %r691; .reg .f64 %r692; .reg .f64 %r693; .reg .f64 %r694; .reg .pred %r695; .reg .u64 %r696; .reg .u32 %r697; .reg .u32 %r699; .reg .pred %r700; .reg .u64 %r701; .reg .u32 %r702; .reg .u32 %r703; .reg .pred %r704; .reg .pred %r705; .reg .f64 %r706; .reg .f64 %r707; .reg .pred %r708; .reg .u64 %r709; .reg .u32 %r710; .reg .u32 %r712; .reg .pred %r713; .reg .u64 %r714; .reg .u32 %r715; .reg .u32 %r716; .reg .pred %r717; .reg .f64 %r718; .reg .f64 %r719; .reg .u32 %r720; .reg .pred %r721; .reg .u64 %r722; .reg .u32 %r723; .reg .u32 %r725; .reg .pred %r726; .reg .u64 %r727; .reg .u32 %r728; .reg .u32 %r729; .reg .pred %r730; .reg .f64 %r731; .reg .f64 %r732; .reg .u32 %r733; .reg .pred %r734; .reg .u64 %r735; .reg .u32 %r736; .reg .u32 %r738; .reg .pred %r739; .reg .u64 %r740; .reg .u32 %r741; .reg .u32 %r742; .reg .pred %r743; .reg .f64 %r744; .reg .f64 %r745; .reg .u32 %r746; .reg .pred %r747; .reg .u64 %r748; .reg .u32 %r749; .reg .u32 %r751; .reg .pred %r752; .reg .u64 %r753; .reg .u32 %r754; .reg .u32 %r755; .reg .pred %r756; .reg .f64 %r757; .reg .u32 %r758; .reg .pred %r759; .reg .u64 %r760; .reg .u32 %r761; .reg .u32 %r763; .reg .pred %r764; .reg .u64 %r765; .reg .u32 %r766; .reg .u32 %r767; .reg .pred %r768; .reg .pred %r769; .reg .u32 %r770; .reg .pred %r771; .reg .u64 %r772; .reg .u32 %r773; .reg .u32 %r775; .reg .pred %r776; .reg .u64 %r777; .reg .u32 %r778; .reg .u32 %r779; .reg .pred %r780; .reg .f64 %r781; .reg .f64 %r783; .reg .u32 %r784; .reg .pred %r785; .reg .u64 %r786; .reg .u32 %r787; .reg .u32 %r789; .reg .pred %r790; .reg .u64 %r791; .reg .u32 %r792; .reg .u32 %r793; .reg .pred %r794; .reg .f64 %r795; .reg .u32 %r796; .reg .pred %r797; .reg .u64 %r798; .reg .u32 %r799; .reg .u32 %r801; .reg .pred %r802; .reg .u64 %r803; .reg .u32 %r804; .reg .u32 %r805; .reg .pred %r806; .reg .f64 %r807; .reg .u32 %r808; .reg .pred %r809; .reg .u64 %r810; .reg .u32 %r811; .reg .u32 %r813; .reg .pred %r814; .reg .u64 %r815; .reg .u32 %r816; .reg .u32 %r817; .reg .pred %r818; .reg .f64 %r819; .reg .u32 %r820; .reg .pred %r821; .reg .u64 %r822; .reg .u32 %r823; .reg .u32 %r825; .reg .pred %r826; .reg .u64 %r827; .reg .u32 %r828; .reg .u32 %r829; .reg .pred %r830; .reg .f64 %r831; .reg .u32 %r832; .reg .pred %r833; .reg .u64 %r834; .reg .u32 %r835; .reg .u32 %r837; .reg .pred %r838; .reg .u64 %r839; .reg .u32 %r840; .reg .u32 %r841; .reg .pred %r842; .reg .f64 %r843; .reg .u32 %r844; .reg .pred %r845; .reg .u64 %r846; .reg .u32 %r847; .reg .u32 %r849; .reg .pred %r850; .reg .u64 %r851; .reg .u32 %r852; .reg .u32 %r853; .reg .pred %r854; .reg .f64 %r855; .reg .u32 %r856; .reg .pred %r857; .reg .u64 %r858; .reg .u32 %r859; .reg .u32 %r861; .reg .pred %r862; .reg .u64 %r863; .reg .u32 %r864; .reg .u32 %r865; .reg .pred %r866; .reg .pred %r867; .reg .f64 %r868; .reg .f64 %r869; .reg .pred %r870; .reg .u64 %r871; .reg .u32 %r872; .reg .u32 %r874; .reg .pred %r875; .reg .u64 %r876; .reg .u32 %r877; .reg .u32 %r878; .reg .pred %r879; .reg .pred %r880; .reg .f64 %r881; .reg .f64 %r882; .reg .pred %r883; .reg .u64 %r884; .reg .u32 %r885; .reg .u32 %r887; .reg .pred %r888; .reg .u64 %r889; .reg .u32 %r890; .reg .u32 %r891; .reg .pred %r892; .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 .u32 %r906; .reg .pred %r907; .reg .u64 %r908; .reg .u32 %r909; .reg .pred %r910; .reg .u64 %r911; mov.f64 %r251,%ar0; mov.f64 %r252,%ar1; mov.u32 %r253,%ar2; .loc 1 99 11 st.f64 [%frame+16],%r251; .loc 1 100 11 st.f64 [%frame+24],%r252; .loc 1 101 10 mov.u32 %r254,0; st.u32 [%frame+40],%r254; setp.eq.u32 %r255,%r253,42; @ %r255 bra $L2; setp.gt.s32 %r256,%r253,42; @ %r256 bra $L3; setp.eq.u32 %r257,%r253,21; @ %r257 bra $L4; setp.gt.s32 %r258,%r253,21; @ %r258 bra $L5; setp.eq.u32 %r259,%r253,10; @ %r259 bra $L6; setp.gt.s32 %r260,%r253,10; @ %r260 bra $L7; setp.eq.u32 %r261,%r253,5; @ %r261 bra $L8; setp.gt.s32 %r262,%r253,5; @ %r262 bra $L9; setp.eq.u32 %r263,%r253,2; @ %r263 bra $L10; setp.gt.s32 %r264,%r253,2; @ %r264 bra $L11; setp.eq.u32 %r265,%r253,1; @ %r265 bra $L12; bra $L498; $L11: setp.eq.u32 %r266,%r253,3; @ %r266 bra $L14; setp.eq.u32 %r267,%r253,4; @ %r267 bra $L15; bra $L498; $L9: setp.eq.u32 %r268,%r253,7; @ %r268 bra $L16; setp.lt.s32 %r269,%r253,7; @ %r269 bra $L17; setp.eq.u32 %r270,%r253,8; @ %r270 bra $L18; setp.eq.u32 %r271,%r253,9; @ %r271 bra $L19; bra $L498; $L7: setp.eq.u32 %r272,%r253,15; @ %r272 bra $L20; setp.gt.s32 %r273,%r253,15; @ %r273 bra $L21; setp.eq.u32 %r274,%r253,12; @ %r274 bra $L22; setp.lt.s32 %r275,%r253,12; @ %r275 bra $L23; setp.eq.u32 %r276,%r253,13; @ %r276 bra $L24; setp.eq.u32 %r277,%r253,14; @ %r277 bra $L25; bra $L498; $L21: setp.eq.u32 %r278,%r253,18; @ %r278 bra $L26; setp.gt.s32 %r279,%r253,18; @ %r279 bra $L27; setp.eq.u32 %r280,%r253,16; @ %r280 bra $L28; setp.eq.u32 %r281,%r253,17; @ %r281 bra $L29; bra $L498; $L27: setp.eq.u32 %r282,%r253,19; @ %r282 bra $L30; setp.eq.u32 %r283,%r253,20; @ %r283 bra $L31; bra $L498; $L5: setp.eq.u32 %r284,%r253,31; @ %r284 bra $L32; setp.gt.s32 %r285,%r253,31; @ %r285 bra $L33; setp.eq.u32 %r286,%r253,26; @ %r286 bra $L34; setp.gt.s32 %r287,%r253,26; @ %r287 bra $L35; setp.eq.u32 %r288,%r253,23; @ %r288 bra $L36; setp.lt.s32 %r289,%r253,23; @ %r289 bra $L37; setp.eq.u32 %r290,%r253,24; @ %r290 bra $L38; setp.eq.u32 %r291,%r253,25; @ %r291 bra $L39; bra $L498; $L35: setp.eq.u32 %r292,%r253,28; @ %r292 bra $L40; setp.lt.s32 %r293,%r253,28; @ %r293 bra $L41; setp.eq.u32 %r294,%r253,29; @ %r294 bra $L42; setp.eq.u32 %r295,%r253,30; @ %r295 bra $L43; bra $L498; $L33: setp.eq.u32 %r296,%r253,36; @ %r296 bra $L44; setp.gt.s32 %r297,%r253,36; @ %r297 bra $L45; setp.eq.u32 %r298,%r253,33; @ %r298 bra $L46; setp.lt.s32 %r299,%r253,33; @ %r299 bra $L47; setp.eq.u32 %r300,%r253,34; @ %r300 bra $L48; setp.eq.u32 %r301,%r253,35; @ %r301 bra $L49; bra $L498; $L45: setp.eq.u32 %r302,%r253,39; @ %r302 bra $L50; setp.gt.s32 %r303,%r253,39; @ %r303 bra $L51; setp.eq.u32 %r304,%r253,37; @ %r304 bra $L52; setp.eq.u32 %r305,%r253,38; @ %r305 bra $L53; bra $L498; $L51: setp.eq.u32 %r306,%r253,40; @ %r306 bra $L54; setp.eq.u32 %r307,%r253,41; @ %r307 bra $L55; bra $L498; $L3: setp.eq.u32 %r308,%r253,121; @ %r308 bra $L4; setp.gt.s32 %r309,%r253,121; @ %r309 bra $L56; setp.eq.u32 %r310,%r253,110; @ %r310 bra $L6; setp.gt.s32 %r311,%r253,110; @ %r311 bra $L57; setp.eq.u32 %r312,%r253,105; @ %r312 bra $L8; setp.gt.s32 %r313,%r253,105; @ %r313 bra $L58; setp.eq.u32 %r314,%r253,102; @ %r314 bra $L10; setp.gt.s32 %r315,%r253,102; @ %r315 bra $L59; setp.eq.u32 %r316,%r253,101; @ %r316 bra $L12; bra $L498; $L59: setp.eq.u32 %r317,%r253,103; @ %r317 bra $L14; setp.eq.u32 %r318,%r253,104; @ %r318 bra $L15; bra $L498; $L58: setp.eq.u32 %r319,%r253,107; @ %r319 bra $L16; setp.lt.s32 %r320,%r253,107; @ %r320 bra $L17; setp.eq.u32 %r321,%r253,108; @ %r321 bra $L18; setp.eq.u32 %r322,%r253,109; @ %r322 bra $L19; bra $L498; $L57: setp.eq.u32 %r323,%r253,115; @ %r323 bra $L20; setp.gt.s32 %r324,%r253,115; @ %r324 bra $L60; setp.eq.u32 %r325,%r253,112; @ %r325 bra $L22; setp.lt.s32 %r326,%r253,112; @ %r326 bra $L23; setp.eq.u32 %r327,%r253,113; @ %r327 bra $L24; setp.eq.u32 %r328,%r253,114; @ %r328 bra $L25; bra $L498; $L60: setp.eq.u32 %r329,%r253,118; @ %r329 bra $L26; setp.gt.s32 %r330,%r253,118; @ %r330 bra $L61; setp.eq.u32 %r331,%r253,116; @ %r331 bra $L28; setp.eq.u32 %r332,%r253,117; @ %r332 bra $L29; bra $L498; $L61: setp.eq.u32 %r333,%r253,119; @ %r333 bra $L30; setp.eq.u32 %r334,%r253,120; @ %r334 bra $L31; bra $L498; $L56: setp.eq.u32 %r335,%r253,132; @ %r335 bra $L47; setp.gt.s32 %r336,%r253,132; @ %r336 bra $L62; setp.eq.u32 %r337,%r253,126; @ %r337 bra $L34; setp.gt.s32 %r338,%r253,126; @ %r338 bra $L63; setp.eq.u32 %r339,%r253,123; @ %r339 bra $L36; setp.lt.s32 %r340,%r253,123; @ %r340 bra $L37; setp.eq.u32 %r341,%r253,124; @ %r341 bra $L38; setp.eq.u32 %r342,%r253,125; @ %r342 bra $L39; bra $L498; $L63: setp.eq.u32 %r343,%r253,129; @ %r343 bra $L42; setp.gt.s32 %r344,%r253,129; @ %r344 bra $L64; setp.eq.u32 %r345,%r253,127; @ %r345 bra $L41; setp.eq.u32 %r346,%r253,128; @ %r346 bra $L40; bra $L498; $L64: setp.eq.u32 %r347,%r253,130; @ %r347 bra $L43; setp.eq.u32 %r348,%r253,131; @ %r348 bra $L32; bra $L498; $L62: setp.eq.u32 %r349,%r253,137; @ %r349 bra $L52; setp.gt.s32 %r350,%r253,137; @ %r350 bra $L65; setp.eq.u32 %r351,%r253,134; @ %r351 bra $L48; setp.lt.s32 %r352,%r253,134; @ %r352 bra $L46; setp.eq.u32 %r353,%r253,135; @ %r353 bra $L49; setp.eq.u32 %r354,%r253,136; @ %r354 bra $L44; bra $L498; $L65: setp.eq.u32 %r355,%r253,140; @ %r355 bra $L54; setp.gt.s32 %r356,%r253,140; @ %r356 bra $L66; setp.eq.u32 %r357,%r253,138; @ %r357 bra $L53; setp.eq.u32 %r358,%r253,139; @ %r358 bra $L50; bra $L498; $L66: setp.eq.u32 %r359,%r253,141; @ %r359 bra $L55; setp.eq.u32 %r360,%r253,142; @ %r360 bra $L2; bra $L498; $L12: .loc 1 106 12 mov.u32 %r361,1; st.u32 [%frame],%r361; .loc 1 107 34 setp.le.s32 %r362,%r253,99; @ %r362 bra $L226; cvta.const.u64 %r202,$LC1; bra $L67; $L226: cvta.const.u64 %r202,$LC0; $L67: .loc 1 107 12 st.u64 [%frame+8],%r202; .loc 1 108 14 mov.f64 %r363,0d0000000000000000; st.f64 [%frame+32],%r363; .loc 1 109 6 ld.global.u32 %r364,[__fdlib_version]; setp.ne.u32 %r365,%r364,2; @ %r365 bra $L68; .loc 1 110 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r366,[%value_in]; } .loc 1 110 11 mov.u32 %r367,33; st.u32 [%r366],%r367; ld.u32 %r249,[%frame+40]; bra $L13; $L68: .loc 1 111 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r369,[%value_in]; } .loc 1 111 11 setp.eq.u32 %r370,%r369,0; @ %r370 bra $L69; ld.u32 %r249,[%frame+40]; bra $L13; $L69: .loc 1 115 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r371,[%value_in]; } .loc 1 115 11 mov.u32 %r372,33; st.u32 [%r371],%r372; ld.u32 %r249,[%frame+40]; bra $L13; $L10: .loc 1 121 12 mov.u32 %r373,1; st.u32 [%frame],%r373; .loc 1 122 34 setp.le.s32 %r374,%r253,99; @ %r374 bra $L227; cvta.const.u64 %r203,$LC3; bra $L70; $L227: cvta.const.u64 %r203,$LC2; $L70: .loc 1 122 12 st.u64 [%frame+8],%r203; .loc 1 123 14 mov.f64 %r375,0d0000000000000000; st.f64 [%frame+32],%r375; .loc 1 124 5 ld.global.u32 %r376,[__fdlib_version]; setp.ne.u32 %r377,%r376,2; @ %r377 bra $L71; .loc 1 125 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r378,[%value_in]; } .loc 1 125 11 mov.u32 %r379,33; st.u32 [%r378],%r379; ld.u32 %r249,[%frame+40]; bra $L13; $L71: .loc 1 126 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r381,[%value_in]; } .loc 1 126 11 setp.eq.u32 %r382,%r381,0; @ %r382 bra $L72; ld.u32 %r249,[%frame+40]; bra $L13; $L72: .loc 1 130 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r383,[%value_in]; } .loc 1 130 11 mov.u32 %r384,33; st.u32 [%r383],%r384; ld.u32 %r249,[%frame+40]; bra $L13; $L14: .loc 1 136 12 st.f64 [%frame+16],%r252; .loc 1 137 12 st.f64 [%frame+24],%r251; .loc 1 138 12 mov.u32 %r385,1; st.u32 [%frame],%r385; .loc 1 139 35 setp.le.s32 %r386,%r253,99; @ %r386 bra $L228; cvta.const.u64 %r204,$LC5; bra $L73; $L228: cvta.const.u64 %r204,$LC4; $L73: .loc 1 139 12 st.u64 [%frame+8],%r204; .loc 1 140 14 mov.f64 %r387,0d0000000000000000; st.f64 [%frame+32],%r387; .loc 1 141 5 ld.global.u32 %r388,[__fdlib_version]; setp.ne.u32 %r389,%r388,2; @ %r389 bra $L74; .loc 1 142 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r390,[%value_in]; } .loc 1 142 11 mov.u32 %r391,33; st.u32 [%r390],%r391; ld.u32 %r249,[%frame+40]; bra $L13; $L74: .loc 1 143 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r393,[%value_in]; } .loc 1 143 11 setp.eq.u32 %r394,%r393,0; @ %r394 bra $L75; ld.u32 %r249,[%frame+40]; bra $L13; $L75: .loc 1 147 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r395,[%value_in]; } .loc 1 147 11 mov.u32 %r396,33; st.u32 [%r395],%r396; ld.u32 %r249,[%frame+40]; bra $L13; $L15: .loc 1 153 12 mov.u32 %r397,3; st.u32 [%frame],%r397; .loc 1 154 35 setp.le.s32 %r398,%r253,99; @ %r398 bra $L229; cvta.const.u64 %r205,$LC7; bra $L76; $L229: cvta.const.u64 %r205,$LC6; $L76: .loc 1 154 12 st.u64 [%frame+8],%r205; .loc 1 155 20 ld.global.u32 %r34,[__fdlib_version]; .loc 1 155 6 setp.ne.u32 %r399,%r34,0; @ %r399 bra $L77; .loc 1 156 16 mov.f64 %r400,0d47efffffe0000000; st.f64 [%frame+32],%r400; bra $L78; $L77: .loc 1 158 16 mov.f64 %r401,0d7ff0000000000000; st.f64 [%frame+32],%r401; .loc 1 159 6 setp.ne.u32 %r402,%r34,2; @ %r402 bra $L78; .loc 1 160 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r403,[%value_in]; } .loc 1 160 11 mov.u32 %r404,34; st.u32 [%r403],%r404; ld.u32 %r249,[%frame+40]; bra $L13; $L78: .loc 1 161 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r406,[%value_in]; } .loc 1 161 11 setp.eq.u32 %r407,%r406,0; @ %r407 bra $L79; ld.u32 %r249,[%frame+40]; bra $L13; $L79: .loc 1 162 4 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r408,[%value_in]; } .loc 1 162 10 mov.u32 %r409,34; st.u32 [%r408],%r409; ld.u32 %r249,[%frame+40]; bra $L13; $L8: .loc 1 168 12 mov.u32 %r410,3; st.u32 [%frame],%r410; .loc 1 169 34 setp.le.s32 %r411,%r253,99; @ %r411 bra $L230; cvta.const.u64 %r206,$LC9; bra $L80; $L230: cvta.const.u64 %r206,$LC8; $L80: .loc 1 169 12 st.u64 [%frame+8],%r206; .loc 1 170 20 ld.global.u32 %r38,[__fdlib_version]; .loc 1 170 6 setp.ne.u32 %r412,%r38,0; @ %r412 bra $L81; .loc 1 171 16 mov.f64 %r413,0d47efffffe0000000; st.f64 [%frame+32],%r413; bra $L82; $L81: .loc 1 173 16 mov.f64 %r414,0d7ff0000000000000; st.f64 [%frame+32],%r414; .loc 1 174 6 setp.ne.u32 %r415,%r38,2; @ %r415 bra $L82; .loc 1 175 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r416,[%value_in]; } .loc 1 175 11 mov.u32 %r417,34; st.u32 [%r416],%r417; ld.u32 %r249,[%frame+40]; bra $L13; $L82: .loc 1 176 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r419,[%value_in]; } .loc 1 176 11 setp.eq.u32 %r420,%r419,0; @ %r420 bra $L83; ld.u32 %r249,[%frame+40]; bra $L13; $L83: .loc 1 177 4 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r421,[%value_in]; } .loc 1 177 10 mov.u32 %r422,34; st.u32 [%r421],%r422; ld.u32 %r249,[%frame+40]; bra $L13; $L17: .loc 1 183 12 mov.u32 %r423,3; st.u32 [%frame],%r423; .loc 1 184 33 setp.le.s32 %r424,%r253,99; @ %r424 bra $L231; cvta.const.u64 %r207,$LC11; bra $L84; $L231: cvta.const.u64 %r207,$LC10; $L84: .loc 1 184 12 st.u64 [%frame+8],%r207; .loc 1 185 20 ld.global.u32 %r42,[__fdlib_version]; .loc 1 185 6 setp.ne.u32 %r425,%r42,0; @ %r425 bra $L85; .loc 1 186 16 mov.f64 %r426,0d47efffffe0000000; st.f64 [%frame+32],%r426; bra $L86; $L85: .loc 1 188 16 mov.f64 %r427,0d7ff0000000000000; st.f64 [%frame+32],%r427; .loc 1 189 6 setp.ne.u32 %r428,%r42,2; @ %r428 bra $L86; .loc 1 190 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r429,[%value_in]; } .loc 1 190 11 mov.u32 %r430,34; st.u32 [%r429],%r430; ld.u32 %r249,[%frame+40]; bra $L13; $L86: .loc 1 191 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r432,[%value_in]; } .loc 1 191 11 setp.eq.u32 %r433,%r432,0; @ %r433 bra $L87; ld.u32 %r249,[%frame+40]; bra $L13; $L87: .loc 1 192 4 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r434,[%value_in]; } .loc 1 192 10 mov.u32 %r435,34; st.u32 [%r434],%r435; ld.u32 %r249,[%frame+40]; bra $L13; $L16: .loc 1 198 12 mov.u32 %r436,4; st.u32 [%frame],%r436; .loc 1 199 33 setp.le.s32 %r437,%r253,99; @ %r437 bra $L232; cvta.const.u64 %r208,$LC11; bra $L88; $L232: cvta.const.u64 %r208,$LC10; $L88: .loc 1 199 12 st.u64 [%frame+8],%r208; .loc 1 200 14 mov.f64 %r438,0d0000000000000000; st.f64 [%frame+32],%r438; .loc 1 201 6 ld.global.u32 %r439,[__fdlib_version]; setp.ne.u32 %r440,%r439,2; @ %r440 bra $L89; .loc 1 202 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r441,[%value_in]; } .loc 1 202 11 mov.u32 %r442,34; st.u32 [%r441],%r442; ld.u32 %r249,[%frame+40]; bra $L13; $L89: .loc 1 203 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r444,[%value_in]; } .loc 1 203 11 setp.eq.u32 %r445,%r444,0; @ %r445 bra $L90; ld.u32 %r249,[%frame+40]; bra $L13; $L90: .loc 1 204 4 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r446,[%value_in]; } .loc 1 204 10 mov.u32 %r447,34; st.u32 [%r446],%r447; ld.u32 %r249,[%frame+40]; bra $L13; $L18: .loc 1 210 12 mov.u32 %r448,1; st.u32 [%frame],%r448; .loc 1 211 32 setp.le.s32 %r449,%r253,99; @ %r449 bra $L233; cvta.const.u64 %r209,$LC13; bra $L91; $L233: cvta.const.u64 %r209,$LC12; $L91: .loc 1 211 12 st.u64 [%frame+8],%r209; .loc 1 212 20 ld.global.u32 %r50,[__fdlib_version]; .loc 1 212 6 setp.ne.u32 %r450,%r50,0; @ %r450 bra $L92; .loc 1 213 16 mov.f64 %r451,0dc7efffffe0000000; st.f64 [%frame+32],%r451; bra $L93; $L92: .loc 1 215 16 mov.f64 %r452,0dfff0000000000000; st.f64 [%frame+32],%r452; .loc 1 216 6 setp.ne.u32 %r453,%r50,2; @ %r453 bra $L93; .loc 1 217 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r454,[%value_in]; } .loc 1 217 11 mov.u32 %r455,33; st.u32 [%r454],%r455; ld.u32 %r249,[%frame+40]; bra $L13; $L93: .loc 1 218 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r457,[%value_in]; } .loc 1 218 11 setp.eq.u32 %r458,%r457,0; @ %r458 bra $L94; ld.u32 %r249,[%frame+40]; bra $L13; $L94: .loc 1 222 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r459,[%value_in]; } .loc 1 222 11 mov.u32 %r460,33; st.u32 [%r459],%r460; ld.u32 %r249,[%frame+40]; bra $L13; $L19: .loc 1 228 12 mov.u32 %r461,1; st.u32 [%frame],%r461; .loc 1 229 32 setp.le.s32 %r462,%r253,99; @ %r462 bra $L234; cvta.const.u64 %r210,$LC13; bra $L95; $L234: cvta.const.u64 %r210,$LC12; $L95: .loc 1 229 12 st.u64 [%frame+8],%r210; .loc 1 230 20 ld.global.u32 %r54,[__fdlib_version]; .loc 1 230 6 setp.ne.u32 %r463,%r54,0; @ %r463 bra $L96; .loc 1 231 16 mov.f64 %r464,0dc7efffffe0000000; st.f64 [%frame+32],%r464; bra $L97; $L96: .loc 1 233 16 mov.f64 %r465,0dfff0000000000000; st.f64 [%frame+32],%r465; .loc 1 234 6 setp.ne.u32 %r466,%r54,2; @ %r466 bra $L97; .loc 1 235 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r467,[%value_in]; } .loc 1 235 11 mov.u32 %r468,33; st.u32 [%r467],%r468; ld.u32 %r249,[%frame+40]; bra $L13; $L97: .loc 1 236 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r470,[%value_in]; } .loc 1 236 11 setp.eq.u32 %r471,%r470,0; @ %r471 bra $L98; ld.u32 %r249,[%frame+40]; bra $L13; $L98: .loc 1 240 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r472,[%value_in]; } .loc 1 240 11 mov.u32 %r473,33; st.u32 [%r472],%r473; ld.u32 %r249,[%frame+40]; bra $L13; $L6: .loc 1 246 12 mov.u32 %r474,1; st.u32 [%frame],%r474; .loc 1 247 32 setp.le.s32 %r475,%r253,99; @ %r475 bra $L235; cvta.const.u64 %r211,$LC15; bra $L99; $L235: cvta.const.u64 %r211,$LC14; $L99: .loc 1 247 12 st.u64 [%frame+8],%r211; .loc 1 248 20 ld.global.u32 %r58,[__fdlib_version]; .loc 1 248 6 setp.ne.u32 %r476,%r58,0; @ %r476 bra $L100; .loc 1 249 16 mov.f64 %r477,0dc7efffffe0000000; st.f64 [%frame+32],%r477; bra $L101; $L100: .loc 1 251 16 mov.f64 %r478,0dfff0000000000000; st.f64 [%frame+32],%r478; .loc 1 252 6 setp.ne.u32 %r479,%r58,2; @ %r479 bra $L101; .loc 1 253 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r480,[%value_in]; } .loc 1 253 11 mov.u32 %r481,33; st.u32 [%r480],%r481; ld.u32 %r249,[%frame+40]; bra $L13; $L101: .loc 1 254 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r483,[%value_in]; } .loc 1 254 11 setp.eq.u32 %r484,%r483,0; @ %r484 bra $L102; ld.u32 %r249,[%frame+40]; bra $L13; $L102: .loc 1 258 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r485,[%value_in]; } .loc 1 258 11 mov.u32 %r486,33; st.u32 [%r485],%r486; ld.u32 %r249,[%frame+40]; bra $L13; $L23: .loc 1 264 12 mov.u32 %r487,1; st.u32 [%frame],%r487; .loc 1 265 32 setp.le.s32 %r488,%r253,99; @ %r488 bra $L236; cvta.const.u64 %r212,$LC15; bra $L103; $L236: cvta.const.u64 %r212,$LC14; $L103: .loc 1 265 12 st.u64 [%frame+8],%r212; .loc 1 266 20 ld.global.u32 %r62,[__fdlib_version]; .loc 1 266 6 setp.ne.u32 %r489,%r62,0; @ %r489 bra $L104; .loc 1 267 16 mov.f64 %r490,0dc7efffffe0000000; st.f64 [%frame+32],%r490; bra $L105; $L104: .loc 1 269 16 mov.f64 %r491,0dfff0000000000000; st.f64 [%frame+32],%r491; .loc 1 270 6 setp.ne.u32 %r492,%r62,2; @ %r492 bra $L105; .loc 1 271 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r493,[%value_in]; } .loc 1 271 11 mov.u32 %r494,33; st.u32 [%r493],%r494; ld.u32 %r249,[%frame+40]; bra $L13; $L105: .loc 1 272 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r496,[%value_in]; } .loc 1 272 11 setp.eq.u32 %r497,%r496,0; @ %r497 bra $L106; ld.u32 %r249,[%frame+40]; bra $L13; $L106: .loc 1 276 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r498,[%value_in]; } .loc 1 276 11 mov.u32 %r499,33; st.u32 [%r498],%r499; ld.u32 %r249,[%frame+40]; bra $L13; $L22: .loc 1 282 12 mov.u32 %r500,1; st.u32 [%frame],%r500; .loc 1 283 32 setp.le.s32 %r501,%r253,99; @ %r501 bra $L237; cvta.const.u64 %r213,$LC17; bra $L107; $L237: cvta.const.u64 %r213,$LC16; $L107: .loc 1 283 12 st.u64 [%frame+8],%r213; .loc 1 284 20 ld.global.u32 %r66,[__fdlib_version]; .loc 1 284 6 setp.ne.u32 %r502,%r66,0; @ %r502 bra $L108; .loc 1 285 16 mov.f64 %r503,0dc7efffffe0000000; st.f64 [%frame+32],%r503; bra $L109; $L108: .loc 1 287 16 mov.f64 %r504,0dfff0000000000000; st.f64 [%frame+32],%r504; .loc 1 288 6 setp.ne.u32 %r505,%r66,2; @ %r505 bra $L109; .loc 1 289 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r506,[%value_in]; } .loc 1 289 11 mov.u32 %r507,33; st.u32 [%r506],%r507; ld.u32 %r249,[%frame+40]; bra $L13; $L109: .loc 1 290 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r509,[%value_in]; } .loc 1 290 11 setp.eq.u32 %r510,%r509,0; @ %r510 bra $L110; ld.u32 %r249,[%frame+40]; bra $L13; $L110: .loc 1 294 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r511,[%value_in]; } .loc 1 294 11 mov.u32 %r512,33; st.u32 [%r511],%r512; ld.u32 %r249,[%frame+40]; bra $L13; $L24: .loc 1 300 12 mov.u32 %r513,1; st.u32 [%frame],%r513; .loc 1 301 32 setp.le.s32 %r514,%r253,99; @ %r514 bra $L238; cvta.const.u64 %r214,$LC17; bra $L111; $L238: cvta.const.u64 %r214,$LC16; $L111: .loc 1 301 12 st.u64 [%frame+8],%r214; .loc 1 302 20 ld.global.u32 %r70,[__fdlib_version]; .loc 1 302 6 setp.ne.u32 %r515,%r70,0; @ %r515 bra $L112; .loc 1 303 16 mov.f64 %r516,0dc7efffffe0000000; st.f64 [%frame+32],%r516; bra $L113; $L112: .loc 1 305 16 mov.f64 %r517,0dfff0000000000000; st.f64 [%frame+32],%r517; .loc 1 306 6 setp.ne.u32 %r518,%r70,2; @ %r518 bra $L113; .loc 1 307 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r519,[%value_in]; } .loc 1 307 11 mov.u32 %r520,33; st.u32 [%r519],%r520; ld.u32 %r249,[%frame+40]; bra $L13; $L113: .loc 1 308 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r522,[%value_in]; } .loc 1 308 11 setp.eq.u32 %r523,%r522,0; @ %r523 bra $L114; ld.u32 %r249,[%frame+40]; bra $L13; $L114: .loc 1 312 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r524,[%value_in]; } .loc 1 312 11 mov.u32 %r525,33; st.u32 [%r524],%r525; ld.u32 %r249,[%frame+40]; bra $L13; $L25: .loc 1 318 12 mov.u32 %r526,3; st.u32 [%frame],%r526; .loc 1 319 36 setp.le.s32 %r527,%r253,99; @ %r527 bra $L239; cvta.const.u64 %r215,$LC19; bra $L115; $L239: cvta.const.u64 %r215,$LC18; $L115: .loc 1 319 12 st.u64 [%frame+8],%r215; .loc 1 320 34 ld.global.u32 %r74,[__fdlib_version]; .loc 1 320 20 setp.ne.u32 %r528,%r74,0; @ %r528 bra $L116; .loc 1 321 30 mov.f64 %r529,0d47efffffe0000000; st.f64 [%frame+32],%r529; bra $L117; $L116: .loc 1 323 30 mov.f64 %r530,0d7ff0000000000000; st.f64 [%frame+32],%r530; .loc 1 324 20 setp.ne.u32 %r531,%r74,2; @ %r531 bra $L117; .loc 1 325 4 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r532,[%value_in]; } .loc 1 325 10 mov.u32 %r533,34; st.u32 [%r532],%r533; ld.u32 %r249,[%frame+40]; bra $L13; $L117: .loc 1 326 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r535,[%value_in]; } .loc 1 326 25 setp.eq.u32 %r536,%r535,0; @ %r536 bra $L118; ld.u32 %r249,[%frame+40]; bra $L13; $L118: .loc 1 327 25 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r537,[%value_in]; } .loc 1 327 31 mov.u32 %r538,34; st.u32 [%r537],%r538; ld.u32 %r249,[%frame+40]; bra $L13; $L20: .loc 1 333 12 mov.u32 %r539,2; st.u32 [%frame],%r539; .loc 1 334 36 setp.le.s32 %r540,%r253,99; @ %r540 bra $L240; cvta.const.u64 %r216,$LC19; bra $L119; $L240: cvta.const.u64 %r216,$LC18; $L119: .loc 1 334 12 st.u64 [%frame+8],%r216; .loc 1 335 34 ld.global.u32 %r78,[__fdlib_version]; .loc 1 335 20 setp.ne.u32 %r541,%r78,0; @ %r541 bra $L120; .loc 1 336 30 mov.f64 %r542,0d47efffffe0000000; st.f64 [%frame+32],%r542; bra $L121; $L120: .loc 1 338 30 mov.f64 %r543,0d7ff0000000000000; st.f64 [%frame+32],%r543; .loc 1 339 6 setp.ne.u32 %r544,%r78,2; @ %r544 bra $L121; .loc 1 340 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r545,[%value_in]; } .loc 1 340 11 mov.u32 %r546,33; st.u32 [%r545],%r546; ld.u32 %r249,[%frame+40]; bra $L13; $L121: .loc 1 341 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r548,[%value_in]; } .loc 1 341 11 setp.eq.u32 %r549,%r548,0; @ %r549 bra $L122; ld.u32 %r249,[%frame+40]; bra $L13; $L122: .loc 1 345 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r550,[%value_in]; } .loc 1 345 11 mov.u32 %r551,33; st.u32 [%r550],%r551; ld.u32 %r249,[%frame+40]; bra $L13; $L28: .loc 1 351 12 mov.u32 %r552,2; st.u32 [%frame],%r552; .loc 1 352 33 setp.le.s32 %r553,%r253,99; @ %r553 bra $L241; cvta.const.u64 %r217,$LC21; bra $L123; $L241: cvta.const.u64 %r217,$LC20; $L123: .loc 1 352 12 st.u64 [%frame+8],%r217; .loc 1 353 20 ld.global.u32 %r82,[__fdlib_version]; .loc 1 353 6 setp.ne.u32 %r554,%r82,0; @ %r554 bra $L124; .loc 1 354 16 mov.f64 %r555,0dc7efffffe0000000; st.f64 [%frame+32],%r555; bra $L125; $L124: .loc 1 356 16 mov.f64 %r556,0dfff0000000000000; st.f64 [%frame+32],%r556; .loc 1 357 6 setp.ne.u32 %r557,%r82,2; @ %r557 bra $L125; .loc 1 358 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r558,[%value_in]; } .loc 1 358 11 mov.u32 %r559,34; st.u32 [%r558],%r559; ld.u32 %r249,[%frame+40]; bra $L13; $L125: .loc 1 359 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r561,[%value_in]; } .loc 1 359 11 setp.eq.u32 %r562,%r561,0; @ %r562 bra $L126; ld.u32 %r249,[%frame+40]; bra $L13; $L126: .loc 1 363 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r563,[%value_in]; } .loc 1 363 11 mov.u32 %r564,33; st.u32 [%r563],%r564; ld.u32 %r249,[%frame+40]; bra $L13; $L29: .loc 1 369 12 mov.u32 %r565,1; st.u32 [%frame],%r565; .loc 1 370 33 setp.le.s32 %r566,%r253,99; @ %r566 bra $L242; cvta.const.u64 %r218,$LC21; bra $L127; $L242: cvta.const.u64 %r218,$LC20; $L127: .loc 1 370 12 st.u64 [%frame+8],%r218; .loc 1 371 20 ld.global.u32 %r86,[__fdlib_version]; .loc 1 371 6 setp.ne.u32 %r567,%r86,0; @ %r567 bra $L128; .loc 1 372 16 mov.f64 %r568,0dc7efffffe0000000; st.f64 [%frame+32],%r568; bra $L129; $L128: .loc 1 374 16 mov.f64 %r569,0dfff0000000000000; st.f64 [%frame+32],%r569; .loc 1 375 6 setp.ne.u32 %r570,%r86,2; @ %r570 bra $L129; .loc 1 376 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r571,[%value_in]; } .loc 1 376 11 mov.u32 %r572,33; st.u32 [%r571],%r572; ld.u32 %r249,[%frame+40]; bra $L13; $L129: .loc 1 377 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r574,[%value_in]; } .loc 1 377 11 setp.eq.u32 %r575,%r574,0; @ %r575 bra $L130; ld.u32 %r249,[%frame+40]; bra $L13; $L130: .loc 1 381 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r576,[%value_in]; } .loc 1 381 11 mov.u32 %r577,33; st.u32 [%r576],%r577; ld.u32 %r249,[%frame+40]; bra $L13; $L26: .loc 1 387 12 mov.u32 %r578,2; st.u32 [%frame],%r578; .loc 1 388 35 setp.le.s32 %r579,%r253,99; @ %r579 bra $L243; cvta.const.u64 %r219,$LC23; bra $L131; $L243: cvta.const.u64 %r219,$LC22; $L131: .loc 1 388 12 st.u64 [%frame+8],%r219; .loc 1 389 20 ld.global.u32 %r90,[__fdlib_version]; .loc 1 389 6 setp.ne.u32 %r580,%r90,0; @ %r580 bra $L132; .loc 1 390 16 mov.f64 %r581,0dc7efffffe0000000; st.f64 [%frame+32],%r581; bra $L133; $L132: .loc 1 392 16 mov.f64 %r582,0dfff0000000000000; st.f64 [%frame+32],%r582; .loc 1 393 6 setp.ne.u32 %r583,%r90,2; @ %r583 bra $L133; .loc 1 394 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r584,[%value_in]; } .loc 1 394 11 mov.u32 %r585,34; st.u32 [%r584],%r585; ld.u32 %r249,[%frame+40]; bra $L13; $L133: .loc 1 395 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r587,[%value_in]; } .loc 1 395 11 setp.eq.u32 %r588,%r587,0; @ %r588 bra $L134; ld.u32 %r249,[%frame+40]; bra $L13; $L134: .loc 1 399 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r589,[%value_in]; } .loc 1 399 11 mov.u32 %r590,33; st.u32 [%r589],%r590; ld.u32 %r249,[%frame+40]; bra $L13; $L30: .loc 1 405 12 mov.u32 %r591,1; st.u32 [%frame],%r591; .loc 1 406 35 setp.le.s32 %r592,%r253,99; @ %r592 bra $L244; cvta.const.u64 %r220,$LC23; bra $L135; $L244: cvta.const.u64 %r220,$LC22; $L135: .loc 1 406 12 st.u64 [%frame+8],%r220; .loc 1 407 20 ld.global.u32 %r94,[__fdlib_version]; .loc 1 407 6 setp.ne.u32 %r593,%r94,0; @ %r593 bra $L136; .loc 1 408 16 mov.f64 %r594,0dc7efffffe0000000; st.f64 [%frame+32],%r594; bra $L137; $L136: .loc 1 410 16 mov.f64 %r595,0dfff0000000000000; st.f64 [%frame+32],%r595; .loc 1 411 6 setp.ne.u32 %r596,%r94,2; @ %r596 bra $L137; .loc 1 412 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r597,[%value_in]; } .loc 1 412 11 mov.u32 %r598,33; st.u32 [%r597],%r598; ld.u32 %r249,[%frame+40]; bra $L13; $L137: .loc 1 413 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r600,[%value_in]; } .loc 1 413 11 setp.eq.u32 %r601,%r600,0; @ %r601 bra $L138; ld.u32 %r249,[%frame+40]; bra $L13; $L138: .loc 1 417 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r602,[%value_in]; } .loc 1 417 11 mov.u32 %r603,33; st.u32 [%r602],%r603; ld.u32 %r249,[%frame+40]; bra $L13; $L31: .loc 1 424 12 mov.u32 %r604,1; st.u32 [%frame],%r604; .loc 1 425 33 setp.le.s32 %r605,%r253,99; @ %r605 bra $L245; cvta.const.u64 %r221,$LC25; bra $L139; $L245: cvta.const.u64 %r221,$LC24; $L139: .loc 1 425 12 st.u64 [%frame+8],%r221; .loc 1 426 14 mov.f64 %r606,0d0000000000000000; st.f64 [%frame+32],%r606; .loc 1 427 6 ld.global.u32 %r607,[__fdlib_version]; setp.eq.u32 %r608,%r607,0; @ %r608 bra $L140; $L223: .loc 1 101 10 mov.f64 %r250,0d3ff0000000000000; bra $L1; $L140: .loc 1 428 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r610,[%value_in]; } .loc 1 428 11 setp.eq.u32 %r611,%r610,0; @ %r611 bra $L142; ld.u32 %r249,[%frame+40]; bra $L13; $L142: .loc 1 430 4 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r612,[%value_in]; } .loc 1 430 10 mov.u32 %r613,33; st.u32 [%r612],%r613; ld.u32 %r249,[%frame+40]; bra $L13; $L4: .loc 1 436 12 mov.u32 %r614,3; st.u32 [%frame],%r614; .loc 1 437 33 setp.le.s32 %r615,%r253,99; @ %r615 bra $L246; cvta.const.u64 %r222,$LC25; bra $L143; $L246: cvta.const.u64 %r222,$LC24; $L143: .loc 1 437 12 st.u64 [%frame+8],%r222; .loc 1 438 20 ld.global.u32 %r101,[__fdlib_version]; mul.f64 %r248,%r252,0d3fe0000000000000; .loc 1 438 6 setp.ne.u32 %r616,%r101,0; @ %r616 bra $L144; .loc 1 439 16 mov.f64 %r617,0d47efffffe0000000; st.f64 [%frame+32],%r617; .loc 1 441 7 setp.lt.f64 %r618,%r251,0d0000000000000000; @ ! %r618 bra $L145; .loc 1 441 16 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r248; call (%value_in),rint,(%out_arg1); ld.param.f64 %r620,[%value_in]; } .loc 1 441 14 setp.neu.f64 %r621,%r620,%r248; @ %r621 bra $L147; ld.global.u32 %r101,[__fdlib_version]; bra $L148; $L147: .loc 1 441 39 mov.f64 %r622,0dc7efffffe0000000; st.f64 [%frame+32],%r622; ld.global.u32 %r101,[__fdlib_version]; bra $L148; $L144: .loc 1 443 16 mov.f64 %r623,0d7ff0000000000000; st.f64 [%frame+32],%r623; .loc 1 445 7 setp.lt.f64 %r624,%r251,0d0000000000000000; @ ! %r624 bra $L148; .loc 1 445 16 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r248; call (%value_in),rint,(%out_arg1); ld.param.f64 %r626,[%value_in]; } .loc 1 445 14 setp.neu.f64 %r627,%r626,%r248; @ %r627 bra $L150; ld.global.u32 %r101,[__fdlib_version]; bra $L148; $L150: .loc 1 445 39 mov.f64 %r628,0dfff0000000000000; st.f64 [%frame+32],%r628; ld.global.u32 %r101,[__fdlib_version]; $L148: .loc 1 447 6 setp.ne.u32 %r629,%r101,2; @ %r629 bra $L145; .loc 1 448 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r630,[%value_in]; } .loc 1 448 11 mov.u32 %r631,34; st.u32 [%r630],%r631; ld.u32 %r249,[%frame+40]; bra $L13; $L145: .loc 1 449 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r633,[%value_in]; } .loc 1 449 11 setp.eq.u32 %r634,%r633,0; @ %r634 bra $L151; ld.u32 %r249,[%frame+40]; bra $L13; $L151: .loc 1 450 4 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r635,[%value_in]; } .loc 1 450 10 mov.u32 %r636,34; st.u32 [%r635],%r636; ld.u32 %r249,[%frame+40]; bra $L13; $L37: .loc 1 456 12 mov.u32 %r637,4; st.u32 [%frame],%r637; .loc 1 457 33 setp.le.s32 %r638,%r253,99; @ %r638 bra $L247; cvta.const.u64 %r223,$LC25; bra $L152; $L247: cvta.const.u64 %r223,$LC24; $L152: .loc 1 457 12 st.u64 [%frame+8],%r223; .loc 1 458 14 mov.f64 %r639,0d0000000000000000; st.f64 [%frame+32],%r639; .loc 1 459 6 ld.global.u32 %r640,[__fdlib_version]; setp.ne.u32 %r641,%r640,2; @ %r641 bra $L153; .loc 1 460 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r642,[%value_in]; } .loc 1 460 11 mov.u32 %r643,34; st.u32 [%r642],%r643; ld.u32 %r249,[%frame+40]; bra $L13; $L153: .loc 1 461 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r645,[%value_in]; } .loc 1 461 11 setp.eq.u32 %r646,%r645,0; @ %r646 bra $L154; ld.u32 %r249,[%frame+40]; bra $L13; $L154: .loc 1 462 4 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r647,[%value_in]; } .loc 1 462 10 mov.u32 %r648,34; st.u32 [%r647],%r648; ld.u32 %r249,[%frame+40]; bra $L13; $L36: .loc 1 468 12 mov.u32 %r649,1; st.u32 [%frame],%r649; .loc 1 469 33 setp.le.s32 %r650,%r253,99; @ %r650 bra $L248; cvta.const.u64 %r224,$LC25; bra $L155; $L248: cvta.const.u64 %r224,$LC24; $L155: .loc 1 469 12 st.u64 [%frame+8],%r224; .loc 1 470 20 ld.global.u32 %r111,[__fdlib_version]; .loc 1 470 6 setp.ne.u32 %r651,%r111,0; @ %r651 bra $L156; .loc 1 471 16 mov.f64 %r652,0d0000000000000000; st.f64 [%frame+32],%r652; bra $L157; $L156: .loc 1 473 16 mov.f64 %r653,0dfff0000000000000; st.f64 [%frame+32],%r653; .loc 1 474 6 setp.ne.u32 %r654,%r111,2; @ %r654 bra $L157; .loc 1 475 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r655,[%value_in]; } .loc 1 475 11 mov.u32 %r656,33; st.u32 [%r655],%r656; ld.u32 %r249,[%frame+40]; bra $L13; $L157: .loc 1 476 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r658,[%value_in]; } .loc 1 476 11 setp.eq.u32 %r659,%r658,0; @ %r659 bra $L158; ld.u32 %r249,[%frame+40]; bra $L13; $L158: .loc 1 480 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r660,[%value_in]; } .loc 1 480 11 mov.u32 %r661,33; st.u32 [%r660],%r661; ld.u32 %r249,[%frame+40]; bra $L13; $L38: .loc 1 486 12 mov.u32 %r662,1; st.u32 [%frame],%r662; .loc 1 487 33 setp.le.s32 %r663,%r253,99; @ %r663 bra $L249; cvta.const.u64 %r225,$LC25; bra $L159; $L249: cvta.const.u64 %r225,$LC24; $L159: .loc 1 487 12 st.u64 [%frame+8],%r225; .loc 1 488 20 ld.global.u32 %r115,[__fdlib_version]; .loc 1 488 6 setp.ne.u32 %r664,%r115,0; @ %r664 bra $L160; .loc 1 489 18 mov.f64 %r665,0d0000000000000000; st.f64 [%frame+32],%r665; bra $L161; $L160: .loc 1 491 24 mov.f64 %r667,0d0000000000000000; div.rn.f64 %r666,%r667,0d0000000000000000; .loc 1 491 18 st.f64 [%frame+32],%r666; .loc 1 492 6 setp.ne.u32 %r668,%r115,2; @ %r668 bra $L161; .loc 1 493 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r669,[%value_in]; } .loc 1 493 12 mov.u32 %r670,33; st.u32 [%r669],%r670; ld.u32 %r249,[%frame+40]; bra $L13; $L161: .loc 1 494 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r672,[%value_in]; } .loc 1 494 11 setp.eq.u32 %r673,%r672,0; @ %r673 bra $L162; ld.u32 %r249,[%frame+40]; bra $L13; $L162: .loc 1 498 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r674,[%value_in]; } .loc 1 498 11 mov.u32 %r675,33; st.u32 [%r674],%r675; ld.u32 %r249,[%frame+40]; bra $L13; $L39: .loc 1 504 12 mov.u32 %r676,3; st.u32 [%frame],%r676; .loc 1 505 34 setp.le.s32 %r677,%r253,99; @ %r677 bra $L250; cvta.const.u64 %r226,$LC27; bra $L163; $L250: cvta.const.u64 %r226,$LC26; $L163: .loc 1 505 12 st.u64 [%frame+8],%r226; .loc 1 506 20 ld.global.u32 %r120,[__fdlib_version]; .loc 1 506 6 setp.ne.u32 %r678,%r120,0; @ %r678 bra $L164; .loc 1 507 36 setp.gt.f64 %r679,%r251,0d0000000000000000; selp.f64 %r227,0d47efffffe0000000,0dc7efffffe0000000,%r679; .loc 1 507 16 st.f64 [%frame+32],%r227; bra $L166; $L164: .loc 1 509 40 setp.gt.f64 %r680,%r251,0d0000000000000000; selp.f64 %r228,0d7ff0000000000000,0dfff0000000000000,%r680; .loc 1 509 16 st.f64 [%frame+32],%r228; .loc 1 510 6 setp.ne.u32 %r681,%r120,2; @ %r681 bra $L166; .loc 1 511 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r682,[%value_in]; } .loc 1 511 11 mov.u32 %r683,34; st.u32 [%r682],%r683; ld.u32 %r249,[%frame+40]; bra $L13; $L166: .loc 1 512 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r685,[%value_in]; } .loc 1 512 11 setp.eq.u32 %r686,%r685,0; @ %r686 bra $L168; ld.u32 %r249,[%frame+40]; bra $L13; $L168: .loc 1 513 4 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r687,[%value_in]; } .loc 1 513 10 mov.u32 %r688,34; st.u32 [%r687],%r688; ld.u32 %r249,[%frame+40]; bra $L13; $L34: .loc 1 519 12 mov.u32 %r689,1; st.u32 [%frame],%r689; .loc 1 520 34 setp.le.s32 %r690,%r253,99; @ %r690 bra $L253; cvta.const.u64 %r229,$LC29; bra $L169; $L253: cvta.const.u64 %r229,$LC28; $L169: .loc 1 520 12 st.u64 [%frame+8],%r229; .loc 1 521 20 ld.global.u32 %r124,[__fdlib_version]; .loc 1 521 6 setp.ne.u32 %r691,%r124,0; @ %r691 bra $L170; .loc 1 522 16 mov.f64 %r692,0d0000000000000000; st.f64 [%frame+32],%r692; bra $L171; $L170: .loc 1 524 22 mov.f64 %r694,0d0000000000000000; div.rn.f64 %r693,%r694,0d0000000000000000; .loc 1 524 16 st.f64 [%frame+32],%r693; .loc 1 525 6 setp.ne.u32 %r695,%r124,2; @ %r695 bra $L171; .loc 1 526 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r696,[%value_in]; } .loc 1 526 11 mov.u32 %r697,33; st.u32 [%r696],%r697; ld.u32 %r249,[%frame+40]; bra $L13; $L171: .loc 1 527 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r699,[%value_in]; } .loc 1 527 11 setp.eq.u32 %r700,%r699,0; @ %r700 bra $L172; ld.u32 %r249,[%frame+40]; bra $L13; $L172: .loc 1 531 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r701,[%value_in]; } .loc 1 531 11 mov.u32 %r702,33; st.u32 [%r701],%r702; ld.u32 %r249,[%frame+40]; bra $L13; $L41: .loc 1 537 26 mov.u32 %r703,1; st.u32 [%frame],%r703; .loc 1 538 48 setp.le.s32 %r704,%r253,99; @ %r704 bra $L254; cvta.const.u64 %r230,$LC31; bra $L173; $L254: cvta.const.u64 %r230,$LC30; $L173: .loc 1 538 26 st.u64 [%frame+8],%r230; .loc 1 539 34 ld.global.u32 %r129,[__fdlib_version]; .loc 1 539 20 setp.ne.u32 %r705,%r129,0; @ %r705 bra $L174; .loc 1 540 32 st.f64 [%frame+32],%r251; bra $L175; $L174: .loc 1 542 24 mov.f64 %r707,0d0000000000000000; div.rn.f64 %r706,%r707,0d0000000000000000; .loc 1 542 18 st.f64 [%frame+32],%r706; .loc 1 543 20 setp.ne.u32 %r708,%r129,2; @ %r708 bra $L175; .loc 1 544 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r709,[%value_in]; } .loc 1 544 25 mov.u32 %r710,33; st.u32 [%r709],%r710; ld.u32 %r249,[%frame+40]; bra $L13; $L175: .loc 1 545 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r712,[%value_in]; } .loc 1 545 25 setp.eq.u32 %r713,%r712,0; @ %r713 bra $L176; ld.u32 %r249,[%frame+40]; bra $L13; $L176: .loc 1 549 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r714,[%value_in]; } .loc 1 549 25 mov.u32 %r715,33; st.u32 [%r714],%r715; ld.u32 %r249,[%frame+40]; bra $L13; $L40: .loc 1 555 26 mov.u32 %r716,1; st.u32 [%frame],%r716; .loc 1 556 53 setp.le.s32 %r717,%r253,99; @ %r717 bra $L255; cvta.const.u64 %r231,$LC33; bra $L177; $L255: cvta.const.u64 %r231,$LC32; $L177: .loc 1 556 26 st.u64 [%frame+8],%r231; .loc 1 557 34 mov.f64 %r719,0d0000000000000000; div.rn.f64 %r718,%r719,0d0000000000000000; .loc 1 557 28 st.f64 [%frame+32],%r718; .loc 1 558 20 ld.global.u32 %r720,[__fdlib_version]; setp.ne.u32 %r721,%r720,2; @ %r721 bra $L178; .loc 1 559 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r722,[%value_in]; } .loc 1 559 25 mov.u32 %r723,33; st.u32 [%r722],%r723; ld.u32 %r249,[%frame+40]; bra $L13; $L178: .loc 1 560 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r725,[%value_in]; } .loc 1 560 25 setp.eq.u32 %r726,%r725,0; @ %r726 bra $L179; ld.u32 %r249,[%frame+40]; bra $L13; $L179: .loc 1 564 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r727,[%value_in]; } .loc 1 564 25 mov.u32 %r728,33; st.u32 [%r727],%r728; ld.u32 %r249,[%frame+40]; bra $L13; $L42: .loc 1 570 26 mov.u32 %r729,1; st.u32 [%frame],%r729; .loc 1 571 49 setp.le.s32 %r730,%r253,99; @ %r730 bra $L256; cvta.const.u64 %r232,$LC35; bra $L180; $L256: cvta.const.u64 %r232,$LC34; $L180: .loc 1 571 26 st.u64 [%frame+8],%r232; .loc 1 572 34 mov.f64 %r732,0d0000000000000000; div.rn.f64 %r731,%r732,0d0000000000000000; .loc 1 572 28 st.f64 [%frame+32],%r731; .loc 1 573 20 ld.global.u32 %r733,[__fdlib_version]; setp.ne.u32 %r734,%r733,2; @ %r734 bra $L181; .loc 1 574 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r735,[%value_in]; } .loc 1 574 25 mov.u32 %r736,33; st.u32 [%r735],%r736; ld.u32 %r249,[%frame+40]; bra $L13; $L181: .loc 1 575 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r738,[%value_in]; } .loc 1 575 25 setp.eq.u32 %r739,%r738,0; @ %r739 bra $L182; ld.u32 %r249,[%frame+40]; bra $L13; $L182: .loc 1 579 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r740,[%value_in]; } .loc 1 579 25 mov.u32 %r741,33; st.u32 [%r740],%r741; ld.u32 %r249,[%frame+40]; bra $L13; $L43: .loc 1 585 26 mov.u32 %r742,1; st.u32 [%frame],%r742; .loc 1 586 49 setp.le.s32 %r743,%r253,99; @ %r743 bra $L257; cvta.const.u64 %r233,$LC37; bra $L183; $L257: cvta.const.u64 %r233,$LC36; $L183: .loc 1 586 26 st.u64 [%frame+8],%r233; .loc 1 587 34 mov.f64 %r745,0d0000000000000000; div.rn.f64 %r744,%r745,0d0000000000000000; .loc 1 587 28 st.f64 [%frame+32],%r744; .loc 1 588 20 ld.global.u32 %r746,[__fdlib_version]; setp.ne.u32 %r747,%r746,2; @ %r747 bra $L184; .loc 1 589 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r748,[%value_in]; } .loc 1 589 25 mov.u32 %r749,33; st.u32 [%r748],%r749; ld.u32 %r249,[%frame+40]; bra $L13; $L184: .loc 1 590 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r751,[%value_in]; } .loc 1 590 25 setp.eq.u32 %r752,%r751,0; @ %r752 bra $L185; ld.u32 %r249,[%frame+40]; bra $L13; $L185: .loc 1 594 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r753,[%value_in]; } .loc 1 594 25 mov.u32 %r754,33; st.u32 [%r753],%r754; ld.u32 %r249,[%frame+40]; bra $L13; $L32: .loc 1 600 26 mov.u32 %r755,2; st.u32 [%frame],%r755; .loc 1 601 49 setp.le.s32 %r756,%r253,99; @ %r756 bra $L258; cvta.const.u64 %r234,$LC37; bra $L186; $L258: cvta.const.u64 %r234,$LC36; $L186: .loc 1 601 26 st.u64 [%frame+8],%r234; .loc 1 602 17 div.rn.f64 %r757,%r251,0d0000000000000000; .loc 1 602 14 st.f64 [%frame+32],%r757; .loc 1 603 20 ld.global.u32 %r758,[__fdlib_version]; setp.ne.u32 %r759,%r758,2; @ %r759 bra $L187; .loc 1 604 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r760,[%value_in]; } .loc 1 604 25 mov.u32 %r761,33; st.u32 [%r760],%r761; ld.u32 %r249,[%frame+40]; bra $L13; $L187: .loc 1 605 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r763,[%value_in]; } .loc 1 605 25 setp.eq.u32 %r764,%r763,0; @ %r764 bra $L188; ld.u32 %r249,[%frame+40]; bra $L13; $L188: .loc 1 609 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r765,[%value_in]; } .loc 1 609 25 mov.u32 %r766,33; st.u32 [%r765],%r766; ld.u32 %r249,[%frame+40]; bra $L13; $L47: .loc 1 615 12 mov.u32 %r767,3; st.u32 [%frame],%r767; .loc 1 616 35 setp.le.s32 %r768,%r253,99; @ %r768 bra $L259; cvta.const.u64 %r235,$LC39; bra $L189; $L259: cvta.const.u64 %r235,$LC38; $L189: .loc 1 616 12 st.u64 [%frame+8],%r235; .loc 1 617 36 setp.gt.f64 %r769,%r251,0d0000000000000000; selp.f64 %r236,0d7ff0000000000000,0dfff0000000000000,%r769; .loc 1 617 14 st.f64 [%frame+32],%r236; .loc 1 618 6 ld.global.u32 %r770,[__fdlib_version]; setp.ne.u32 %r771,%r770,2; @ %r771 bra $L191; .loc 1 619 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r772,[%value_in]; } .loc 1 619 11 mov.u32 %r773,34; st.u32 [%r772],%r773; ld.u32 %r249,[%frame+40]; bra $L13; $L191: .loc 1 620 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r775,[%value_in]; } .loc 1 620 11 setp.eq.u32 %r776,%r775,0; @ %r776 bra $L192; ld.u32 %r249,[%frame+40]; bra $L13; $L192: .loc 1 621 4 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r777,[%value_in]; } .loc 1 621 10 mov.u32 %r778,34; st.u32 [%r777],%r778; ld.u32 %r249,[%frame+40]; bra $L13; $L46: .loc 1 627 12 mov.u32 %r779,4; st.u32 [%frame],%r779; .loc 1 628 35 setp.le.s32 %r780,%r253,99; @ %r780 bra $L261; cvta.const.u64 %r237,$LC39; bra $L193; $L261: cvta.const.u64 %r237,$LC38; $L193: .loc 1 628 12 st.u64 [%frame+8],%r237; .loc 1 629 16 mov.f64 %r781,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r781; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r251; call (%value_in),copysign,(%out_arg1,%out_arg2); ld.param.f64 %r783,[%value_in]; } .loc 1 629 14 st.f64 [%frame+32],%r783; .loc 1 630 6 ld.global.u32 %r784,[__fdlib_version]; setp.ne.u32 %r785,%r784,2; @ %r785 bra $L194; .loc 1 631 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r786,[%value_in]; } .loc 1 631 11 mov.u32 %r787,34; st.u32 [%r786],%r787; ld.u32 %r249,[%frame+40]; bra $L13; $L194: .loc 1 632 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r789,[%value_in]; } .loc 1 632 11 setp.eq.u32 %r790,%r789,0; @ %r790 bra $L195; ld.u32 %r249,[%frame+40]; bra $L13; $L195: .loc 1 633 4 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r791,[%value_in]; } .loc 1 633 10 mov.u32 %r792,34; st.u32 [%r791],%r792; ld.u32 %r249,[%frame+40]; bra $L13; $L48: .loc 1 639 26 mov.u32 %r793,5; st.u32 [%frame],%r793; .loc 1 640 46 setp.le.s32 %r794,%r253,99; @ %r794 bra $L262; cvta.const.u64 %r238,$LC41; bra $L196; $L262: cvta.const.u64 %r238,$LC40; $L196: .loc 1 640 26 st.u64 [%frame+8],%r238; .loc 1 641 28 mov.f64 %r795,0d0000000000000000; st.f64 [%frame+32],%r795; .loc 1 642 20 ld.global.u32 %r796,[__fdlib_version]; setp.ne.u32 %r797,%r796,2; @ %r797 bra $L197; .loc 1 643 25 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r798,[%value_in]; } .loc 1 643 31 mov.u32 %r799,34; st.u32 [%r798],%r799; ld.u32 %r249,[%frame+40]; bra $L13; $L197: .loc 1 644 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r801,[%value_in]; } .loc 1 644 25 setp.eq.u32 %r802,%r801,0; @ %r802 bra $L198; ld.u32 %r249,[%frame+40]; bra $L13; $L198: .loc 1 649 25 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r803,[%value_in]; } .loc 1 649 31 mov.u32 %r804,34; st.u32 [%r803],%r804; ld.u32 %r249,[%frame+40]; bra $L13; $L49: .loc 1 655 26 mov.u32 %r805,5; st.u32 [%frame],%r805; .loc 1 656 46 setp.le.s32 %r806,%r253,99; @ %r806 bra $L263; cvta.const.u64 %r239,$LC13; bra $L199; $L263: cvta.const.u64 %r239,$LC12; $L199: .loc 1 656 26 st.u64 [%frame+8],%r239; .loc 1 657 28 mov.f64 %r807,0d0000000000000000; st.f64 [%frame+32],%r807; .loc 1 658 20 ld.global.u32 %r808,[__fdlib_version]; setp.ne.u32 %r809,%r808,2; @ %r809 bra $L200; .loc 1 659 25 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r810,[%value_in]; } .loc 1 659 31 mov.u32 %r811,34; st.u32 [%r810],%r811; ld.u32 %r249,[%frame+40]; bra $L13; $L200: .loc 1 660 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r813,[%value_in]; } .loc 1 660 25 setp.eq.u32 %r814,%r813,0; @ %r814 bra $L201; ld.u32 %r249,[%frame+40]; bra $L13; $L201: .loc 1 665 25 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r815,[%value_in]; } .loc 1 665 31 mov.u32 %r816,34; st.u32 [%r815],%r816; ld.u32 %r249,[%frame+40]; bra $L13; $L44: .loc 1 671 26 mov.u32 %r817,5; st.u32 [%frame],%r817; .loc 1 672 46 setp.le.s32 %r818,%r253,99; @ %r818 bra $L264; cvta.const.u64 %r240,$LC43; bra $L202; $L264: cvta.const.u64 %r240,$LC42; $L202: .loc 1 672 26 st.u64 [%frame+8],%r240; .loc 1 673 28 mov.f64 %r819,0d0000000000000000; st.f64 [%frame+32],%r819; .loc 1 674 20 ld.global.u32 %r820,[__fdlib_version]; setp.ne.u32 %r821,%r820,2; @ %r821 bra $L203; .loc 1 675 25 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r822,[%value_in]; } .loc 1 675 31 mov.u32 %r823,34; st.u32 [%r822],%r823; ld.u32 %r249,[%frame+40]; bra $L13; $L203: .loc 1 676 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r825,[%value_in]; } .loc 1 676 25 setp.eq.u32 %r826,%r825,0; @ %r826 bra $L204; ld.u32 %r249,[%frame+40]; bra $L13; $L204: .loc 1 681 25 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r827,[%value_in]; } .loc 1 681 31 mov.u32 %r828,34; st.u32 [%r827],%r828; ld.u32 %r249,[%frame+40]; bra $L13; $L52: .loc 1 687 26 mov.u32 %r829,5; st.u32 [%frame],%r829; .loc 1 688 46 setp.le.s32 %r830,%r253,99; @ %r830 bra $L265; cvta.const.u64 %r241,$LC15; bra $L205; $L265: cvta.const.u64 %r241,$LC14; $L205: .loc 1 688 26 st.u64 [%frame+8],%r241; .loc 1 689 28 mov.f64 %r831,0d0000000000000000; st.f64 [%frame+32],%r831; .loc 1 690 20 ld.global.u32 %r832,[__fdlib_version]; setp.ne.u32 %r833,%r832,2; @ %r833 bra $L206; .loc 1 691 25 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r834,[%value_in]; } .loc 1 691 31 mov.u32 %r835,34; st.u32 [%r834],%r835; ld.u32 %r249,[%frame+40]; bra $L13; $L206: .loc 1 692 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r837,[%value_in]; } .loc 1 692 25 setp.eq.u32 %r838,%r837,0; @ %r838 bra $L207; ld.u32 %r249,[%frame+40]; bra $L13; $L207: .loc 1 697 25 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r839,[%value_in]; } .loc 1 697 31 mov.u32 %r840,34; st.u32 [%r839],%r840; ld.u32 %r249,[%frame+40]; bra $L13; $L53: .loc 1 703 26 mov.u32 %r841,5; st.u32 [%frame],%r841; .loc 1 704 46 setp.le.s32 %r842,%r253,99; @ %r842 bra $L266; cvta.const.u64 %r242,$LC45; bra $L208; $L266: cvta.const.u64 %r242,$LC44; $L208: .loc 1 704 26 st.u64 [%frame+8],%r242; .loc 1 705 28 mov.f64 %r843,0d0000000000000000; st.f64 [%frame+32],%r843; .loc 1 706 20 ld.global.u32 %r844,[__fdlib_version]; setp.ne.u32 %r845,%r844,2; @ %r845 bra $L209; .loc 1 707 25 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r846,[%value_in]; } .loc 1 707 31 mov.u32 %r847,34; st.u32 [%r846],%r847; ld.u32 %r249,[%frame+40]; bra $L13; $L209: .loc 1 708 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r849,[%value_in]; } .loc 1 708 25 setp.eq.u32 %r850,%r849,0; @ %r850 bra $L210; ld.u32 %r249,[%frame+40]; bra $L13; $L210: .loc 1 713 25 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r851,[%value_in]; } .loc 1 713 31 mov.u32 %r852,34; st.u32 [%r851],%r852; ld.u32 %r249,[%frame+40]; bra $L13; $L50: .loc 1 719 26 mov.u32 %r853,5; st.u32 [%frame],%r853; .loc 1 720 46 setp.le.s32 %r854,%r253,99; @ %r854 bra $L267; cvta.const.u64 %r243,$LC17; bra $L211; $L267: cvta.const.u64 %r243,$LC16; $L211: .loc 1 720 26 st.u64 [%frame+8],%r243; .loc 1 721 28 mov.f64 %r855,0d0000000000000000; st.f64 [%frame+32],%r855; .loc 1 722 20 ld.global.u32 %r856,[__fdlib_version]; setp.ne.u32 %r857,%r856,2; @ %r857 bra $L212; .loc 1 723 25 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r858,[%value_in]; } .loc 1 723 31 mov.u32 %r859,34; st.u32 [%r858],%r859; ld.u32 %r249,[%frame+40]; bra $L13; $L212: .loc 1 724 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r861,[%value_in]; } .loc 1 724 25 setp.eq.u32 %r862,%r861,0; @ %r862 bra $L213; ld.u32 %r249,[%frame+40]; bra $L13; $L213: .loc 1 729 25 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r863,[%value_in]; } .loc 1 729 31 mov.u32 %r864,34; st.u32 [%r863],%r864; ld.u32 %r249,[%frame+40]; bra $L13; $L54: .loc 1 735 12 mov.u32 %r865,3; st.u32 [%frame],%r865; .loc 1 736 35 setp.le.s32 %r866,%r253,99; @ %r866 bra $L268; cvta.const.u64 %r244,$LC47; bra $L214; $L268: cvta.const.u64 %r244,$LC46; $L214: .loc 1 736 12 st.u64 [%frame+8],%r244; .loc 1 737 34 ld.global.u32 %r187,[__fdlib_version]; .loc 1 737 20 setp.ne.u32 %r867,%r187,0; @ %r867 bra $L215; .loc 1 738 30 mov.f64 %r868,0d47efffffe0000000; st.f64 [%frame+32],%r868; bra $L216; $L215: .loc 1 740 30 mov.f64 %r869,0d7ff0000000000000; st.f64 [%frame+32],%r869; .loc 1 741 20 setp.ne.u32 %r870,%r187,2; @ %r870 bra $L216; .loc 1 742 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r871,[%value_in]; } .loc 1 742 11 mov.u32 %r872,34; st.u32 [%r871],%r872; ld.u32 %r249,[%frame+40]; bra $L13; $L216: .loc 1 743 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r874,[%value_in]; } .loc 1 743 25 setp.eq.u32 %r875,%r874,0; @ %r875 bra $L217; ld.u32 %r249,[%frame+40]; bra $L13; $L217: .loc 1 744 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r876,[%value_in]; } .loc 1 744 25 mov.u32 %r877,34; st.u32 [%r876],%r877; ld.u32 %r249,[%frame+40]; bra $L13; $L55: .loc 1 750 12 mov.u32 %r878,2; st.u32 [%frame],%r878; .loc 1 751 35 setp.le.s32 %r879,%r253,99; @ %r879 bra $L269; cvta.const.u64 %r245,$LC47; bra $L218; $L269: cvta.const.u64 %r245,$LC46; $L218: .loc 1 751 12 st.u64 [%frame+8],%r245; .loc 1 752 34 ld.global.u32 %r191,[__fdlib_version]; .loc 1 752 20 setp.ne.u32 %r880,%r191,0; @ %r880 bra $L219; .loc 1 753 30 mov.f64 %r881,0d47efffffe0000000; st.f64 [%frame+32],%r881; bra $L220; $L219: .loc 1 755 30 mov.f64 %r882,0d7ff0000000000000; st.f64 [%frame+32],%r882; .loc 1 756 6 setp.ne.u32 %r883,%r191,2; @ %r883 bra $L220; .loc 1 757 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r884,[%value_in]; } .loc 1 757 11 mov.u32 %r885,33; st.u32 [%r884],%r885; ld.u32 %r249,[%frame+40]; bra $L13; $L220: .loc 1 758 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r887,[%value_in]; } .loc 1 758 11 setp.eq.u32 %r888,%r887,0; @ %r888 bra $L221; ld.u32 %r249,[%frame+40]; bra $L13; $L221: .loc 1 762 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r889,[%value_in]; } .loc 1 762 11 mov.u32 %r890,33; st.u32 [%r889],%r890; ld.u32 %r249,[%frame+40]; bra $L13; $L2: .loc 1 769 12 mov.u32 %r891,1; st.u32 [%frame],%r891; .loc 1 770 33 setp.le.s32 %r892,%r253,99; @ %r892 bra $L270; cvta.const.u64 %r246,$LC25; bra $L222; $L270: cvta.const.u64 %r246,$LC24; $L222: .loc 1 770 12 st.u64 [%frame+8],%r246; .loc 1 771 14 st.f64 [%frame+32],%r251; .loc 1 772 30 ld.global.u32 %r247,[__fdlib_version]; set.u32.eq.u32 %r894,%r247,-1; neg.s32 %r895,%r894; set.u32.eq.u32 %r897,%r247,2; neg.s32 %r898,%r897; cvt.u16.u32 %r900,%r895; cvt.u16.u32 %r901,%r898; or.b16 %r899,%r900,%r901; .loc 1 772 6 cvt.u32.u16 %r902,%r899; cvt.u16.u8 %r903,%r902; setp.ne.u16 %r904,%r903,0; @ %r904 bra $L223; .loc 1 774 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r906,[%value_in]; } .loc 1 774 11 setp.eq.u32 %r907,%r906,0; @ %r907 bra $L224; ld.u32 %r249,[%frame+40]; bra $L13; $L224: .loc 1 775 4 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r908,[%value_in]; } .loc 1 775 10 mov.u32 %r909,33; st.u32 [%r908],%r909; ld.u32 %r249,[%frame+40]; $L13: .loc 1 779 5 setp.ne.u32 %r910,%r249,0; @ %r910 bra $L225; $L498: ld.f64 %r250,[%frame+32]; bra $L1; $L225: .loc 1 780 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r911,[%value_in]; } .loc 1 780 17 ld.u32 %r201,[%frame+40]; .loc 1 780 12 st.u32 [%r911],%r201; ld.f64 %r250,[%frame+32]; $L1: .loc 1 782 1 mov.f64 %value,%r250; st.shared.u64 [%sspslot],%sspprev; st.param.f64 [%value_out],%value; ret; } lib_a-k_tan.o/ 1591654536 399 399 100644 5383 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r39; .reg .u32 %r52; .reg .u32 %r53; .reg .f64 %r54; .reg .f64 %r57; .reg .f64 %r58; .reg .f64 %r60; .reg .f64 %r61; .reg .f64 %r62; .reg .f64 %r63; .reg .f64 %r64; .reg .f64 %r66; .reg .f64 %r67; .reg .u64 %r71; .reg .u64 %r72; .reg .f64 %r73; .reg .f64 %r74; .reg .f64 %r75; .reg .u32 %r76; .reg .u64 %r77; .reg .u64 %r78; .reg .pred %r79; .reg .u32 %r80; .reg .pred %r81; .reg .u32 %r82; .reg .u32 %r84; .reg .u32 %r85; .reg .u32 %r86; .reg .pred %r87; .reg .f64 %r89; .reg .f64 %r90; .reg .pred %r91; .reg .f64 %r92; .reg .pred %r94; .reg .f64 %r95; .reg .f64 %r96; .reg .f64 %r97; .reg .f64 %r98; .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 .f64 %r110; .reg .f64 %r111; .reg .f64 %r112; .reg .f64 %r113; .reg .f64 %r114; .reg .f64 %r116; .reg .u32 %r117; .reg .u32 %r118; .reg .u32 %r119; .reg .u32 %r120; .reg .f64 %r121; .reg .pred %r122; .reg .u64 %r123; .reg .f64 %r124; .reg .u64 %r125; .reg .f64 %r126; .reg .f64 %r127; .reg .f64 %r128; .reg .f64 %r129; .reg .pred %r131; mov.f64 %r74,%ar0; mov.f64 %r75,%ar1; mov.u32 %r76,%ar2; .loc 1 85 2 mov.b64 %r77,%r74; shr.u64 %r78,%r77,32; cvt.u32.u64 %r52,%r78; .loc 1 86 5 and.b32 %r53,%r52,2147483647; .loc 1 87 4 setp.gt.s32 %r79,%r53,1043333119; @ %r79 bra $L2; .loc 1 88 10 cvt.rzi.s32.f64 %r80,%r74; .loc 1 88 9 setp.ne.u32 %r81,%r80,0; @ ! %r81 bra $L13; setp.le.s32 %r131,%r53,1072010279; bra $L3; $L13: .loc 1 91 19 add.u32 %r82,%r76,1; .loc 1 91 15 cvt.u32.u64 %r85,%r77; or.b32 %r84,%r82,%r85; or.b32 %r86,%r84,%r53; .loc 1 91 5 setp.ne.u32 %r87,%r86,0; @ %r87 bra $L4; .loc 1 91 39 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r74; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r89,[%value_in]; } .loc 1 91 38 mov.f64 %r90,0d3ff0000000000000; div.rn.f64 %r73,%r90,%r89; bra $L1; $L4: .loc 1 92 25 setp.eq.u32 %r91,%r76,1; @ %r91 bra $L8; mov.f64 %r92,0dbff0000000000000; div.rn.f64 %r73,%r92,%r74; bra $L1; $L2: .loc 1 95 4 setp.le.s32 %r131,%r53,1072010279; @ %r131 bra $L3; .loc 1 96 8 setp.ge.s32 %r94,%r52,0; @ %r94 bra $L6; .loc 1 96 18 neg.f64 %r74,%r74; .loc 1 96 26 neg.f64 %r75,%r75; $L6: .loc 1 97 8 mov.f64 %r95,0d3fe921fb54442d18; sub.f64 %r54,%r95,%r74; .loc 1 98 8 mov.f64 %r97,0d3c81a62633145c07; sub.f64 %r96,%r97,%r75; .loc 1 99 8 add.f64 %r74,%r96,%r54; .loc 1 99 17 mov.f64 %r75,0d0000000000000000; $L3: .loc 1 101 4 mul.f64 %r57,%r74,%r74; .loc 1 102 5 mul.f64 %r58,%r57,%r57; .loc 1 109 4 mul.f64 %r60,%r74,%r57; .loc 1 108 46 fma.rn.f64 %r98,%r58,0d3efb2a7074bf7ad4,0d3f12b80f32f0a7e9; .loc 1 108 37 fma.rn.f64 %r99,%r98,%r58,0d3f3026f71a8d1068; .loc 1 108 29 fma.rn.f64 %r100,%r99,%r58,0d3f57dbc8fee08315; .loc 1 108 21 fma.rn.f64 %r101,%r100,%r58,0d3f8226e3e96e8493; .loc 1 108 13 fma.rn.f64 %r102,%r101,%r58,0d3faba1ba1bb341fe; .loc 1 107 42 fma.rn.f64 %r103,%r58,0dbef375cbdb605373,0d3f147e88a03792a6; .loc 1 107 34 fma.rn.f64 %r104,%r103,%r58,0d3f4344d8f2f26501; .loc 1 107 26 fma.rn.f64 %r105,%r104,%r58,0d3f6d6d22c9560328; .loc 1 107 18 fma.rn.f64 %r106,%r105,%r58,0d3f9664f48406d637; .loc 1 107 4 fma.rn.f64 %r107,%r106,%r58,0d3fc111111110fe7a; .loc 1 110 17 fma.rn.f64 %r108,%r102,%r57,%r107; .loc 1 110 20 fma.rn.f64 %r39,%r108,%r60,%r75; .loc 1 110 4 fma.rn.f64 %r61,%r39,%r57,%r75; .loc 1 111 4 fma.rn.f64 %r62,%r60,0d3fd5555555555563,%r61; .loc 1 112 4 add.f64 %r73,%r74,%r62; .loc 1 113 4 @ %r131 bra $L7; .loc 1 114 8 cvt.rn.f64.s32 %r63,%r76; .loc 1 115 50 mul.f64 %r110,%r73,%r73; .loc 1 115 55 add.f64 %r111,%r73,%r63; .loc 1 115 52 div.rn.f64 %r112,%r110,%r111; .loc 1 115 58 sub.f64 %r113,%r112,%r62; .loc 1 115 47 sub.f64 %r114,%r74,%r113; .loc 1 115 40 fma.rn.f64 %r116,%r114,0dc000000000000000,%r63; .loc 1 115 28 shr.s32 %r117,%r52,30; .loc 1 115 33 and.b32 %r118,%r117,2; .loc 1 115 23 mov.u32 %r120,1; sub.u32 %r119,%r120,%r118; .loc 1 115 13 cvt.rn.f64.s32 %r121,%r119; .loc 1 115 37 mul.f64 %r73,%r116,%r121; bra $L1; $L7: .loc 1 117 4 setp.eq.u32 %r122,%r76,1; @ %r122 bra $L1; .loc 1 123 6 mov.b64 %r71,%r73; and.b64 %r123,%r71,-4294967296; mov.b64 %r64,%r123; .loc 1 125 13 mov.f64 %r124,0dbff0000000000000; div.rn.f64 %r66,%r124,%r73; .loc 1 126 6 mov.b64 %r72,%r66; and.b64 %r125,%r72,-4294967296; mov.b64 %r67,%r125; .loc 1 124 16 sub.f64 %r126,%r64,%r74; .loc 1 124 9 sub.f64 %r127,%r62,%r126; .loc 1 127 9 fma.rn.f64 %r128,%r64,%r67,0d3ff0000000000000; .loc 1 128 19 fma.rn.f64 %r129,%r127,%r67,%r128; .loc 1 128 14 fma.rn.f64 %r73,%r129,%r66,%r67; bra $L1; $L8: .loc 1 92 25 mov.f64 %r73,%r74; $L1: .loc 1 130 1 mov.f64 %value,%r73; st.param.f64 [%value_out],%value; ret; } lib_a-kf_cos.o/ 1591654536 399 399 100644 3052 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r35; .reg .u32 %r36; .reg .u32 %r37; .reg .f32 %r45; .reg .f32 %r51; .reg .f32 %r53; .reg .f32 %r56; .reg .f32 %r57; .reg .f32 %r58; .reg .pred %r59; .reg .u32 %r60; .reg .pred %r61; .reg .f32 %r62; .reg .f32 %r63; .reg .f32 %r64; .reg .f32 %r65; .reg .f32 %r66; .reg .pred %r67; .reg .f32 %r68; .reg .f32 %r69; .reg .f32 %r70; .reg .f32 %r71; .reg .f32 %r72; .reg .f32 %r73; .reg .pred %r74; .reg .u32 %r75; .reg .f32 %r76; .reg .f32 %r77; .reg .f32 %r78; .reg .f32 %r79; .reg .f32 %r80; .reg .f32 %r81; .reg .f32 %r82; .reg .f32 %r84; .reg .f32 %r85; .reg .f32 %r86; .reg .f32 %r87; .reg .f32 %r88; mov.f32 %r57,%ar0; mov.f32 %r58,%ar1; .loc 1 40 2 mov.b32 %r36,%r57; .loc 1 41 5 and.b32 %r37,%r36,2147483647; .loc 1 42 4 setp.gt.s32 %r59,%r37,838860799; @ %r59 bra $L2; .loc 1 43 10 cvt.rzi.s32.f32 %r60,%r57; .loc 1 43 8 setp.eq.u32 %r61,%r60,0; @ ! %r61 bra $L10; bra $L8; $L2: .loc 1 45 5 mul.f32 %r45,%r57,%r57; .loc 1 46 36 fma.rn.f32 %r62,%r45,0fad47d74e,0f310f74f6; .loc 1 46 30 fma.rn.f32 %r63,%r62,%r45,0fb493f27c; .loc 1 46 24 fma.rn.f32 %r64,%r63,%r45,0f37d00d01; .loc 1 46 18 fma.rn.f32 %r65,%r64,%r45,0fbab60b61; .loc 1 46 12 fma.rn.f32 %r66,%r65,%r45,0f3d2aaaab; .loc 1 46 5 mul.f32 %r51,%r66,%r45; .loc 1 47 4 setp.gt.s32 %r67,%r37,1050253721; @ %r67 bra $L5; $L7: .loc 1 48 43 mul.f32 %r68,%r57,%r58; .loc 1 48 40 neg.f32 %r69,%r68; fma.rn.f32 %r70,%r45,%r51,%r69; .loc 1 48 33 neg.f32 %r71,%r70; fma.rn.f32 %r72,%r45,0f3f000000,%r71; .loc 1 48 17 mov.f32 %r73,0f3f800000; sub.f32 %r56,%r73,%r72; bra $L1; $L5: .loc 1 50 8 setp.gt.s32 %r74,%r37,1061683200; @ %r74 bra $L9; .loc 1 53 10 add.u32 %r75,%r37,-16777216; mov.b32 %r35,%r75; mov.f32 %r76,0f3f800000; sub.f32 %r53,%r76,%r35; bra $L6; $L9: mov.f32 %r53,0f3f380000; .loc 1 51 6 mov.f32 %r35,0f3e900000; $L6: .loc 1 55 9 neg.f32 %r77,%r35; fma.rn.f32 %r78,%r45,0f3f000000,%r77; .loc 1 57 29 mul.f32 %r79,%r57,%r58; .loc 1 57 27 neg.f32 %r80,%r79; fma.rn.f32 %r81,%r45,%r51,%r80; .loc 1 57 21 sub.f32 %r82,%r78,%r81; .loc 1 57 15 sub.f32 %r56,%r53,%r82; bra $L1; $L8: .loc 1 43 29 mov.f32 %r56,0f3f800000; bra $L1; $L10: .loc 1 45 5 mul.f32 %r45,%r57,%r57; .loc 1 46 36 fma.rn.f32 %r84,%r45,0fad47d74e,0f310f74f6; .loc 1 46 30 fma.rn.f32 %r85,%r45,%r84,0fb493f27c; .loc 1 46 24 fma.rn.f32 %r86,%r45,%r85,0f37d00d01; .loc 1 46 18 fma.rn.f32 %r87,%r45,%r86,0fbab60b61; .loc 1 46 12 fma.rn.f32 %r88,%r45,%r87,0f3d2aaaab; .loc 1 46 5 mul.f32 %r51,%r88,%r45; bra $L7; $L1: .loc 1 59 1 mov.f32 %value,%r56; st.param.f32 [%value_out],%value; ret; } /370 1591654536 399 399 100644 25775 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .f32 %r42; .reg .u32 %r44; .reg .u32 %r50; .reg .u32 %r52; .reg .u32 %r54; .reg .u64 %r69; .reg .u64 %r84; .reg .f32 %r90; .reg .f32 %r93; .reg .u32 %r99; .reg .u32 %r102; .reg .u32 %r103; .reg .u32 %r105; .reg .u64 %r106; .reg .u64 %r108; .reg .u64 %r109; .reg .f32 %r111; .reg .f32 %r114; .reg .u32 %r115; .reg .f32 %r117; .reg .f32 %r123; .reg .u64 %r124; .reg .u64 %r125; .reg .u32 %r127; .reg .u32 %r129; .reg .u32 %r131; .reg .f32 %r132; .reg .f32 %r134; .reg .f32 %r137; .reg .u32 %r138; .reg .u32 %r139; .reg .u32 %r142; .reg .f32 %r144; .reg .u32 %r145; .reg .u32 %r146; .reg .u32 %r147; .reg .f32 %r149; .reg .f32 %r150; .reg .u32 %r151; .reg .f32 %r152; .reg .f32 %r153; .reg .f32 %r154; .reg .f32 %r158; .reg .u32 %r159; .reg .f32 %r160; .reg .f32 %r161; .reg .f32 %r162; .reg .u32 %r164; .reg .u64 %r165; .reg .u64 %r166; .reg .u32 %r167; .reg .u32 %r173; .reg .u64 %r175; .reg .u64 %r177; .reg .u64 %r179; .reg .u64 %r184; .reg .u64 %r187; .reg .u32 %r190; .reg .u64 %r191; .reg .u64 %r194; .reg .f32 %r195; .reg .f32 %r199; .reg .f32 %r200; .reg .f32 %r203; .reg .u32 %r205; .reg .u64 %r208; .reg .u64 %r210; .reg .u64 %r214; .reg .u64 %r220; .reg .u64 %r221; .reg .u64 %r232; .reg .u64 %r234; .reg .u64 %r241; .reg .u64 %r246; .reg .u64 %r259; .reg .u64 %r260; .reg .u64 %r261; .reg .u64 %r267; .reg .u64 %r269; .reg .u64 %r279; .reg .u64 %r280; .reg .u64 %r292; .reg .u64 %r294; .reg .u64 %r296; .reg .u64 %r297; .reg .u64 %r309; .reg .u64 %r310; .reg .u64 %r311; .reg .u64 %r322; .reg .u64 %r323; .reg .u32 %r324; .reg .u32 %r329; .reg .u64 %r330; .reg .u64 %r331; .reg .u32 %r339; .reg .u64 %r342; .reg .u64 %r343; .reg .u32 %r344; .reg .u32 %r345; .reg .u32 %r346; .reg .u64 %r347; .reg .u64 %r348; .reg .u64 %r349; .reg .u64 %r350; .reg .u64 %r351; .reg .pred %r352; .reg .u32 %r353; .reg .u32 %r356; .reg .u32 %r357; .reg .u32 %r358; .reg .u32 %r360; .reg .pred %r361; .reg .u64 %r364; .reg .u64 %r365; .reg .u64 %r366; .reg .u64 %r367; .reg .u64 %r368; .reg .u32 %r369; .reg .pred %r370; .reg .u32 %r371; .reg .pred %r372; .reg .u64 %r374; .reg .u64 %r375; .reg .f32 %r376; .reg .f32 %r377; .reg .pred %r378; .reg .pred %r379; .reg .u64 %r382; .reg .u64 %r383; .reg .u64 %r384; .reg .u64 %r385; .reg .u64 %r386; .reg .u64 %r388; .reg .u64 %r389; .reg .u64 %r393; .reg .u32 %r394; .reg .u64 %r395; .reg .u64 %r396; .reg .f32 %r398; .reg .u32 %r399; .reg .f32 %r401; .reg .u32 %r402; .reg .f32 %r403; .reg .pred %r404; .reg .f32 %r407; .reg .f32 %r409; .reg .f32 %r410; .reg .f32 %r412; .reg .u64 %r414; .reg .u64 %r415; .reg .u64 %r416; .reg .u64 %r417; .reg .u32 %r418; .reg .u32 %r419; .reg .u32 %r424; .reg .u32 %r425; .reg .u32 %r427; .reg .u64 %r428; .reg .u64 %r429; .reg .u64 %r430; .reg .u32 %r432; .reg .pred %r433; .reg .pred %r434; .reg .pred %r436; .reg .pred %r437; .reg .pred %r439; .reg .pred %r440; .reg .u64 %r441; .reg .u64 %r442; .reg .u64 %r443; .reg .u32 %r445; .reg .u32 %r446; .reg .pred %r447; .reg .u64 %r448; .reg .u64 %r449; .reg .u64 %r450; .reg .u32 %r454; .reg .u32 %r455; .reg .u64 %r456; .reg .u64 %r457; .reg .u64 %r458; .reg .u32 %r461; .reg .u32 %r462; .reg .pred %r463; .reg .u64 %r467; .reg .u64 %r468; .reg .u64 %r469; .reg .u64 %r470; .reg .u32 %r475; .reg .u32 %r476; .reg .u64 %r477; .reg .u64 %r478; .reg .u64 %r479; .reg .u64 %r480; .reg .u32 %r485; .reg .u32 %r486; .reg .pred %r487; .reg .f32 %r488; .reg .pred %r489; .reg .f32 %r492; .reg .pred %r493; .reg .pred %r494; .reg .u64 %r497; .reg .u64 %r500; .reg .u32 %r501; .reg .u32 %r502; .reg .u64 %r503; .reg .u64 %r504; .reg .u32 %r505; .reg .pred %r506; .reg .pred %r507; .reg .u32 %r513; .reg .pred %r514; .reg .u32 %r515; .reg .pred %r516; .reg .u64 %r517; .reg .u64 %r518; .reg .u64 %r519; .reg .u64 %r520; .reg .u32 %r522; .reg .u64 %r523; .reg .u64 %r524; .reg .u64 %r525; .reg .u64 %r526; .reg .u64 %r527; .reg .u64 %r528; .reg .u64 %r532; .reg .u32 %r533; .reg .f32 %r536; .reg .pred %r537; .reg .pred %r538; .reg .u64 %r539; .reg .u64 %r540; .reg .u64 %r541; .reg .u32 %r543; .reg .pred %r544; .reg .u64 %r548; .reg .u32 %r549; .reg .pred %r550; .reg .u32 %r553; .reg .f32 %r554; .reg .pred %r555; .reg .f32 %r556; .reg .u32 %r557; .reg .u64 %r559; .reg .u64 %r560; .reg .f32 %r563; .reg .u32 %r564; .reg .u64 %r565; .reg .u64 %r566; .reg .u64 %r567; .reg .u32 %r569; .reg .u64 %r571; .reg .u64 %r572; .reg .u32 %r574; .reg .f32 %r575; .reg .f32 %r577; .reg .pred %r578; .reg .f32 %r581; .reg .u32 %r582; .reg .f32 %r583; .reg .pred %r584; .reg .f32 %r585; .reg .pred %r586; .reg .pred %r587; .reg .pred %r588; .reg .pred %r590; .reg .pred %r591; .reg .u64 %r593; .reg .u64 %r594; .reg .u64 %r596; .reg .f32 %r597; .reg .pred %r598; .reg .pred %r599; .reg .u64 %r601; .reg .u64 %r602; .reg .u64 %r604; .reg .f32 %r605; .reg .pred %r606; .reg .f32 %r607; .reg .f32 %r609; .reg .pred %r610; .reg .f32 %r612; .reg .pred %r613; .reg .u64 %r616; .reg .u64 %r617; .reg .u64 %r621; .reg .u64 %r624; .reg .u32 %r625; .reg .u64 %r626; .reg .u64 %r627; .reg .f32 %r628; .reg .f32 %r629; .reg .pred %r630; .reg .u64 %r632; .reg .u64 %r633; .reg .u64 %r637; .reg .u32 %r638; .reg .u64 %r639; .reg .u64 %r641; .reg .f32 %r642; .reg .f32 %r643; .reg .pred %r644; .reg .u64 %r646; .reg .u64 %r647; .reg .f32 %r648; .reg .pred %r649; .reg .pred %r650; .reg .f32 %r651; .reg .f32 %r652; .reg .f32 %r653; .reg .u32 %r654; .reg .pred %r655; .reg .pred %r656; .reg .pred %r657; .reg .pred %r658; .reg .pred %r659; .reg .pred %r660; .reg .pred %r661; .reg .pred %r662; .reg .pred %r663; .reg .pred %r664; .reg .f32 %r665; .reg .u64 %r666; .reg .u64 %r667; .reg .u64 %r668; .reg .pred %r669; .reg .u64 %r670; .reg .u64 %r671; .reg .u32 %r672; .reg .u32 %r673; .reg .pred %r674; .reg .pred %r675; .reg .pred %r676; .reg .pred %r677; .reg .f32 %r679; .reg .u64 %r680; .reg .u64 %r681; .reg .pred %r682; .reg .pred %r683; .reg .pred %r684; .reg .u64 %r685; .reg .u32 %r686; .reg .u64 %r687; .reg .u64 %r688; .reg .u64 %r689; .reg .u64 %r690; .reg .u64 %r691; .reg .pred %r692; .reg .u64 %r693; .reg .f32 %r694; mov.u64 %r342,%ar0; mov.u64 %r343,%ar1; mov.u32 %r344,%ar2; mov.u32 %r345,%ar3; mov.u32 %r346,%ar4; mov.u64 %r347,%ar5; .loc 1 66 5 cvta.const.u64 %r348,init_jk; cvt.s64.s32 %r349,%r346; shl.b64 %r350,%r349,2; add.u64 %r351,%r348,%r350; ld.u32 %r127,[%r351]; .loc 1 70 5 add.u32 %r672,%r345,-1; .loc 1 71 19 setp.lt.s32 %r352,%r344,-4; @ %r352 bra $L75; .loc 1 71 10 add.u32 %r353,%r344,-3; .loc 1 71 5 shr.s32 %r356,%r353,31; and.b32 %r357,%r356,7; add.u32 %r358,%r357,%r353; shr.s32 %r103,%r358,3; add.u32 %r360,%r103,1; shl.b32 %r190,%r360,3; bra $L2; $L75: mov.u32 %r190,8; .loc 1 71 28 mov.u32 %r103,0; $L2: .loc 1 72 5 sub.u32 %r40,%r344,%r190; .loc 1 75 4 sub.u32 %r131,%r103,%r672; .loc 1 75 15 add.u32 %r129,%r127,%r672; .loc 1 76 2 setp.ge.s32 %r361,%r129,0; @ %r361 bra $L3; $L8: .loc 1 79 2 setp.lt.s32 %r677,%r127,0; @ %r677 bra $L4; mov.u64 %r323,%frame; mov.u32 %r324,%r672; add.u32 %r329,%r127,%r345; cvt.u64.u32 %r364,%r672; shl.b64 %r365,%r364,2; add.u64 %r366,%r342,4; add.u64 %r322,%r365,%r366; setp.ge.s32 %r676,%r672,0; add.u64 %r693,%frame,160; bra $L5; $L3: add.u64 %r330,%frame,160; cvt.s64.s32 %r367,%r131; shl.b64 %r368,%r367,2; add.u64 %r331,%r347,%r368; add.u32 %r369,%r129,1; add.u32 %r339,%r369,%r131; .loc 1 76 43 mov.f32 %r694,0f00000000; $L7: setp.lt.s32 %r370,%r131,0; @ %r370 bra $L76; ld.u32 %r371,[%r331]; cvt.rn.f32.s32 %r123,%r371; bra $L6; $L76: mov.f32 %r123,%r694; $L6: .loc 1 76 29 st.f32 [%r330],%r123; .loc 1 76 20 add.u32 %r131,%r131,1; add.u64 %r330,%r330,4; add.u64 %r331,%r331,4; .loc 1 76 2 setp.ne.u32 %r372,%r131,%r339; @ %r372 bra $L7; bra $L8; $L10: cvt.s64.s32 %r374,%r324; shl.b64 %r375,%r374,2; add.u64 %r311,%r693,%r375; .loc 1 80 6 mov.u64 %r310,%r342; .loc 1 80 16 mov.f32 %r132,0f00000000; $L9: .loc 1 80 35 ld.f32 %r376,[%r310]; ld.f32 %r377,[%r311]; fma.rn.f32 %r132,%r376,%r377,%r132; add.u64 %r310,%r310,4; add.u64 %r311,%r311,-4; .loc 1 80 6 setp.ne.u64 %r378,%r310,%r322; @ %r378 bra $L9; $L11: .loc 1 80 59 st.f32 [%r323],%r132; add.u64 %r323,%r323,4; add.u32 %r324,%r324,1; .loc 1 79 2 setp.eq.u32 %r379,%r324,%r329; @ %r379 bra $L4; $L5: .loc 1 80 6 @ %r676 bra $L10; .loc 1 80 16 mov.f32 %r132,0f00000000; bra $L11; $L4: add.u64 %r666,%frame,240; cvt.s64.s32 %r382,%r127; shl.b64 %r383,%r382,2; add.u64 %r384,%r383,-8; add.u64 %r261,%r666,%r384; cvt.u64.u32 %r385,%r672; shl.b64 %r386,%r385,2; add.u64 %r232,%r342,%r386; .loc 1 66 5 mov.u32 %r102,%r127; setp.le.s32 %r669,%r40,0; add.u64 %r681,%frame,244; setp.eq.u32 %r682,%r40,1; setp.eq.u32 %r683,%r40,2; .loc 1 103 9 setp.ne.u32 %r684,%r40,0; add.u64 %r685,%frame,232; .loc 1 135 16 add.u32 %r686,%r127,-1; .loc 1 135 13 cvt.s64.s32 %r687,%r686; shl.b64 %r688,%r687,2; add.u64 %r689,%frame,%r688; add.u64 %r690,%r689,240; add.u64 %r691,%frame,160; setp.lt.s32 %r692,%r672,0; $L12: .loc 1 86 16 cvt.s64.s32 %r667,%r102; shl.b64 %r388,%r667,2; add.u64 %r389,%frame,%r388; ld.f32 %r42,[%r389]; .loc 1 86 2 setp.le.s32 %r674,%r102,0; @ %r674 bra $L13; mov.u64 %r296,%r666; add.u64 %r393,%r388,-4; add.u64 %r297,%frame,%r393; add.u32 %r394,%r102,-1; cvt.u64.u32 %r395,%r394; shl.b64 %r396,%r395,2; add.u64 %r309,%r396,%r681; $L14: .loc 1 87 40 mul.f32 %r398,%r42,0f3b800000; .loc 1 87 23 cvt.rzi.s32.f32 %r399,%r398; .loc 1 87 12 cvt.rn.f32.s32 %r134,%r399; .loc 1 88 28 fma.rn.f32 %r401,%r134,0fc3800000,%r42; .loc 1 88 15 cvt.rzi.s32.f32 %r402,%r401; st.u32 [%r296],%r402; .loc 1 89 12 ld.f32 %r403,[%r297]; add.f32 %r42,%r134,%r403; add.u64 %r296,%r296,4; add.u64 %r297,%r297,-4; .loc 1 86 2 setp.ne.u64 %r404,%r296,%r309; @ %r404 bra $L14; $L13: .loc 1 93 7 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r42; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r40; call (%value_in),scalbnf,(%out_arg1,%out_arg2); ld.param.f32 %r407,[%value_in]; } .loc 1 94 18 mul.f32 %r409,%r407,0f3e000000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r409; call (%value_in),floorf,(%out_arg1); ld.param.f32 %r410,[%value_in]; } .loc 1 94 4 fma.rn.f32 %r137,%r410,0fc1000000,%r407; .loc 1 95 5 cvt.rzi.s32.f32 %r105,%r137; .loc 1 96 7 cvt.rn.f32.s32 %r412,%r105; .loc 1 96 4 sub.f32 %r117,%r137,%r412; .loc 1 98 4 @ %r669 bra $L15; .loc 1 99 17 add.u32 %r37,%r102,-1; .loc 1 99 14 cvt.s64.s32 %r414,%r37; shl.b64 %r415,%r414,2; add.u64 %r416,%frame,%r415; add.u64 %r417,%r416,240; ld.u32 %r38,[%r417]; .loc 1 99 24 mov.u32 %r418,8; sub.u32 %r39,%r418,%r40; .loc 1 99 9 shr.s32 %r138,%r38,%r39; .loc 1 99 33 add.u32 %r105,%r105,%r138; .loc 1 100 19 shl.b32 %r419,%r138,%r39; .loc 1 100 15 sub.u32 %r44,%r38,%r419; st.u32 [%r417],%r44; .loc 1 101 23 mov.u32 %r425,7; sub.u32 %r424,%r425,%r40; .loc 1 101 9 shr.s32 %r115,%r44,%r424; bra $L16; $L15: .loc 1 103 9 @ %r684 bra $L17; .loc 1 103 27 add.u32 %r427,%r102,-1; .loc 1 103 24 cvt.s64.s32 %r428,%r427; shl.b64 %r429,%r428,2; add.u64 %r430,%frame,%r429; .loc 1 103 20 ld.u32 %r432,[%r430+240]; shr.s32 %r115,%r432,8; bra $L16; $L17: .loc 1 104 9 setp.ge.f32 %r433,%r117,0f3f000000; @ %r433 bra $L18; .loc 1 97 5 mov.u32 %r115,0; bra $L19; $L16: .loc 1 106 4 setp.le.s32 %r434,%r115,0; @ %r434 bra $L19; .loc 1 107 8 add.u32 %r105,%r105,1; .loc 1 108 6 @ ! %r674 bra $L74; bra $L77; $L85: .loc 1 104 27 mov.u32 %r115,2; $L74: .loc 1 109 5 ld.u32 %r139,[%frame+240]; .loc 1 111 9 setp.ne.u32 %r436,%r139,0; @ %r436 bra $L78; .loc 1 108 6 setp.eq.u32 %r437,%r102,1; @ %r437 bra $L20; add.u64 %r294,%frame,244; .loc 1 108 21 mov.u32 %r173,1; bra $L22; $L23: add.u64 %r294,%r294,4; mov.u32 %r173,%r205; .loc 1 108 6 setp.eq.u32 %r439,%r102,%r173; @ %r439 bra $L20; $L22: .loc 1 109 5 ld.u32 %r139,[%r294]; add.u32 %r205,%r173,1; .loc 1 111 9 setp.eq.u32 %r440,%r139,0; @ %r440 bra $L23; bra $L21; $L78: mov.u32 %r205,1; mov.u32 %r173,0; $L21: .loc 1 112 21 cvt.s64.s32 %r441,%r173; shl.b64 %r442,%r441,2; add.u64 %r443,%frame,%r442; .loc 1 112 28 mov.u32 %r446,256; sub.u32 %r445,%r446,%r139; .loc 1 112 21 st.u32 [%r443+240],%r445; .loc 1 108 6 setp.le.s32 %r447,%r102,%r205; @ %r447 bra $L79; .loc 1 109 5 cvt.s64.s32 %r448,%r205; shl.b64 %r449,%r448,2; add.u64 %r450,%frame,%r449; ld.u32 %r164,[%r450+240]; add.u64 %r280,%r666,%r449; add.u32 %r454,%r102,-1; sub.u32 %r455,%r454,%r205; cvt.u64.u32 %r456,%r455; add.u64 %r457,%r456,%r448; shl.b64 %r458,%r457,2; add.u64 %r292,%r458,%r681; .loc 1 114 24 mov.u32 %r462,255; $L24: sub.u32 %r461,%r462,%r164; .loc 1 114 17 st.u32 [%r280],%r461; add.u64 %r280,%r280,4; .loc 1 108 6 setp.eq.u64 %r463,%r280,%r292; @ %r463 bra $L80; .loc 1 109 5 ld.u32 %r164,[%r280]; bra $L24; $L77: .loc 1 107 20 mov.u32 %r139,0; bra $L20; $L79: .loc 1 112 10 mov.u32 %r139,1; bra $L20; $L80: mov.u32 %r139,1; $L20: .loc 1 116 8 @ %r669 bra $L25; @ %r682 bra $L26; @ %r683 bra $L27; bra $L25; $L26: .loc 1 119 19 add.u32 %r50,%r102,-1; cvt.s64.s32 %r467,%r50; shl.b64 %r468,%r467,2; add.u64 %r469,%frame,%r468; add.u64 %r470,%r469,240; ld.u32 %r476,[%r470]; and.b32 %r475,%r476,127; st.u32 [%r470],%r475; .loc 1 119 10 bra $L25; $L27: .loc 1 121 19 add.u32 %r54,%r102,-1; cvt.s64.s32 %r477,%r54; shl.b64 %r478,%r477,2; add.u64 %r479,%frame,%r478; add.u64 %r480,%r479,240; ld.u32 %r486,[%r480]; and.b32 %r485,%r486,63; st.u32 [%r480],%r485; $L25: .loc 1 124 8 setp.ne.u32 %r487,%r115,2; @ %r487 bra $L19; .loc 1 125 5 mov.f32 %r488,0f3f800000; sub.f32 %r117,%r488,%r117; .loc 1 126 5 setp.eq.u32 %r489,%r139,0; @ %r489 bra $L19; .loc 1 126 21 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r488; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r40; call (%value_in),scalbnf,(%out_arg1,%out_arg2); ld.param.f32 %r492,[%value_in]; } .loc 1 126 18 sub.f32 %r117,%r117,%r492; $L19: .loc 1 131 4 setp.neu.f32 %r493,%r117,0f00000000; @ %r493 bra $L28; .loc 1 133 12 add.u32 %r147,%r102,-1; .loc 1 133 6 setp.gt.s32 %r494,%r127,%r147; @ %r494 bra $L29; shl.b64 %r269,%r667,2; add.u64 %r497,%r269,-4; add.u64 %r267,%r666,%r497; add.u64 %r500,%r685,%r269; not.b32 %r501,%r127; add.u32 %r502,%r501,%r102; cvt.u64.u32 %r503,%r502; shl.b64 %r504,%r503,2; sub.u64 %r279,%r500,%r504; .loc 1 132 8 mov.u32 %r142,0; $L30: .loc 1 133 31 ld.u32 %r505,[%r267]; or.b32 %r142,%r142,%r505; add.u64 %r267,%r267,-4; .loc 1 133 6 setp.ne.u64 %r506,%r267,%r279; @ %r506 bra $L30; .loc 1 134 8 setp.ne.u32 %r507,%r142,0; @ %r507 bra $L31; $L29: .loc 1 135 3 ld.u32 %r513,[%r690]; setp.ne.u32 %r514,%r513,0; @ %r514 bra $L32; mov.u64 %r260,%r261; .loc 1 135 8 mov.u32 %r52,1; $L33: .loc 1 135 24 add.u32 %r52,%r52,1; add.u64 %r260,%r260,-4; .loc 1 135 3 ld.u32 %r515,[%r260+4]; setp.eq.u32 %r516,%r515,0; @ %r516 bra $L33; bra $L119; $L32: .loc 1 137 8 add.u32 %r673,%r102,1; mov.u32 %r145,%r673; .loc 1 137 19 mov.u32 %r167,%r673; bra $L35; $L119: .loc 1 137 8 add.u32 %r673,%r102,1; mov.u32 %r145,%r673; .loc 1 137 19 add.u32 %r167,%r102,%r52; $L35: cvt.s64.s32 %r517,%r103; cvt.s64.s32 %r518,%r673; add.u64 %r519,%r517,%r518; shl.b64 %r520,%r519,2; add.u64 %r234,%r347,%r520; add.u32 %r522,%r672,%r673; cvt.s64.s32 %r523,%r522; shl.b64 %r524,%r523,2; add.u64 %r241,%r691,%r524; add.u64 %r525,%r667,1; shl.b64 %r526,%r525,2; add.u64 %r246,%frame,%r526; cvt.s64.s32 %r527,%r345; add.u64 %r528,%r527,%r667; sub.u64 %r532,%r528,%r523; shl.b64 %r259,%r532,2; add.u64 %r680,%r259,-4; $L38: .loc 1 138 17 ld.u32 %r533,[%r234]; cvt.rn.f32.s32 %r203,%r533; .loc 1 138 15 st.f32 [%r241],%r203; .loc 1 139 7 @ %r692 bra $L81; add.u64 %r221,%r680,%r241; mov.u64 %r220,%r342; .loc 1 139 17 mov.f32 %r144,0f00000000; $L37: .loc 1 139 36 ld.f32 %r536,[%r220]; fma.rn.f32 %r144,%r536,%r203,%r144; .loc 1 139 7 setp.eq.u64 %r537,%r220,%r232; @ %r537 bra $L36; ld.f32 %r203,[%r221]; add.u64 %r220,%r220,4; add.u64 %r221,%r221,-4; bra $L37; $L81: .loc 1 139 17 mov.f32 %r144,0f00000000; $L36: .loc 1 140 12 st.f32 [%r246],%r144; .loc 1 137 23 add.u32 %r145,%r145,1; add.u64 %r234,%r234,4; add.u64 %r241,%r241,4; add.u64 %r246,%r246,4; .loc 1 137 3 setp.le.s32 %r538,%r145,%r167; @ %r538 bra $L38; mov.u32 %r102,%r167; bra $L12; $L31: .loc 1 149 18 add.u32 %r40,%r40,-8; .loc 1 150 14 cvt.s64.s32 %r539,%r147; shl.b64 %r540,%r539,2; add.u64 %r541,%frame,%r540; .loc 1 150 11 ld.u32 %r543,[%r541+240]; setp.ne.u32 %r544,%r543,0; @ %r544 bra $L39; add.u64 %r548,%r540,-4; add.u64 %r214,%r666,%r548; $L40: .loc 1 150 27 add.u32 %r147,%r147,-1; .loc 1 150 33 add.u32 %r40,%r40,-8; add.u64 %r214,%r214,-4; .loc 1 150 11 ld.u32 %r549,[%r214+4]; setp.eq.u32 %r550,%r549,0; @ %r550 bra $L40; bra $L39; $L28: .loc 1 152 10 sub.u32 %r553,%r190,%r344; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r117; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r553; call (%value_in),scalbnf,(%out_arg1,%out_arg2); ld.param.f32 %r554,[%value_in]; } .loc 1 153 8 setp.ge.f32 %r555,%r554,0f43800000; @ ! %r555 bra $L120; .loc 1 154 33 mul.f32 %r556,%r554,0f3b800000; .loc 1 154 16 cvt.rzi.s32.f32 %r557,%r556; .loc 1 154 6 cvt.rn.f32.s32 %r149,%r557; .loc 1 155 10 shl.b64 %r559,%r667,2; add.u64 %r560,%frame,%r559; .loc 1 155 25 fma.rn.f32 %r563,%r149,0fc3800000,%r554; .loc 1 155 12 cvt.rzi.s32.f32 %r564,%r563; st.u32 [%r560+240],%r564; .loc 1 156 6 add.u32 %r147,%r102,1; .loc 1 156 15 add.u32 %r40,%r40,8; .loc 1 157 10 cvt.s64.s32 %r565,%r147; shl.b64 %r566,%r565,2; add.u64 %r567,%frame,%r566; .loc 1 157 12 cvt.rzi.s32.f32 %r569,%r149; st.u32 [%r567+240],%r569; bra $L39; $L120: .loc 1 158 20 shl.b64 %r571,%r667,2; add.u64 %r572,%frame,%r571; .loc 1 158 22 cvt.rzi.s32.f32 %r574,%r554; st.u32 [%r572+240],%r574; .loc 1 158 20 mov.u32 %r147,%r102; $L39: .loc 1 162 7 mov.f32 %r575,0f3f800000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r575; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r40; call (%value_in),scalbnf,(%out_arg1,%out_arg2); ld.param.f32 %r577,[%value_in]; } mov.f32 %r150,%r577; .loc 1 163 2 setp.lt.s32 %r578,%r147,0; @ %r578 bra $L43; cvt.s64.s32 %r668,%r147; shl.b64 %r208,%r668,2; add.u64 %r187,%r666,%r208; add.u64 %r84,%frame,%r208; mov.u64 %r210,%r84; mov.u32 %r151,%r147; $L44: .loc 1 164 16 ld.u32 %r582,[%r187]; cvt.rn.f32.s32 %r581,%r582; .loc 1 164 15 mul.f32 %r583,%r581,%r150; .loc 1 164 11 st.f32 [%r210],%r583; .loc 1 164 32 mul.f32 %r150,%r150,0f3b800000; .loc 1 163 17 add.u32 %r151,%r151,-1; add.u64 %r187,%r187,-4; add.u64 %r210,%r210,-4; .loc 1 163 2 setp.ne.u32 %r584,%r151,-1; @ %r584 bra $L44; add.u64 %r671,%frame,80; mov.u64 %r69,%r671; mov.u32 %r99,0; .loc 1 169 6 mov.f32 %r679,0f3fc90000; bra $L45; $L47: .loc 1 169 44 ld.f32 %r585,[%r191]; fma.rn.f32 %r152,%r585,%r195,%r152; .loc 1 169 37 add.u32 %r41,%r41,1; .loc 1 169 6 setp.lt.s32 %r586,%r127,%r41; @ %r586 bra $L46; add.u64 %r191,%r191,4; .loc 1 169 26 setp.lt.s32 %r587,%r99,%r41; @ %r587 bra $L46; ld.f32 %r195,[%r23]; add.u64 %r23,%r23,4; bra $L47; $L82: .loc 1 169 12 mov.f32 %r152,0f00000000; $L46: .loc 1 170 15 st.f32 [%r69],%r152; add.u32 %r146,%r99,1; add.u64 %r69,%r69,4; add.u64 %r84,%r84,-4; .loc 1 168 2 setp.eq.u32 %r588,%r99,%r147; @ %r588 bra $L48; mov.u32 %r99,%r146; $L45: .loc 1 169 6 @ %r677 bra $L82; cvta.const.u64 %r23,PIo2+4; mov.u64 %r191,%r84; mov.f32 %r195,%r679; .loc 1 169 12 mov.f32 %r152,0f00000000; .loc 1 169 18 mov.u32 %r41,0; bra $L47; $L70: .loc 1 190 3 setp.gt.s32 %r590,%r147,0; @ %r590 bra $L49; .loc 1 200 10 mov.f32 %r162,0f00000000; bra $L50; $L121: .loc 1 195 3 setp.gt.s32 %r591,%r147,1; @ %r591 bra $L51; .loc 1 200 10 mov.f32 %r162,0f00000000; bra $L50; $L73: add.u64 %r184,%r671,%r208; add.u64 %r593,%r671,-4; add.u64 %r594,%r593,%r208; shl.b64 %r596,%r668,2; sub.u64 %r179,%r594,%r596; .loc 1 168 2 mov.f32 %r153,0f00000000; $L52: .loc 1 177 26 ld.f32 %r597,[%r184]; add.f32 %r153,%r153,%r597; add.u64 %r184,%r184,-4; .loc 1 177 3 setp.ne.u64 %r598,%r179,%r184; @ %r598 bra $L52; bra $L68; $L84: .loc 1 176 6 mov.f32 %r153,0f00000000; $L68: .loc 1 178 21 setp.eq.u32 %r599,%r115,0; @ %r599 bra $L53; neg.f32 %r153,%r153; $L53: .loc 1 178 8 st.f32 [%r343],%r153; .loc 1 179 3 bra $L54; $L72: add.u64 %r175,%r671,%r208; add.u64 %r601,%r671,-4; add.u64 %r602,%r601,%r208; shl.b64 %r604,%r668,2; sub.u64 %r166,%r602,%r604; .loc 1 182 6 mov.f32 %r154,0f00000000; $L55: .loc 1 183 26 ld.f32 %r605,[%r175]; add.f32 %r154,%r154,%r605; add.u64 %r175,%r175,-4; .loc 1 183 3 setp.ne.u64 %r606,%r166,%r175; @ %r606 bra $L55; bra $L67; $L83: .loc 1 182 6 mov.f32 %r154,0f00000000; $L67: ld.f32 %r607,[%frame+80]; sub.f32 %r158,%r607,%r154; .loc 1 184 21 setp.eq.u32 %r675,%r115,0; @ %r675 bra $L56; neg.f32 %r609,%r154; .loc 1 184 8 st.f32 [%r343],%r609; .loc 1 186 3 setp.le.s32 %r610,%r147,0; @ %r610 bra $L57; $L65: add.u64 %r177,%frame,84; .loc 1 182 6 mov.u32 %r159,1; $L58: .loc 1 186 26 ld.f32 %r612,[%r177]; add.f32 %r158,%r158,%r612; .loc 1 186 19 add.u32 %r159,%r159,1; add.u64 %r177,%r177,4; .loc 1 186 3 setp.ge.s32 %r613,%r147,%r159; @ %r613 bra $L58; .loc 1 187 21 @ %r675 bra $L59; $L57: neg.f32 %r158,%r158; $L59: .loc 1 187 8 st.f32 [%r343+4],%r158; .loc 1 188 3 bra $L54; $L49: cvt.s64.s32 %r668,%r147; shl.b64 %r616,%r668,2; add.u64 %r617,%frame,%r616; ld.f32 %r111,[%r617+80]; add.u64 %r671,%frame,80; add.u64 %r621,%r616,-4; add.u64 %r106,%r671,%r621; add.u64 %r670,%frame,72; add.u64 %r624,%r670,%r616; add.u32 %r625,%r147,-1; cvt.u64.u32 %r626,%r625; shl.b64 %r627,%r626,2; sub.u64 %r194,%r624,%r627; $L60: .loc 1 191 19 ld.f32 %r90,[%r106]; .loc 1 191 15 add.f32 %r160,%r90,%r111; .loc 1 192 24 sub.f32 %r628,%r90,%r160; .loc 1 192 14 add.f32 %r629,%r628,%r111; st.f32 [%r106+4],%r629; .loc 1 193 15 st.f32 [%r106],%r160; add.u64 %r106,%r106,-4; mov.f32 %r111,%r160; .loc 1 190 3 setp.ne.u64 %r630,%r106,%r194; @ %r630 bra $L60; bra $L121; $L51: shl.b64 %r632,%r668,2; add.u64 %r633,%frame,%r632; ld.f32 %r114,[%r633+80]; add.u64 %r637,%r632,-4; add.u64 %r124,%r671,%r637; add.u32 %r638,%r147,-2; cvt.u64.u32 %r639,%r638; shl.b64 %r109,%r639,2; add.u64 %r641,%r670,%r632; sub.u64 %r108,%r641,%r109; $L62: .loc 1 196 19 ld.f32 %r93,[%r124]; .loc 1 196 15 add.f32 %r161,%r93,%r114; .loc 1 197 24 sub.f32 %r642,%r93,%r161; .loc 1 197 14 add.f32 %r643,%r642,%r114; st.f32 [%r124+4],%r643; .loc 1 198 15 st.f32 [%r124],%r161; add.u64 %r124,%r124,-4; mov.f32 %r114,%r161; .loc 1 195 3 setp.ne.u64 %r644,%r108,%r124; @ %r644 bra $L62; add.u64 %r165,%r671,%r632; add.u64 %r646,%r671,-4; add.u64 %r647,%r646,%r632; sub.u64 %r125,%r647,%r109; .loc 1 200 10 mov.f32 %r162,0f00000000; $L63: .loc 1 200 33 ld.f32 %r648,[%r165]; add.f32 %r162,%r162,%r648; add.u64 %r165,%r165,-4; .loc 1 200 3 setp.ne.u64 %r649,%r125,%r165; @ %r649 bra $L63; $L50: ld.f32 %r199,[%frame+80]; ld.f32 %r200,[%frame+84]; .loc 1 201 5 setp.ne.u32 %r650,%r115,0; @ %r650 bra $L64; .loc 1 202 12 st.f32 [%r343],%r199; .loc 1 202 27 st.f32 [%r343+4],%r200; .loc 1 202 42 st.f32 [%r343+8],%r162; bra $L54; $L64: .loc 1 204 14 neg.f32 %r651,%r199; .loc 1 204 12 st.f32 [%r343],%r651; .loc 1 204 29 neg.f32 %r652,%r200; .loc 1 204 27 st.f32 [%r343+4],%r652; .loc 1 204 44 neg.f32 %r653,%r162; .loc 1 204 42 st.f32 [%r343+8],%r653; $L54: .loc 1 207 10 and.b32 %r654,%r105,7; bra $L122; $L56: .loc 1 184 8 st.f32 [%r343],%r154; .loc 1 186 3 setp.gt.s32 %r655,%r147,0; @ %r655 bra $L65; bra $L59; $L43: setp.gt.s32 %r656,%r346,2; @ %r656 bra $L66; setp.gt.s32 %r657,%r346,0; @ %r657 bra $L83; setp.eq.u32 %r658,%r346,0; @ %r658 bra $L84; bra $L54; $L66: setp.eq.u32 %r659,%r346,3; @ %r659 bra $L70; bra $L54; $L48: setp.gt.s32 %r660,%r346,2; @ %r660 bra $L71; setp.gt.s32 %r661,%r346,0; @ %r661 bra $L72; setp.eq.u32 %r662,%r346,0; @ %r662 bra $L73; bra $L54; $L71: setp.eq.u32 %r663,%r346,3; @ %r663 bra $L70; bra $L54; $L18: .loc 1 107 8 add.u32 %r105,%r105,1; .loc 1 108 6 setp.gt.s32 %r664,%r102,0; @ %r664 bra $L85; .loc 1 125 5 mov.f32 %r665,0f3f800000; sub.f32 %r117,%r665,%r117; mov.u32 %r115,2; bra $L19; $L122: .loc 1 208 1 mov.u32 %value,%r654; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } lib_a-kf_sin.o/ 1591654536 399 399 100644 2100 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r31; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r42; .reg .f32 %r43; .reg .f32 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .pred %r47; .reg .u32 %r48; .reg .pred %r49; .reg .f32 %r50; .reg .f32 %r51; .reg .f32 %r52; .reg .pred %r53; .reg .f32 %r54; .reg .f32 %r55; .reg .f32 %r56; .reg .f32 %r57; .reg .f32 %r58; .reg .f32 %r59; .reg .f32 %r60; mov.f32 %r43,%ar0; mov.f32 %r44,%ar1; mov.u32 %r45,%ar2; .loc 1 40 2 mov.b32 %r31,%r43; .loc 1 41 5 and.b32 %r46,%r31,2147483647; .loc 1 42 4 setp.gt.s32 %r47,%r46,838860799; @ %r47 bra $L2; .loc 1 43 9 cvt.rzi.s32.f32 %r48,%r43; .loc 1 43 8 setp.eq.u32 %r49,%r48,0; @ %r49 bra $L5; $L2: .loc 1 44 4 mul.f32 %r34,%r43,%r43; .loc 1 45 4 mul.f32 %r35,%r43,%r34; .loc 1 46 27 fma.rn.f32 %r50,%r34,0f2f2ec9d3,0fb2d72f34; .loc 1 46 21 fma.rn.f32 %r51,%r50,%r34,0f3638ef1b; .loc 1 46 15 fma.rn.f32 %r52,%r51,%r34,0fb9500d01; .loc 1 46 4 fma.rn.f32 %r36,%r52,%r34,0f3c088889; .loc 1 47 4 setp.ne.u32 %r53,%r45,0; @ %r53 bra $L4; .loc 1 47 26 fma.rn.f32 %r54,%r34,%r36,0fbe2aaaab; .loc 1 47 20 fma.rn.f32 %r42,%r54,%r35,%r43; bra $L1; $L4: .loc 1 48 34 mul.f32 %r55,%r35,%r36; .loc 1 48 32 neg.f32 %r56,%r55; fma.rn.f32 %r57,%r44,0f3f000000,%r56; .loc 1 48 37 neg.f32 %r58,%r44; fma.rn.f32 %r59,%r57,%r34,%r58; .loc 1 48 40 fma.rn.f32 %r60,%r35,0f3e2aaaab,%r59; .loc 1 48 20 sub.f32 %r42,%r43,%r60; bra $L1; $L5: .loc 1 43 27 mov.f32 %r42,%r43; $L1: .loc 1 49 1 mov.f32 %value,%r42; st.param.f32 [%value_out],%value; ret; } lib_a-kf_tan.o/ 1591654536 399 399 100644 4998 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r36; .reg .u32 %r51; .reg .u32 %r52; .reg .f32 %r55; .reg .f32 %r58; .reg .f32 %r59; .reg .f32 %r61; .reg .f32 %r62; .reg .f32 %r63; .reg .f32 %r64; .reg .f32 %r65; .reg .f32 %r67; .reg .f32 %r68; .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 .f32 %r83; .reg .pred %r84; .reg .f32 %r85; .reg .pred %r87; .reg .f32 %r88; .reg .f32 %r89; .reg .f32 %r90; .reg .f32 %r91; .reg .f32 %r92; .reg .f32 %r93; .reg .f32 %r94; .reg .f32 %r95; .reg .f32 %r96; .reg .f32 %r97; .reg .f32 %r98; .reg .f32 %r99; .reg .f32 %r100; .reg .f32 %r101; .reg .f32 %r103; .reg .f32 %r104; .reg .f32 %r105; .reg .f32 %r106; .reg .f32 %r107; .reg .f32 %r109; .reg .u32 %r110; .reg .u32 %r111; .reg .u32 %r112; .reg .u32 %r113; .reg .f32 %r114; .reg .pred %r115; .reg .u32 %r116; .reg .u32 %r117; .reg .f32 %r118; .reg .u32 %r119; .reg .u32 %r120; .reg .f32 %r121; .reg .f32 %r122; .reg .f32 %r123; .reg .f32 %r124; .reg .pred %r126; 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 %r126,%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 mov.f32 %r83,0f3f800000; div.rn.f32 %r71,%r83,%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 %r126,%r52,1059889471; @ %r126 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 72 4 mul.f32 %r61,%r72,%r58; .loc 1 71 46 fma.rn.f32 %r91,%r59,0f37d95384,0f3895c07a; .loc 1 71 37 fma.rn.f32 %r92,%r91,%r59,0f398137b9; .loc 1 71 29 fma.rn.f32 %r93,%r92,%r59,0f3abede48; .loc 1 71 21 fma.rn.f32 %r94,%r93,%r59,0f3c11371f; .loc 1 71 13 fma.rn.f32 %r95,%r94,%r59,0f3d5d0dd1; .loc 1 70 42 fma.rn.f32 %r96,%r59,0fb79bae5f,0f38a3f445; .loc 1 70 34 fma.rn.f32 %r97,%r96,%r59,0f3a1a26c8; .loc 1 70 26 fma.rn.f32 %r98,%r97,%r59,0f3b6b6916; .loc 1 70 18 fma.rn.f32 %r99,%r98,%r59,0f3cb327a4; .loc 1 70 4 fma.rn.f32 %r100,%r99,%r59,0f3e088889; .loc 1 73 17 fma.rn.f32 %r101,%r95,%r58,%r100; .loc 1 73 20 fma.rn.f32 %r36,%r101,%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 @ %r126 bra $L7; .loc 1 77 8 cvt.rn.f32.s32 %r64,%r74; .loc 1 78 56 mul.f32 %r103,%r71,%r71; .loc 1 78 61 add.f32 %r104,%r71,%r64; .loc 1 78 58 div.rn.f32 %r105,%r103,%r104; .loc 1 78 64 sub.f32 %r106,%r105,%r63; .loc 1 78 53 sub.f32 %r107,%r72,%r106; .loc 1 78 39 fma.rn.f32 %r109,%r107,0fc0000000,%r64; .loc 1 78 27 shr.s32 %r110,%r51,30; .loc 1 78 32 and.b32 %r111,%r110,2; .loc 1 78 22 mov.u32 %r113,1; sub.u32 %r112,%r113,%r111; .loc 1 78 13 cvt.rn.f32.s32 %r114,%r112; .loc 1 78 36 mul.f32 %r71,%r109,%r114; bra $L1; $L7: .loc 1 80 4 setp.eq.u32 %r115,%r74,1; @ %r115 bra $L1; .loc 1 88 6 mov.b32 %r117,%r71; and.b32 %r116,%r117,-4096; mov.b32 %r65,%r116; .loc 1 90 13 mov.f32 %r118,0fbf800000; div.rn.f32 %r67,%r118,%r71; .loc 1 92 6 mov.b32 %r120,%r67; and.b32 %r119,%r120,-4096; mov.b32 %r68,%r119; .loc 1 89 16 sub.f32 %r121,%r65,%r72; .loc 1 89 9 sub.f32 %r122,%r63,%r121; .loc 1 93 9 fma.rn.f32 %r123,%r65,%r68,0f3f800000; .loc 1 94 19 fma.rn.f32 %r124,%r122,%r68,%r123; .loc 1 94 14 fma.rn.f32 %r71,%r124,%r67,%r68; 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/ 1591654536 399 399 100644 1011 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/1591654536 399 399 100644 812 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/1591654536 399 399 100644 812 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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: llrint .extern .func (.param .u64 %value_out) llrint (.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 %r25; 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),llrint,(%out_arg1); ld.param.u64 %r25,[%value_in]; } .loc 1 40 1 mov.u64 %value,%r25; st.param.u64 [%value_out],%value; ret; } /391 1591654536 399 399 100644 820 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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: llround .extern .func (.param .u64 %value_out) llround (.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 %r25; 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),llround,(%out_arg1); ld.param.u64 %r25,[%value_in]; } .loc 1 40 1 mov.u64 %value,%r25; st.param.u64 [%value_out],%value; ret; } lib_a-log10l.o/ 1591654536 399 399 100644 804 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654536 399 399 100644 804 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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-logl.o/ 1591654536 399 399 100644 788 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654536 399 399 100644 804 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r25; 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 %r25,[%value_in]; } .loc 1 40 1 mov.u64 %value,%r25; st.param.u64 [%value_out],%value; ret; } lib_a-lroundl.o/1591654536 399 399 100644 812 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r25; 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 %r25,[%value_in]; } .loc 1 40 1 mov.u64 %value,%r25; st.param.u64 [%value_out],%value; ret; } lib_a-modfl.o/ 1591654536 399 399 100644 1003 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654536 399 399 100644 788 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } /409 1591654536 399 399 100644 836 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 DECL: nearbyint .extern .func (.param .f64 %value_out) nearbyint (.param .f64 %in_ar0); // 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; .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),nearbyint,(%out_arg1); ld.param.f64 %r25,[%value_in]; } .loc 1 40 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } /429 1591654536 399 399 100644 1043 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } lib_a-powl.o/ 1591654536 399 399 100644 995 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } /449 1591654536 399 399 100644 1043 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/1591654536 399 399 100644 1226 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654536 399 399 100644 796 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654536 399 399 100644 804 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/1591654536 399 399 100644 3972 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r36; .reg .u32 %r37; .reg .f64 %r39; .reg .f64 %r41; .reg .f64 %r42; .reg .u64 %r43; .reg .u64 %r44; .reg .pred %r45; .reg .pred %r46; .reg .f64 %r47; .reg .pred %r48; .reg .pred %r49; .reg .f64 %r51; .reg .f64 %r53; .reg .pred %r54; .reg .f64 %r56; .reg .f64 %r58; .reg .f64 %r59; .reg .f64 %r61; .reg .f64 %r62; .reg .f64 %r63; .reg .f64 %r64; .reg .f64 %r65; .reg .f64 %r67; .reg .f64 %r69; .reg .f64 %r70; .reg .f64 %r72; .reg .f64 %r73; .reg .f64 %r74; .reg .f64 %r75; .reg .pred %r76; mov.f64 %r42,%ar0; .loc 1 89 2 mov.b64 %r43,%r42; shr.u64 %r44,%r43,32; cvt.u32.u64 %r36,%r44; .loc 1 90 5 and.b32 %r37,%r36,2147483647; .loc 1 91 4 setp.le.s32 %r45,%r37,2146435071; @ %r45 bra $L2; .loc 1 91 29 add.f64 %r41,%r42,%r42; bra $L1; $L2: .loc 1 92 4 setp.gt.s32 %r46,%r37,1043333119; @ %r46 bra $L4; .loc 1 93 13 add.f64 %r47,%r42,0d7e37e43c8800759c; .loc 1 93 8 setp.gt.f64 %r48,%r47,0d3ff0000000000000; @ ! %r48 bra $L5; bra $L8; $L4: .loc 1 95 4 setp.le.s32 %r49,%r37,1102053376; @ %r49 bra $L6; .loc 1 96 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r42; 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),__ieee754_log,(%out_arg1); ld.param.f64 %r53,[%value_in]; } .loc 1 96 8 add.f64 %r41,%r53,0d3fe62e42fefa39ef; bra $L7; $L6: .loc 1 97 12 setp.le.s32 %r54,%r37,1073741824; @ %r54 bra $L5; .loc 1 98 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r42; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r56,[%value_in]; } .loc 1 99 35 fma.rn.f64 %r58,%r42,%r42,0d3ff0000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r58; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r59,[%value_in]; } .loc 1 99 58 add.f64 %r61,%r59,%r56; .loc 1 99 33 mov.f64 %r63,0d3ff0000000000000; div.rn.f64 %r62,%r63,%r61; .loc 1 99 10 fma.rn.f64 %r64,%r56,0d4000000000000000,%r62; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r64; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r65,[%value_in]; } mov.f64 %r41,%r65; bra $L7; $L5: .loc 1 101 8 mul.f64 %r39,%r42,%r42; .loc 1 102 15 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r42; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r67,[%value_in]; } .loc 1 102 30 add.f64 %r69,%r39,0d3ff0000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r69; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r70,[%value_in]; } .loc 1 102 29 add.f64 %r72,%r70,0d3ff0000000000000; .loc 1 102 24 div.rn.f64 %r73,%r39,%r72; .loc 1 102 9 add.f64 %r74,%r73,%r67; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r74; call (%value_in),log1p,(%out_arg1); ld.param.f64 %r75,[%value_in]; } mov.f64 %r41,%r75; $L7: .loc 1 104 4 setp.gt.s32 %r76,%r36,0; @ %r76 bra $L1; .loc 1 104 33 neg.f64 %r41,%r41; bra $L1; $L8: .loc 1 93 28 mov.f64 %r41,%r42; $L1: .loc 1 105 1 mov.f64 %value,%r41; st.param.f64 [%value_out],%value; ret; } lib_a-s_atan.o/ 1591654536 399 399 100644 5481 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .f64 %r51; .reg .f64 %r52; .reg .f64 %r60; .reg .f64 %r61; .reg .f64 %r62; .reg .u64 %r63; .reg .u64 %r64; .reg .pred %r65; .reg .pred %r66; .reg .u32 %r68; .reg .u32 %r69; .reg .u32 %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .u16 %r75; .reg .u16 %r76; .reg .u16 %r77; .reg .u32 %r78; .reg .u16 %r79; .reg .pred %r80; .reg .pred %r81; .reg .pred %r82; .reg .pred %r83; .reg .f64 %r84; .reg .pred %r85; .reg .f64 %r87; .reg .pred %r88; .reg .pred %r89; .reg .f64 %r90; .reg .pred %r91; .reg .f64 %r92; .reg .f64 %r93; .reg .f64 %r94; .reg .f64 %r95; .reg .f64 %r96; .reg .f64 %r97; .reg .f64 %r98; .reg .f64 %r99; .reg .f64 %r100; .reg .f64 %r101; .reg .f64 %r102; .reg .f64 %r103; .reg .f64 %r104; .reg .pred %r105; .reg .u64 %r106; .reg .u64 %r107; .reg .u64 %r108; .reg .u64 %r109; .reg .u64 %r110; .reg .u64 %r113; .reg .f64 %r114; .reg .f64 %r115; .reg .f64 %r116; .reg .f64 %r117; .reg .pred %r118; mov.f64 %r62,%ar0; .loc 1 138 2 mov.b64 %r63,%r62; shr.u64 %r64,%r63,32; cvt.u32.u64 %r46,%r64; .loc 1 139 5 and.b32 %r47,%r46,2147483647; .loc 1 140 4 setp.le.s32 %r65,%r47,1141899263; @ %r65 bra $L2; .loc 1 143 8 setp.gt.s32 %r66,%r47,2146435072; @ %r66 bra $L3; .loc 1 144 6 set.u32.eq.u32 %r68,%r47,2146435072; neg.s32 %r69,%r68; .loc 1 144 24 cvt.u32.u64 %r72,%r63; set.u32.ne.u32 %r73,%r72,0; neg.s32 %r74,%r73; .loc 1 144 18 cvt.u16.u32 %r76,%r69; cvt.u16.u32 %r77,%r74; and.b16 %r75,%r76,%r77; .loc 1 143 22 cvt.u32.u16 %r78,%r75; cvt.u16.u8 %r79,%r78; setp.eq.u16 %r80,%r79,0; @ %r80 bra $L4; $L3: .loc 1 145 11 add.f64 %r61,%r62,%r62; bra $L1; $L4: .loc 1 146 8 setp.gt.s32 %r81,%r46,0; .loc 1 147 32 selp.f64 %r61,0d3ff921fb54442d18,0dbff921fb54442d18,%r81; bra $L1; $L2: .loc 1 148 7 setp.gt.s32 %r82,%r47,1071382527; @ %r82 bra $L6; .loc 1 149 9 setp.gt.s32 %r83,%r47,1042284543; @ %r83 bra $L13; .loc 1 150 10 add.f64 %r84,%r62,0d7e37e43c8800759c; .loc 1 150 5 setp.gt.f64 %r85,%r84,0d3ff0000000000000; @ %r85 bra $L14; .loc 1 152 9 mov.u32 %r45,-1; bra $L7; $L6: .loc 1 154 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r62; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r87,[%value_in]; } .loc 1 155 5 setp.gt.s32 %r88,%r47,1072889855; @ %r88 bra $L8; .loc 1 156 9 setp.gt.s32 %r89,%r47,1072037887; @ %r89 bra $L9; .loc 1 157 21 fma.rn.f64 %r26,%r87,0d4000000000000000,0dbff0000000000000; .loc 1 157 31 add.f64 %r27,%r87,0d4000000000000000; .loc 1 157 13 div.rn.f64 %r62,%r26,%r27; .loc 1 157 6 mov.u32 %r45,0; bra $L7; $L9: .loc 1 159 18 mov.f64 %r90,0d3ff0000000000000; sub.f64 %r28,%r87,%r90; .loc 1 159 26 add.f64 %r29,%r87,0d3ff0000000000000; .loc 1 159 14 div.rn.f64 %r62,%r28,%r29; .loc 1 159 6 mov.u32 %r45,1; bra $L7; $L8: .loc 1 162 9 setp.gt.s32 %r91,%r47,1073971199; @ %r91 bra $L10; .loc 1 163 18 mov.f64 %r92,0d3ff8000000000000; sub.f64 %r30,%r87,%r92; .loc 1 163 28 fma.rn.f64 %r31,%r87,0d3ff8000000000000,0d3ff0000000000000; .loc 1 163 14 div.rn.f64 %r62,%r30,%r31; .loc 1 163 6 mov.u32 %r45,2; bra $L7; $L10: .loc 1 165 14 mov.f64 %r93,0dbff0000000000000; div.rn.f64 %r62,%r93,%r87; .loc 1 165 6 mov.u32 %r45,3; bra $L7; $L13: .loc 1 152 9 mov.u32 %r45,-1; $L7: .loc 1 169 4 mul.f64 %r51,%r62,%r62; .loc 1 170 4 mul.f64 %r52,%r51,%r51; .loc 1 172 51 fma.rn.f64 %r94,%r52,0d3f90ad3ae322da11,0d3fa97b4b24760deb; .loc 1 172 42 fma.rn.f64 %r95,%r94,%r52,0d3fb10d66a0d03d51; .loc 1 172 33 fma.rn.f64 %r96,%r95,%r52,0d3fb745cdc54c206e; .loc 1 172 24 fma.rn.f64 %r97,%r96,%r52,0d3fc24924920083ff; .loc 1 172 15 fma.rn.f64 %r98,%r97,%r52,0d3fd555555555550d; .loc 1 173 42 fma.rn.f64 %r99,%r52,0dbfa2b4442c6a6c2f,0dbfadde2d52defd9a; .loc 1 173 33 fma.rn.f64 %r100,%r99,%r52,0dbfb3b0f2af749a6d; .loc 1 173 24 fma.rn.f64 %r101,%r100,%r52,0dbfbc71c6fe231671; .loc 1 173 15 fma.rn.f64 %r102,%r101,%r52,0dbfc999999998ebc4; .loc 1 173 5 mul.f64 %r103,%r102,%r52; fma.rn.f64 %r104,%r98,%r51,%r103; mul.f64 %r60,%r104,%r62; .loc 1 174 5 setp.ne.u32 %r105,%r45,-1; @ %r105 bra $L11; .loc 1 174 21 sub.f64 %r61,%r62,%r60; bra $L1; $L11: .loc 1 176 16 cvta.const.u64 %r106,atanhi; cvt.s64.s32 %r107,%r45; shl.b64 %r108,%r107,3; add.u64 %r109,%r106,%r108; .loc 1 176 43 cvta.const.u64 %r110,atanlo; add.u64 %r113,%r110,%r108; .loc 1 176 35 ld.f64 %r115,[%r113]; sub.f64 %r114,%r60,%r115; .loc 1 176 49 sub.f64 %r116,%r114,%r62; .loc 1 176 8 ld.f64 %r117,[%r109]; sub.f64 %r61,%r117,%r116; .loc 1 177 23 setp.ge.s32 %r118,%r46,0; @ %r118 bra $L1; neg.f64 %r61,%r61; bra $L1; $L14: .loc 1 150 25 mov.f64 %r61,%r62; $L1: .loc 1 179 1 mov.f64 %value,%r61; st.param.f64 [%value_out],%value; ret; } lib_a-s_cbrt.o/ 1591654536 399 399 100644 3817 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r43; .reg .f64 %r45; .reg .f64 %r47; .reg .f64 %r49; .reg .f64 %r51; .reg .f64 %r53; .reg .u32 %r54; .reg .u64 %r61; .reg .u64 %r64; .reg .f64 %r65; .reg .f64 %r66; .reg .u64 %r67; .reg .u64 %r68; .reg .pred %r69; .reg .u32 %r71; .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 %r83; .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 %r66,%ar0; mov.b64 %r67,%r66; shr.u64 %r68,%r67,32; cvt.u32.u64 %r54,%r68; .loc 1 84 6 and.b32 %r22,%r54,2147483647; .loc 1 85 4 setp.le.u32 %r69,%r22,2146435071; @ %r69 bra $L2; .loc 1 85 29 add.f64 %r65,%r66,%r66; bra $L1; $L2: .loc 1 87 8 cvt.u32.u64 %r72,%r67; or.b32 %r71,%r22,%r72; .loc 1 87 4 setp.eq.u32 %r73,%r71,0; @ %r73 bra $L6; .loc 1 90 2 cvt.u64.u32 %r74,%r22; shl.b64 %r75,%r74,32; and.b64 %r76,%r67,4294967295; or.b64 %r77,%r76,%r75; mov.b64 %r43,%r77; .loc 1 92 4 and.b32 %r78,%r54,2146435072; setp.ne.u32 %r79,%r78,0; @ %r79 bra $L4; .loc 1 94 6 mul.f64 %r45,%r43,0d4350000000000000; .loc 1 94 34 mov.b64 %r61,%r45; shr.u64 %r81,%r61,32; cvt.u32.u64 %r83,%r81; div.u32 %r84,%r83,3; add.u32 %r85,%r84,696219795; cvt.u64.u32 %r86,%r85; shl.b64 %r87,%r86,32; and.b64 %r88,%r61,4294967295; or.b64 %r89,%r88,%r87; mov.b64 %r39,%r89; bra $L5; $L4: .loc 1 97 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 101 5 mul.f64 %r99,%r39,%r39; .loc 1 101 3 div.rn.f64 %r100,%r99,%r43; .loc 1 102 3 fma.rn.f64 %r47,%r39,%r100,0d3fe15f15f15f15f1; .loc 1 103 11 add.f64 %r101,%r47,0d3ff6a0ea0ea0ea0f; .loc 1 103 15 mov.f64 %r103,0dbfe691de2532c834; div.rn.f64 %r102,%r103,%r47; .loc 1 103 13 add.f64 %r104,%r101,%r102; .loc 1 103 8 mov.f64 %r106,0d3ff9b6db6db6db6e; div.rn.f64 %r105,%r106,%r104; .loc 1 103 6 add.f64 %r107,%r105,0d3fd6db6db6db6db7; .loc 1 103 3 mul.f64 %r108,%r107,%r39; .loc 1 107 2 mov.b64 %r109,%r108; shr.u64 %r110,%r109,32; cvt.u32.u64 %r112,%r110; add.u32 %r111,%r112,1; cvt.u64.u32 %r113,%r111; shl.b64 %r117,%r113,32; mov.b64 %r49,%r117; .loc 1 111 3 mul.f64 %r118,%r49,%r49; .loc 1 112 3 div.rn.f64 %r51,%r43,%r118; .loc 1 114 6 sub.f64 %r36,%r51,%r49; .loc 1 114 12 fma.rn.f64 %r37,%r49,0d4000000000000000,%r51; .loc 1 114 3 div.rn.f64 %r119,%r36,%r37; .loc 1 115 3 fma.rn.f64 %r53,%r49,%r119,%r49; .loc 1 119 2 mov.b64 %r64,%r53; .loc 1 83 6 and.b32 %r120,%r54,-2147483648; .loc 1 119 2 shr.u64 %r122,%r64,32; cvt.u32.u64 %r124,%r122; or.b32 %r123,%r120,%r124; cvt.u64.u32 %r125,%r123; shl.b64 %r126,%r125,32; and.b64 %r127,%r64,4294967295; or.b64 %r128,%r127,%r126; mov.b64 %r65,%r128; .loc 1 120 8 bra $L1; $L6: .loc 1 88 12 mov.f64 %r65,%r66; $L1: .loc 1 121 1 mov.f64 %value,%r65; st.param.f64 [%value_out],%value; ret; } lib_a-s_ceil.o/ 1591654536 399 399 100644 3842 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r41; .reg .u32 %r42; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r47; .reg .u32 %r49; .reg .f64 %r51; .reg .f64 %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .u32 %r56; .reg .pred %r57; .reg .pred %r58; .reg .f64 %r59; .reg .pred %r60; .reg .pred %r61; .reg .u32 %r62; .reg .pred %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .pred %r67; .reg .f64 %r68; .reg .pred %r69; .reg .pred %r70; .reg .u32 %r71; .reg .u32 %r72; .reg .u32 %r73; .reg .pred %r74; .reg .pred %r75; .reg .u32 %r76; .reg .u32 %r77; .reg .u32 %r78; .reg .pred %r79; .reg .f64 %r80; .reg .pred %r81; .reg .pred %r82; .reg .pred %r83; .reg .u32 %r84; .reg .u32 %r85; .reg .u32 %r86; .reg .u32 %r87; .reg .pred %r88; .reg .u32 %r89; .reg .u64 %r90; .reg .u64 %r94; .reg .u64 %r95; .reg .u64 %r96; mov.f64 %r52,%ar0; mov.b64 %r53,%r52; shr.u64 %r54,%r53,32; cvt.u32.u64 %r49,%r54; cvt.u32.u64 %r45,%r53; .loc 1 43 11 shr.s32 %r56,%r49,20; .loc 1 43 16 and.b32 %r23,%r56,2047; .loc 1 43 5 add.u32 %r41,%r23,-1023; .loc 1 44 4 setp.gt.s32 %r57,%r41,19; @ %r57 bra $L2; .loc 1 45 8 setp.ge.s32 %r58,%r41,0; @ %r58 bra $L3; .loc 1 46 10 add.f64 %r59,%r52,0d7e37e43c8800759c; .loc 1 46 5 setp.gt.f64 %r60,%r59,0d0000000000000000; @ ! %r60 bra $L4; .loc 1 47 9 setp.lt.s32 %r61,%r49,0; @ %r61 bra $L13; .loc 1 48 18 or.b32 %r62,%r49,%r45; .loc 1 48 14 setp.eq.u32 %r63,%r62,0; @ %r63 bra $L14; mov.u32 %r45,0; mov.u32 %r49,1072693248; bra $L4; $L3: .loc 1 51 19 mov.u32 %r64,1048575; shr.s32 %r42,%r64,%r41; .loc 1 52 10 and.b32 %r65,%r42,%r49; .loc 1 52 13 or.b32 %r66,%r65,%r45; .loc 1 52 5 setp.eq.u32 %r67,%r66,0; @ %r67 bra $L15; .loc 1 53 10 add.f64 %r68,%r52,0d7e37e43c8800759c; .loc 1 53 5 setp.gt.f64 %r69,%r68,0d0000000000000000; @ ! %r69 bra $L4; .loc 1 54 9 setp.le.s32 %r70,%r49,0; @ %r70 bra $L8; .loc 1 54 34 mov.u32 %r72,1048576; shr.s32 %r71,%r72,%r41; .loc 1 54 19 add.u32 %r49,%r71,%r49; $L8: .loc 1 55 14 not.b32 %r73,%r42; .loc 1 55 10 and.b32 %r49,%r49,%r73; mov.u32 %r45,0; bra $L4; $L2: .loc 1 58 12 setp.le.s32 %r74,%r41,51; @ %r74 bra $L9; .loc 1 59 8 setp.ne.u32 %r75,%r41,1024; @ %r75 bra $L16; .loc 1 59 28 add.f64 %r51,%r52,%r52; bra $L1; $L9: .loc 1 62 41 add.u32 %r76,%r23,-1043; .loc 1 62 8 mov.u32 %r77,-1; shr.u32 %r44,%r77,%r76; .loc 1 63 12 and.b32 %r78,%r44,%r45; .loc 1 63 8 setp.eq.u32 %r79,%r78,0; @ %r79 bra $L17; .loc 1 64 13 add.f64 %r80,%r52,0d7e37e43c8800759c; .loc 1 64 8 setp.gt.f64 %r81,%r80,0d0000000000000000; @ ! %r81 bra $L4; .loc 1 65 5 setp.le.s32 %r82,%r49,0; @ %r82 bra $L11; .loc 1 66 9 setp.ne.u32 %r83,%r41,20; @ %r83 bra $L12; .loc 1 66 20 add.u32 %r49,%r49,1; bra $L11; $L12: .loc 1 68 20 mov.u32 %r85,52; sub.u32 %r84,%r85,%r41; .loc 1 68 15 mov.u32 %r87,1; shl.b32 %r86,%r87,%r84; .loc 1 68 11 add.u32 %r47,%r86,%r45; .loc 1 69 6 setp.le.u32 %r88,%r45,%r47; @ %r88 bra $L18; .loc 1 69 15 add.u32 %r49,%r49,1; mov.u32 %r45,%r47; bra $L11; $L18: mov.u32 %r45,%r47; $L11: .loc 1 73 10 not.b32 %r89,%r44; .loc 1 73 6 and.b32 %r45,%r45,%r89; bra $L4; $L13: mov.u32 %r45,0; mov.u32 %r49,-2147483648; bra $L4; $L14: mov.u32 %r45,%r62; mov.u32 %r49,%r45; $L4: .loc 1 76 2 cvt.u64.u32 %r90,%r49; cvt.u64.u32 %r94,%r45; shl.b64 %r95,%r90,32; or.b64 %r96,%r95,%r94; mov.b64 %r51,%r96; .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; } /469 1591654536 399 399 100644 1186 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 78 2 mov.b64 %r27,%r29; shr.u64 %r32,%r27,32; cvt.u32.u64 %r34,%r32; and.b32 %r33,%r34,2147483647; mov.b64 %r35,%r30; shr.u64 %r36,%r35,32; cvt.u32.u64 %r38,%r36; and.b32 %r37,%r38,-2147483648; or.b32 %r39,%r33,%r37; 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 80 1 st.param.f64 [%value_out],%value; ret; } lib_a-s_cos.o/ 1591654536 399 399 100644 4288 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r33; .reg .u32 %r34; .reg .f64 %r37; .reg .f64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .pred %r41; .reg .f64 %r43; .reg .f64 %r44; .reg .pred %r45; .reg .u32 %r48; .reg .pred %r49; .reg .pred %r50; .reg .pred %r51; .reg .f64 %r52; .reg .f64 %r54; .reg .f64 %r55; .reg .f64 %r56; .reg .f64 %r59; .reg .f64 %r60; .reg .f64 %r61; .reg .f64 %r63; .reg .f64 %r64; .reg .f64 %r65; .reg .u32 %r67; .reg .f64 %r68; .reg .f64 %r69; mov.f64 %r38,%ar0; .loc 1 60 2 mov.b64 %r39,%r38; shr.u64 %r40,%r39,32; cvt.u32.u64 %r33,%r40; .loc 1 63 5 and.b32 %r34,%r33,2147483647; .loc 1 64 4 setp.gt.s32 %r41,%r34,1072243195; @ %r41 bra $L2; .loc 1 64 30 mov.f64 %r43,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r43; call (%value_in),__kernel_cos,(%out_arg1,%out_arg2); ld.param.f64 %r44,[%value_in]; } mov.f64 %r37,%r44; bra $L1; $L2: .loc 1 67 10 setp.le.s32 %r45,%r34,2146435071; @ %r45 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 %r48,[%value_in]; } .loc 1 72 14 and.b32 %r22,%r48,3; setp.eq.u32 %r49,%r22,1; @ %r49 bra $L5; setp.eq.u32 %r50,%r22,2; @ %r50 bra $L6; setp.ne.u32 %r51,%r22,0; @ %r51 bra $L7; .loc 1 73 19 ld.f64 %r54,[%frame+8]; ld.f64 %r52,[%frame]; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r52; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r54; call (%value_in),__kernel_cos,(%out_arg1,%out_arg2); ld.param.f64 %r55,[%value_in]; } mov.f64 %r37,%r55; bra $L1; $L5: .loc 1 74 19 ld.f64 %r59,[%frame+8]; ld.f64 %r56,[%frame]; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r56; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r59; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r22; call (%value_in),__kernel_sin,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r60,[%value_in]; } .loc 1 74 18 neg.f64 %r37,%r60; bra $L1; $L6: .loc 1 75 19 ld.f64 %r63,[%frame+8]; ld.f64 %r61,[%frame]; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r61; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r63; call (%value_in),__kernel_cos,(%out_arg1,%out_arg2); ld.param.f64 %r64,[%value_in]; } .loc 1 75 18 neg.f64 %r37,%r64; bra $L1; $L7: .loc 1 77 19 ld.f64 %r68,[%frame+8]; mov.u32 %r67,1; ld.f64 %r65,[%frame]; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r65; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r68; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r67; call (%value_in),__kernel_sin,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r69,[%value_in]; } mov.f64 %r37,%r69; $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/ 1591654536 399 399 100644 18070 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 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 %r84; .reg .f64 %r85; .reg .u32 %r86; .reg .u32 %r87; .reg .f64 %r89; .reg .f64 %r93; .reg .f64 %r94; .reg .f64 %r95; .reg .u32 %r96; .reg .f64 %r98; .reg .f64 %r100; .reg .f64 %r101; .reg .u64 %r122; .reg .f64 %r123; .reg .f64 %r124; .reg .u64 %r125; .reg .u64 %r126; .reg .pred %r127; .reg .u32 %r128; .reg .u32 %r129; .reg .u32 %r130; .reg .u32 %r131; .reg .f64 %r132; .reg .f64 %r133; .reg .f64 %r134; .reg .pred %r135; .reg .pred %r136; .reg .u32 %r137; .reg .pred %r138; .reg .f64 %r139; .reg .f64 %r140; .reg .f64 %r141; .reg .f64 %r142; .reg .f64 %r143; .reg .f64 %r144; .reg .f64 %r145; .reg .f64 %r146; .reg .f64 %r147; .reg .f64 %r148; .reg .f64 %r149; .reg .f64 %r150; .reg .pred %r151; .reg .f64 %r153; .reg .f64 %r154; .reg .f64 %r155; .reg .f64 %r156; .reg .f64 %r157; .reg .f64 %r158; .reg .f64 %r159; .reg .f64 %r160; .reg .f64 %r161; .reg .f64 %r162; .reg .f64 %r163; .reg .f64 %r164; .reg .pred %r165; .reg .f64 %r166; .reg .f64 %r167; .reg .f64 %r168; .reg .pred %r169; .reg .pred %r170; .reg .f64 %r172; .reg .f64 %r173; .reg .f64 %r174; .reg .pred %r175; .reg .f64 %r176; .reg .f64 %r177; .reg .f64 %r178; .reg .f64 %r179; .reg .f64 %r180; .reg .f64 %r181; .reg .f64 %r182; .reg .f64 %r183; .reg .f64 %r184; .reg .f64 %r185; .reg .f64 %r186; .reg .f64 %r187; .reg .f64 %r188; .reg .f64 %r189; .reg .f64 %r190; .reg .f64 %r191; .reg .f64 %r192; .reg .f64 %r193; .reg .f64 %r194; .reg .f64 %r195; .reg .f64 %r196; .reg .f64 %r197; .reg .f64 %r198; .reg .f64 %r199; .reg .u64 %r200; .reg .f64 %r202; .reg .f64 %r203; .reg .f64 %r204; .reg .f64 %r206; .reg .f64 %r207; .reg .f64 %r208; .reg .f64 %r209; .reg .f64 %r210; .reg .pred %r211; .reg .f64 %r212; .reg .f64 %r213; .reg .f64 %r214; .reg .f64 %r215; mov.f64 %r124,%ar0; mov.b64 %r125,%r124; shr.u64 %r126,%r125,32; cvt.u32.u64 %r96,%r126; .loc 1 260 2 cvt.u32.u64 %r86,%r126; .loc 1 261 5 and.b32 %r87,%r96,2147483647; .loc 1 262 4 setp.le.s32 %r127,%r87,2146435071; @ %r127 bra $L2; .loc 1 263 25 shr.u32 %r128,%r96,31; .loc 1 263 30 add.u32 %r129,%r128,%r128; .loc 1 264 23 mov.u32 %r131,1; sub.u32 %r130,%r131,%r129; .loc 1 264 13 cvt.rn.f64.s32 %r132,%r130; .loc 1 264 30 mov.f64 %r134,0d3ff0000000000000; div.rn.f64 %r133,%r134,%r124; .loc 1 264 26 add.f64 %r123,%r132,%r133; bra $L1; $L2: .loc 1 267 4 setp.gt.s32 %r135,%r87,1072365567; @ %r135 bra $L4; .loc 1 268 8 setp.gt.s32 %r136,%r87,1043333119; @ %r136 bra $L5; .loc 1 269 13 and.b32 %r137,%r96,2139095040; setp.ne.u32 %r138,%r137,0; @ %r138 bra $L6; .loc 1 270 31 mul.f64 %r139,%r124,0d3ff06eba8214db69; .loc 1 270 26 fma.rn.f64 %r140,%r124,0d4020000000000000,%r139; .loc 1 270 19 mul.f64 %r123,%r140,0d3fc0000000000000; bra $L1; $L6: .loc 1 271 12 fma.rn.f64 %r123,%r124,0d3fc06eba8214db69,%r124; bra $L1; $L5: .loc 1 273 8 mul.f64 %r89,%r124,%r124; .loc 1 274 34 fma.rn.f64 %r141,%r89,0dbef8ead6120016ac,0dbf77a291236668e4; .loc 1 274 27 fma.rn.f64 %r142,%r141,%r89,0dbf9d2a51dbd7194f; .loc 1 274 20 fma.rn.f64 %r143,%r142,%r89,0dbfd4cd7d691cb913; .loc 1 274 8 fma.rn.f64 %r144,%r143,%r89,0d3fc06eba8214db68; .loc 1 275 41 fma.rn.f64 %r145,%r89,0dbed09c4342a26120,0d3f215dc9221c1a10; .loc 1 275 34 fma.rn.f64 %r146,%r145,%r89,0d3f74d022c4d36b0f; .loc 1 275 27 fma.rn.f64 %r147,%r146,%r89,0d3fb0a54c5536ceba; .loc 1 275 20 fma.rn.f64 %r148,%r147,%r89,0d3fd97779cddadc09; .loc 1 275 8 fma.rn.f64 %r149,%r148,%r89,0d3ff0000000000000; .loc 1 276 8 div.rn.f64 %r150,%r144,%r149; .loc 1 277 15 fma.rn.f64 %r123,%r124,%r150,%r124; bra $L1; $L4: .loc 1 279 4 setp.gt.s32 %r151,%r87,1072955391; @ %r151 bra $L7; .loc 1 280 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r124; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r153,[%value_in]; } .loc 1 280 8 mov.f64 %r154,0d3ff0000000000000; sub.f64 %r93,%r153,%r154; .loc 1 281 48 fma.rn.f64 %r155,%r93,0dbf61bf380a96073f,0d3fa22a36599795eb; .loc 1 281 41 fma.rn.f64 %r156,%r155,%r93,0dbfbc63983d3e28ec; .loc 1 281 34 fma.rn.f64 %r157,%r156,%r93,0d3fd45fca805120e4; .loc 1 281 27 fma.rn.f64 %r158,%r157,%r93,0dbfd7d240fbb8c3f1; .loc 1 281 20 fma.rn.f64 %r159,%r158,%r93,0d3fda8d00ad92b34d; .loc 1 281 8 fma.rn.f64 %r94,%r159,%r93,0dbf6359b8bef77538; .loc 1 282 48 fma.rn.f64 %r160,%r93,0d3f888b545735151d,0d3f8bedc26b51dd1c; .loc 1 282 41 fma.rn.f64 %r161,%r160,%r93,0d3fc02660e763351f; .loc 1 282 34 fma.rn.f64 %r162,%r161,%r93,0d3fb2635cd99fe9a7; .loc 1 282 27 fma.rn.f64 %r163,%r162,%r93,0d3fe14af092eb6f33; .loc 1 282 20 fma.rn.f64 %r164,%r163,%r93,0d3fbb3e6618eee323; .loc 1 282 8 fma.rn.f64 %r95,%r164,%r93,0d3ff0000000000000; .loc 1 283 8 setp.lt.s32 %r165,%r96,0; @ %r165 bra $L8; .loc 1 283 30 div.rn.f64 %r166,%r94,%r95; .loc 1 283 27 add.f64 %r123,%r166,0d3feb0ac160000000; bra $L1; $L8: .loc 1 283 54 div.rn.f64 %r167,%r94,%r95; .loc 1 283 51 mov.f64 %r168,0dbfeb0ac160000000; sub.f64 %r123,%r168,%r167; bra $L1; $L7: .loc 1 285 5 setp.le.s32 %r169,%r87,1075314687; @ %r169 bra $L9; .loc 1 286 8 setp.ge.s32 %r170,%r96,0; .loc 1 286 49 selp.f64 %r123,0d3ff0000000000000,0dbff0000000000000,%r170; bra $L1; $L9: .loc 1 288 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r124; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r172,[%value_in]; } .loc 1 289 13 mul.f64 %r173,%r172,%r172; .loc 1 289 5 mov.f64 %r174,0d3ff0000000000000; div.rn.f64 %r98,%r174,%r173; .loc 1 290 4 setp.gt.s32 %r175,%r87,1074191213; @ %r175 bra $L10; .loc 1 292 15 fma.rn.f64 %r176,%r98,0dc023a0efc69ac25c,0dc054526557e4d2f2; .loc 1 292 8 fma.rn.f64 %r177,%r176,%r98,0dc067135cebccabb2; .loc 1 291 39 fma.rn.f64 %r178,%r177,%r98,0dc0644cb184282266; .loc 1 291 32 fma.rn.f64 %r179,%r178,%r98,0dc04f300ae4cba38d; .loc 1 291 25 fma.rn.f64 %r180,%r179,%r98,0dc0251e0441b0e726; .loc 1 291 18 fma.rn.f64 %r181,%r180,%r98,0dbfe63416e4ba7360; .loc 1 291 7 fma.rn.f64 %r84,%r181,%r98,0dbf843412600d6435; .loc 1 294 22 fma.rn.f64 %r182,%r98,0dbfaeeff2ee749a62,0d401a47ef8e484a93; .loc 1 294 15 fma.rn.f64 %r183,%r182,%r98,0d405b28a3ee48ae2c; .loc 1 294 8 fma.rn.f64 %r184,%r183,%r98,0d407ad02157700314; .loc 1 293 39 fma.rn.f64 %r185,%r184,%r98,0d40842b1921ec2868; .loc 1 293 32 fma.rn.f64 %r186,%r185,%r98,0d407b290dd58a1a71; .loc 1 293 25 fma.rn.f64 %r187,%r186,%r98,0d4061350c526ae721; .loc 1 293 18 fma.rn.f64 %r188,%r187,%r98,0d4033a6b9bd707687; .loc 1 293 7 fma.rn.f64 %r85,%r188,%r98,0d3ff0000000000000; bra $L11; $L10: .loc 1 297 8 fma.rn.f64 %r189,%r98,0dc07e384e9bdc383f,0dc09004616a2e5992; .loc 1 296 39 fma.rn.f64 %r190,%r189,%r98,0dc083ec881375f228; .loc 1 296 32 fma.rn.f64 %r191,%r190,%r98,0dc064145d43c5ed98; .loc 1 296 25 fma.rn.f64 %r192,%r191,%r98,0dc031c209555f995a; .loc 1 296 18 fma.rn.f64 %r193,%r192,%r98,0dbfe993ba70c285de; .loc 1 296 7 fma.rn.f64 %r84,%r193,%r98,0dbf84341239e86f4a; .loc 1 299 15 fma.rn.f64 %r194,%r98,0dc03670e242712d62,0d407da874e79fe763; .loc 1 299 8 fma.rn.f64 %r195,%r194,%r98,0d40a3f219cedf3be6; .loc 1 298 39 fma.rn.f64 %r196,%r195,%r98,0d40a8ffb7688c246a; .loc 1 298 32 fma.rn.f64 %r197,%r196,%r98,0d409802eb189d5118; .loc 1 298 25 fma.rn.f64 %r198,%r197,%r98,0d40745cae221b9f0a; .loc 1 298 18 fma.rn.f64 %r199,%r198,%r98,0d403e568b261d5190; .loc 1 298 7 fma.rn.f64 %r85,%r199,%r98,0d3ff0000000000000; $L11: .loc 1 302 2 mov.b64 %r122,%r172; and.b64 %r200,%r122,-4294967296; mov.b64 %r100,%r200; .loc 1 303 22 neg.f64 %r202,%r100; .loc 1 303 8 fma.rn.f64 %r203,%r202,%r100,0dbfe2000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r203; call (%value_in),__ieee754_exp,(%out_arg1); ld.param.f64 %r204,[%value_in]; } .loc 1 303 51 sub.f64 %r206,%r100,%r172; .loc 1 303 62 div.rn.f64 %r207,%r84,%r85; .loc 1 303 57 add.f64 %r208,%r172,%r100; .loc 1 303 35 fma.rn.f64 %r209,%r206,%r208,%r207; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r209; call (%value_in),__ieee754_exp,(%out_arg1); ld.param.f64 %r210,[%value_in]; } .loc 1 303 5 mul.f64 %r101,%r204,%r210; .loc 1 304 4 setp.lt.s32 %r211,%r86,0; @ %r211 bra $L12; .loc 1 304 24 div.rn.f64 %r212,%r101,%r172; .loc 1 304 22 mov.f64 %r213,0d3ff0000000000000; sub.f64 %r123,%r213,%r212; bra $L1; $L12: .loc 1 304 42 div.rn.f64 %r214,%r101,%r172; .loc 1 304 44 mov.f64 %r215,0d3ff0000000000000; sub.f64 %r123,%r214,%r215; $L1: .loc 1 305 1 mov.f64 %value,%r123; 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 %r86; .reg .f64 %r87; .reg .u32 %r88; .reg .u32 %r89; .reg .f64 %r90; .reg .f64 %r96; .reg .f64 %r97; .reg .f64 %r98; .reg .f64 %r101; .reg .f64 %r102; .reg .f64 %r103; .reg .u32 %r104; .reg .f64 %r113; .reg .u64 %r125; .reg .f64 %r126; .reg .f64 %r127; .reg .u64 %r128; .reg .u64 %r129; .reg .pred %r130; .reg .u32 %r131; .reg .u32 %r132; .reg .f64 %r133; .reg .f64 %r134; .reg .f64 %r135; .reg .pred %r136; .reg .pred %r137; .reg .f64 %r138; .reg .f64 %r139; .reg .f64 %r140; .reg .f64 %r141; .reg .f64 %r142; .reg .f64 %r143; .reg .f64 %r144; .reg .f64 %r145; .reg .f64 %r146; .reg .f64 %r147; .reg .f64 %r148; .reg .pred %r149; .reg .f64 %r150; .reg .f64 %r151; .reg .f64 %r152; .reg .f64 %r153; .reg .f64 %r154; .reg .pred %r156; .reg .f64 %r158; .reg .f64 %r159; .reg .f64 %r160; .reg .f64 %r161; .reg .f64 %r162; .reg .f64 %r163; .reg .f64 %r164; .reg .f64 %r165; .reg .f64 %r166; .reg .f64 %r167; .reg .f64 %r168; .reg .f64 %r169; .reg .pred %r170; .reg .f64 %r171; .reg .f64 %r172; .reg .f64 %r173; .reg .f64 %r174; .reg .pred %r175; .reg .f64 %r177; .reg .f64 %r178; .reg .f64 %r179; .reg .pred %r180; .reg .f64 %r181; .reg .f64 %r182; .reg .f64 %r183; .reg .f64 %r184; .reg .f64 %r185; .reg .f64 %r186; .reg .f64 %r187; .reg .f64 %r188; .reg .f64 %r189; .reg .f64 %r190; .reg .f64 %r191; .reg .f64 %r192; .reg .f64 %r193; .reg .u32 %r195; .reg .u32 %r197; .reg .u32 %r198; .reg .u16 %r200; .reg .u16 %r201; .reg .u16 %r202; .reg .u32 %r203; .reg .u16 %r204; .reg .pred %r205; .reg .f64 %r206; .reg .f64 %r207; .reg .f64 %r208; .reg .f64 %r209; .reg .f64 %r210; .reg .f64 %r211; .reg .f64 %r212; .reg .f64 %r213; .reg .f64 %r214; .reg .f64 %r215; .reg .f64 %r216; .reg .u64 %r217; .reg .f64 %r219; .reg .f64 %r220; .reg .f64 %r221; .reg .f64 %r223; .reg .f64 %r224; .reg .f64 %r225; .reg .f64 %r226; .reg .f64 %r227; .reg .pred %r228; .reg .f64 %r229; .reg .f64 %r230; .reg .pred %r231; mov.f64 %r127,%ar0; mov.b64 %r128,%r127; shr.u64 %r129,%r128,32; cvt.u32.u64 %r104,%r129; .loc 1 316 2 cvt.u32.u64 %r88,%r129; .loc 1 317 5 and.b32 %r89,%r104,2147483647; .loc 1 318 4 setp.le.s32 %r130,%r89,2146435071; @ %r130 bra $L15; .loc 1 320 37 shr.u32 %r131,%r104,31; .loc 1 320 42 add.u32 %r132,%r131,%r131; .loc 1 320 13 cvt.rn.f64.s32 %r133,%r132; .loc 1 320 50 mov.f64 %r135,0d3ff0000000000000; div.rn.f64 %r134,%r135,%r127; .loc 1 320 46 add.f64 %r126,%r133,%r134; bra $L14; $L15: .loc 1 323 4 setp.gt.s32 %r136,%r89,1072365567; @ %r136 bra $L17; .loc 1 324 8 setp.gt.s32 %r137,%r89,1013972991; @ %r137 bra $L18; .loc 1 325 13 mov.f64 %r138,0d3ff0000000000000; sub.f64 %r126,%r138,%r127; bra $L14; $L18: .loc 1 326 8 mul.f64 %r90,%r127,%r127; .loc 1 327 34 fma.rn.f64 %r139,%r90,0dbef8ead6120016ac,0dbf77a291236668e4; .loc 1 327 27 fma.rn.f64 %r140,%r139,%r90,0dbf9d2a51dbd7194f; .loc 1 327 20 fma.rn.f64 %r141,%r140,%r90,0dbfd4cd7d691cb913; .loc 1 327 8 fma.rn.f64 %r142,%r141,%r90,0d3fc06eba8214db68; .loc 1 328 41 fma.rn.f64 %r143,%r90,0dbed09c4342a26120,0d3f215dc9221c1a10; .loc 1 328 34 fma.rn.f64 %r144,%r143,%r90,0d3f74d022c4d36b0f; .loc 1 328 27 fma.rn.f64 %r145,%r144,%r90,0d3fb0a54c5536ceba; .loc 1 328 20 fma.rn.f64 %r146,%r145,%r90,0d3fd97779cddadc09; .loc 1 328 8 fma.rn.f64 %r147,%r146,%r90,0d3ff0000000000000; .loc 1 329 8 div.rn.f64 %r148,%r142,%r147; mul.f64 %r113,%r148,%r127; .loc 1 330 8 setp.gt.s32 %r149,%r104,1070596095; @ %r149 bra $L19; .loc 1 331 16 add.f64 %r150,%r127,%r113; .loc 1 331 13 mov.f64 %r151,0d3ff0000000000000; sub.f64 %r126,%r151,%r150; bra $L14; $L19: .loc 1 334 10 mov.f64 %r153,0d3fe0000000000000; sub.f64 %r152,%r127,%r153; .loc 1 334 5 add.f64 %r154,%r152,%r113; .loc 1 335 22 sub.f64 %r126,%r153,%r154; bra $L14; $L17: .loc 1 338 4 setp.gt.s32 %r156,%r89,1072955391; @ %r156 bra $L20; .loc 1 339 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r127; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r158,[%value_in]; } .loc 1 339 8 mov.f64 %r159,0d3ff0000000000000; sub.f64 %r96,%r158,%r159; .loc 1 340 48 fma.rn.f64 %r160,%r96,0dbf61bf380a96073f,0d3fa22a36599795eb; .loc 1 340 41 fma.rn.f64 %r161,%r160,%r96,0dbfbc63983d3e28ec; .loc 1 340 34 fma.rn.f64 %r162,%r161,%r96,0d3fd45fca805120e4; .loc 1 340 27 fma.rn.f64 %r163,%r162,%r96,0dbfd7d240fbb8c3f1; .loc 1 340 20 fma.rn.f64 %r164,%r163,%r96,0d3fda8d00ad92b34d; .loc 1 340 8 fma.rn.f64 %r97,%r164,%r96,0dbf6359b8bef77538; .loc 1 341 48 fma.rn.f64 %r165,%r96,0d3f888b545735151d,0d3f8bedc26b51dd1c; .loc 1 341 41 fma.rn.f64 %r166,%r165,%r96,0d3fc02660e763351f; .loc 1 341 34 fma.rn.f64 %r167,%r166,%r96,0d3fb2635cd99fe9a7; .loc 1 341 27 fma.rn.f64 %r168,%r167,%r96,0d3fe14af092eb6f33; .loc 1 341 20 fma.rn.f64 %r169,%r168,%r96,0d3fbb3e6618eee323; .loc 1 341 8 fma.rn.f64 %r98,%r169,%r96,0d3ff0000000000000; .loc 1 342 8 setp.lt.s32 %r170,%r104,0; @ %r170 bra $L21; .loc 1 343 36 div.rn.f64 %r171,%r97,%r98; .loc 1 343 33 mov.f64 %r172,0d3fc3d4fa80000000; sub.f64 %r126,%r172,%r171; bra $L14; $L21: .loc 1 345 12 div.rn.f64 %r173,%r97,%r98; .loc 1 345 5 add.f64 %r174,%r173,0d3feb0ac160000000; .loc 1 345 26 add.f64 %r126,%r174,0d3ff0000000000000; bra $L14; $L20: .loc 1 348 5 setp.gt.s32 %r175,%r89,1077673983; @ %r175 bra $L22; .loc 1 349 10 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r127; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r177,[%value_in]; } .loc 1 350 17 mul.f64 %r178,%r177,%r177; .loc 1 350 9 mov.f64 %r179,0d3ff0000000000000; div.rn.f64 %r101,%r179,%r178; .loc 1 351 8 setp.gt.s32 %r180,%r89,1074191212; @ %r180 bra $L23; .loc 1 353 15 fma.rn.f64 %r181,%r101,0dc023a0efc69ac25c,0dc054526557e4d2f2; .loc 1 353 8 fma.rn.f64 %r182,%r181,%r101,0dc067135cebccabb2; .loc 1 352 43 fma.rn.f64 %r183,%r182,%r101,0dc0644cb184282266; .loc 1 352 36 fma.rn.f64 %r184,%r183,%r101,0dc04f300ae4cba38d; .loc 1 352 29 fma.rn.f64 %r185,%r184,%r101,0dc0251e0441b0e726; .loc 1 352 22 fma.rn.f64 %r186,%r185,%r101,0dbfe63416e4ba7360; .loc 1 352 11 fma.rn.f64 %r86,%r186,%r101,0dbf843412600d6435; .loc 1 355 22 fma.rn.f64 %r187,%r101,0dbfaeeff2ee749a62,0d401a47ef8e484a93; .loc 1 355 15 fma.rn.f64 %r188,%r187,%r101,0d405b28a3ee48ae2c; .loc 1 355 8 fma.rn.f64 %r189,%r188,%r101,0d407ad02157700314; .loc 1 354 43 fma.rn.f64 %r190,%r189,%r101,0d40842b1921ec2868; .loc 1 354 36 fma.rn.f64 %r191,%r190,%r101,0d407b290dd58a1a71; .loc 1 354 29 fma.rn.f64 %r192,%r191,%r101,0d4061350c526ae721; .loc 1 354 22 fma.rn.f64 %r193,%r192,%r101,0d4033a6b9bd707687; .loc 1 354 11 fma.rn.f64 %r87,%r193,%r101,0d3ff0000000000000; bra $L24; $L23: .loc 1 357 8 shr.u32 %r195,%r88,31; .loc 1 357 14 set.u32.gt.s32 %r197,%r89,1075314687; neg.s32 %r198,%r197; .loc 1 357 10 cvt.u16.u32 %r201,%r195; cvt.u16.u32 %r202,%r198; and.b16 %r200,%r201,%r202; .loc 1 357 5 cvt.u32.u16 %r203,%r200; cvt.u16.u8 %r204,%r203; setp.eq.u16 %r205,%r204,0; @ %r205 bra $L25; $L27: .loc 1 357 38 mov.f64 %r126,0d4000000000000000; bra $L14; $L25: .loc 1 359 8 fma.rn.f64 %r206,%r101,0dc07e384e9bdc383f,0dc09004616a2e5992; .loc 1 358 43 fma.rn.f64 %r207,%r206,%r101,0dc083ec881375f228; .loc 1 358 36 fma.rn.f64 %r208,%r207,%r101,0dc064145d43c5ed98; .loc 1 358 29 fma.rn.f64 %r209,%r208,%r101,0dc031c209555f995a; .loc 1 358 22 fma.rn.f64 %r210,%r209,%r101,0dbfe993ba70c285de; .loc 1 358 11 fma.rn.f64 %r86,%r210,%r101,0dbf84341239e86f4a; .loc 1 361 15 fma.rn.f64 %r211,%r101,0dc03670e242712d62,0d407da874e79fe763; .loc 1 361 8 fma.rn.f64 %r212,%r211,%r101,0d40a3f219cedf3be6; .loc 1 360 43 fma.rn.f64 %r213,%r212,%r101,0d40a8ffb7688c246a; .loc 1 360 36 fma.rn.f64 %r214,%r213,%r101,0d409802eb189d5118; .loc 1 360 29 fma.rn.f64 %r215,%r214,%r101,0d40745cae221b9f0a; .loc 1 360 22 fma.rn.f64 %r216,%r215,%r101,0d403e568b261d5190; .loc 1 360 11 fma.rn.f64 %r87,%r216,%r101,0d3ff0000000000000; $L24: .loc 1 364 6 mov.b64 %r125,%r177; and.b64 %r217,%r125,-4294967296; mov.b64 %r102,%r217; .loc 1 365 26 neg.f64 %r219,%r102; .loc 1 365 12 fma.rn.f64 %r220,%r219,%r102,0dbfe2000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r220; call (%value_in),__ieee754_exp,(%out_arg1); ld.param.f64 %r221,[%value_in]; } .loc 1 366 20 sub.f64 %r223,%r102,%r177; .loc 1 366 31 div.rn.f64 %r224,%r86,%r87; .loc 1 366 26 add.f64 %r225,%r177,%r102; .loc 1 366 4 fma.rn.f64 %r226,%r223,%r225,%r224; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r226; call (%value_in),__ieee754_exp,(%out_arg1); ld.param.f64 %r227,[%value_in]; } .loc 1 365 9 mul.f64 %r103,%r221,%r227; .loc 1 367 8 setp.le.s32 %r228,%r88,0; @ %r228 bra $L26; .loc 1 367 23 div.rn.f64 %r126,%r103,%r177; bra $L14; $L26: .loc 1 367 44 div.rn.f64 %r229,%r103,%r177; .loc 1 367 42 mov.f64 %r230,0d4000000000000000; sub.f64 %r126,%r230,%r229; bra $L14; $L22: .loc 1 369 8 setp.le.s32 %r231,%r104,0; @ %r231 bra $L27; .loc 1 369 26 mov.f64 %r126,0d0000000000000000; $L14: .loc 1 371 1 mov.f64 %value,%r126; st.param.f64 [%value_out],%value; ret; } lib_a-s_exp10.o/1591654536 399 399 100644 929 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 77 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 78 1 mov.f64 %value,%r26; st.param.f64 [%value_out],%value; ret; } lib_a-s_expm1.o/1591654536 399 399 100644 8309 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 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 .u32 %r22; .reg .f64 %r37; .reg .f64 %r56; .reg .f64 %r57; .reg .f64 %r58; .reg .u32 %r59; .reg .f64 %r60; .reg .u32 %r61; .reg .u32 %r62; .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 %r74; .reg .f64 %r76; .reg .f64 %r77; .reg .f64 %r78; .reg .f64 %r79; .reg .f64 %r80; .reg .f64 %r91; .reg .u32 %r93; .reg .u64 %r94; .reg .u64 %r96; .reg .u64 %r98; .reg .f64 %r99; .reg .f64 %r100; .reg .u64 %r101; .reg .u64 %r102; .reg .pred %r103; .reg .pred %r104; .reg .pred %r105; .reg .u32 %r106; .reg .u32 %r108; .reg .u32 %r109; .reg .pred %r110; .reg .pred %r111; .reg .pred %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 .f64 %r130; .reg .f64 %r131; .reg .f64 %r132; .reg .f64 %r133; .reg .f64 %r134; .reg .f64 %r135; .reg .pred %r136; .reg .f64 %r137; .reg .f64 %r138; .reg .f64 %r139; .reg .pred %r140; .reg .f64 %r141; .reg .pred %r142; .reg .pred %r143; .reg .f64 %r144; .reg .f64 %r145; .reg .f64 %r146; .reg .u32 %r147; .reg .pred %r148; .reg .f64 %r149; .reg .f64 %r150; .reg .u64 %r152; .reg .u32 %r153; .reg .u32 %r154; .reg .u64 %r155; .reg .u64 %r156; .reg .u64 %r157; .reg .u64 %r158; .reg .pred %r160; .reg .u32 %r161; .reg .u32 %r162; .reg .u32 %r163; .reg .u32 %r164; .reg .u64 %r165; .reg .u64 %r166; .reg .f64 %r169; .reg .u64 %r171; .reg .u32 %r172; .reg .u32 %r173; .reg .u64 %r174; .reg .u64 %r175; .reg .u64 %r176; .reg .u64 %r177; .reg .u32 %r178; .reg .u32 %r179; .reg .u32 %r180; .reg .u64 %r181; .reg .u64 %r182; .reg .f64 %r185; .reg .u64 %r187; .reg .u32 %r188; .reg .u32 %r189; .reg .u64 %r190; .reg .u64 %r191; .reg .u64 %r192; .reg .u64 %r193; mov.f64 %r100,%ar0; mov.b64 %r101,%r100; shr.u64 %r102,%r101,32; cvt.u32.u64 %r62,%r102; .loc 1 187 10 cvt.u32.u64 %r22,%r102; .loc 1 189 5 and.b32 %r61,%r62,2147483647; .loc 1 192 4 setp.le.u32 %r103,%r61,1078159481; @ %r103 bra $L2; .loc 1 193 8 setp.le.u32 %r104,%r61,1082535489; @ %r104 bra $L3; .loc 1 194 19 setp.le.u32 %r105,%r61,2146435071; @ %r105 bra $L4; .loc 1 197 14 and.b32 %r106,%r62,1048575; .loc 1 197 23 cvt.u32.u64 %r109,%r101; or.b32 %r108,%r106,%r109; .loc 1 197 9 setp.eq.u32 %r110,%r108,0; @ %r110 bra $L5; .loc 1 198 20 add.f64 %r99,%r100,%r100; bra $L1; $L5: .loc 1 199 30 setp.lt.s32 %r111,%r62,0; selp.f64 %r99,0dbff0000000000000,%r100,%r111; bra $L1; $L4: .loc 1 201 12 setp.gt.f64 %r112,%r100,0d40862e42fefa39ef; @ ! %r112 bra $L3; .loc 1 201 41 mov.f64 %r113,0d7e37e43c8800759c; mul.f64 %r99,%r113,0d7e37e43c8800759c; bra $L1; $L3: .loc 1 203 8 setp.ge.s32 %r114,%r22,0; @ %r114 bra $L8; .loc 1 204 7 add.f64 %r115,%r100,0d01a56e1fc2f8f359; .loc 1 204 5 setp.lt.f64 %r116,%r115,0d0000000000000000; @ ! %r116 bra $L29; bra $L24; $L2: .loc 1 210 4 setp.le.u32 %r117,%r61,1071001154; @ %r117 bra $L10; .loc 1 211 8 setp.gt.u32 %r118,%r61,1072734897; @ %r118 bra $L11; .loc 1 212 5 setp.lt.s32 %r119,%r62,0; @ %r119 bra $L12; .loc 1 213 11 mov.f64 %r120,0d3fe62e42fee00000; sub.f64 %r56,%r100,%r120; .loc 1 213 42 mov.u32 %r59,1; .loc 1 213 28 mov.f64 %r57,0d3dea39ef35793c76; bra $L13; $L12: .loc 1 215 11 add.f64 %r56,%r100,0d3fe62e42fee00000; .loc 1 215 42 mov.u32 %r59,-1; .loc 1 215 28 mov.f64 %r57,0dbdea39ef35793c76; bra $L13; $L11: .loc 1 217 14 mul.f64 %r91,%r100,0d3ff71547652b82fe; .loc 1 217 30 setp.ge.s32 %r121,%r62,0; selp.f64 %r60,0d3fe0000000000000,0dbfe0000000000000,%r121; $L14: .loc 1 217 16 add.f64 %r122,%r60,%r91; .loc 1 217 6 cvt.rzi.s32.f64 %r59,%r122; .loc 1 218 6 cvt.rn.f64.s32 %r64,%r59; .loc 1 219 6 fma.rn.f64 %r56,%r64,0dbfe62e42fee00000,%r100; .loc 1 220 6 mul.f64 %r57,%r64,0d3dea39ef35793c76; $L13: .loc 1 222 9 sub.f64 %r100,%r56,%r57; .loc 1 223 14 sub.f64 %r124,%r56,%r100; .loc 1 223 9 sub.f64 %r58,%r124,%r57; bra $L15; $L10: .loc 1 225 9 setp.gt.u32 %r125,%r61,1016070143; @ %r125 bra $L26; .loc 1 226 8 add.f64 %r65,%r100,0d7e37e43c8800759c; .loc 1 227 19 sub.f64 %r126,%r65,%r65; .loc 1 227 15 sub.f64 %r99,%r100,%r126; bra $L1; $L26: .loc 1 229 9 mov.u32 %r59,0; $L15: .loc 1 232 6 mul.f64 %r66,%r100,0d3fe0000000000000; .loc 1 233 6 mul.f64 %r67,%r100,%r66; .loc 1 234 42 fma.rn.f64 %r127,%r67,0dbe8afdb76e09c32d,0d3ed0cfca86e65239; .loc 1 234 34 fma.rn.f64 %r128,%r127,%r67,0dbf14ce199eaadbb7; .loc 1 234 26 fma.rn.f64 %r129,%r128,%r67,0d3f5a01a019fe5585; .loc 1 234 18 fma.rn.f64 %r130,%r129,%r67,0dbfa11111111110f4; .loc 1 234 5 fma.rn.f64 %r68,%r130,%r67,0d3ff0000000000000; .loc 1 235 5 neg.f64 %r131,%r66; fma.rn.f64 %r69,%r131,%r68,0d4008000000000000; .loc 1 236 15 sub.f64 %r132,%r68,%r69; .loc 1 236 24 neg.f64 %r133,%r100; fma.rn.f64 %r134,%r133,%r69,0d4018000000000000; .loc 1 236 18 div.rn.f64 %r135,%r132,%r134; .loc 1 236 5 mul.f64 %r70,%r135,%r67; .loc 1 237 4 setp.ne.u32 %r136,%r59,0; @ %r136 bra $L16; .loc 1 237 26 neg.f64 %r137,%r67; fma.rn.f64 %r138,%r100,%r70,%r137; .loc 1 237 20 sub.f64 %r99,%r100,%r138; bra $L1; $L16: .loc 1 239 16 sub.f64 %r37,%r70,%r58; .loc 1 239 9 neg.f64 %r139,%r58; fma.rn.f64 %r71,%r37,%r100,%r139; .loc 1 240 8 sub.f64 %r72,%r71,%r67; .loc 1 241 8 setp.ne.u32 %r140,%r59,-1; @ %r140 bra $L17; .loc 1 241 30 sub.f64 %r141,%r100,%r72; .loc 1 241 33 fma.rn.f64 %r99,%r141,0d3fe0000000000000,0dbfe0000000000000; bra $L1; $L17: .loc 1 242 13 setp.ne.u32 %r142,%r59,1; @ %r142 bra $L18; .loc 1 243 12 setp.lt.f64 %r143,%r100,0dbfd0000000000000; @ ! %r143 bra $L30; .loc 1 243 41 add.f64 %r144,%r100,0d3fe0000000000000; .loc 1 243 38 sub.f64 %r145,%r72,%r144; .loc 1 243 35 mul.f64 %r99,%r145,0dc000000000000000; bra $L1; $L30: .loc 1 244 40 sub.f64 %r146,%r100,%r72; .loc 1 244 33 fma.rn.f64 %r99,%r146,0d4000000000000000,0d3ff0000000000000; bra $L1; $L18: shl.b32 %r93,%r59,20; .loc 1 246 18 add.u32 %r147,%r59,1; .loc 1 246 9 setp.le.u32 %r148,%r147,57; @ %r148 bra $L21; .loc 1 248 20 sub.f64 %r149,%r72,%r100; .loc 1 248 12 mov.f64 %r150,0d3ff0000000000000; sub.f64 %r73,%r150,%r149; .loc 1 250 3 mov.b64 %r94,%r73; shr.u64 %r152,%r94,32; cvt.u32.u64 %r154,%r152; add.u32 %r153,%r93,%r154; cvt.u64.u32 %r155,%r153; shl.b64 %r156,%r155,32; and.b64 %r157,%r94,4294967295; or.b64 %r158,%r157,%r156; mov.b64 %r74,%r158; .loc 1 251 18 sub.f64 %r99,%r74,%r150; bra $L1; $L21: .loc 1 254 8 setp.gt.s32 %r160,%r59,19; @ %r160 bra $L22; .loc 1 256 10 mov.u32 %r162,2097152; shr.s32 %r161,%r162,%r59; mov.u32 %r164,1072693248; sub.u32 %r163,%r164,%r161; cvt.u64.u32 %r165,%r163; shl.b64 %r166,%r165,32; mov.b64 %r76,%r166; .loc 1 257 18 sub.f64 %r169,%r72,%r100; .loc 1 257 12 sub.f64 %r77,%r76,%r169; .loc 1 259 3 mov.b64 %r96,%r77; shr.u64 %r171,%r96,32; cvt.u32.u64 %r173,%r171; add.u32 %r172,%r93,%r173; cvt.u64.u32 %r174,%r172; shl.b64 %r175,%r174,32; and.b64 %r176,%r96,4294967295; or.b64 %r177,%r176,%r175; mov.b64 %r99,%r177; bra $L1; $L22: .loc 1 262 3 mov.u32 %r179,1023; sub.u32 %r178,%r179,%r59; shl.b32 %r180,%r178,20; cvt.u64.u32 %r181,%r180; shl.b64 %r182,%r181,32; mov.b64 %r78,%r182; .loc 1 263 18 add.f64 %r185,%r72,%r78; .loc 1 263 12 sub.f64 %r79,%r100,%r185; .loc 1 264 12 add.f64 %r80,%r79,0d3ff0000000000000; .loc 1 266 3 mov.b64 %r98,%r80; shr.u64 %r187,%r98,32; cvt.u32.u64 %r189,%r187; add.u32 %r188,%r93,%r189; cvt.u64.u32 %r190,%r188; shl.b64 %r191,%r190,32; and.b64 %r192,%r98,4294967295; or.b64 %r193,%r192,%r191; mov.b64 %r99,%r193; bra $L1; $L24: .loc 1 199 30 mov.f64 %r99,0dbff0000000000000; bra $L1; $L29: .loc 1 217 14 mul.f64 %r91,%r100,0d3ff71547652b82fe; .loc 1 217 30 mov.f64 %r60,0dbfe0000000000000; bra $L14; $L8: .loc 1 217 14 mul.f64 %r91,%r100,0d3ff71547652b82fe; .loc 1 217 30 mov.f64 %r60,0d3fe0000000000000; bra $L14; $L1: .loc 1 270 1 mov.f64 %value,%r99; st.param.f64 [%value_out],%value; ret; } lib_a-s_fabs.o/ 1591654536 399 399 100644 844 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r28; .reg .u32 %r29; .reg .u32 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r34; mov.f64 %r26,%ar0; .loc 1 69 2 mov.b64 %r24,%r26; shr.u64 %r28,%r24,32; cvt.u32.u64 %r30,%r28; and.b32 %r29,%r30,2147483647; cvt.u64.u32 %r31,%r29; shl.b64 %r32,%r31,32; and.b64 %r33,%r24,4294967295; or.b64 %r34,%r33,%r32; mov.b64 %value,%r34; .loc 1 71 1 st.param.f64 [%value_out],%value; ret; } lib_a-s_fdim.o/ 1591654536 399 399 100644 1609 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; .reg .pred %r34; mov.f64 %r25,%ar0; mov.f64 %r26,%ar1; .loc 1 52 11 { .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 53 6 setp.eq.u32 %r29,%r28,0; @ %r29 bra $L2; .loc 1 54 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 54 6 setp.eq.u32 %r32,%r31,0; @ %r32 bra $L4; .loc 1 55 6 setp.eq.u32 %r33,%r28,1; @ %r33 bra $L5; .loc 1 58 24 setp.gt.f64 %r34,%r25,%r26; @ ! %r34 bra $L11; sub.f64 %r25,%r25,%r26; bra $L2; $L4: .loc 1 54 42 mov.f64 %r25,%r26; bra $L2; $L5: .loc 1 56 12 mov.f64 %r25,0d7ff0000000000000; bra $L2; $L11: .loc 1 58 24 mov.f64 %r25,0d0000000000000000; $L2: .loc 1 59 1 mov.f64 %value,%r25; st.param.f64 [%value_out],%value; ret; } /489 1591654536 399 399 100644 783 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; .loc 1 32 32 cvt.u32.u64 %r34,%r32; and.b32 %r33,%r34,2147483647; .loc 1 32 44 add.u32 %r35,%r33,-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/1591654536 399 399 100644 3879 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r42; .reg .u32 %r43; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r48; .reg .u32 %r50; .reg .f64 %r52; .reg .f64 %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .u32 %r57; .reg .pred %r58; .reg .pred %r59; .reg .f64 %r60; .reg .pred %r61; .reg .pred %r62; .reg .u32 %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 %r53,%ar0; mov.b64 %r54,%r53; shr.u64 %r55,%r54,32; cvt.u32.u64 %r50,%r55; cvt.u32.u64 %r46,%r54; .loc 1 96 11 shr.s32 %r57,%r50,20; .loc 1 96 16 and.b32 %r23,%r57,2047; .loc 1 96 5 add.u32 %r42,%r23,-1023; .loc 1 97 4 setp.gt.s32 %r58,%r42,19; @ %r58 bra $L2; .loc 1 98 8 setp.ge.s32 %r59,%r42,0; @ %r59 bra $L3; .loc 1 99 10 add.f64 %r60,%r53,0d7e37e43c8800759c; .loc 1 99 5 setp.gt.f64 %r61,%r60,0d0000000000000000; @ ! %r61 bra $L4; .loc 1 100 9 setp.ge.s32 %r62,%r50,0; @ %r62 bra $L13; .loc 1 101 19 and.b32 %r63,%r50,2147483647; .loc 1 101 31 or.b32 %r64,%r63,%r46; .loc 1 101 14 setp.eq.u32 %r65,%r64,0; mov.u32 %r46,0; selp.u32 %r50,%r50,-1074790400,%r65; bra $L4; $L3: .loc 1 105 19 mov.u32 %r66,1048575; shr.s32 %r43,%r66,%r42; .loc 1 106 10 and.b32 %r67,%r43,%r50; .loc 1 106 13 or.b32 %r68,%r67,%r46; .loc 1 106 5 setp.eq.u32 %r69,%r68,0; @ %r69 bra $L15; .loc 1 107 10 add.f64 %r70,%r53,0d7e37e43c8800759c; .loc 1 107 5 setp.gt.f64 %r71,%r70,0d0000000000000000; @ ! %r71 bra $L4; .loc 1 108 9 setp.ge.s32 %r72,%r50,0; @ %r72 bra $L8; .loc 1 108 34 mov.u32 %r74,1048576; shr.s32 %r73,%r74,%r42; .loc 1 108 19 add.u32 %r50,%r73,%r50; $L8: .loc 1 109 14 not.b32 %r75,%r43; .loc 1 109 10 and.b32 %r50,%r50,%r75; mov.u32 %r46,0; bra $L4; $L2: .loc 1 112 12 setp.le.s32 %r76,%r42,51; @ %r76 bra $L9; .loc 1 113 8 setp.ne.u32 %r77,%r42,1024; @ %r77 bra $L16; .loc 1 113 28 add.f64 %r52,%r53,%r53; bra $L1; $L9: .loc 1 116 41 add.u32 %r78,%r23,-1043; .loc 1 116 8 mov.u32 %r79,-1; shr.u32 %r45,%r79,%r78; .loc 1 117 12 and.b32 %r80,%r45,%r46; .loc 1 117 8 setp.eq.u32 %r81,%r80,0; @ %r81 bra $L17; .loc 1 118 13 add.f64 %r82,%r53,0d7e37e43c8800759c; .loc 1 118 8 setp.gt.f64 %r83,%r82,0d0000000000000000; @ ! %r83 bra $L4; .loc 1 119 5 setp.ge.s32 %r84,%r50,0; @ %r84 bra $L11; .loc 1 120 9 setp.ne.u32 %r85,%r42,20; @ %r85 bra $L12; .loc 1 120 20 add.u32 %r50,%r50,1; bra $L11; $L12: .loc 1 122 18 mov.u32 %r87,52; sub.u32 %r86,%r87,%r42; .loc 1 122 13 mov.u32 %r89,1; shl.b32 %r88,%r89,%r86; .loc 1 122 10 add.u32 %r48,%r88,%r46; .loc 1 123 6 setp.le.u32 %r90,%r46,%r48; @ %r90 bra $L18; .loc 1 123 16 add.u32 %r50,%r50,1; mov.u32 %r46,%r48; bra $L11; $L18: mov.u32 %r46,%r48; $L11: .loc 1 127 10 not.b32 %r91,%r45; .loc 1 127 6 and.b32 %r46,%r46,%r91; bra $L4; $L13: mov.u32 %r46,0; mov.u32 %r50,%r46; $L4: .loc 1 130 2 cvt.u64.u32 %r92,%r50; cvt.u64.u32 %r96,%r46; shl.b64 %r97,%r92,32; or.b64 %r98,%r97,%r96; mov.b64 %r52,%r98; .loc 1 131 9 bra $L1; $L15: .loc 1 106 29 mov.f64 %r52,%r53; bra $L1; $L16: mov.f64 %r52,%r53; bra $L1; $L17: mov.f64 %r52,%r53; $L1: .loc 1 132 1 mov.f64 %value,%r52; st.param.f64 [%value_out],%value; ret; } lib_a-s_fma.o/ 1591654536 399 399 100644 779 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 53 18 fma.rn.f64 %value,%r23,%r24,%r25; .loc 1 54 1 st.param.f64 [%value_out],%value; ret; } lib_a-s_fmax.o/ 1591654536 399 399 100644 1463 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654536 399 399 100644 1463 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } /507 1591654536 399 399 100644 2087 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r27; .reg .u32 %r28; .reg .u32 %r31; .reg .u32 %r33; .reg .f64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u32 %r38; .reg .pred %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u32 %r42; .reg .u32 %r44; .reg .u32 %r45; .reg .u16 %r46; .reg .u16 %r47; .reg .u16 %r48; .reg .u32 %r49; .reg .u16 %r50; .reg .pred %r51; .reg .u32 %r52; .reg .pred %r53; .reg .u32 %r54; .reg .pred %r55; .reg .u32 %r57; .reg .u32 %r58; .reg .u16 %r59; .reg .u16 %r60; .reg .u32 %r62; mov.f64 %r34,%ar0; mov.b64 %r35,%r34; shr.u64 %r36,%r35,32; cvt.u32.u64 %r28,%r36; cvt.u32.u64 %r27,%r35; .loc 1 16 26 or.b32 %r38,%r27,%r28; .loc 1 16 6 setp.eq.u32 %r39,%r38,0; @ %r39 bra $L3; .loc 1 17 33 set.u32.eq.u32 %r41,%r27,0; neg.s32 %r42,%r41; cvt.u32.u32 %r40,%r42; .loc 1 17 12 set.u32.eq.u32 %r44,%r28,-2147483648; neg.s32 %r45,%r44; .loc 1 17 26 cvt.u16.u32 %r47,%r45; cvt.u16.u8 %r48,%r40; and.b16 %r46,%r47,%r48; .loc 1 16 48 cvt.u32.u16 %r49,%r46; cvt.u16.u8 %r50,%r49; setp.ne.u16 %r51,%r50,0; @ %r51 bra $L4; .loc 1 19 31 and.b32 %r31,%r28,2147483647; add.u32 %r52,%r31,-1048576; .loc 1 19 11 setp.le.u32 %r53,%r52,2145386495; @ %r53 bra $L5; .loc 1 22 31 and.b32 %r54,%r28,2146435072; .loc 1 22 11 setp.eq.u32 %r55,%r54,0; @ %r55 bra $L6; .loc 1 26 17 set.u32.eq.u32 %r57,%r31,2146435072; neg.s32 %r58,%r57; .loc 1 26 53 cvt.u16.u32 %r60,%r58; and.b16 %r59,%r60,%r48; .loc 1 18 12 cvt.u32.u16 %r62,%r59; cvt.u32.u8 %r33,%r62; 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/1591654536 399 399 100644 2045 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r42; .reg .pred %r43; .reg .u32 %r45; .reg .u32 %r46; .reg .pred %r47; .reg .u32 %r48; .reg .pred %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .u32 %r56; .reg .u64 %r57; .reg .u64 %r58; .reg .u64 %r59; .reg .u64 %r60; mov.f64 %r38,%ar0; mov.u64 %r39,%ar1; mov.b64 %r40,%r38; shr.u64 %r41,%r40,32; cvt.u32.u64 %r33,%r41; .loc 1 99 5 and.b32 %r28,%r33,2147483647; .loc 1 100 8 mov.u32 %r42,0; st.u32 [%r39],%r42; .loc 1 101 4 setp.gt.s32 %r43,%r28,2146435071; @ %r43 bra $L2; .loc 1 101 25 cvt.u32.u64 %r46,%r40; or.b32 %r45,%r28,%r46; .loc 1 101 19 setp.eq.u32 %r47,%r45,0; @ %r47 bra $L2; .loc 1 102 5 and.b32 %r48,%r33,2146435072; setp.ne.u32 %r49,%r48,0; @ %r49 bra $L4; .loc 1 103 8 mul.f64 %r38,%r38,0d4350000000000000; mov.b64 %r50,%r38; shr.u64 %r51,%r50,32; cvt.u32.u64 %r33,%r51; .loc 1 105 9 and.b32 %r28,%r33,2147483647; mov.u32 %r35,-54; bra $L3; $L4: mov.u32 %r35,%r42; $L3: .loc 1 108 14 shr.s32 %r52,%r28,20; .loc 1 108 19 add.u32 %r53,%r52,-1022; .loc 1 108 8 add.u32 %r54,%r53,%r35; st.u32 [%r39],%r54; .loc 1 110 2 mov.b64 %r36,%r38; .loc 1 109 10 and.b32 %r55,%r33,-2146435073; .loc 1 109 22 or.b32 %r56,%r55,1071644672; .loc 1 110 2 cvt.u64.u32 %r57,%r56; shl.b64 %r58,%r57,32; and.b64 %r59,%r36,4294967295; or.b64 %r60,%r59,%r58; mov.b64 %r38,%r60; $L2: .loc 1 112 1 mov.f64 %value,%r38; st.param.f64 [%value_out],%value; ret; } lib_a-s_ilogb.o/1591654536 399 399 100644 2032 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r24; .reg .u32 %r25; .reg .u32 %r27; .reg .u32 %r28; .reg .u32 %r31; .reg .f64 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u32 %r35; .reg .pred %r36; .reg .u32 %r38; .reg .pred %r39; .reg .pred %r40; .reg .pred %r41; .reg .pred %r43; .reg .pred %r44; .reg .pred %r46; .reg .pred %r47; .reg .u32 %r48; mov.f64 %r32,%ar0; .loc 1 86 2 mov.b64 %r33,%r32; shr.u64 %r34,%r33,32; cvt.u32.u64 %r24,%r34; .loc 1 87 5 and.b32 %r25,%r24,2147483647; .loc 1 88 4 and.b32 %r35,%r24,2146435072; setp.ne.u32 %r36,%r35,0; @ %r36 bra $L2; .loc 1 86 2 cvt.u32.u64 %r27,%r33; .loc 1 89 12 or.b32 %r38,%r27,%r25; .loc 1 89 8 setp.eq.u32 %r39,%r38,0; @ %r39 bra $L7; .loc 1 92 5 setp.ne.u32 %r40,%r25,0; @ %r40 bra $L4; .loc 1 93 7 setp.le.s32 %r41,%r27,0; @ %r41 bra $L8; .loc 1 93 15 mov.u32 %r31,-1043; $L5: .loc 1 93 41 add.u32 %r31,%r31,-1; .loc 1 93 32 add.u32 %r27,%r27,%r27; .loc 1 93 7 setp.gt.s32 %r43,%r27,0; @ %r43 bra $L5; bra $L1; $L4: .loc 1 95 25 shl.b32 %r28,%r25,11; .loc 1 95 7 setp.le.s32 %r44,%r28,0; @ %r44 bra $L9; .loc 1 95 15 mov.u32 %r31,-1022; $L6: .loc 1 95 49 add.u32 %r31,%r31,-1; .loc 1 95 40 add.u32 %r28,%r28,%r28; .loc 1 95 7 setp.gt.s32 %r46,%r28,0; @ %r46 bra $L6; bra $L1; $L2: .loc 1 99 10 setp.gt.s32 %r47,%r25,2146435071; @ %r47 bra $L10; .loc 1 99 36 shr.s32 %r48,%r25,20; .loc 1 99 41 add.u32 %r31,%r48,-1023; bra $L1; $L7: .loc 1 90 10 mov.u32 %r31,-2147483647; bra $L1; $L8: .loc 1 93 15 mov.u32 %r31,-1043; bra $L1; $L9: .loc 1 95 15 mov.u32 %r31,-1022; bra $L1; $L10: .loc 1 103 14 mov.u32 %r31,2147483647; $L1: .loc 1 104 1 mov.u32 %value,%r31; st.param.u32 [%value_out],%value; ret; } /529 1591654536 399 399 100644 393 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // BEGIN GLOBAL VAR DEF: __infinity .visible .const .align 8 .u64 __infinity[1] = {9218868437227405312 }; // END PREAMBLE // BEGIN GLOBAL VAR DEF: __infinityld .visible .const .align 8 .u64 __infinityld[2] = {9218868437227405312 }; // BEGIN GLOBAL VAR DEF: __infinityf .visible .const .align 4 .u32 __infinityf[1] = {2139095040 }; /549 1591654536 399 399 100644 436 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 45 2 mov.f64 %value,0d7ff0000000000000; .loc 1 47 1 st.param.f64 [%value_out],%value; ret; } lib_a-s_isinf.o/1591654536 399 399 100644 1248 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r27; .reg .u32 %r33; .reg .u32 %r34; .reg .f64 %r41; .reg .u64 %r42; .reg .u64 %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 %r41,%ar0; .loc 1 22 2 mov.b64 %r42,%r41; shr.u64 %r43,%r42,32; cvt.u32.u64 %r33,%r43; cvt.u32.u64 %r34,%r42; .loc 1 24 25 neg.s32 %r45,%r34; .loc 1 24 23 or.b32 %r46,%r45,%r34; .loc 1 24 30 shr.u32 %r47,%r46,31; .loc 1 23 5 and.b32 %r48,%r33,2147483647; .loc 1 24 5 or.b32 %r27,%r47,%r48; .loc 1 26 36 add.u32 %r50,%r27,-2146435072; .loc 1 25 5 mov.u32 %r52,2146435072; sub.u32 %r51,%r52,%r27; .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; } /569 1591654536 399 399 100644 1261 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r27; .reg .u32 %r33; .reg .u32 %r34; .reg .f64 %r41; .reg .u64 %r42; .reg .u64 %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 %r41,%ar0; .loc 1 16 2 mov.b64 %r42,%r41; shr.u64 %r43,%r42,32; cvt.u32.u64 %r33,%r43; cvt.u32.u64 %r34,%r42; .loc 1 18 25 neg.s32 %r45,%r34; .loc 1 18 23 or.b32 %r46,%r45,%r34; .loc 1 18 30 shr.u32 %r47,%r46,31; .loc 1 17 5 and.b32 %r48,%r33,2147483647; .loc 1 18 5 or.b32 %r27,%r47,%r48; .loc 1 20 36 add.u32 %r50,%r27,-2146435072; .loc 1 19 5 mov.u32 %r52,2146435072; sub.u32 %r51,%r52,%r27; .loc 1 20 34 or.b32 %r53,%r50,%r51; .loc 1 20 41 shr.u32 %r54,%r53,31; .loc 1 20 11 mov.u32 %r55,1; sub.u32 %value,%r55,%r54; .loc 1 21 1 st.param.u32 [%value_out],%value; ret; } lib_a-s_isnan.o/1591654536 399 399 100644 1060 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r27; .reg .u32 %r30; .reg .u32 %r31; .reg .f64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r47; .reg .u32 %r48; mov.f64 %r38,%ar0; .loc 1 199 2 mov.b64 %r39,%r38; shr.u64 %r40,%r39,32; cvt.u32.u64 %r30,%r40; cvt.u32.u64 %r31,%r39; .loc 1 201 25 neg.s32 %r42,%r31; .loc 1 201 23 or.b32 %r43,%r42,%r31; .loc 1 201 30 shr.u32 %r44,%r43,31; .loc 1 200 5 and.b32 %r45,%r30,2147483647; .loc 1 201 5 or.b32 %r27,%r44,%r45; .loc 1 202 5 mov.u32 %r48,2146435072; sub.u32 %r47,%r48,%r27; .loc 1 203 33 shr.u32 %value,%r47,31; .loc 1 204 1 st.param.u32 [%value_out],%value; ret; } /587 1591654536 399 399 100644 1073 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r27; .reg .u32 %r30; .reg .u32 %r31; .reg .f64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r47; .reg .u32 %r48; mov.f64 %r38,%ar0; .loc 1 115 2 mov.b64 %r39,%r38; shr.u64 %r40,%r39,32; cvt.u32.u64 %r30,%r40; cvt.u32.u64 %r31,%r39; .loc 1 117 25 neg.s32 %r42,%r31; .loc 1 117 23 or.b32 %r43,%r42,%r31; .loc 1 117 30 shr.u32 %r44,%r43,31; .loc 1 116 5 and.b32 %r45,%r30,2147483647; .loc 1 117 5 or.b32 %r27,%r44,%r45; .loc 1 118 5 mov.u32 %r48,2146435072; sub.u32 %r47,%r48,%r27; .loc 1 119 33 shr.u32 %value,%r47,31; .loc 1 120 1 st.param.u32 [%value_out],%value; ret; } lib_a-s_ldexp.o/1591654536 399 399 100644 2690 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r37; .reg .u32 %r38; .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 %r54; .reg .u32 %r55; .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; mov.f64 %r32,%ar0; mov.u32 %r33,%ar1; .loc 1 75 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 75 19 set.u32.eq.f64 %r37,%r32,0d0000000000000000; neg.s32 %r38,%r37; .loc 1 75 4 set.u32.eq.u32 %r40,%r35,0; neg.s32 %r41,%r40; .loc 1 75 19 cvt.u16.u32 %r43,%r38; cvt.u16.u32 %r44,%r41; 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 76 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 77 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 77 19 set.u32.eq.f64 %r54,%r32,0d0000000000000000; neg.s32 %r55,%r54; .loc 1 77 4 set.u32.eq.u32 %r57,%r52,0; neg.s32 %r58,%r57; .loc 1 77 19 cvt.u16.u32 %r60,%r55; cvt.u16.u32 %r61,%r58; 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 77 33 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r65,[%value_in]; } .loc 1 77 39 mov.u32 %r66,34; st.u32 [%r65],%r66; $L2: .loc 1 79 1 mov.f64 %value,%r32; st.param.f64 [%value_out],%value; ret; } /605 1591654536 399 399 100644 177 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL VAR DEF: __fdlib_version .visible .global .align 4 .u32 __fdlib_version[1] = {1 }; /624 1591654536 399 399 100644 4645 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r55; .reg .u32 %r57; .reg .f64 %r59; .reg .u32 %r60; .reg .u32 %r62; .reg .u32 %r65; .reg .u64 %r70; .reg .f64 %r71; .reg .u64 %r72; .reg .u64 %r73; .reg .u32 %r74; .reg .pred %r75; .reg .pred %r76; .reg .u64 %r77; .reg .u64 %r78; .reg .u64 %r79; .reg .u64 %r80; .reg .f64 %r81; .reg .u64 %r82; .reg .u64 %r83; .reg .u32 %r84; .reg .pred %r85; .reg .u32 %r86; .reg .u32 %r87; .reg .u32 %r88; .reg .u32 %r90; .reg .u32 %r91; .reg .u32 %r92; .reg .pred %r93; .reg .pred %r94; .reg .u32 %r95; .reg .u32 %r96; .reg .u64 %r97; .reg .u32 %r98; .reg .u64 %r99; .reg .u32 %r101; .reg .u32 %r102; .reg .u32 %r103; .reg .u64 %r104; .reg .u64 %r105; .reg .u64 %r106; .reg .u64 %r107; .reg .u64 %r108; .reg .u64 %r109; .reg .u64 %r110; .reg .u32 %r111; .reg .u32 %r112; .reg .u64 %r113; .reg .u32 %r114; .reg .u32 %r116; .reg .pred %r117; .reg .u32 %r119; .reg .u32 %r120; .reg .u64 %r121; .reg .pred %r122; mov.f64 %r71,%ar0; mov.b64 %r72,%r71; shr.u64 %r73,%r72,32; cvt.u32.u64 %r65,%r73; .loc 1 60 16 shr.u32 %r22,%r65,31; .loc 1 63 27 shr.s32 %r74,%r65,20; and.b32 %r24,%r74,2047; .loc 1 63 6 add.u32 %r53,%r24,-1023; .loc 1 66 5 setp.gt.s32 %r75,%r53,19; @ %r75 bra $L2; .loc 1 69 9 setp.ge.s32 %r76,%r53,-1; @ %r76 bra $L3; $L5: .loc 1 70 16 mov.u64 %r70,0; bra $L1; $L3: .loc 1 75 20 cvta.const.u64 %r77,TWO52; cvt.s64.s32 %r78,%r22; shl.b64 %r79,%r78,3; add.u64 %r80,%r77,%r79; ld.f64 %r25,[%r80]; .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 %r81,%r27,%r25; .loc 1 77 11 mov.b64 %r82,%r81; shr.u64 %r83,%r82,32; cvt.u32.u64 %r55,%r83; .loc 1 80 19 and.b32 %r84,%r55,2147483647; .loc 1 80 14 setp.eq.u32 %r85,%r84,0; @ %r85 bra $L5; .loc 1 84 14 and.b32 %r57,%r55,1048575; .loc 1 85 14 or.b32 %r86,%r57,1048576; .loc 1 83 35 shr.s32 %r87,%r55,20; and.b32 %r88,%r87,2047; .loc 1 87 30 mov.u32 %r91,1043; sub.u32 %r90,%r91,%r88; .loc 1 87 23 shr.s32 %r92,%r86,%r90; .loc 1 87 18 cvt.s64.s32 %r70,%r92; bra $L6; $L2: .loc 1 90 11 setp.gt.s32 %r93,%r53,62; @ %r93 bra $L7; .loc 1 93 10 setp.le.s32 %r94,%r53,51; @ %r94 bra $L8; .loc 1 96 54 and.b32 %r95,%r65,983039; or.b32 %r96,%r95,65536; .loc 1 96 19 cvt.s64.s32 %r97,%r96; .loc 1 96 74 add.u32 %r98,%r24,-1043; .loc 1 96 67 shl.b64 %r99,%r97,%r98; .loc 1 98 31 add.u32 %r101,%r24,-1075; .loc 1 98 24 cvt.u32.u64 %r103,%r72; shl.b32 %r102,%r103,%r101; cvt.u64.u32 %r104,%r102; .loc 1 96 16 or.b64 %r70,%r99,%r104; bra $L6; $L8: .loc 1 102 20 cvta.const.u64 %r105,TWO52; cvt.s64.s32 %r106,%r22; shl.b64 %r107,%r106,3; add.u64 %r108,%r105,%r107; ld.f64 %r41,[%r108]; .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 %r59,%r43,%r41; .loc 1 104 11 mov.b64 %r109,%r59; shr.u64 %r110,%r109,32; cvt.u32.u64 %r60,%r110; .loc 1 105 35 shr.s32 %r111,%r60,20; and.b32 %r45,%r111,2047; .loc 1 106 14 and.b32 %r62,%r60,1048575; .loc 1 107 14 or.b32 %r112,%r62,1048576; .loc 1 112 21 cvt.s64.s32 %r113,%r112; .loc 1 112 47 add.u32 %r114,%r45,-1043; .loc 1 112 40 shl.b64 %r70,%r113,%r114; .loc 1 113 6 mov.u32 %r116,1075; sub.u32 %r48,%r116,%r45; setp.gt.u32 %r117,%r48,31; @ %r117 bra $L6; cvt.u32.u64 %r120,%r109; shr.u32 %r119,%r120,%r48; cvt.u64.u32 %r121,%r119; or.b64 %r70,%r70,%r121; bra $L6; $L7: .loc 1 118 14 cvt.rzi.s64.f64 %r70,%r71; bra $L1; $L6: .loc 1 121 23 setp.eq.u32 %r122,%r22,0; @ %r122 bra $L1; neg.s64 %r70,%r70; $L1: .loc 1 122 1 mov.u64 %value,%r70; st.param.u64 [%value_out],%value; ret; } /642 1591654536 399 399 100644 2938 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r46; .reg .u32 %r49; .reg .u32 %r50; .reg .u32 %r51; .reg .u64 %r53; .reg .f64 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .pred %r57; .reg .u32 %r58; .reg .pred %r59; .reg .pred %r60; .reg .pred %r61; .reg .u32 %r62; .reg .u32 %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .u32 %r67; .reg .pred %r68; .reg .pred %r70; .reg .u32 %r71; .reg .u32 %r72; .reg .u64 %r73; .reg .u64 %r74; .reg .u64 %r75; .reg .u32 %r76; .reg .u32 %r77; .reg .pred %r78; .reg .u64 %r79; .reg .u32 %r80; .reg .pred %r81; .reg .u32 %r82; .reg .u64 %r83; .reg .u64 %r84; 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 %r57,%r49,0; selp.u32 %r42,-1,1,%r57; .loc 1 30 44 shr.u32 %r58,%r49,20; and.b32 %r24,%r58,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 %r59,%r43,19; @ %r59 bra $L3; .loc 1 38 10 setp.ge.s32 %r60,%r43,0; @ %r60 bra $L4; .loc 1 40 14 setp.ne.u32 %r61,%r43,-1; @ %r61 bra $L12; .loc 1 43 20 cvt.s64.s32 %r53,%r42; bra $L1; $L4: .loc 1 49 26 mov.u32 %r63,524288; shr.s32 %r62,%r63,%r43; .loc 1 49 15 add.u32 %r64,%r62,%r40; .loc 1 51 31 mov.u32 %r66,20; sub.u32 %r65,%r66,%r43; .loc 1 51 24 shr.u32 %r67,%r64,%r65; .loc 1 51 18 cvt.u64.u32 %r41,%r67; bra $L6; $L3: .loc 1 54 11 setp.gt.u32 %r68,%r43,62; @ %r68 bra $L7; cvt.u32.u64 %r50,%r55; add.u32 %r51,%r24,-1043; .loc 1 57 10 setp.le.s32 %r70,%r43,51; @ %r70 bra $L8; .loc 1 62 51 add.u32 %r71,%r24,-1075; .loc 1 62 28 shl.b32 %r72,%r50,%r71; cvt.u64.u32 %r73,%r72; .loc 1 60 19 cvt.u64.u32 %r74,%r40; .loc 1 60 39 shl.b64 %r75,%r74,%r51; .loc 1 60 16 or.b64 %r41,%r73,%r75; bra $L6; $L8: .loc 1 68 35 mov.u32 %r77,-2147483648; shr.u32 %r76,%r77,%r51; .loc 1 66 24 add.u32 %r46,%r76,%r50; .loc 1 69 14 setp.ge.u32 %r78,%r46,%r50; @ %r78 bra $L9; .loc 1 70 13 add.u32 %r40,%r40,1; $L9: .loc 1 72 21 cvt.u64.u32 %r79,%r40; .loc 1 72 41 shl.b64 %r41,%r79,%r51; .loc 1 74 23 mov.u32 %r80,52; sub.u32 %r37,%r80,%r43; setp.eq.u32 %r81,%r37,32; @ %r81 bra $L6; shr.u32 %r82,%r46,%r37; cvt.u64.u32 %r83,%r82; or.b64 %r41,%r41,%r83; bra $L6; $L7: .loc 1 79 12 cvt.rzi.s64.f64 %r53,%r54; bra $L1; $L6: .loc 1 81 15 cvt.s64.s32 %r84,%r42; mul.lo.u64 %r53,%r84,%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/1591654536 399 399 100644 7166 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 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 .f64 %r22; .reg .u32 %r34; .reg .f64 %r36; .reg .f64 %r38; .reg .f64 %r50; .reg .f64 %r55; .reg .f64 %r56; .reg .f64 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .u32 %r60; .reg .f64 %r61; .reg .u32 %r63; .reg .u32 %r64; .reg .f64 %r66; .reg .f64 %r68; .reg .f64 %r69; .reg .f64 %r70; .reg .f64 %r78; .reg .u64 %r80; .reg .u64 %r81; .reg .f64 %r82; .reg .f64 %r83; .reg .u64 %r84; .reg .u64 %r85; .reg .pred %r86; .reg .pred %r87; .reg .pred %r88; .reg .pred %r89; .reg .f64 %r90; .reg .pred %r91; .reg .f64 %r92; .reg .u32 %r94; .reg .u32 %r95; .reg .u32 %r97; .reg .u32 %r98; .reg .u16 %r99; .reg .u16 %r100; .reg .u16 %r101; .reg .u32 %r102; .reg .u16 %r103; .reg .pred %r104; .reg .f64 %r105; .reg .u32 %r107; .reg .pred %r108; .reg .f64 %r109; .reg .pred %r110; .reg .u64 %r111; .reg .u64 %r112; .reg .u32 %r113; .reg .pred %r114; .reg .f64 %r115; .reg .f64 %r116; .reg .f64 %r117; .reg .f64 %r118; .reg .u32 %r119; .reg .pred %r120; .reg .u32 %r121; .reg .u64 %r122; .reg .u64 %r123; .reg .u64 %r124; .reg .u64 %r125; .reg .u32 %r126; .reg .u64 %r127; .reg .u64 %r128; .reg .u64 %r129; .reg .u64 %r130; .reg .u32 %r131; .reg .f64 %r132; .reg .f64 %r133; .reg .pred %r134; .reg .pred %r135; .reg .pred %r136; .reg .f64 %r137; .reg .f64 %r139; .reg .pred %r140; .reg .f64 %r141; .reg .f64 %r142; .reg .f64 %r143; .reg .f64 %r144; .reg .f64 %r145; .reg .f64 %r146; .reg .f64 %r147; .reg .f64 %r148; .reg .f64 %r149; .reg .f64 %r150; .reg .f64 %r151; .reg .f64 %r152; .reg .pred %r153; .reg .f64 %r154; .reg .f64 %r155; .reg .f64 %r156; .reg .f64 %r157; .reg .f64 %r158; .reg .f64 %r159; mov.f64 %r83,%ar0; mov.b64 %r84,%r83; shr.u64 %r85,%r84,32; cvt.u32.u64 %r64,%r85; .loc 1 159 2 cvt.u32.u64 %r59,%r85; .loc 1 163 5 setp.le.s32 %r86,%r59,1071284857; @ %r86 bra $L2; .loc 1 178 5 setp.gt.s32 %r87,%r59,2146435071; @ ! %r87 bra $L22; bra $L3; $L2: .loc 1 160 5 and.b32 %r63,%r64,2147483647; .loc 1 164 8 setp.le.s32 %r88,%r63,1072693247; @ %r88 bra $L5; .loc 1 165 5 setp.neu.f64 %r89,%r83,0dbff0000000000000; @ %r89 bra $L6; .loc 1 165 28 mov.f64 %r90,0dc350000000000000; div.rn.f64 %r82,%r90,0d0000000000000000; bra $L1; $L6: .loc 1 166 17 sub.f64 %r22,%r83,%r83; .loc 1 166 20 div.rn.f64 %r82,%r22,%r22; bra $L1; $L5: .loc 1 168 8 setp.gt.s32 %r91,%r63,1042284543; @ %r91 bra $L8; .loc 1 169 11 add.f64 %r92,%r83,0d4350000000000000; .loc 1 169 5 set.u32.gt.f64 %r94,%r92,0d0000000000000000; neg.s32 %r95,%r94; .loc 1 170 14 set.u32.le.s32 %r97,%r63,1016070143; neg.s32 %r98,%r97; cvt.u16.u32 %r100,%r95; cvt.u16.u32 %r101,%r98; and.b16 %r99,%r100,%r101; cvt.u32.u16 %r102,%r99; cvt.u16.u8 %r103,%r102; setp.ne.u16 %r104,%r103,0; @ %r104 bra $L20; .loc 1 173 19 mul.f64 %r105,%r83,%r83; .loc 1 173 16 fma.rn.f64 %r82,%r105,0dbfe0000000000000,%r83; bra $L1; $L8: .loc 1 175 13 add.u32 %r107,%r64,1076707644; .loc 1 175 8 setp.le.u32 %r108,%r107,1076707644; @ %r108 bra $L9; .loc 1 202 10 mul.f64 %r109,%r83,0d3fe0000000000000; .loc 1 202 6 mul.f64 %r66,%r109,%r83; .loc 1 176 4 mov.u32 %r58,0; bra $L10; $L3: .loc 1 178 32 add.f64 %r82,%r83,%r83; bra $L1; $L22: .loc 1 180 8 setp.gt.s32 %r110,%r59,1128267775; @ %r110 bra $L11; $L9: .loc 1 181 6 add.f64 %r56,%r83,0d3ff0000000000000; .loc 1 182 3 mov.b64 %r111,%r56; shr.u64 %r112,%r111,32; cvt.u32.u64 %r59,%r112; .loc 1 183 18 shr.s32 %r113,%r59,20; .loc 1 183 13 add.u32 %r58,%r113,-1023; .loc 1 184 31 setp.le.s32 %r114,%r58,0; @ %r114 bra $L12; .loc 1 184 28 sub.f64 %r115,%r56,%r83; .loc 1 184 31 mov.f64 %r116,0d3ff0000000000000; sub.f64 %r61,%r116,%r115; bra $L13; $L12: .loc 1 184 36 mov.f64 %r118,0d3ff0000000000000; sub.f64 %r117,%r56,%r118; .loc 1 184 31 sub.f64 %r61,%r83,%r117; $L13: .loc 1 185 5 div.rn.f64 %r55,%r61,%r56; bra $L14; $L11: .loc 1 189 18 shr.s32 %r119,%r59,20; .loc 1 189 13 add.u32 %r58,%r119,-1023; .loc 1 187 6 mov.f64 %r56,%r83; .loc 1 190 6 mov.f64 %r55,0d0000000000000000; $L14: .loc 1 192 9 and.b32 %r60,%r59,1048575; .loc 1 193 8 setp.gt.s32 %r120,%r60,434333; @ %r120 bra $L15; .loc 1 194 10 mov.b64 %r80,%r56; or.b32 %r121,%r60,1072693248; cvt.u64.u32 %r122,%r121; shl.b64 %r123,%r122,32; and.b64 %r124,%r80,4294967295; or.b64 %r125,%r124,%r123; mov.b64 %r57,%r125; bra $L16; $L15: .loc 1 196 12 add.u32 %r58,%r58,1; .loc 1 197 3 mov.b64 %r81,%r56; or.b32 %r126,%r60,1071644672; cvt.u64.u32 %r127,%r126; shl.b64 %r128,%r127,32; and.b64 %r129,%r81,4294967295; or.b64 %r130,%r129,%r128; mov.b64 %r57,%r130; .loc 1 198 26 mov.u32 %r131,1048576; sub.u32 %r34,%r131,%r60; .loc 1 198 13 shr.s32 %r60,%r34,2; $L16: .loc 1 200 8 mov.f64 %r132,0d3ff0000000000000; sub.f64 %r83,%r57,%r132; .loc 1 202 10 mul.f64 %r133,%r83,0d3fe0000000000000; .loc 1 202 6 mul.f64 %r66,%r133,%r83; .loc 1 203 4 setp.ne.u32 %r134,%r60,0; @ %r134 bra $L10; .loc 1 204 13 setp.neu.f64 %r135,%r83,0d0000000000000000; @ %r135 bra $L17; .loc 1 204 27 setp.eq.u32 %r136,%r58,0; @ %r136 bra $L21; .loc 1 205 35 cvt.rn.f64.s32 %r36,%r58; .loc 1 205 31 fma.rn.f64 %r137,%r36,0d3dea39ef35793c76,%r55; .loc 1 205 59 fma.rn.f64 %r82,%r36,0d3fe62e42fee00000,%r137; bra $L1; $L17: .loc 1 206 19 fma.rn.f64 %r139,%r83,0dbfe5555555555555,0d3ff0000000000000; .loc 1 206 8 mul.f64 %r68,%r139,%r66; .loc 1 207 8 setp.ne.u32 %r140,%r58,0; @ %r140 bra $L18; .loc 1 207 23 sub.f64 %r82,%r83,%r68; bra $L1; $L18: .loc 1 208 20 cvt.rn.f64.s32 %r38,%r58; .loc 1 208 41 fma.rn.f64 %r141,%r38,0d3dea39ef35793c76,%r55; .loc 1 208 31 sub.f64 %r142,%r68,%r141; .loc 1 208 45 sub.f64 %r143,%r142,%r83; .loc 1 208 27 neg.f64 %r144,%r143; fma.rn.f64 %r82,%r38,0d3fe62e42fee00000,%r144; bra $L1; $L10: .loc 1 210 13 add.f64 %r145,%r83,0d4000000000000000; .loc 1 210 5 div.rn.f64 %r69,%r83,%r145; .loc 1 211 4 mul.f64 %r70,%r69,%r69; .loc 1 212 47 fma.rn.f64 %r146,%r70,0d3fc2f112df3e5244,0d3fc39a09d078c69f; .loc 1 212 40 fma.rn.f64 %r147,%r146,%r70,0d3fc7466496cb03de; .loc 1 212 33 fma.rn.f64 %r148,%r147,%r70,0d3fcc71c51d8e78af; .loc 1 212 26 fma.rn.f64 %r149,%r148,%r70,0d3fd2492494229359; .loc 1 212 19 fma.rn.f64 %r150,%r149,%r70,0d3fd999999997fa04; .loc 1 212 12 fma.rn.f64 %r151,%r150,%r70,0d3fe5555555555593; fma.rn.f64 %r152,%r151,%r70,%r66; mul.f64 %r78,%r152,%r69; .loc 1 213 4 setp.ne.u32 %r153,%r58,0; @ %r153 bra $L19; .loc 1 213 25 sub.f64 %r154,%r66,%r78; .loc 1 213 19 sub.f64 %r82,%r83,%r154; bra $L1; $L19: .loc 1 214 12 cvt.rn.f64.s32 %r50,%r58; .loc 1 214 48 fma.rn.f64 %r155,%r50,0d3dea39ef35793c76,%r55; .loc 1 214 38 add.f64 %r156,%r155,%r78; .loc 1 214 26 sub.f64 %r157,%r66,%r156; .loc 1 214 53 sub.f64 %r158,%r157,%r83; .loc 1 214 19 neg.f64 %r159,%r158; fma.rn.f64 %r82,%r50,0d3fe62e42fee00000,%r159; bra $L1; $L20: .loc 1 171 14 mov.f64 %r82,%r83; bra $L1; $L21: .loc 1 204 41 mov.f64 %r82,0d0000000000000000; $L1: .loc 1 215 1 mov.f64 %value,%r82; st.param.f64 [%value_out],%value; ret; } lib_a-s_log2.o/ 1591654536 399 399 100644 825 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 82 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 82 18 div.rn.f64 %value,%r26,0d3fe62e42fefa39ef; .loc 1 83 1 st.param.f64 [%value_out],%value; ret; } lib_a-s_logb.o/ 1591654536 399 399 100644 2719 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r29; .reg .u32 %r30; .reg .u32 %r33; .reg .u32 %r34; .reg .u32 %r35; .reg .u32 %r36; .reg .f64 %r39; .reg .f64 %r40; .reg .u64 %r41; .reg .u64 %r42; .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 %r60; .reg .u32 %r61; .reg .u32 %r63; .reg .u32 %r64; .reg .u16 %r65; .reg .u16 %r66; .reg .u16 %r67; .reg .u32 %r68; .reg .u16 %r69; .reg .pred %r70; mov.f64 %r40,%ar0; .loc 1 88 2 mov.b64 %r41,%r40; shr.u64 %r42,%r41,32; cvt.u32.u64 %r29,%r42; cvt.u32.u64 %r34,%r41; .loc 1 89 5 and.b32 %r30,%r29,2147483647; .loc 1 90 4 and.b32 %r44,%r29,2146435072; setp.ne.u32 %r45,%r44,0; @ %r45 bra $L2; .loc 1 91 12 or.b32 %r46,%r34,%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 %r39,%r48,0d0000000000000000; bra $L1; $L3: .loc 1 98 5 setp.ne.u32 %r49,%r30,0; @ %r49 bra $L5; .loc 1 99 7 setp.le.s32 %r50,%r34,0; @ %r50 bra $L10; .loc 1 99 15 mov.u32 %r33,-1043; $L7: .loc 1 99 41 add.u32 %r33,%r33,-1; .loc 1 99 32 add.u32 %r34,%r34,%r34; .loc 1 99 7 setp.gt.s32 %r52,%r34,0; @ %r52 bra $L7; cvt.rn.f64.s32 %r39,%r33; bra $L1; $L5: .loc 1 101 25 shl.b32 %r36,%r30,11; .loc 1 101 7 setp.le.s32 %r53,%r36,0; @ %r53 bra $L11; .loc 1 101 15 mov.u32 %r35,-1022; $L8: .loc 1 101 49 add.u32 %r35,%r35,-1; .loc 1 101 40 add.u32 %r36,%r36,%r36; .loc 1 101 7 setp.gt.s32 %r55,%r36,0; @ %r55 bra $L8; cvt.rn.f64.s32 %r39,%r35; bra $L1; $L10: .loc 1 99 7 mov.f64 %r39,0dc0904c0000000000; bra $L1; $L11: .loc 1 101 7 mov.f64 %r39,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 %r39,%r58; bra $L1; $L9: .loc 1 106 13 set.u32.gt.s32 %r60,%r30,2146435072; neg.s32 %r61,%r60; .loc 1 106 25 set.u32.ne.u32 %r63,%r34,0; neg.s32 %r64,%r63; cvt.u16.u32 %r66,%r61; cvt.u16.u32 %r67,%r64; or.b16 %r65,%r66,%r67; .loc 1 106 10 cvt.u32.u16 %r68,%r65; cvt.u16.u8 %r69,%r68; setp.ne.u16 %r70,%r69,0; .loc 1 107 15 selp.f64 %r39,%r40,0d7ff0000000000000,%r70; $L1: .loc 1 108 1 mov.f64 %value,%r39; st.param.f64 [%value_out],%value; ret; } lib_a-s_lrint.o/1591654536 399 399 100644 4714 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r56; .reg .u32 %r58; .reg .f64 %r60; .reg .u32 %r61; .reg .u32 %r63; .reg .u32 %r66; .reg .u64 %r71; .reg .f64 %r72; .reg .u64 %r73; .reg .u64 %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 .u64 %r85; .reg .u64 %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 .u32 %r104; .reg .u32 %r105; .reg .u64 %r106; .reg .u64 %r107; .reg .u64 %r108; .reg .u64 %r109; .reg .u64 %r110; .reg .u64 %r111; .reg .u64 %r112; .reg .u32 %r113; .reg .u32 %r114; .reg .u64 %r115; .reg .u32 %r116; .reg .u32 %r118; .reg .pred %r119; .reg .u32 %r121; .reg .u32 %r122; .reg .u64 %r123; .reg .pred %r124; mov.f64 %r72,%ar0; mov.b64 %r73,%r72; shr.u64 %r74,%r73,32; cvt.u32.u64 %r66,%r74; .loc 1 97 16 shr.u32 %r22,%r66,31; .loc 1 100 27 shr.s32 %r75,%r66,20; and.b32 %r24,%r75,2047; .loc 1 100 6 add.u32 %r54,%r24,-1023; .loc 1 103 5 setp.gt.s32 %r76,%r54,19; @ %r76 bra $L2; .loc 1 106 9 setp.ge.s32 %r77,%r54,-1; @ %r77 bra $L3; $L5: .loc 1 107 16 mov.u64 %r71,0; bra $L1; $L3: .loc 1 112 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 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 %r82,%r27,%r25; .loc 1 114 11 mov.b64 %r83,%r82; shr.u64 %r84,%r83,32; cvt.u32.u64 %r56,%r84; .loc 1 117 19 cvt.s64.s32 %r85,%r56; and.b64 %r86,%r85,-2147483649; .loc 1 117 14 setp.eq.u64 %r87,%r86,0; @ %r87 bra $L5; .loc 1 121 14 and.b32 %r58,%r56,1048575; .loc 1 122 14 or.b32 %r88,%r58,1048576; .loc 1 120 35 shr.s32 %r89,%r56,20; and.b32 %r90,%r89,2047; .loc 1 124 30 mov.u32 %r93,1043; sub.u32 %r92,%r93,%r90; .loc 1 124 23 shr.s32 %r94,%r88,%r92; .loc 1 124 18 cvt.s64.s32 %r71,%r94; bra $L6; $L2: .loc 1 127 11 setp.gt.s32 %r95,%r54,62; @ %r95 bra $L7; .loc 1 131 10 setp.le.s32 %r96,%r54,51; @ %r96 bra $L8; .loc 1 134 49 and.b32 %r97,%r66,983039; or.b32 %r98,%r97,65536; .loc 1 134 19 cvt.s64.s32 %r99,%r98; .loc 1 134 69 add.u32 %r100,%r24,-1043; .loc 1 134 62 shl.b64 %r101,%r99,%r100; .loc 1 136 31 add.u32 %r103,%r24,-1075; .loc 1 136 24 cvt.u32.u64 %r105,%r73; shl.b32 %r104,%r105,%r103; cvt.u64.u32 %r106,%r104; .loc 1 134 16 or.b64 %r71,%r101,%r106; bra $L6; $L8: .loc 1 141 20 cvta.const.u64 %r107,TWO52; cvt.s64.s32 %r108,%r22; shl.b64 %r109,%r108,3; add.u64 %r110,%r107,%r109; ld.f64 %r42,[%r110]; .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 %r60,%r44,%r42; .loc 1 143 11 mov.b64 %r111,%r60; shr.u64 %r112,%r111,32; cvt.u32.u64 %r61,%r112; .loc 1 144 35 shr.s32 %r113,%r61,20; and.b32 %r46,%r113,2047; .loc 1 145 14 and.b32 %r63,%r61,1048575; .loc 1 146 14 or.b32 %r114,%r63,1048576; .loc 1 154 21 cvt.s64.s32 %r115,%r114; .loc 1 154 42 add.u32 %r116,%r46,-1043; .loc 1 154 35 shl.b64 %r71,%r115,%r116; .loc 1 155 6 mov.u32 %r118,1075; sub.u32 %r49,%r118,%r46; setp.gt.u32 %r119,%r49,31; @ %r119 bra $L6; cvt.u32.u64 %r122,%r111; shr.u32 %r121,%r122,%r49; cvt.u64.u32 %r123,%r121; or.b64 %r71,%r71,%r123; bra $L6; $L7: .loc 1 160 14 cvt.rzi.s64.f64 %r71,%r72; bra $L1; $L6: .loc 1 163 23 setp.eq.u32 %r124,%r22,0; @ %r124 bra $L1; neg.s64 %r71,%r71; $L1: .loc 1 164 1 mov.u64 %value,%r71; st.param.u64 [%value_out],%value; ret; } /661 1591654536 399 399 100644 2948 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r46; .reg .u32 %r49; .reg .u32 %r50; .reg .u32 %r51; .reg .u64 %r53; .reg .f64 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .pred %r57; .reg .u32 %r58; .reg .pred %r59; .reg .pred %r60; .reg .pred %r61; .reg .u32 %r62; .reg .u32 %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .u32 %r67; .reg .pred %r68; .reg .pred %r70; .reg .u32 %r71; .reg .u32 %r72; .reg .u64 %r73; .reg .u64 %r74; .reg .u64 %r75; .reg .u32 %r76; .reg .u32 %r77; .reg .pred %r78; .reg .u64 %r79; .reg .u32 %r80; .reg .pred %r81; .reg .u32 %r82; .reg .u64 %r83; .reg .u64 %r84; 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 %r57,%r49,0; selp.u32 %r42,-1,1,%r57; .loc 1 71 44 shr.u32 %r58,%r49,20; and.b32 %r24,%r58,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 %r59,%r43,19; @ %r59 bra $L3; .loc 1 78 10 setp.ge.s32 %r60,%r43,0; @ %r60 bra $L4; .loc 1 80 14 setp.ne.u32 %r61,%r43,-1; @ %r61 bra $L12; .loc 1 83 20 cvt.s64.s32 %r53,%r42; bra $L1; $L4: .loc 1 89 26 mov.u32 %r63,524288; shr.s32 %r62,%r63,%r43; .loc 1 89 15 add.u32 %r64,%r62,%r40; .loc 1 91 31 mov.u32 %r66,20; sub.u32 %r65,%r66,%r43; .loc 1 91 24 shr.u32 %r67,%r64,%r65; .loc 1 91 18 cvt.u64.u32 %r41,%r67; bra $L6; $L3: .loc 1 94 11 setp.gt.u32 %r68,%r43,62; @ %r68 bra $L7; cvt.u32.u64 %r50,%r55; add.u32 %r51,%r24,-1043; .loc 1 98 10 setp.le.s32 %r70,%r43,51; @ %r70 bra $L8; .loc 1 103 47 add.u32 %r71,%r24,-1075; .loc 1 103 24 shl.b32 %r72,%r50,%r71; cvt.u64.u32 %r73,%r72; .loc 1 101 19 cvt.u64.u32 %r74,%r40; .loc 1 101 34 shl.b64 %r75,%r74,%r51; .loc 1 101 16 or.b64 %r41,%r73,%r75; bra $L6; $L8: .loc 1 111 35 mov.u32 %r77,-2147483648; shr.u32 %r76,%r77,%r51; .loc 1 108 24 add.u32 %r46,%r76,%r50; .loc 1 112 14 setp.ge.u32 %r78,%r46,%r50; @ %r78 bra $L9; .loc 1 113 13 add.u32 %r40,%r40,1; $L9: .loc 1 116 21 cvt.u64.u32 %r79,%r40; .loc 1 116 36 shl.b64 %r41,%r79,%r51; .loc 1 119 23 mov.u32 %r80,52; sub.u32 %r37,%r80,%r43; setp.eq.u32 %r81,%r37,32; @ %r81 bra $L6; shr.u32 %r82,%r46,%r37; cvt.u64.u32 %r83,%r82; or.b64 %r41,%r41,%r83; bra $L6; $L7: .loc 1 124 12 cvt.rzi.s64.f64 %r53,%r54; bra $L1; $L6: .loc 1 126 15 cvt.s64.s32 %r84,%r42; mul.lo.u64 %r53,%r84,%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; } /679 1591654536 399 399 100644 492 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: matherr .visible .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libm/common/s_matherr.c" // BEGIN GLOBAL FUNCTION DEF: matherr .visible .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; mov.u32 %value,0; .loc 1 123 1 st.param.u32 [%value_out],%value; ret; } lib_a-s_modf.o/ 1591654536 399 399 100644 3233 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 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 .u32 %r38; .reg .f64 %r40; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .f64 %r52; .reg .f64 %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u32 %r58; .reg .pred %r59; .reg .pred %r60; .reg .u32 %r61; .reg .u64 %r62; .reg .u64 %r66; .reg .f64 %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .u32 %r70; .reg .pred %r71; .reg .u32 %r72; .reg .u64 %r73; .reg .u64 %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .u64 %r80; .reg .u64 %r84; .reg .pred %r85; .reg .u32 %r86; .reg .u64 %r87; .reg .u64 %r91; .reg .u32 %r92; .reg .u32 %r93; .reg .u32 %r94; .reg .pred %r95; .reg .u32 %r96; .reg .u64 %r97; .reg .u64 %r101; .reg .u64 %r102; .reg .u32 %r106; .reg .u32 %r107; .reg .u64 %r108; .reg .u64 %r109; .reg .u64 %r110; mov.f64 %r53,%ar0; mov.u64 %r54,%ar1; mov.b64 %r55,%r53; shr.u64 %r56,%r55,32; cvt.u32.u64 %r38,%r56; cvt.u32.u64 %r45,%r55; .loc 1 92 11 shr.s32 %r58,%r38,20; .loc 1 92 16 and.b32 %r23,%r58,2047; .loc 1 92 5 add.u32 %r42,%r23,-1023; .loc 1 93 4 setp.gt.s32 %r59,%r42,19; @ %r59 bra $L2; .loc 1 94 8 setp.ge.s32 %r60,%r42,0; @ %r60 bra $L3; .loc 1 95 10 and.b32 %r61,%r38,-2147483648; cvt.u64.u32 %r62,%r61; shl.b64 %r66,%r62,32; mov.b64 %r67,%r66; st.f64 [%r54],%r67; .loc 1 96 10 mov.f64 %r52,%r53; bra $L1; $L3: .loc 1 98 19 mov.u32 %r68,1048575; shr.s32 %r43,%r68,%r42; .loc 1 99 10 and.b32 %r69,%r38,%r43; .loc 1 99 13 or.b32 %r70,%r69,%r45; .loc 1 99 5 setp.ne.u32 %r71,%r70,0; @ %r71 bra $L5; .loc 1 101 13 st.f64 [%r54],%r53; .loc 1 103 7 and.b32 %r72,%r38,-2147483648; cvt.u64.u32 %r73,%r72; shl.b64 %r77,%r73,32; mov.b64 %r52,%r77; .loc 1 104 14 bra $L1; $L5: .loc 1 106 7 not.b32 %r78,%r43; and.b32 %r79,%r78,%r38; cvt.u64.u32 %r80,%r79; shl.b64 %r84,%r80,32; mov.b64 %r32,%r84; st.f64 [%r54],%r32; .loc 1 107 16 sub.f64 %r52,%r53,%r32; bra $L1; $L2: .loc 1 110 12 setp.le.s32 %r85,%r42,51; @ %r85 bra $L6; .loc 1 112 12 st.f64 [%r54],%r53; .loc 1 114 6 and.b32 %r86,%r38,-2147483648; cvt.u64.u32 %r87,%r86; shl.b64 %r91,%r87,32; mov.b64 %r52,%r91; .loc 1 115 13 bra $L1; $L6: .loc 1 117 41 add.u32 %r92,%r23,-1043; .loc 1 117 8 mov.u32 %r93,-1; shr.u32 %r44,%r93,%r92; .loc 1 118 12 and.b32 %r94,%r44,%r45; .loc 1 118 8 setp.ne.u32 %r95,%r94,0; @ %r95 bra $L7; .loc 1 120 9 st.f64 [%r54],%r53; .loc 1 122 3 and.b32 %r96,%r38,-2147483648; cvt.u64.u32 %r97,%r96; shl.b64 %r101,%r97,32; mov.b64 %r52,%r101; .loc 1 123 10 bra $L1; $L7: .loc 1 125 10 cvt.u64.u32 %r102,%r38; not.b32 %r106,%r44; and.b32 %r107,%r106,%r45; cvt.u64.u32 %r108,%r107; shl.b64 %r109,%r102,32; or.b64 %r110,%r109,%r108; mov.b64 %r40,%r110; st.f64 [%r54],%r40; .loc 1 126 12 sub.f64 %r52,%r53,%r40; $L1: .loc 1 129 1 mov.f64 %value,%r52; st.param.f64 [%value_out],%value; ret; } lib_a-s_nan.o/ 1591654536 399 399 100644 500 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 49 9 mov.f64 %value,0d7ff8000000000000; .loc 1 50 1 st.param.f64 [%value_out],%value; ret; } /698 1591654536 399 399 100644 818 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } /719 1591654536 399 399 100644 5488 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .f64 %r46; .reg .u32 %r48; .reg .u32 %r50; .reg .u32 %r51; .reg .f64 %r56; .reg .f64 %r57; .reg .f64 %r58; .reg .u64 %r59; .reg .u64 %r60; .reg .u64 %r62; .reg .u64 %r63; .reg .pred %r65; .reg .u32 %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 .u32 %r76; .reg .u64 %r77; .reg .u64 %r81; .reg .u64 %r82; .reg .pred %r83; .reg .pred %r84; .reg .pred %r85; .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 .pred %r98; .reg .pred %r99; .reg .u32 %r101; .reg .u32 %r102; .reg .u32 %r104; .reg .u32 %r105; .reg .u16 %r107; .reg .u16 %r108; .reg .u16 %r109; .reg .u32 %r110; .reg .u16 %r111; .reg .pred %r112; .reg .u32 %r114; .reg .u32 %r115; .reg .u32 %r117; .reg .u32 %r118; .reg .u16 %r119; .reg .u16 %r120; .reg .u16 %r121; .reg .u32 %r122; .reg .u16 %r123; .reg .pred %r124; .reg .pred %r125; .reg .pred %r126; .reg .pred %r127; .reg .pred %r128; .reg .f64 %r129; .reg .pred %r130; .reg .u64 %r131; .reg .u64 %r135; .reg .u64 %r136; .reg .u64 %r137; .reg .u64 %r138; .reg .u64 %r142; .reg .u64 %r143; .reg .u64 %r144; mov.f64 %r57,%ar0; mov.f64 %r58,%ar1; .loc 1 77 2 mov.b64 %r59,%r57; shr.u64 %r60,%r59,32; cvt.u32.u64 %r40,%r60; cvt.u32.u64 %r45,%r59; mov.b64 %r62,%r58; shr.u64 %r63,%r62,32; cvt.u32.u64 %r50,%r63; .loc 1 78 2 cvt.u32.u64 %r42,%r63; cvt.u32.u64 %r51,%r62; .loc 1 79 5 and.b32 %r43,%r40,2147483647; .loc 1 80 5 and.b32 %r44,%r50,2147483647; .loc 1 82 4 setp.le.s32 %r65,%r43,2146435071; @ %r65 bra $L2; .loc 1 82 28 add.u32 %r66,%r43,-2146435072; .loc 1 82 40 or.b32 %r67,%r66,%r45; .loc 1 82 22 setp.ne.u32 %r68,%r67,0; @ %r68 bra $L3; $L2: .loc 1 82 49 setp.le.s32 %r69,%r44,2146435071; @ %r69 bra $L4; .loc 1 83 28 add.u32 %r70,%r44,-2146435072; .loc 1 83 40 or.b32 %r71,%r70,%r51; .loc 1 83 22 setp.eq.u32 %r72,%r71,0; @ %r72 bra $L4; $L3: .loc 1 84 13 add.f64 %r56,%r57,%r58; bra $L1; $L4: .loc 1 85 4 setp.eq.f64 %r73,%r57,%r58; @ %r73 bra $L17; .loc 1 86 8 or.b32 %r74,%r43,%r45; .loc 1 86 4 setp.ne.u32 %r75,%r74,0; @ %r75 bra $L6; .loc 1 87 6 and.b32 %r76,%r50,-2147483648; cvt.u64.u32 %r77,%r76; shl.b64 %r81,%r77,32; or.b64 %r82,%r81,1; mov.b64 %r46,%r82; .loc 1 88 8 mul.f64 %r56,%r46,%r46; .loc 1 89 8 setp.eq.f64 %r83,%r46,%r56; .loc 1 89 37 selp.f64 %r56,%r56,%r46,%r83; bra $L1; $L6: .loc 1 91 4 setp.lt.s32 %r84,%r40,0; @ %r84 bra $L7; .loc 1 92 8 setp.gt.s32 %r85,%r40,%r42; @ %r85 bra $L8; .loc 1 92 20 set.u32.eq.u32 %r87,%r40,%r42; neg.s32 %r88,%r87; .loc 1 92 30 set.u32.gt.u32 %r90,%r45,%r51; neg.s32 %r91,%r90; .loc 1 92 25 cvt.u16.u32 %r93,%r88; cvt.u16.u32 %r94,%r91; and.b16 %r92,%r93,%r94; .loc 1 92 14 cvt.u32.u16 %r95,%r92; cvt.u16.u8 %r96,%r95; setp.ne.u16 %r97,%r96,0; @ %r97 bra $L9; bra $L21; $L8: .loc 1 93 5 setp.ne.u32 %r98,%r45,0; @ %r98 bra $L9; .loc 1 93 16 add.u32 %r40,%r40,-1; $L9: .loc 1 94 6 add.u32 %r41,%r45,-1; bra $L11; $L21: .loc 1 96 6 add.u32 %r41,%r45,1; .loc 1 97 5 setp.ne.u32 %r99,%r41,0; @ %r99 bra $L11; .loc 1 97 16 add.u32 %r40,%r40,1; bra $L11; $L7: .loc 1 100 11 not.b32 %r101,%r42; shr.u32 %r102,%r101,31; .loc 1 100 18 set.u32.gt.s32 %r104,%r40,%r42; neg.s32 %r105,%r104; .loc 1 100 14 cvt.u16.u32 %r108,%r102; cvt.u16.u32 %r109,%r105; or.b16 %r107,%r108,%r109; .loc 1 100 8 cvt.u32.u16 %r110,%r107; cvt.u16.u8 %r111,%r110; setp.ne.u16 %r112,%r111,0; @ %r112 bra $L12; .loc 1 100 27 set.u32.eq.u32 %r114,%r40,%r42; neg.s32 %r115,%r114; .loc 1 100 37 set.u32.gt.u32 %r117,%r45,%r51; neg.s32 %r118,%r117; .loc 1 100 32 cvt.u16.u32 %r120,%r115; cvt.u16.u32 %r121,%r118; and.b16 %r119,%r120,%r121; .loc 1 100 21 cvt.u32.u16 %r122,%r119; cvt.u16.u8 %r123,%r122; setp.ne.u16 %r124,%r123,0; @ %r124 bra $L13; bra $L22; $L12: .loc 1 101 5 setp.ne.u32 %r125,%r45,0; @ %r125 bra $L13; .loc 1 101 16 add.u32 %r40,%r40,-1; $L13: .loc 1 102 6 add.u32 %r41,%r45,-1; bra $L11; $L22: .loc 1 104 6 add.u32 %r41,%r45,1; .loc 1 105 5 setp.ne.u32 %r126,%r41,0; @ %r126 bra $L11; .loc 1 105 16 add.u32 %r40,%r40,1; $L11: .loc 1 108 5 and.b32 %r48,%r40,2146435072; .loc 1 109 4 setp.ne.u32 %r127,%r48,2146435072; @ %r127 bra $L15; .loc 1 109 29 add.f64 %r56,%r57,%r57; bra $L1; $L15: .loc 1 110 4 setp.gt.s32 %r128,%r48,1048575; @ %r128 bra $L16; .loc 1 111 8 mul.f64 %r129,%r57,%r57; .loc 1 112 8 setp.eq.f64 %r130,%r57,%r129; @ %r130 bra $L16; .loc 1 113 10 cvt.u64.u32 %r131,%r40; cvt.u64.u32 %r135,%r41; shl.b64 %r136,%r131,32; or.b64 %r137,%r136,%r135; mov.b64 %r56,%r137; .loc 1 114 10 bra $L1; $L16: .loc 1 117 2 cvt.u64.u32 %r138,%r40; cvt.u64.u32 %r142,%r41; shl.b64 %r143,%r138,32; or.b64 %r144,%r143,%r142; mov.b64 %r56,%r144; .loc 1 118 9 bra $L1; $L17: .loc 1 85 18 mov.f64 %r56,%r57; $L1: .loc 1 119 1 mov.f64 %value,%r56; st.param.f64 [%value_out],%value; ret; } lib_a-s_pow10.o/1591654536 399 399 100644 929 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 76 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 77 1 mov.f64 %value,%r26; st.param.f64 [%value_out],%value; ret; } /740 1591654536 399 399 100644 13861 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // 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 .u32 %r22; .reg .f64 %r29; .reg .u32 %r37; .reg .u32 %r45; .reg .u32 %r70; .reg .u32 %r73; .reg .u32 %r80; .reg .f64 %r84; .reg .f64 %r86; .reg .f64 %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 %r112; .reg .u32 %r113; .reg .u32 %r115; .reg .u32 %r117; .reg .u32 %r118; .reg .u32 %r120; .reg .u32 %r121; .reg .u32 %r123; .reg .u32 %r124; .reg .u32 %r126; .reg .u32 %r127; .reg .u32 %r128; .reg .u32 %r131; .reg .u32 %r132; .reg .u64 %r134; .reg .f64 %r135; .reg .f64 %r136; .reg .f64 %r137; .reg .u64 %r138; .reg .u64 %r139; .reg .u64 %r140; .reg .u64 %r141; .reg .u64 %r142; .reg .u32 %r144; .reg .u32 %r146; .reg .u32 %r147; .reg .u32 %r149; .reg .u32 %r150; .reg .u16 %r151; .reg .u16 %r152; .reg .u16 %r153; .reg .u32 %r154; .reg .u16 %r155; .reg .pred %r156; .reg .u32 %r157; .reg .u32 %r158; .reg .u32 %r159; .reg .u32 %r160; .reg .pred %r161; .reg .u32 %r162; .reg .pred %r164; .reg .u32 %r166; .reg .u32 %r167; .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 .pred %r178; .reg .u64 %r179; .reg .u32 %r180; .reg .u64 %r181; .reg .u64 %r182; .reg .u64 %r183; .reg .u32 %r184; .reg .pred %r185; .reg .pred %r186; .reg .pred %r187; .reg .pred %r189; .reg .pred %r190; .reg .pred %r192; .reg .u32 %r193; .reg .u32 %r194; .reg .pred %r195; .reg .pred %r196; .reg .pred %r197; .reg .pred %r199; .reg .pred %r200; .reg .pred %r202; .reg .u32 %r203; .reg .pred %r204; .reg .u32 %r205; .reg .pred %r206; .reg .u32 %r207; .reg .u32 %r208; .reg .u32 %r209; .reg .u32 %r210; .reg .u32 %r211; .reg .u32 %r213; .reg .pred %r214; .reg .u32 %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 .f64 %r267; .reg .pred %r268; .reg .pred %r269; .reg .pred %r270; .reg .u32 %r271; .reg .pred %r272; .reg .pred %r273; .reg .pred %r274; .reg .u32 %r275; .reg .pred %r276; .reg .u64 %r278; .reg .u32 %r279; .reg .u32 %r280; .reg .u64 %r281; .reg .u64 %r282; .reg .u64 %r283; .reg .u64 %r284; .reg .pred %r285; .reg .pred %r287; mov.f64 %r136,%ar0; mov.f64 %r137,%ar1; mov.u64 %r138,%ar2; .loc 1 88 2 mov.b64 %r139,%r136; shr.u64 %r140,%r139,32; cvt.u32.u64 %r105,%r140; .loc 1 89 2 mov.b64 %r141,%r137; shr.u64 %r142,%r141,32; cvt.u32.u64 %r106,%r142; cvt.u32.u64 %r100,%r141; .loc 1 92 5 and.b32 %r93,%r105,2147483647; .loc 1 93 5 and.b32 %r108,%r106,2147483647; .loc 1 96 8 or.b32 %r144,%r108,%r100; .loc 1 96 4 set.u32.eq.u32 %r146,%r144,0; neg.s32 %r147,%r146; .loc 1 96 15 set.u32.gt.s32 %r149,%r93,2146435071; neg.s32 %r150,%r149; cvt.u16.u32 %r152,%r147; cvt.u16.u32 %r153,%r150; or.b16 %r151,%r152,%r153; cvt.u32.u16 %r154,%r151; cvt.u16.u8 %r155,%r154; setp.ne.u16 %r156,%r155,0; @ %r156 bra $L2; .loc 1 97 14 neg.s32 %r157,%r100; .loc 1 97 13 or.b32 %r158,%r157,%r100; .loc 1 97 18 shr.u32 %r159,%r158,31; .loc 1 97 8 or.b32 %r160,%r159,%r108; .loc 1 96 33 setp.le.u32 %r161,%r160,2146435072; @ %r161 bra $L3; $L2: .loc 1 98 11 mov.u32 %r162,0; st.u32 [%r138],%r162; .loc 1 99 15 mul.f64 %r29,%r136,%r137; .loc 1 99 18 div.rn.f64 %r135,%r29,%r29; bra $L1; $L3: cvt.u32.u64 %r99,%r139; .loc 1 90 12 xor.b32 %r22,%r105,%r106; .loc 1 91 5 and.b32 %r107,%r105,-2147483648; .loc 1 101 4 setp.gt.s32 %r164,%r93,%r108; @ %r164 bra $L5; .loc 1 102 12 set.u32.lt.s32 %r166,%r93,%r108; neg.s32 %r167,%r166; .loc 1 102 21 set.u32.lt.u32 %r169,%r99,%r100; neg.s32 %r170,%r169; .loc 1 102 16 cvt.u16.u32 %r172,%r167; cvt.u16.u32 %r173,%r170; or.b16 %r171,%r172,%r173; .loc 1 102 8 cvt.u32.u16 %r174,%r171; cvt.u16.u8 %r175,%r174; setp.ne.u16 %r176,%r175,0; @ %r176 bra $L48; .loc 1 106 8 setp.ne.u32 %r177,%r99,%r100; @ %r177 bra $L5; .loc 1 107 20 setp.lt.s32 %r178,%r22,0; selp.u32 %r102,-1,1,%r178; .loc 1 107 8 st.u32 [%r138],%r102; .loc 1 108 14 cvta.const.u64 %r179,Zero; .loc 1 108 29 shr.u32 %r180,%r107,31; .loc 1 108 14 cvt.u64.u32 %r181,%r180; shl.b64 %r182,%r181,3; add.u64 %r183,%r179,%r182; ld.f64 %r135,[%r183]; bra $L1; $L5: .loc 1 113 4 and.b32 %r184,%r105,2146435072; setp.ne.u32 %r185,%r184,0; @ %r185 bra $L8; .loc 1 114 8 setp.ne.u32 %r186,%r93,0; @ %r186 bra $L9; .loc 1 115 21 mov.u32 %r112,%r99; .loc 1 115 3 setp.le.s32 %r187,%r99,0; @ %r187 bra $L50; .loc 1 115 11 mov.u32 %r98,-1043; $L11: .loc 1 115 41 add.u32 %r98,%r98,-1; .loc 1 115 32 add.u32 %r112,%r112,%r112; .loc 1 115 3 setp.gt.s32 %r189,%r112,0; @ %r189 bra $L11; bra $L10; $L9: .loc 1 117 20 shl.b32 %r113,%r93,11; .loc 1 117 3 setp.le.s32 %r190,%r113,0; @ %r190 bra $L51; .loc 1 117 11 mov.u32 %r98,-1022; $L12: .loc 1 117 46 add.u32 %r98,%r98,-1; .loc 1 117 37 add.u32 %r113,%r113,%r113; .loc 1 117 3 setp.gt.s32 %r192,%r113,0; @ %r192 bra $L12; bra $L10; $L8: .loc 1 119 17 shr.s32 %r193,%r93,20; .loc 1 119 12 add.u32 %r98,%r193,-1023; bra $L10; $L50: .loc 1 115 11 mov.u32 %r98,-1043; bra $L10; $L51: .loc 1 117 11 mov.u32 %r98,-1022; $L10: .loc 1 122 4 and.b32 %r194,%r106,2146435072; setp.ne.u32 %r195,%r194,0; @ %r195 bra $L13; .loc 1 123 8 setp.ne.u32 %r196,%r108,0; @ %r196 bra $L14; .loc 1 124 21 mov.u32 %r115,%r100; .loc 1 124 3 setp.le.s32 %r197,%r100,0; @ %r197 bra $L52; .loc 1 124 11 mov.u32 %r127,-1043; $L16: .loc 1 124 41 add.u32 %r127,%r127,-1; .loc 1 124 32 add.u32 %r115,%r115,%r115; .loc 1 124 3 setp.gt.s32 %r199,%r115,0; @ %r199 bra $L16; bra $L15; $L14: .loc 1 126 20 shl.b32 %r117,%r108,11; .loc 1 126 3 setp.le.s32 %r200,%r117,0; @ %r200 bra $L53; .loc 1 126 11 mov.u32 %r127,-1022; $L17: .loc 1 126 46 add.u32 %r127,%r127,-1; .loc 1 126 37 add.u32 %r117,%r117,%r117; .loc 1 126 3 setp.gt.s32 %r202,%r117,0; @ %r202 bra $L17; bra $L15; $L13: .loc 1 128 17 shr.s32 %r203,%r108,20; .loc 1 128 12 add.u32 %r127,%r203,-1023; bra $L15; $L52: .loc 1 124 11 mov.u32 %r127,-1043; bra $L15; $L53: .loc 1 126 11 mov.u32 %r127,-1022; $L15: .loc 1 131 4 setp.lt.s32 %r204,%r98,-1022; @ %r204 bra $L18; .loc 1 132 33 and.b32 %r37,%r105,1048575; .loc 1 132 9 or.b32 %r92,%r37,1048576; bra $L19; $L18: .loc 1 134 8 mov.u32 %r205,-1022; sub.u32 %r118,%r205,%r98; .loc 1 135 8 setp.gt.s32 %r206,%r118,31; @ %r206 bra $L20; .loc 1 136 31 add.u32 %r207,%r98,1054; .loc 1 136 26 shr.u32 %r208,%r99,%r207; .loc 1 136 18 shl.b32 %r209,%r93,%r118; .loc 1 136 22 or.b32 %r92,%r208,%r209; .loc 1 137 13 shl.b32 %r99,%r99,%r118; bra $L19; $L20: .loc 1 139 14 mov.u32 %r211,-1054; sub.u32 %r210,%r211,%r98; .loc 1 139 10 shl.b32 %r92,%r99,%r210; .loc 1 140 6 mov.u32 %r99,0; $L19: .loc 1 143 4 setp.lt.s32 %r287,%r127,-1022; @ %r287 bra $L21; .loc 1 144 33 and.b32 %r45,%r106,1048575; .loc 1 144 9 or.b32 %r94,%r45,1048576; sub.u32 %r97,%r99,%r100; bra $L22; $L21: .loc 1 146 8 mov.u32 %r213,-1022; sub.u32 %r120,%r213,%r127; .loc 1 147 8 setp.gt.s32 %r214,%r120,31; @ %r214 bra $L23; .loc 1 148 31 add.u32 %r215,%r127,1054; .loc 1 148 26 shr.u32 %r216,%r100,%r215; .loc 1 148 18 shl.b32 %r217,%r108,%r120; .loc 1 148 22 or.b32 %r94,%r216,%r217; .loc 1 149 13 shl.b32 %r100,%r100,%r120; sub.u32 %r97,%r99,%r100; bra $L22; $L23: .loc 1 151 14 mov.u32 %r219,-1054; sub.u32 %r218,%r219,%r127; .loc 1 151 10 shl.b32 %r94,%r100,%r218; .loc 1 157 4 sub.u32 %r132,%r98,%r127; .loc 1 159 9 add.u32 %r124,%r132,-1; .loc 1 159 7 setp.ne.u32 %r220,%r132,0; @ %r220 bra $L54; bra $L70; $L22: .loc 1 157 4 sub.u32 %r121,%r98,%r127; .loc 1 159 9 add.u32 %r124,%r121,-1; .loc 1 159 7 setp.eq.u32 %r221,%r121,0; @ ! %r221 bra $L24; bra $L55; $L54: .loc 1 152 6 mov.u32 %r100,0; $L24: mov.u32 %r101,0; $L30: .loc 1 160 8 sub.u32 %r95,%r92,%r94; .loc 1 160 27 setp.ge.u32 %r222,%r99,%r100; @ %r222 bra $L27; .loc 1 160 38 add.u32 %r95,%r95,-1; $L27: .loc 1 161 8 setp.ge.s32 %r223,%r95,0; @ %r223 bra $L28; .loc 1 161 22 add.u32 %r224,%r92,%r92; .loc 1 161 29 shr.u32 %r225,%r99,31; .loc 1 161 25 add.u32 %r92,%r224,%r225; .loc 1 161 39 add.u32 %r99,%r99,%r99; bra $L29; $L28: .loc 1 160 17 sub.u32 %r123,%r99,%r100; .loc 1 162 19 add.u32 %r227,%r95,%r95; .loc 1 162 26 shr.u32 %r228,%r123,31; .loc 1 162 22 add.u32 %r92,%r227,%r228; .loc 1 162 36 add.u32 %r99,%r123,%r123; .loc 1 162 46 add.u32 %r101,%r101,1; $L29: .loc 1 163 8 add.u32 %r101,%r101,%r101; .loc 1 159 9 add.u32 %r124,%r124,-1; .loc 1 159 7 setp.ne.u32 %r231,%r124,-1; @ %r231 bra $L30; sub.u32 %r97,%r99,%r100; bra $L26; $L55: .loc 1 158 4 mov.u32 %r101,%r121; $L26: .loc 1 165 4 sub.u32 %r96,%r92,%r94; .loc 1 165 23 setp.ge.u32 %r232,%r99,%r100; @ %r232 bra $L31; .loc 1 165 34 add.u32 %r96,%r96,-1; $L31: .loc 1 166 4 setp.lt.s32 %r233,%r96,0; @ %r233 bra $L32; .loc 1 166 26 add.u32 %r101,%r101,1; mov.u32 %r99,%r97; mov.u32 %r92,%r96; $L32: .loc 1 169 8 or.b32 %r234,%r92,%r99; .loc 1 169 4 setp.eq.u32 %r235,%r234,0; @ %r235 bra $L33; .loc 1 174 7 setp.le.s32 %r236,%r92,1048575; @ %r236 bra $L34; bra $L35; $L33: .loc 1 170 8 and.b32 %r126,%r101,2147483647; .loc 1 171 23 setp.ge.s32 %r237,%r22,0; @ %r237 bra $L36; .loc 1 171 20 neg.s32 %r103,%r126; bra $L37; $L36: .loc 1 171 23 mov.u32 %r103,%r126; $L37: .loc 1 171 11 st.u32 [%r138],%r103; .loc 1 172 17 cvta.const.u64 %r238,Zero; .loc 1 172 32 shr.u32 %r239,%r107,31; .loc 1 172 17 cvt.u64.u32 %r240,%r239; shl.b64 %r241,%r240,3; add.u64 %r242,%r238,%r241; ld.f64 %r135,[%r242]; bra $L1; $L34: .loc 1 175 13 add.u32 %r243,%r92,%r92; .loc 1 175 20 shr.u32 %r244,%r99,31; .loc 1 175 16 add.u32 %r92,%r243,%r244; .loc 1 175 30 add.u32 %r99,%r99,%r99; .loc 1 176 9 add.u32 %r127,%r127,-1; .loc 1 174 7 setp.le.s32 %r246,%r92,1048575; @ %r246 bra $L34; setp.lt.s32 %r287,%r127,-1022; $L35: .loc 1 178 4 @ %r287 bra $L38; .loc 1 179 15 add.u32 %r70,%r92,-1048576; .loc 1 179 32 add.u32 %r248,%r127,1023; .loc 1 179 38 shl.b32 %r249,%r248,20; .loc 1 179 9 or.b32 %r93,%r249,%r70; bra $L6; $L38: .loc 1 181 8 mov.u32 %r250,-1022; sub.u32 %r128,%r250,%r127; .loc 1 182 8 setp.gt.s32 %r251,%r128,20; @ %r251 bra $L39; .loc 1 183 11 shr.u32 %r73,%r99,%r128; .loc 1 183 36 add.u32 %r252,%r127,1054; .loc 1 183 31 shl.b32 %r253,%r92,%r252; .loc 1 183 6 or.b32 %r99,%r253,%r73; .loc 1 184 6 shr.s32 %r93,%r92,%r128; bra $L6; $L39: .loc 1 185 16 setp.gt.s32 %r254,%r128,31; @ %r254 bra $L40; .loc 1 186 24 shr.u32 %r80,%r99,%r128; .loc 1 186 16 add.u32 %r255,%r127,1054; .loc 1 186 11 shl.b32 %r256,%r92,%r255; .loc 1 186 6 or.b32 %r99,%r256,%r80; .loc 1 186 33 mov.u32 %r93,%r107; bra $L6; $L40: .loc 1 188 14 mov.u32 %r258,-1054; sub.u32 %r257,%r258,%r127; .loc 1 188 10 shr.s32 %r99,%r92,%r257; .loc 1 188 23 mov.u32 %r93,%r107; bra $L6; $L48: .loc 1 103 5 mov.u32 %r101,0; $L6: .loc 1 192 2 cvt.u64.u32 %r259,%r93; cvt.u64.u32 %r263,%r99; shl.b64 %r264,%r259,32; or.b64 %r265,%r264,%r263; mov.b64 %r91,%r265; .loc 1 193 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r137; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r267,[%value_in]; } .loc 1 194 5 setp.lt.f64 %r268,%r267,0d0020000000000000; @ ! %r268 bra $L71; .loc 1 195 11 add.f64 %r84,%r91,%r91; .loc 1 195 9 setp.gt.f64 %r269,%r84,%r267; @ %r269 bra $L43; .loc 1 195 16 setp.neu.f64 %r270,%r84,%r267; @ %r270 bra $L44; .loc 1 195 33 and.b32 %r271,%r101,1; .loc 1 195 27 setp.eq.u32 %r272,%r271,0; @ %r272 bra $L44; $L43: .loc 1 196 4 add.u32 %r101,%r101,1; .loc 1 197 4 sub.f64 %r91,%r91,%r267; bra $L44; $L71: .loc 1 199 18 mul.f64 %r86,%r267,0d3fe0000000000000; .loc 1 199 12 setp.lt.f64 %r273,%r86,%r91; @ %r273 bra $L45; .loc 1 199 21 setp.neu.f64 %r274,%r86,%r91; @ %r274 bra $L44; .loc 1 199 40 and.b32 %r275,%r101,1; .loc 1 199 34 setp.eq.u32 %r276,%r275,0; @ %r276 bra $L44; $L45: .loc 1 200 7 add.u32 %r101,%r101,1; .loc 1 201 7 sub.f64 %r91,%r91,%r267; $L44: .loc 1 204 2 mov.b64 %r134,%r91; .loc 1 203 2 shr.u64 %r278,%r134,32; .loc 1 204 2 cvt.u32.u64 %r280,%r278; xor.b32 %r279,%r107,%r280; cvt.u64.u32 %r281,%r279; shl.b64 %r282,%r281,32; and.b64 %r283,%r134,4294967295; or.b64 %r284,%r283,%r282; mov.b64 %r135,%r284; .loc 1 205 4 and.b32 %r131,%r101,2147483647; .loc 1 206 19 setp.ge.s32 %r285,%r22,0; @ %r285 bra $L46; .loc 1 206 16 neg.s32 %r104,%r131; bra $L47; $L46: .loc 1 206 19 mov.u32 %r104,%r131; $L47: .loc 1 206 7 st.u32 [%r138],%r104; .loc 1 207 9 bra $L1; $L70: .loc 1 165 4 sub.u32 %r96,%r92,%r94; mov.u32 %r97,%r99; .loc 1 158 4 mov.u32 %r101,%r132; bra $L31; $L1: .loc 1 208 1 mov.f64 %value,%r135; st.param.f64 [%value_out],%value; ret; } lib_a-s_rint.o/ 1591654536 399 399 100644 5894 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r34; .reg .f64 %r35; .reg .f64 %r36; .reg .u32 %r42; .reg .u32 %r45; .reg .u32 %r52; .reg .f64 %r59; .reg .f64 %r60; .reg .f64 %r61; .reg .u32 %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .f64 %r67; .reg .f64 %r68; .reg .u32 %r70; .reg .u32 %r71; .reg .u32 %r73; .reg .u32 %r74; .reg .f64 %r75; .reg .u64 %r77; .reg .f64 %r79; .reg .f64 %r80; .reg .u64 %r81; .reg .u64 %r82; .reg .u32 %r84; .reg .pred %r85; .reg .pred %r86; .reg .u32 %r87; .reg .u32 %r88; .reg .pred %r89; .reg .u32 %r90; .reg .u32 %r91; .reg .u32 %r92; .reg .u32 %r93; .reg .u32 %r94; .reg .u32 %r95; .reg .u32 %r96; .reg .u64 %r97; .reg .u64 %r98; .reg .u64 %r99; .reg .u64 %r100; .reg .u64 %r101; .reg .u64 %r102; .reg .u64 %r103; .reg .u64 %r104; .reg .u64 %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 .u32 %r116; .reg .u32 %r117; .reg .pred %r118; .reg .u32 %r119; .reg .u32 %r120; .reg .pred %r121; .reg .pred %r122; .reg .u32 %r123; .reg .u32 %r124; .reg .u32 %r125; .reg .u32 %r126; .reg .pred %r127; .reg .pred %r128; .reg .u32 %r129; .reg .u32 %r130; .reg .pred %r131; .reg .u32 %r132; .reg .pred %r133; .reg .u32 %r134; .reg .u32 %r135; .reg .u32 %r136; .reg .u32 %r137; .reg .u64 %r138; .reg .u64 %r142; .reg .u64 %r143; .reg .u64 %r144; .reg .u64 %r145; .reg .u64 %r146; .reg .u64 %r147; .reg .u64 %r148; mov.f64 %r80,%ar0; mov.b64 %r81,%r80; shr.u64 %r82,%r81,32; cvt.u32.u64 %r42,%r82; cvt.u32.u64 %r45,%r81; .loc 1 94 15 shr.u32 %r63,%r42,31; .loc 1 95 11 shr.s32 %r84,%r42,20; .loc 1 95 16 and.b32 %r24,%r84,2047; .loc 1 95 5 add.u32 %r64,%r24,-1023; .loc 1 96 4 setp.gt.s32 %r85,%r64,19; @ %r85 bra $L2; .loc 1 97 8 setp.ge.s32 %r86,%r64,0; @ %r86 bra $L3; .loc 1 98 10 and.b32 %r87,%r42,2147483647; .loc 1 98 22 or.b32 %r88,%r87,%r45; .loc 1 98 5 setp.eq.u32 %r89,%r88,0; @ %r89 bra $L8; .loc 1 99 12 and.b32 %r90,%r42,1048575; .loc 1 99 6 or.b32 %r65,%r90,%r45; .loc 1 101 14 neg.s32 %r91,%r65; .loc 1 101 13 or.b32 %r92,%r91,%r65; .loc 1 101 18 shr.u32 %r93,%r92,12; .loc 1 101 23 and.b32 %r94,%r93,524288; .loc 1 100 6 and.b32 %r95,%r42,-131072; .loc 1 101 6 or.b32 %r96,%r94,%r95; .loc 1 102 3 cvt.u64.u32 %r97,%r96; shl.b64 %r98,%r97,32; and.b64 %r99,%r81,4294967295; or.b64 %r100,%r99,%r98; mov.b64 %r67,%r100; .loc 1 103 19 cvta.const.u64 %r101,TWO52; cvt.s64.s32 %r102,%r63; shl.b64 %r103,%r102,3; add.u64 %r104,%r101,%r103; ld.f64 %r34,[%r104]; .loc 1 103 23 add.f64 %r35,%r34,%r67; .loc 1 103 12 st.f64 [%frame],%r35; .loc 1 104 16 ld.f64 %r36,[%frame]; .loc 1 104 12 sub.f64 %r68,%r36,%r34; .loc 1 106 3 mov.b64 %r77,%r68; .loc 1 105 3 shr.u64 %r106,%r77,32; .loc 1 106 3 cvt.u32.u64 %r108,%r106; and.b32 %r107,%r108,2147483647; shl.b32 %r109,%r63,31; or.b32 %r110,%r107,%r109; cvt.u64.u32 %r111,%r110; shl.b64 %r112,%r111,32; and.b64 %r113,%r77,4294967295; or.b64 %r114,%r113,%r112; mov.b64 %r79,%r114; .loc 1 107 17 bra $L1; $L3: .loc 1 109 19 mov.u32 %r115,1048575; shr.s32 %r70,%r115,%r64; .loc 1 110 10 and.b32 %r116,%r42,%r70; .loc 1 110 13 or.b32 %r117,%r116,%r45; .loc 1 110 5 setp.eq.u32 %r118,%r117,0; @ %r118 bra $L9; .loc 1 111 4 shr.u32 %r71,%r70,1; .loc 1 112 10 and.b32 %r119,%r42,%r71; .loc 1 112 13 or.b32 %r120,%r119,%r45; .loc 1 112 5 setp.eq.u32 %r121,%r120,0; @ %r121 bra $L10; .loc 1 114 9 setp.eq.u32 %r122,%r64,19; .loc 1 114 43 selp.u32 %r45,-2147483648,0,%r122; .loc 1 115 17 not.b32 %r123,%r71; .loc 1 115 15 and.b32 %r124,%r123,%r42; .loc 1 115 32 mov.u32 %r126,262144; shr.s32 %r125,%r126,%r64; .loc 1 115 21 or.b32 %r42,%r124,%r125; bra $L5; $L2: .loc 1 118 12 setp.le.s32 %r127,%r64,51; @ %r127 bra $L7; .loc 1 119 8 setp.ne.u32 %r128,%r64,1024; @ %r128 bra $L12; .loc 1 119 28 add.f64 %r79,%r80,%r80; bra $L1; $L7: .loc 1 122 41 add.u32 %r52,%r24,-1043; .loc 1 122 8 mov.u32 %r129,-1; shr.u32 %r73,%r129,%r52; .loc 1 123 12 and.b32 %r130,%r45,%r73; .loc 1 123 8 setp.eq.u32 %r131,%r130,0; @ %r131 bra $L13; .loc 1 124 7 shr.u32 %r74,%r73,1; .loc 1 125 12 and.b32 %r132,%r45,%r74; .loc 1 125 8 setp.eq.u32 %r133,%r132,0; @ %r133 bra $L5; .loc 1 125 30 not.b32 %r134,%r74; .loc 1 125 28 and.b32 %r135,%r134,%r45; .loc 1 125 48 mov.u32 %r137,1073741824; shr.s32 %r136,%r137,%r52; .loc 1 125 23 or.b32 %r45,%r135,%r136; bra $L5; $L10: mov.u32 %r45,%r120; $L5: .loc 1 127 2 cvt.u64.u32 %r138,%r42; cvt.u64.u32 %r142,%r45; shl.b64 %r143,%r138,32; or.b64 %r144,%r143,%r142; mov.b64 %r75,%r144; .loc 1 128 11 cvta.const.u64 %r145,TWO52; cvt.s64.s32 %r146,%r63; shl.b64 %r147,%r146,3; add.u64 %r148,%r145,%r147; ld.f64 %r59,[%r148]; .loc 1 128 15 add.f64 %r60,%r59,%r75; .loc 1 128 4 st.f64 [%frame],%r60; .loc 1 129 10 ld.f64 %r61,[%frame]; sub.f64 %r79,%r61,%r59; bra $L1; $L8: .loc 1 98 38 mov.f64 %r79,%r80; bra $L1; $L9: mov.f64 %r79,%r80; bra $L1; $L12: mov.f64 %r79,%r80; bra $L1; $L13: mov.f64 %r79,%r80; $L1: .loc 1 130 1 mov.f64 %value,%r79; st.param.f64 [%value_out],%value; ret; } lib_a-s_round.o/1591654536 399 399 100644 3024 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r25; .reg .u32 %r31; .reg .u32 %r38; .reg .u32 %r40; .reg .u32 %r41; .reg .u32 %r43; .reg .u32 %r45; .reg .u32 %r46; .reg .f64 %r49; .reg .f64 %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .u32 %r54; .reg .pred %r55; .reg .pred %r56; .reg .pred %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .u32 %r60; .reg .pred %r61; .reg .u32 %r62; .reg .u32 %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .pred %r66; .reg .pred %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .u32 %r70; .reg .pred %r71; .reg .u32 %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .pred %r76; .reg .u32 %r77; .reg .u64 %r78; .reg .u64 %r82; .reg .u64 %r83; .reg .u64 %r84; mov.f64 %r50,%ar0; mov.b64 %r51,%r50; shr.u64 %r52,%r51,32; cvt.u32.u64 %r31,%r52; cvt.u32.u64 %r25,%r51; .loc 1 62 44 shr.s32 %r54,%r31,20; and.b32 %r23,%r54,2047; .loc 1 62 22 add.u32 %r40,%r23,-1023; .loc 1 64 6 setp.gt.s32 %r55,%r40,19; @ %r55 bra $L2; .loc 1 66 10 setp.ge.s32 %r56,%r40,0; @ %r56 bra $L3; .loc 1 68 15 and.b32 %r41,%r31,-2147483648; .loc 1 69 14 setp.eq.u32 %r57,%r40,-1; @ %r57 bra $L4; mov.u32 %r31,%r41; .loc 1 72 15 mov.u32 %r38,0; bra $L5; $L4: .loc 1 71 17 or.b32 %r31,%r41,1072693248; .loc 1 72 15 mov.u32 %r38,0; bra $L5; $L3: .loc 1 76 49 mov.u32 %r58,1048575; shr.s32 %r43,%r58,%r40; .loc 1 77 20 and.b32 %r59,%r43,%r31; .loc 1 77 42 or.b32 %r60,%r59,%r25; .loc 1 77 14 setp.eq.u32 %r61,%r60,0; @ %r61 bra $L9; .loc 1 81 29 mov.u32 %r63,524288; shr.s32 %r62,%r63,%r40; .loc 1 81 15 add.u32 %r64,%r62,%r31; .loc 1 82 18 not.b32 %r65,%r43; .loc 1 82 15 and.b32 %r31,%r64,%r65; .loc 1 83 15 mov.u32 %r38,0; bra $L5; $L2: .loc 1 86 11 setp.le.s32 %r66,%r40,51; @ %r66 bra $L7; .loc 1 88 10 setp.ne.u32 %r67,%r40,1024; @ %r67 bra $L10; .loc 1 90 18 add.f64 %r49,%r50,%r50; bra $L1; $L7: .loc 1 96 68 add.u32 %r68,%r23,-1043; .loc 1 96 18 mov.u32 %r69,-1; shr.u32 %r45,%r69,%r68; .loc 1 99 16 and.b32 %r70,%r25,%r45; .loc 1 99 10 setp.eq.u32 %r71,%r70,0; @ %r71 bra $L11; .loc 1 103 29 mov.u32 %r73,51; sub.u32 %r72,%r73,%r40; .loc 1 103 22 mov.u32 %r75,1; shl.b32 %r74,%r75,%r72; .loc 1 103 11 add.u32 %r46,%r74,%r25; .loc 1 104 10 setp.le.u32 %r76,%r25,%r46; @ %r76 bra $L8; .loc 1 105 13 add.u32 %r31,%r31,1; $L8: .loc 1 108 14 not.b32 %r77,%r45; .loc 1 108 11 and.b32 %r38,%r77,%r46; $L5: .loc 1 110 3 cvt.u64.u32 %r78,%r31; cvt.u64.u32 %r82,%r38; shl.b64 %r83,%r78,32; or.b64 %r84,%r83,%r82; mov.b64 %r49,%r84; .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; } /758 1591654536 399 399 100644 4547 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 DECL: copysign .extern .func (.param .f64 %value_out) copysign (.param .f64 %in_ar0, .param .f64 %in_ar1); // 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 .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 %r62; .reg .pred %r63; .reg .u32 %r64; .reg .u32 %r66; .reg .u32 %r67; .reg .pred %r68; .reg .u64 %r69; .reg .u64 %r70; .reg .u32 %r71; .reg .u32 %r72; .reg .pred %r73; .reg .u32 %r74; .reg .u32 %r76; .reg .u32 %r77; .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 .f64 %r87; .reg .f64 %r89; .reg .pred %r90; .reg .f64 %r91; .reg .f64 %r93; .reg .pred %r94; .reg .u32 %r95; .reg .u32 %r96; .reg .u32 %r97; .reg .u64 %r98; .reg .u64 %r99; .reg .u64 %r100; .reg .u64 %r101; .reg .pred %r102; .reg .f64 %r103; .reg .f64 %r105; .reg .u32 %r106; .reg .u32 %r107; .reg .u32 %r108; .reg .u32 %r109; .reg .u64 %r110; .reg .u64 %r111; .reg .u64 %r112; .reg .u64 %r113; 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 %r62,%r46,20; .loc 1 43 11 and.b32 %r48,%r62,2047; .loc 1 44 12 setp.ne.u32 %r63,%r48,0; @ %r63 bra $L2; .loc 1 45 24 and.b32 %r64,%r46,2147483647; .loc 1 45 20 cvt.u32.u64 %r67,%r60; or.b32 %r66,%r64,%r67; .loc 1 45 16 setp.eq.u32 %r68,%r66,0; @ %r68 bra $L9; .loc 1 46 8 mul.f64 %r58,%r58,0d4350000000000000; .loc 1 47 6 mov.b64 %r69,%r58; shr.u64 %r70,%r69,32; cvt.u32.u64 %r46,%r70; .loc 1 48 26 shr.s32 %r71,%r46,20; and.b32 %r72,%r71,2047; .loc 1 48 8 add.u32 %r48,%r72,-54; bra $L4; $L2: .loc 1 50 12 setp.ne.u32 %r73,%r48,2047; @ %r73 bra $L4; .loc 1 50 31 add.f64 %r57,%r58,%r58; bra $L1; $L4: .loc 1 51 14 cvt.u32.u64 %r74,%r59; add.u32 %r29,%r48,%r74; .loc 1 52 14 set.u32.gt.s64 %r76,%r59,50000; neg.s32 %r77,%r76; .loc 1 52 27 set.u32.gt.s32 %r79,%r29,2046; neg.s32 %r80,%r79; .loc 1 52 22 cvt.u16.u32 %r82,%r77; cvt.u16.u32 %r83,%r80; or.b16 %r81,%r82,%r83; .loc 1 52 12 cvt.u32.u16 %r84,%r81; cvt.u16.u8 %r85,%r84; setp.eq.u16 %r86,%r85,0; @ %r86 bra $L5; .loc 1 53 16 mov.f64 %r87,0d7e37e43c8800759c; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r87; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r58; call (%value_in),copysign,(%out_arg1,%out_arg2); ld.param.f64 %r89,[%value_in]; } .loc 1 53 15 mul.f64 %r57,%r89,0d7e37e43c8800759c; bra $L1; $L5: .loc 1 54 5 setp.ge.s64 %r90,%r59,-50000; @ %r90 bra $L6; .loc 1 54 29 mov.f64 %r91,0d01a56e1fc2f8f359; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r91; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r58; call (%value_in),copysign,(%out_arg1,%out_arg2); ld.param.f64 %r93,[%value_in]; } .loc 1 54 28 mul.f64 %r57,%r93,0d01a56e1fc2f8f359; bra $L1; $L6: .loc 1 55 12 setp.le.s32 %r94,%r29,0; @ %r94 bra $L7; .loc 1 56 7 mov.b64 %r55,%r58; and.b32 %r95,%r46,-2146435073; shl.b32 %r96,%r29,20; or.b32 %r97,%r95,%r96; cvt.u64.u32 %r98,%r97; shl.b64 %r99,%r98,32; and.b64 %r100,%r55,4294967295; or.b64 %r101,%r100,%r99; mov.b64 %r57,%r101; .loc 1 56 56 bra $L1; $L7: .loc 1 57 12 setp.ge.s32 %r102,%r29,-53; @ %r102 bra $L8; .loc 1 58 16 mov.f64 %r103,0d01a56e1fc2f8f359; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r103; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r58; call (%value_in),copysign,(%out_arg1,%out_arg2); ld.param.f64 %r105,[%value_in]; } .loc 1 58 15 mul.f64 %r57,%r105,0d01a56e1fc2f8f359; bra $L1; $L8: .loc 1 60 2 mov.b64 %r56,%r58; .loc 1 59 11 add.u32 %r106,%r29,54; .loc 1 60 2 shl.b32 %r107,%r106,20; and.b32 %r108,%r46,-2146435073; or.b32 %r109,%r107,%r108; cvt.u64.u32 %r110,%r109; shl.b64 %r111,%r110,32; and.b64 %r112,%r56,4294967295; or.b64 %r113,%r112,%r111; mov.b64 %r51,%r113; .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; } /777 1591654536 399 399 100644 4214 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 DECL: copysign .extern .func (.param .f64 %value_out) copysign (.param .f64 %in_ar0, .param .f64 %in_ar1); // 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 .u32 %r40; .reg .u32 %r42; .reg .u32 %r43; .reg .f64 %r45; .reg .u64 %r49; .reg .u64 %r50; .reg .f64 %r51; .reg .f64 %r52; .reg .u32 %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .u32 %r56; .reg .pred %r57; .reg .u32 %r58; .reg .u32 %r60; .reg .u32 %r61; .reg .pred %r62; .reg .pred %r63; .reg .pred %r64; .reg .u64 %r65; .reg .u64 %r66; .reg .u32 %r67; .reg .u32 %r68; .reg .pred %r69; .reg .f64 %r70; .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 .pred %r82; .reg .f64 %r83; .reg .f64 %r85; .reg .f64 %r86; .reg .f64 %r88; .reg .u32 %r89; .reg .u32 %r90; .reg .u32 %r91; .reg .u32 %r92; .reg .u64 %r93; .reg .u64 %r94; .reg .u64 %r95; .reg .u64 %r96; mov.f64 %r52,%ar0; mov.u32 %r53,%ar1; .loc 1 86 2 mov.b64 %r54,%r52; shr.u64 %r55,%r54,32; cvt.u32.u64 %r40,%r55; .loc 1 87 28 shr.s32 %r56,%r40,20; .loc 1 87 11 and.b32 %r42,%r56,2047; .loc 1 88 12 setp.ne.u32 %r57,%r42,0; @ %r57 bra $L2; .loc 1 89 24 and.b32 %r58,%r40,2147483647; .loc 1 89 20 cvt.u32.u64 %r61,%r54; or.b32 %r60,%r58,%r61; .loc 1 89 16 setp.eq.u32 %r62,%r60,0; @ %r62 bra $L10; .loc 1 90 8 mul.f64 %r52,%r52,0d4350000000000000; .loc 1 93 16 setp.ge.s32 %r63,%r53,-50000; @ %r63 bra $L4; .loc 1 93 39 mul.f64 %r51,%r52,0d01a56e1fc2f8f359; bra $L1; $L2: .loc 1 95 12 setp.ne.u32 %r64,%r42,2047; @ %r64 bra $L5; .loc 1 95 31 add.f64 %r51,%r52,%r52; bra $L1; $L4: .loc 1 91 6 mov.b64 %r65,%r52; shr.u64 %r66,%r65,32; cvt.u32.u64 %r40,%r66; .loc 1 92 26 shr.s32 %r67,%r40,20; and.b32 %r68,%r67,2047; .loc 1 92 8 add.u32 %r42,%r68,-54; $L5: .loc 1 96 11 add.u32 %r43,%r53,%r42; .loc 1 97 12 setp.le.s32 %r69,%r43,2046; @ %r69 bra $L6; .loc 1 97 37 mov.f64 %r70,0d7e37e43c8800759c; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r70; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r52; call (%value_in),copysign,(%out_arg1,%out_arg2); ld.param.f64 %r72,[%value_in]; } .loc 1 97 36 mul.f64 %r51,%r72,0d7e37e43c8800759c; bra $L1; $L6: .loc 1 98 12 setp.le.s32 %r73,%r43,0; @ %r73 bra $L7; .loc 1 99 7 mov.b64 %r49,%r52; and.b32 %r74,%r40,-2146435073; shl.b32 %r75,%r43,20; or.b32 %r76,%r74,%r75; cvt.u64.u32 %r77,%r76; shl.b64 %r78,%r77,32; and.b64 %r79,%r49,4294967295; or.b64 %r80,%r79,%r78; mov.b64 %r51,%r80; .loc 1 99 56 bra $L1; $L7: .loc 1 100 12 setp.ge.s32 %r81,%r43,-53; @ %r81 bra $L8; .loc 1 101 16 setp.le.s32 %r82,%r53,50000; @ %r82 bra $L9; .loc 1 102 15 mov.f64 %r83,0d7e37e43c8800759c; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r83; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r52; call (%value_in),copysign,(%out_arg1,%out_arg2); ld.param.f64 %r85,[%value_in]; } .loc 1 102 14 mul.f64 %r51,%r85,0d7e37e43c8800759c; bra $L1; $L9: .loc 1 103 23 mov.f64 %r86,0d01a56e1fc2f8f359; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r86; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r52; call (%value_in),copysign,(%out_arg1,%out_arg2); ld.param.f64 %r88,[%value_in]; } .loc 1 103 22 mul.f64 %r51,%r88,0d01a56e1fc2f8f359; bra $L1; $L8: .loc 1 106 2 mov.b64 %r50,%r52; .loc 1 105 11 add.u32 %r89,%r43,54; .loc 1 106 2 shl.b32 %r90,%r89,20; and.b32 %r91,%r40,-2146435073; or.b32 %r92,%r90,%r91; cvt.u64.u32 %r93,%r92; shl.b64 %r94,%r93,32; and.b64 %r95,%r50,4294967295; or.b64 %r96,%r95,%r94; mov.b64 %r45,%r96; .loc 1 107 17 mul.f64 %r51,%r45,0d3c90000000000000; bra $L1; $L10: .loc 1 89 49 mov.f64 %r51,%r52; $L1: .loc 1 108 1 mov.f64 %value,%r51; st.param.f64 [%value_out],%value; ret; } /795 1591654536 399 399 100644 1142 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r25; .reg .u32 %r27; mov.f32 %r25,%ar0; .loc 1 48 13 mov.b32 %r27,%r25; and.b32 %value,%r27,-2147483648; .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 %r25; .reg .u64 %r27; .reg .u64 %r28; .reg .u32 %r29; mov.f64 %r25,%ar0; .loc 1 58 15 mov.b64 %r27,%r25; shr.u64 %r28,%r27,32; cvt.u32.u64 %r29,%r28; and.b32 %value,%r29,-2147483648; .loc 1 59 1 st.param.u32 [%value_out],%value; ret; } /814 1591654536 399 399 100644 1310 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654536 399 399 100644 4431 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r33; .reg .u32 %r34; .reg .f64 %r37; .reg .f64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .pred %r41; .reg .f64 %r43; .reg .u32 %r44; .reg .f64 %r45; .reg .pred %r46; .reg .u32 %r49; .reg .pred %r50; .reg .pred %r51; .reg .pred %r52; .reg .f64 %r53; .reg .u32 %r55; .reg .f64 %r56; .reg .f64 %r57; .reg .f64 %r58; .reg .f64 %r60; .reg .f64 %r61; .reg .f64 %r62; .reg .u32 %r64; .reg .f64 %r65; .reg .f64 %r66; .reg .f64 %r67; .reg .f64 %r69; .reg .f64 %r70; mov.f64 %r38,%ar0; .loc 1 110 2 mov.b64 %r39,%r38; shr.u64 %r40,%r39,32; cvt.u32.u64 %r33,%r40; .loc 1 113 5 and.b32 %r34,%r33,2147483647; .loc 1 114 4 setp.gt.s32 %r41,%r34,1072243195; @ %r41 bra $L2; .loc 1 114 30 mov.u32 %r44,0; mov.f64 %r43,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r43; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r44; call (%value_in),__kernel_sin,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r45,[%value_in]; } mov.f64 %r37,%r45; bra $L1; $L2: .loc 1 117 10 setp.le.s32 %r46,%r34,2146435071; @ %r46 bra $L4; .loc 1 117 35 sub.f64 %r37,%r38,%r38; bra $L1; $L4: .loc 1 121 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 122 14 and.b32 %r22,%r49,3; 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 123 19 ld.f64 %r56,[%frame+8]; mov.u32 %r55,1; 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],%r56; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r55; call (%value_in),__kernel_sin,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r57,[%value_in]; } mov.f64 %r37,%r57; bra $L1; $L5: .loc 1 124 19 ld.f64 %r60,[%frame+8]; ld.f64 %r58,[%frame]; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r58; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r60; call (%value_in),__kernel_cos,(%out_arg1,%out_arg2); ld.param.f64 %r61,[%value_in]; } mov.f64 %r37,%r61; bra $L1; $L6: .loc 1 125 19 ld.f64 %r65,[%frame+8]; mov.u32 %r64,1; 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],%r65; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r64; call (%value_in),__kernel_sin,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r66,[%value_in]; } .loc 1 125 18 neg.f64 %r37,%r66; bra $L1; $L7: .loc 1 127 12 ld.f64 %r69,[%frame+8]; ld.f64 %r67,[%frame]; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r67; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r69; call (%value_in),__kernel_cos,(%out_arg1,%out_arg2); ld.param.f64 %r70,[%value_in]; } .loc 1 127 11 neg.f64 %r37,%r70; $L1: .loc 1 130 1 mov.f64 %value,%r37; st.shared.u64 [%sspslot],%sspprev; st.param.f64 [%value_out],%value; ret; } lib_a-s_tan.o/ 1591654536 399 399 100644 2992 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r27; .reg .u32 %r28; .reg .f64 %r31; .reg .f64 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .pred %r35; .reg .f64 %r37; .reg .u32 %r38; .reg .f64 %r39; .reg .pred %r40; .reg .u32 %r43; .reg .f64 %r44; .reg .u32 %r47; .reg .u32 %r48; .reg .u32 %r49; .reg .u32 %r50; .reg .f64 %r51; .reg .f64 %r52; mov.f64 %r32,%ar0; .loc 1 97 2 mov.b64 %r33,%r32; shr.u64 %r34,%r33,32; cvt.u32.u64 %r27,%r34; .loc 1 100 5 and.b32 %r28,%r27,2147483647; .loc 1 101 4 setp.gt.s32 %r35,%r28,1072243195; @ %r35 bra $L2; .loc 1 101 30 mov.u32 %r38,1; mov.f64 %r37,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r32; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r37; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r38; call (%value_in),__kernel_tan,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r39,[%value_in]; } mov.f64 %r31,%r39; bra $L1; $L2: .loc 1 104 10 setp.le.s32 %r40,%r28,2146435071; @ %r40 bra $L4; .loc 1 104 35 sub.f64 %r31,%r32,%r32; bra $L1; $L4: .loc 1 108 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 %r43,[%value_in]; } .loc 1 109 44 add.u32 %r47,%r43,%r43; and.b32 %r48,%r47,2; .loc 1 109 13 mov.u32 %r50,1; sub.u32 %r49,%r50,%r48; ld.f64 %r51,[%frame+8]; ld.f64 %r44,[%frame]; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r44; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r51; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r49; call (%value_in),__kernel_tan,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r52,[%value_in]; } mov.f64 %r31,%r52; $L1: .loc 1 112 1 mov.f64 %value,%r31; st.shared.u64 [%sspslot],%sspprev; st.param.f64 [%value_out],%value; ret; } lib_a-s_tanh.o/ 1591654536 399 399 100644 3038 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r41; .reg .f64 %r42; .reg .pred %r43; .reg .pred %r45; .reg .pred %r46; .reg .f64 %r47; .reg .pred %r48; .reg .f64 %r50; .reg .f64 %r52; .reg .f64 %r53; .reg .f64 %r54; .reg .f64 %r55; .reg .f64 %r56; .reg .f64 %r57; .reg .f64 %r59; .reg .f64 %r61; .reg .f64 %r62; .reg .f64 %r63; .reg .f64 %r64; .reg .pred %r65; mov.f64 %r38,%ar0; .loc 1 101 2 mov.b64 %r39,%r38; shr.u64 %r40,%r39,32; cvt.u32.u64 %r31,%r40; .loc 1 102 5 and.b32 %r32,%r31,2147483647; .loc 1 105 4 setp.le.s32 %r41,%r32,2146435071; @ %r41 bra $L2; mov.f64 %r42,0d3ff0000000000000; div.rn.f64 %r36,%r42,%r38; .loc 1 106 9 setp.lt.s32 %r43,%r31,0; @ %r43 bra $L3; .loc 1 106 29 add.f64 %r37,%r36,0d3ff0000000000000; bra $L1; $L3: .loc 1 107 29 sub.f64 %r37,%r36,%r42; bra $L1; $L2: .loc 1 111 5 setp.gt.s32 %r45,%r32,1077280767; @ %r45 bra $L8; .loc 1 112 9 setp.gt.s32 %r46,%r32,1015021567; @ %r46 bra $L6; .loc 1 113 16 add.f64 %r47,%r38,0d3ff0000000000000; .loc 1 113 11 mul.f64 %r37,%r47,%r38; bra $L1; $L6: .loc 1 114 9 setp.le.s32 %r48,%r32,1072693247; @ %r48 bra $L7; .loc 1 115 17 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r50,[%value_in]; } .loc 1 115 7 add.f64 %r52,%r50,%r50; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r52; call (%value_in),expm1,(%out_arg1); ld.param.f64 %r53,[%value_in]; } .loc 1 116 19 add.f64 %r54,%r53,0d4000000000000000; .loc 1 116 16 mov.f64 %r56,0d4000000000000000; div.rn.f64 %r55,%r56,%r54; .loc 1 116 5 mov.f64 %r57,0d3ff0000000000000; sub.f64 %r37,%r57,%r55; bra $L5; $L7: .loc 1 118 25 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r59,[%value_in]; } .loc 1 118 14 mul.f64 %r61,%r59,0dc000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r61; call (%value_in),expm1,(%out_arg1); ld.param.f64 %r62,[%value_in]; } .loc 1 119 13 neg.f64 %r63,%r62; .loc 1 119 18 add.f64 %r64,%r62,0d4000000000000000; .loc 1 119 11 div.rn.f64 %r37,%r63,%r64; bra $L5; $L8: .loc 1 123 8 mov.f64 %r37,0d3ff0000000000000; $L5: .loc 1 125 19 setp.ge.s32 %r65,%r31,0; @ %r65 bra $L1; neg.f64 %r37,%r37; $L1: .loc 1 126 1 mov.f64 %value,%r37; st.param.f64 [%value_out],%value; ret; } lib_a-s_trunc.o/1591654536 399 399 100644 2042 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r35; .reg .u32 %r36; .reg .f64 %r41; .reg .f64 %r42; .reg .u64 %r43; .reg .u64 %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 .u32 %r57; .reg .u64 %r58; .reg .u64 %r62; .reg .pred %r63; .reg .pred %r64; .reg .u64 %r65; .reg .u32 %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .u32 %r72; .reg .u32 %r74; .reg .u32 %r75; .reg .u64 %r76; .reg .u64 %r77; .reg .u64 %r78; mov.f64 %r42,%ar0; mov.b64 %r43,%r42; shr.u64 %r44,%r43,32; cvt.u32.u64 %r36,%r44; .loc 1 64 44 shr.s32 %r45,%r36,20; and.b32 %r23,%r45,2047; .loc 1 64 22 add.u32 %r35,%r23,-1023; .loc 1 66 6 setp.gt.s32 %r46,%r35,19; @ %r46 bra $L2; .loc 1 69 10 setp.ge.s32 %r47,%r35,0; @ %r47 bra $L3; .loc 1 61 11 and.b32 %r48,%r36,-2147483648; .loc 1 72 11 cvt.u64.u32 %r49,%r48; shl.b64 %r53,%r49,32; mov.b64 %r41,%r53; bra $L1; $L3: .loc 1 77 11 mov.u32 %r55,1048575; shr.s32 %r54,%r55,%r35; not.b32 %r56,%r54; and.b32 %r57,%r56,%r36; cvt.u64.u32 %r58,%r57; shl.b64 %r62,%r58,32; mov.b64 %r41,%r62; bra $L1; $L2: .loc 1 80 11 setp.le.s32 %r63,%r35,51; @ %r63 bra $L5; .loc 1 82 10 setp.ne.u32 %r64,%r35,1024; @ %r64 bra $L6; .loc 1 85 20 add.f64 %r41,%r42,%r42; bra $L1; $L5: .loc 1 93 7 cvt.u64.u32 %r65,%r36; add.u32 %r69,%r23,-1043; mov.u32 %r71,-1; shr.u32 %r70,%r71,%r69; not.b32 %r72,%r70; cvt.u32.u64 %r75,%r43; and.b32 %r74,%r72,%r75; cvt.u64.u32 %r76,%r74; shl.b64 %r77,%r65,32; or.b64 %r78,%r77,%r76; mov.b64 %r41,%r78; bra $L1; $L6: mov.f64 %r41,%r42; $L1: .loc 1 96 1 mov.f64 %value,%r41; st.param.f64 [%value_out],%value; ret; } /832 1591654536 399 399 100644 1027 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/1591654536 399 399 100644 1019 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } /850 1591654536 399 399 100644 3842 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r36; .reg .u32 %r37; .reg .f32 %r40; .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 %r59; .reg .f32 %r60; .reg .f32 %r61; .reg .f32 %r62; .reg .f32 %r63; .reg .f32 %r65; .reg .f32 %r67; .reg .f32 %r68; .reg .f32 %r70; .reg .f32 %r71; .reg .f32 %r72; .reg .f32 %r73; .reg .pred %r74; 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 %r56,%r42,%r42,0f3f800000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r56; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r57,[%value_in]; } .loc 1 46 67 add.f32 %r59,%r57,%r54; .loc 1 46 41 mov.f32 %r61,0f3f800000; div.rn.f32 %r60,%r61,%r59; .loc 1 46 10 fma.rn.f32 %r62,%r54,0f40000000,%r60; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r62; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r63,[%value_in]; } mov.f32 %r41,%r63; bra $L7; $L5: .loc 1 48 8 mul.f32 %r40,%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 %r65,[%value_in]; } .loc 1 49 32 add.f32 %r67,%r40,0f3f800000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r67; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r68,[%value_in]; } .loc 1 49 31 add.f32 %r70,%r68,0f3f800000; .loc 1 49 26 div.rn.f32 %r71,%r40,%r70; .loc 1 49 9 add.f32 %r72,%r71,%r65; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r72; call (%value_in),log1pf,(%out_arg1); ld.param.f32 %r73,[%value_in]; } mov.f32 %r41,%r73; $L7: .loc 1 51 4 setp.gt.s32 %r74,%r36,0; @ %r74 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/1591654536 399 399 100644 4540 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .f32 %r47; .reg .f32 %r48; .reg .f32 %r56; .reg .f32 %r57; .reg .f32 %r58; .reg .pred %r59; .reg .pred %r60; .reg .pred %r61; .reg .pred %r62; .reg .pred %r63; .reg .f32 %r64; .reg .pred %r65; .reg .f32 %r67; .reg .pred %r68; .reg .pred %r69; .reg .f32 %r70; .reg .pred %r71; .reg .f32 %r72; .reg .f32 %r73; .reg .f32 %r74; .reg .f32 %r75; .reg .f32 %r76; .reg .f32 %r77; .reg .f32 %r78; .reg .f32 %r79; .reg .f32 %r80; .reg .f32 %r81; .reg .f32 %r82; .reg .f32 %r83; .reg .f32 %r84; .reg .pred %r85; .reg .u64 %r86; .reg .u64 %r87; .reg .u64 %r88; .reg .u64 %r89; .reg .u64 %r90; .reg .u64 %r93; .reg .f32 %r94; .reg .f32 %r95; .reg .f32 %r96; .reg .f32 %r97; .reg .pred %r98; mov.f32 %r58,%ar0; .loc 1 77 2 mov.b32 %r43,%r58; .loc 1 78 5 and.b32 %r44,%r43,2147483647; .loc 1 79 4 setp.le.s32 %r59,%r44,1350565887; @ %r59 bra $L2; .loc 1 80 8 setp.le.s32 %r60,%r44,2139095040; @ %r60 bra $L3; .loc 1 81 11 add.f32 %r57,%r58,%r58; bra $L1; $L3: .loc 1 82 8 setp.gt.s32 %r61,%r43,0; .loc 1 83 32 selp.f32 %r57,0f3fc90fdb,0fbfc90fdb,%r61; bra $L1; $L2: .loc 1 84 7 setp.gt.s32 %r62,%r44,1054867455; @ %r62 bra $L5; .loc 1 85 9 setp.gt.s32 %r63,%r44,822083583; @ %r63 bra $L12; .loc 1 86 10 add.f32 %r64,%r58,0f7149f2ca; .loc 1 86 5 setp.gt.f32 %r65,%r64,0f3f800000; @ %r65 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],%r58; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r67,[%value_in]; } .loc 1 91 5 setp.gt.s32 %r68,%r44,1066926079; @ %r68 bra $L7; .loc 1 92 9 setp.gt.s32 %r69,%r44,1060110335; @ %r69 bra $L8; .loc 1 93 28 fma.rn.f32 %r23,%r67,0f40000000,0fbf800000; .loc 1 93 45 add.f32 %r24,%r67,0f40000000; .loc 1 93 13 div.rn.f32 %r58,%r23,%r24; .loc 1 93 6 mov.u32 %r42,0; bra $L6; $L8: .loc 1 95 18 mov.f32 %r70,0f3f800000; sub.f32 %r25,%r67,%r70; .loc 1 95 26 add.f32 %r26,%r67,0f3f800000; .loc 1 95 14 div.rn.f32 %r58,%r25,%r26; .loc 1 95 6 mov.u32 %r42,1; bra $L6; $L7: .loc 1 98 9 setp.gt.s32 %r71,%r44,1075576831; @ %r71 bra $L9; .loc 1 99 18 mov.f32 %r72,0f3fc00000; sub.f32 %r27,%r67,%r72; .loc 1 99 35 fma.rn.f32 %r28,%r67,0f3fc00000,0f3f800000; .loc 1 99 14 div.rn.f32 %r58,%r27,%r28; .loc 1 99 6 mov.u32 %r42,2; bra $L6; $L9: .loc 1 101 14 mov.f32 %r73,0fbf800000; div.rn.f32 %r58,%r73,%r67; .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,%r58,%r58; .loc 1 106 4 mul.f32 %r48,%r47,%r47; .loc 1 108 51 fma.rn.f32 %r74,%r48,0f3c8569d7,0f3d4bda59; .loc 1 108 42 fma.rn.f32 %r75,%r74,%r48,0f3d886b35; .loc 1 108 33 fma.rn.f32 %r76,%r75,%r48,0f3dba2e6e; .loc 1 108 24 fma.rn.f32 %r77,%r76,%r48,0f3e124925; .loc 1 108 15 fma.rn.f32 %r78,%r77,%r48,0f3eaaaaab; .loc 1 109 42 fma.rn.f32 %r79,%r48,0fbd15a221,0fbd6ef16b; .loc 1 109 33 fma.rn.f32 %r80,%r79,%r48,0fbd9d8795; .loc 1 109 24 fma.rn.f32 %r81,%r80,%r48,0fbde38e38; .loc 1 109 15 fma.rn.f32 %r82,%r81,%r48,0fbe4ccccd; .loc 1 109 5 mul.f32 %r83,%r82,%r48; fma.rn.f32 %r84,%r78,%r47,%r83; mul.f32 %r56,%r84,%r58; .loc 1 110 5 setp.ne.u32 %r85,%r42,-1; @ %r85 bra $L10; .loc 1 110 21 sub.f32 %r57,%r58,%r56; bra $L1; $L10: .loc 1 112 16 cvta.const.u64 %r86,atanhi; cvt.s64.s32 %r87,%r42; shl.b64 %r88,%r87,2; add.u64 %r89,%r86,%r88; .loc 1 112 43 cvta.const.u64 %r90,atanlo; add.u64 %r93,%r90,%r88; .loc 1 112 35 ld.f32 %r95,[%r93]; sub.f32 %r94,%r56,%r95; .loc 1 112 49 sub.f32 %r96,%r94,%r58; .loc 1 112 8 ld.f32 %r97,[%r89]; sub.f32 %r57,%r97,%r96; .loc 1 113 23 setp.ge.s32 %r98,%r43,0; @ %r98 bra $L1; neg.f32 %r57,%r57; bra $L1; $L13: .loc 1 86 25 mov.f32 %r57,%r58; $L1: .loc 1 115 1 mov.f32 %value,%r57; st.param.f32 [%value_out],%value; ret; } lib_a-sf_cbrt.o/1591654536 399 399 100644 2133 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/1591654536 399 399 100644 2215 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r22; .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 %r22,%r38; .loc 1 34 5 and.b32 %r33,%r22,2147483647; .loc 1 35 10 shr.u32 %r39,%r33,23; .loc 1 35 15 add.u32 %r34,%r39,-127; .loc 1 36 4 setp.gt.s32 %r40,%r34,22; @ %r40 bra $L2; .loc 1 37 8 setp.ge.s32 %r41,%r34,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,%r22,0; @ %r44 bra $L10; .loc 1 40 14 setp.eq.u32 %r45,%r33,0; selp.f32 %r37,%r38,0f3f800000,%r45; bra $L1; $L3: .loc 1 43 19 mov.u32 %r46,8388607; shr.s32 %r35,%r46,%r34; .loc 1 44 9 and.b32 %r47,%r22,%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,%r22,0; @ %r51 bra $L8; .loc 1 46 34 mov.u32 %r53,8388608; shr.s32 %r52,%r53,%r34; .loc 1 46 19 add.u32 %r22,%r52,%r22; $L8: .loc 1 47 14 not.b32 %r54,%r35; .loc 1 47 10 and.b32 %r55,%r54,%r22; mov.b32 %r37,%r55; bra $L1; $L2: .loc 1 51 8 setp.le.u32 %r56,%r33,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; } /868 1591654536 399 399 100644 888 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654536 399 399 100644 4220 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 34 2 mov.b32 %r34,%r38; .loc 1 37 5 and.b32 %r35,%r34,2147483647; .loc 1 38 4 setp.gt.s32 %r39,%r35,1061752792; @ %r39 bra $L2; .loc 1 38 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 41 10 setp.le.s32 %r43,%r35,2139095039; @ %r43 bra $L4; .loc 1 41 45 sub.f32 %r37,%r38,%r38; bra $L1; $L4: .loc 1 45 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 46 14 and.b32 %r22,%r46,3; 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 47 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 48 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 48 18 neg.f32 %r37,%r58; bra $L1; $L6: .loc 1 49 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 49 18 neg.f32 %r37,%r62; bra $L1; $L7: .loc 1 51 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 54 1 mov.f32 %value,%r37; st.shared.u64 [%sspslot],%sspprev; st.param.f32 [%value_out],%value; ret; } lib_a-sf_erf.o/ 1591654536 399 399 100644 16726 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 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 %r86; .reg .f32 %r87; .reg .u32 %r88; .reg .u32 %r89; .reg .f32 %r91; .reg .f32 %r95; .reg .f32 %r96; .reg .f32 %r97; .reg .f32 %r101; .reg .f32 %r102; .reg .f32 %r103; .reg .f32 %r124; .reg .f32 %r125; .reg .pred %r126; .reg .u32 %r127; .reg .u32 %r128; .reg .u32 %r129; .reg .u32 %r130; .reg .f32 %r131; .reg .f32 %r132; .reg .f32 %r133; .reg .pred %r134; .reg .pred %r135; .reg .u32 %r136; .reg .pred %r137; .reg .f32 %r138; .reg .f32 %r139; .reg .f32 %r140; .reg .f32 %r141; .reg .f32 %r142; .reg .f32 %r143; .reg .f32 %r144; .reg .f32 %r145; .reg .f32 %r146; .reg .f32 %r147; .reg .f32 %r148; .reg .f32 %r149; .reg .pred %r150; .reg .f32 %r152; .reg .f32 %r153; .reg .f32 %r154; .reg .f32 %r155; .reg .f32 %r156; .reg .f32 %r157; .reg .f32 %r158; .reg .f32 %r159; .reg .f32 %r160; .reg .f32 %r161; .reg .f32 %r162; .reg .f32 %r163; .reg .pred %r164; .reg .f32 %r165; .reg .f32 %r166; .reg .f32 %r167; .reg .pred %r168; .reg .pred %r169; .reg .f32 %r171; .reg .f32 %r172; .reg .f32 %r173; .reg .pred %r174; .reg .f32 %r175; .reg .f32 %r176; .reg .f32 %r177; .reg .f32 %r178; .reg .f32 %r179; .reg .f32 %r180; .reg .f32 %r181; .reg .f32 %r182; .reg .f32 %r183; .reg .f32 %r184; .reg .f32 %r185; .reg .f32 %r186; .reg .f32 %r187; .reg .f32 %r188; .reg .f32 %r189; .reg .f32 %r190; .reg .f32 %r191; .reg .f32 %r192; .reg .f32 %r193; .reg .f32 %r194; .reg .f32 %r195; .reg .f32 %r196; .reg .f32 %r197; .reg .f32 %r198; .reg .u32 %r199; .reg .u32 %r200; .reg .f32 %r202; .reg .f32 %r203; .reg .f32 %r204; .reg .f32 %r206; .reg .f32 %r207; .reg .f32 %r208; .reg .f32 %r209; .reg .f32 %r210; .reg .pred %r211; .reg .f32 %r212; .reg .f32 %r213; .reg .f32 %r214; .reg .f32 %r215; mov.f32 %r125,%ar0; .loc 1 110 2 mov.b32 %r88,%r125; .loc 1 111 5 and.b32 %r89,%r88,2147483647; .loc 1 112 4 setp.le.s32 %r126,%r89,2139095039; @ %r126 bra $L2; .loc 1 113 25 shr.u32 %r127,%r88,31; .loc 1 113 30 add.u32 %r128,%r127,%r127; .loc 1 114 22 mov.u32 %r130,1; sub.u32 %r129,%r130,%r128; .loc 1 114 13 cvt.rn.f32.s32 %r131,%r129; .loc 1 114 29 mov.f32 %r133,0f3f800000; div.rn.f32 %r132,%r133,%r125; .loc 1 114 25 add.f32 %r124,%r131,%r132; bra $L1; $L2: .loc 1 117 4 setp.gt.s32 %r134,%r89,1062731775; @ %r134 bra $L4; .loc 1 118 8 setp.gt.s32 %r135,%r89,830472191; @ %r135 bra $L5; .loc 1 119 13 and.b32 %r136,%r88,2080374784; setp.ne.u32 %r137,%r136,0; @ %r137 bra $L6; .loc 1 121 45 mul.f32 %r138,%r125,0f3f8375d4; .loc 1 121 40 fma.rn.f32 %r139,%r125,0f41000000,%r138; .loc 1 121 26 mul.f32 %r124,%r139,0f3e000000; bra $L1; $L6: .loc 1 122 12 fma.rn.f32 %r124,%r125,0f3e0375d4,%r125; bra $L1; $L5: .loc 1 124 8 mul.f32 %r91,%r125,%r125; .loc 1 125 34 fma.rn.f32 %r140,%r91,0fb7c756b1,0fbbbd1489; .loc 1 125 27 fma.rn.f32 %r141,%r140,%r91,0fbce9528f; .loc 1 125 20 fma.rn.f32 %r142,%r141,%r91,0fbea66beb; .loc 1 125 8 fma.rn.f32 %r143,%r142,%r91,0f3e0375d4; .loc 1 126 41 fma.rn.f32 %r144,%r91,0fb684e21a,0f390aee49; .loc 1 126 34 fma.rn.f32 %r145,%r144,%r91,0f3ba68116; .loc 1 126 27 fma.rn.f32 %r146,%r145,%r91,0f3d852a63; .loc 1 126 20 fma.rn.f32 %r147,%r146,%r91,0f3ecbbbce; .loc 1 126 8 fma.rn.f32 %r148,%r147,%r91,0f3f800000; .loc 1 127 8 div.rn.f32 %r149,%r143,%r148; .loc 1 128 15 fma.rn.f32 %r124,%r125,%r149,%r125; bra $L1; $L4: .loc 1 130 4 setp.gt.s32 %r150,%r89,1067450367; @ %r150 bra $L7; .loc 1 131 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r125; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r152,[%value_in]; } .loc 1 131 8 mov.f32 %r153,0f3f800000; sub.f32 %r95,%r152,%r153; .loc 1 132 48 fma.rn.f32 %r154,%r95,0fbb0df9c0,0f3d1151b3; .loc 1 132 41 fma.rn.f32 %r155,%r154,%r95,0fbde31cc2; .loc 1 132 34 fma.rn.f32 %r156,%r155,%r95,0f3ea2fe54; .loc 1 132 27 fma.rn.f32 %r157,%r156,%r95,0fbebe9208; .loc 1 132 20 fma.rn.f32 %r158,%r157,%r95,0f3ed46805; .loc 1 132 8 fma.rn.f32 %r96,%r158,%r95,0fbb1acdc6; .loc 1 133 48 fma.rn.f32 %r159,%r95,0f3c445aa3,0f3c5f6e13; .loc 1 133 41 fma.rn.f32 %r160,%r159,%r95,0f3e013307; .loc 1 133 34 fma.rn.f32 %r161,%r160,%r95,0f3d931ae7; .loc 1 133 27 fma.rn.f32 %r162,%r161,%r95,0f3f0a5785; .loc 1 133 20 fma.rn.f32 %r163,%r162,%r95,0f3dd9f331; .loc 1 133 8 fma.rn.f32 %r97,%r163,%r95,0f3f800000; .loc 1 134 8 setp.lt.s32 %r164,%r88,0; @ %r164 bra $L8; .loc 1 134 30 div.rn.f32 %r165,%r96,%r97; .loc 1 134 27 add.f32 %r124,%r165,0f3f58560b; bra $L1; $L8: .loc 1 134 54 div.rn.f32 %r166,%r96,%r97; .loc 1 134 51 mov.f32 %r167,0fbf58560b; sub.f32 %r124,%r167,%r166; bra $L1; $L7: .loc 1 136 5 setp.le.s32 %r168,%r89,1086324735; @ %r168 bra $L9; .loc 1 137 8 setp.ge.s32 %r169,%r88,0; .loc 1 137 49 selp.f32 %r124,0f3f800000,0fbf800000,%r169; bra $L1; $L9: .loc 1 139 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r125; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r171,[%value_in]; } .loc 1 140 13 mul.f32 %r172,%r171,%r171; .loc 1 140 5 mov.f32 %r173,0f3f800000; div.rn.f32 %r101,%r173,%r172; .loc 1 141 4 setp.gt.s32 %r174,%r89,1077336941; @ %r174 bra $L10; .loc 1 143 15 fma.rn.f32 %r175,%r101,0fc11d077e,0fc2a2932b; .loc 1 143 8 fma.rn.f32 %r176,%r175,%r101,0fc3389ae7; .loc 1 142 39 fma.rn.f32 %r177,%r176,%r101,0fc322658c; .loc 1 142 32 fma.rn.f32 %r178,%r177,%r101,0fc2798057; .loc 1 142 25 fma.rn.f32 %r179,%r178,%r101,0fc128f022; .loc 1 142 18 fma.rn.f32 %r180,%r179,%r101,0fbf31a0b7; .loc 1 142 7 fma.rn.f32 %r86,%r180,%r101,0fbc21a093; .loc 1 145 22 fma.rn.f32 %r181,%r101,0fbd777f97,0f40d23f7c; .loc 1 145 15 fma.rn.f32 %r182,%r181,%r101,0f42d9451f; .loc 1 145 8 fma.rn.f32 %r183,%r182,%r101,0f43d6810b; .loc 1 144 39 fma.rn.f32 %r184,%r183,%r101,0f442158c9; .loc 1 144 32 fma.rn.f32 %r185,%r184,%r101,0f43d9486f; .loc 1 144 25 fma.rn.f32 %r186,%r185,%r101,0f4309a863; .loc 1 144 18 fma.rn.f32 %r187,%r186,%r101,0f419d35ce; .loc 1 144 7 fma.rn.f32 %r87,%r187,%r101,0f3f800000; bra $L11; $L10: .loc 1 148 8 fma.rn.f32 %r188,%r101,0fc3f1c275,0fc480230b; .loc 1 147 39 fma.rn.f32 %r189,%r188,%r101,0fc41f6441; .loc 1 147 32 fma.rn.f32 %r190,%r189,%r101,0fc320a2ea; .loc 1 147 25 fma.rn.f32 %r191,%r190,%r101,0fc18e104b; .loc 1 147 18 fma.rn.f32 %r192,%r191,%r101,0fbf4c9dd4; .loc 1 147 7 fma.rn.f32 %r86,%r192,%r101,0fbc21a092; .loc 1 150 15 fma.rn.f32 %r193,%r101,0fc1b38712,0f43ed43a7; .loc 1 150 8 fma.rn.f32 %r194,%r193,%r101,0f451f90ce; .loc 1 149 39 fma.rn.f32 %r195,%r194,%r101,0f4547fdbb; .loc 1 149 32 fma.rn.f32 %r196,%r195,%r101,0f44c01759; .loc 1 149 25 fma.rn.f32 %r197,%r196,%r101,0f43a2e571; .loc 1 149 18 fma.rn.f32 %r198,%r197,%r101,0f41f2b459; .loc 1 149 7 fma.rn.f32 %r87,%r198,%r101,0f3f800000; $L11: .loc 1 153 2 mov.b32 %r200,%r171; and.b32 %r199,%r200,-4096; mov.b32 %r102,%r199; .loc 1 154 23 neg.f32 %r202,%r102; .loc 1 154 8 fma.rn.f32 %r203,%r202,%r102,0fbf100000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r203; call (%value_in),__ieee754_expf,(%out_arg1); ld.param.f32 %r204,[%value_in]; } .loc 1 154 60 sub.f32 %r206,%r102,%r171; .loc 1 154 71 div.rn.f32 %r207,%r86,%r87; .loc 1 154 66 add.f32 %r208,%r171,%r102; .loc 1 154 43 fma.rn.f32 %r209,%r206,%r208,%r207; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r209; call (%value_in),__ieee754_expf,(%out_arg1); ld.param.f32 %r210,[%value_in]; } .loc 1 154 5 mul.f32 %r103,%r204,%r210; .loc 1 155 4 setp.lt.s32 %r211,%r88,0; @ %r211 bra $L12; .loc 1 155 24 div.rn.f32 %r212,%r103,%r171; .loc 1 155 22 mov.f32 %r213,0f3f800000; sub.f32 %r124,%r213,%r212; bra $L1; $L12: .loc 1 155 42 div.rn.f32 %r214,%r103,%r171; .loc 1 155 44 mov.f32 %r215,0f3f800000; sub.f32 %r124,%r214,%r215; $L1: .loc 1 156 1 mov.f32 %value,%r124; 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 %r87; .reg .f32 %r88; .reg .u32 %r89; .reg .u32 %r90; .reg .f32 %r91; .reg .f32 %r97; .reg .f32 %r98; .reg .f32 %r99; .reg .f32 %r102; .reg .f32 %r103; .reg .f32 %r104; .reg .f32 %r116; .reg .f32 %r127; .reg .f32 %r128; .reg .pred %r129; .reg .u32 %r130; .reg .u32 %r131; .reg .f32 %r132; .reg .f32 %r133; .reg .f32 %r134; .reg .pred %r135; .reg .pred %r136; .reg .f32 %r137; .reg .f32 %r138; .reg .f32 %r139; .reg .f32 %r140; .reg .f32 %r141; .reg .f32 %r142; .reg .f32 %r143; .reg .f32 %r144; .reg .f32 %r145; .reg .f32 %r146; .reg .f32 %r147; .reg .pred %r148; .reg .f32 %r149; .reg .f32 %r150; .reg .f32 %r151; .reg .f32 %r152; .reg .f32 %r153; .reg .pred %r155; .reg .f32 %r157; .reg .f32 %r158; .reg .f32 %r159; .reg .f32 %r160; .reg .f32 %r161; .reg .f32 %r162; .reg .f32 %r163; .reg .f32 %r164; .reg .f32 %r165; .reg .f32 %r166; .reg .f32 %r167; .reg .f32 %r168; .reg .pred %r169; .reg .f32 %r170; .reg .f32 %r171; .reg .f32 %r172; .reg .f32 %r173; .reg .pred %r174; .reg .f32 %r176; .reg .f32 %r177; .reg .f32 %r178; .reg .pred %r179; .reg .f32 %r180; .reg .f32 %r181; .reg .f32 %r182; .reg .f32 %r183; .reg .f32 %r184; .reg .f32 %r185; .reg .f32 %r186; .reg .f32 %r187; .reg .f32 %r188; .reg .f32 %r189; .reg .f32 %r190; .reg .f32 %r191; .reg .f32 %r192; .reg .u32 %r194; .reg .u32 %r196; .reg .u32 %r197; .reg .u16 %r199; .reg .u16 %r200; .reg .u16 %r201; .reg .u32 %r202; .reg .u16 %r203; .reg .pred %r204; .reg .f32 %r205; .reg .f32 %r206; .reg .f32 %r207; .reg .f32 %r208; .reg .f32 %r209; .reg .f32 %r210; .reg .f32 %r211; .reg .f32 %r212; .reg .f32 %r213; .reg .f32 %r214; .reg .f32 %r215; .reg .u32 %r216; .reg .u32 %r217; .reg .f32 %r219; .reg .f32 %r220; .reg .f32 %r221; .reg .f32 %r223; .reg .f32 %r224; .reg .f32 %r225; .reg .f32 %r226; .reg .f32 %r227; .reg .pred %r228; .reg .f32 %r229; .reg .f32 %r230; .reg .pred %r231; mov.f32 %r128,%ar0; .loc 1 167 2 mov.b32 %r89,%r128; .loc 1 168 5 and.b32 %r90,%r89,2147483647; .loc 1 169 4 setp.le.s32 %r129,%r90,2139095039; @ %r129 bra $L15; .loc 1 171 36 shr.u32 %r130,%r89,31; .loc 1 171 41 add.u32 %r131,%r130,%r130; .loc 1 171 13 cvt.rn.f32.s32 %r132,%r131; .loc 1 171 49 mov.f32 %r134,0f3f800000; div.rn.f32 %r133,%r134,%r128; .loc 1 171 45 add.f32 %r127,%r132,%r133; bra $L14; $L15: .loc 1 174 4 setp.gt.s32 %r135,%r90,1062731775; @ %r135 bra $L17; .loc 1 175 8 setp.gt.s32 %r136,%r90,595591167; @ %r136 bra $L18; .loc 1 176 13 mov.f32 %r137,0f3f800000; sub.f32 %r127,%r137,%r128; bra $L14; $L18: .loc 1 177 8 mul.f32 %r91,%r128,%r128; .loc 1 178 34 fma.rn.f32 %r138,%r91,0fb7c756b1,0fbbbd1489; .loc 1 178 27 fma.rn.f32 %r139,%r138,%r91,0fbce9528f; .loc 1 178 20 fma.rn.f32 %r140,%r139,%r91,0fbea66beb; .loc 1 178 8 fma.rn.f32 %r141,%r140,%r91,0f3e0375d4; .loc 1 179 41 fma.rn.f32 %r142,%r91,0fb684e21a,0f390aee49; .loc 1 179 34 fma.rn.f32 %r143,%r142,%r91,0f3ba68116; .loc 1 179 27 fma.rn.f32 %r144,%r143,%r91,0f3d852a63; .loc 1 179 20 fma.rn.f32 %r145,%r144,%r91,0f3ecbbbce; .loc 1 179 8 fma.rn.f32 %r146,%r145,%r91,0f3f800000; .loc 1 180 8 div.rn.f32 %r147,%r141,%r146; mul.f32 %r116,%r147,%r128; .loc 1 181 8 setp.gt.s32 %r148,%r89,1048575999; @ %r148 bra $L19; .loc 1 182 16 add.f32 %r149,%r128,%r116; .loc 1 182 13 mov.f32 %r150,0f3f800000; sub.f32 %r127,%r150,%r149; bra $L14; $L19: .loc 1 185 10 mov.f32 %r152,0f3f000000; sub.f32 %r151,%r128,%r152; .loc 1 185 5 add.f32 %r153,%r151,%r116; .loc 1 186 22 sub.f32 %r127,%r152,%r153; bra $L14; $L17: .loc 1 189 4 setp.gt.s32 %r155,%r90,1067450367; @ %r155 bra $L20; .loc 1 190 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r128; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r157,[%value_in]; } .loc 1 190 8 mov.f32 %r158,0f3f800000; sub.f32 %r97,%r157,%r158; .loc 1 191 48 fma.rn.f32 %r159,%r97,0fbb0df9c0,0f3d1151b3; .loc 1 191 41 fma.rn.f32 %r160,%r159,%r97,0fbde31cc2; .loc 1 191 34 fma.rn.f32 %r161,%r160,%r97,0f3ea2fe54; .loc 1 191 27 fma.rn.f32 %r162,%r161,%r97,0fbebe9208; .loc 1 191 20 fma.rn.f32 %r163,%r162,%r97,0f3ed46805; .loc 1 191 8 fma.rn.f32 %r98,%r163,%r97,0fbb1acdc6; .loc 1 192 48 fma.rn.f32 %r164,%r97,0f3c445aa3,0f3c5f6e13; .loc 1 192 41 fma.rn.f32 %r165,%r164,%r97,0f3e013307; .loc 1 192 34 fma.rn.f32 %r166,%r165,%r97,0f3d931ae7; .loc 1 192 27 fma.rn.f32 %r167,%r166,%r97,0f3f0a5785; .loc 1 192 20 fma.rn.f32 %r168,%r167,%r97,0f3dd9f331; .loc 1 192 8 fma.rn.f32 %r99,%r168,%r97,0f3f800000; .loc 1 193 8 setp.lt.s32 %r169,%r89,0; @ %r169 bra $L21; .loc 1 194 36 div.rn.f32 %r170,%r98,%r99; .loc 1 194 33 mov.f32 %r171,0f3e1ea7d4; sub.f32 %r127,%r171,%r170; bra $L14; $L21: .loc 1 196 12 div.rn.f32 %r172,%r98,%r99; .loc 1 196 5 add.f32 %r173,%r172,0f3f58560b; .loc 1 196 26 add.f32 %r127,%r173,0f3f800000; bra $L14; $L20: .loc 1 199 5 setp.gt.s32 %r174,%r90,1105199103; @ %r174 bra $L22; .loc 1 200 10 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r128; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r176,[%value_in]; } .loc 1 201 17 mul.f32 %r177,%r176,%r176; .loc 1 201 9 mov.f32 %r178,0f3f800000; div.rn.f32 %r102,%r178,%r177; .loc 1 202 8 setp.gt.s32 %r179,%r90,1077336940; @ %r179 bra $L23; .loc 1 204 15 fma.rn.f32 %r180,%r102,0fc11d077e,0fc2a2932b; .loc 1 204 8 fma.rn.f32 %r181,%r180,%r102,0fc3389ae7; .loc 1 203 43 fma.rn.f32 %r182,%r181,%r102,0fc322658c; .loc 1 203 36 fma.rn.f32 %r183,%r182,%r102,0fc2798057; .loc 1 203 29 fma.rn.f32 %r184,%r183,%r102,0fc128f022; .loc 1 203 22 fma.rn.f32 %r185,%r184,%r102,0fbf31a0b7; .loc 1 203 11 fma.rn.f32 %r87,%r185,%r102,0fbc21a093; .loc 1 206 22 fma.rn.f32 %r186,%r102,0fbd777f97,0f40d23f7c; .loc 1 206 15 fma.rn.f32 %r187,%r186,%r102,0f42d9451f; .loc 1 206 8 fma.rn.f32 %r188,%r187,%r102,0f43d6810b; .loc 1 205 43 fma.rn.f32 %r189,%r188,%r102,0f442158c9; .loc 1 205 36 fma.rn.f32 %r190,%r189,%r102,0f43d9486f; .loc 1 205 29 fma.rn.f32 %r191,%r190,%r102,0f4309a863; .loc 1 205 22 fma.rn.f32 %r192,%r191,%r102,0f419d35ce; .loc 1 205 11 fma.rn.f32 %r88,%r192,%r102,0f3f800000; bra $L24; $L23: .loc 1 208 8 shr.u32 %r194,%r89,31; .loc 1 208 14 set.u32.gt.s32 %r196,%r90,1086324735; neg.s32 %r197,%r196; .loc 1 208 10 cvt.u16.u32 %r200,%r194; cvt.u16.u32 %r201,%r197; and.b16 %r199,%r200,%r201; .loc 1 208 5 cvt.u32.u16 %r202,%r199; cvt.u16.u8 %r203,%r202; setp.eq.u16 %r204,%r203,0; @ %r204 bra $L25; $L27: .loc 1 208 38 mov.f32 %r127,0f40000000; bra $L14; $L25: .loc 1 210 8 fma.rn.f32 %r205,%r102,0fc3f1c275,0fc480230b; .loc 1 209 43 fma.rn.f32 %r206,%r205,%r102,0fc41f6441; .loc 1 209 36 fma.rn.f32 %r207,%r206,%r102,0fc320a2ea; .loc 1 209 29 fma.rn.f32 %r208,%r207,%r102,0fc18e104b; .loc 1 209 22 fma.rn.f32 %r209,%r208,%r102,0fbf4c9dd4; .loc 1 209 11 fma.rn.f32 %r87,%r209,%r102,0fbc21a092; .loc 1 212 15 fma.rn.f32 %r210,%r102,0fc1b38712,0f43ed43a7; .loc 1 212 8 fma.rn.f32 %r211,%r210,%r102,0f451f90ce; .loc 1 211 43 fma.rn.f32 %r212,%r211,%r102,0f4547fdbb; .loc 1 211 36 fma.rn.f32 %r213,%r212,%r102,0f44c01759; .loc 1 211 29 fma.rn.f32 %r214,%r213,%r102,0f43a2e571; .loc 1 211 22 fma.rn.f32 %r215,%r214,%r102,0f41f2b459; .loc 1 211 11 fma.rn.f32 %r88,%r215,%r102,0f3f800000; $L24: .loc 1 215 6 mov.b32 %r217,%r176; and.b32 %r216,%r217,-4096; mov.b32 %r103,%r216; .loc 1 216 27 neg.f32 %r219,%r103; .loc 1 216 12 fma.rn.f32 %r220,%r219,%r103,0fbf100000; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r220; call (%value_in),__ieee754_expf,(%out_arg1); ld.param.f32 %r221,[%value_in]; } .loc 1 217 21 sub.f32 %r223,%r103,%r176; .loc 1 217 32 div.rn.f32 %r224,%r87,%r88; .loc 1 217 27 add.f32 %r225,%r176,%r103; .loc 1 217 4 fma.rn.f32 %r226,%r223,%r225,%r224; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r226; call (%value_in),__ieee754_expf,(%out_arg1); ld.param.f32 %r227,[%value_in]; } .loc 1 216 9 mul.f32 %r104,%r221,%r227; .loc 1 218 8 setp.le.s32 %r228,%r89,0; @ %r228 bra $L26; .loc 1 218 23 div.rn.f32 %r127,%r104,%r176; bra $L14; $L26: .loc 1 218 44 div.rn.f32 %r229,%r104,%r176; .loc 1 218 42 mov.f32 %r230,0f40000000; sub.f32 %r127,%r230,%r229; bra $L14; $L22: .loc 1 220 8 setp.le.s32 %r231,%r89,0; @ %r231 bra $L27; .loc 1 220 26 mov.f32 %r127,0f00000000; $L14: .loc 1 222 1 mov.f32 %value,%r127; st.param.f32 [%value_out],%value; ret; } /889 1591654536 399 399 100644 929 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } /907 1591654536 399 399 100644 7033 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 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 %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 .u32 %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 %r81; .reg .f32 %r84; .reg .u32 %r93; .reg .f32 %r94; .reg .f32 %r95; .reg .pred %r96; .reg .pred %r97; .reg .pred %r98; .reg .pred %r99; .reg .u32 %r101; .reg .u32 %r102; .reg .u32 %r104; .reg .u32 %r105; .reg .u16 %r107; .reg .u16 %r108; .reg .u16 %r109; .reg .u32 %r110; .reg .u16 %r111; .reg .pred %r112; .reg .f32 %r113; .reg .pred %r114; .reg .f32 %r115; .reg .pred %r116; .reg .pred %r117; .reg .pred %r118; .reg .pred %r119; .reg .f32 %r120; .reg .pred %r121; .reg .f32 %r122; .reg .f32 %r124; .reg .pred %r125; .reg .f32 %r126; .reg .f32 %r127; .reg .f32 %r128; .reg .f32 %r129; .reg .f32 %r130; .reg .f32 %r131; .reg .f32 %r132; .reg .f32 %r133; .reg .f32 %r134; .reg .f32 %r135; .reg .pred %r136; .reg .f32 %r137; .reg .f32 %r138; .reg .f32 %r139; .reg .pred %r140; .reg .f32 %r141; .reg .pred %r142; .reg .pred %r143; .reg .f32 %r144; .reg .f32 %r145; .reg .f32 %r146; .reg .u32 %r147; .reg .pred %r148; .reg .f32 %r149; .reg .f32 %r150; .reg .f32 %r151; .reg .u32 %r152; .reg .f32 %r153; .reg .pred %r155; .reg .u32 %r156; .reg .u32 %r157; .reg .u32 %r158; .reg .u32 %r159; .reg .f32 %r160; .reg .f32 %r161; .reg .f32 %r162; .reg .u32 %r163; .reg .u32 %r164; .reg .u32 %r165; .reg .u32 %r166; .reg .f32 %r167; .reg .f32 %r168; .reg .f32 %r169; .reg .u32 %r170; mov.f32 %r95,%ar0; .loc 1 51 2 mov.b32 %r64,%r95; .loc 1 54 5 and.b32 %r60,%r64,2147483647; .loc 1 57 4 setp.le.u32 %r96,%r60,1100331075; @ %r96 bra $L2; .loc 1 58 8 setp.le.u32 %r97,%r60,2139095040; @ %r97 bra $L3; .loc 1 59 18 add.f32 %r94,%r95,%r95; bra $L1; $L3: .loc 1 60 8 setp.ne.u32 %r98,%r60,2139095040; @ %r98 bra $L5; .loc 1 61 21 setp.lt.s32 %r99,%r64,0; selp.f32 %r94,0fbf800000,%r95,%r99; bra $L1; $L5: .loc 1 62 13 not.b32 %r101,%r64; shr.u32 %r102,%r101,31; .loc 1 62 24 set.u32.gt.u32 %r104,%r60,1118925335; neg.s32 %r105,%r104; .loc 1 62 18 cvt.u16.u32 %r108,%r102; cvt.u16.u32 %r109,%r105; and.b16 %r107,%r108,%r109; .loc 1 62 8 cvt.u32.u16 %r110,%r107; cvt.u16.u8 %r111,%r110; setp.eq.u16 %r112,%r111,0; @ %r112 bra $L6; .loc 1 63 14 mov.f32 %r113,0f7149f2ca; mul.f32 %r94,%r113,0f7149f2ca; bra $L1; $L6: .loc 1 64 8 setp.ge.s32 %r114,%r64,0; @ %r114 bra $L7; .loc 1 65 7 add.f32 %r115,%r95,0f0da24260; .loc 1 65 5 setp.lt.f32 %r116,%r115,0f00000000; @ ! %r116 bra $L27; bra $L23; $L2: .loc 1 71 4 setp.le.u32 %r117,%r60,1051816472; @ %r117 bra $L9; .loc 1 72 8 setp.gt.u32 %r118,%r60,1065686417; @ %r118 bra $L10; .loc 1 73 5 setp.lt.s32 %r119,%r64,0; @ %r119 bra $L11; .loc 1 74 11 mov.f32 %r120,0f3f317180; sub.f32 %r55,%r95,%r120; .loc 1 74 42 mov.u32 %r58,1; .loc 1 74 28 mov.f32 %r56,0f3717f7d1; bra $L12; $L11: .loc 1 76 11 add.f32 %r55,%r95,0f3f317180; .loc 1 76 42 mov.u32 %r58,-1; .loc 1 76 28 mov.f32 %r56,0fb717f7d1; bra $L12; $L10: .loc 1 78 14 mul.f32 %r84,%r95,0f3fb8aa3b; .loc 1 78 37 setp.ge.s32 %r121,%r64,0; selp.f32 %r59,0f3f000000,0fbf000000,%r121; $L13: .loc 1 78 16 add.f32 %r122,%r59,%r84; .loc 1 78 6 cvt.rzi.s32.f32 %r58,%r122; .loc 1 79 6 cvt.rn.f32.s32 %r65,%r58; .loc 1 80 6 fma.rn.f32 %r55,%r65,0fbf317180,%r95; .loc 1 81 6 mul.f32 %r56,%r65,0f3717f7d1; $L12: .loc 1 83 9 sub.f32 %r95,%r55,%r56; .loc 1 84 14 sub.f32 %r124,%r55,%r95; .loc 1 84 9 sub.f32 %r57,%r124,%r56; bra $L14; $L9: .loc 1 86 9 setp.gt.u32 %r125,%r60,855638015; @ %r125 bra $L25; .loc 1 87 8 add.f32 %r66,%r95,0f7149f2ca; .loc 1 88 19 sub.f32 %r126,%r66,%r66; .loc 1 88 15 sub.f32 %r94,%r95,%r126; bra $L1; $L25: .loc 1 90 9 mov.u32 %r58,0; $L14: .loc 1 93 6 mul.f32 %r67,%r95,0f3f000000; .loc 1 94 6 mul.f32 %r68,%r95,%r67; .loc 1 95 42 fma.rn.f32 %r127,%r68,0fb457edbb,0f36867e54; .loc 1 95 34 fma.rn.f32 %r128,%r127,%r68,0fb8a670cd; .loc 1 95 26 fma.rn.f32 %r129,%r128,%r68,0f3ad00d01; .loc 1 95 18 fma.rn.f32 %r130,%r129,%r68,0fbd088889; .loc 1 95 5 fma.rn.f32 %r69,%r130,%r68,0f3f800000; .loc 1 96 5 neg.f32 %r131,%r67; fma.rn.f32 %r70,%r131,%r69,0f40400000; .loc 1 97 15 sub.f32 %r132,%r69,%r70; .loc 1 97 31 neg.f32 %r133,%r95; fma.rn.f32 %r134,%r133,%r70,0f40c00000; .loc 1 97 18 div.rn.f32 %r135,%r132,%r134; .loc 1 97 5 mul.f32 %r71,%r135,%r68; .loc 1 98 4 setp.ne.u32 %r136,%r58,0; @ %r136 bra $L15; .loc 1 98 26 neg.f32 %r137,%r68; fma.rn.f32 %r138,%r95,%r71,%r137; .loc 1 98 20 sub.f32 %r94,%r95,%r138; bra $L1; $L15: .loc 1 100 16 sub.f32 %r38,%r71,%r57; .loc 1 100 9 neg.f32 %r139,%r57; fma.rn.f32 %r72,%r38,%r95,%r139; .loc 1 101 8 sub.f32 %r73,%r72,%r68; .loc 1 102 8 setp.ne.u32 %r140,%r58,-1; @ %r140 bra $L16; .loc 1 102 37 sub.f32 %r141,%r95,%r73; .loc 1 102 40 fma.rn.f32 %r94,%r141,0f3f000000,0fbf000000; bra $L1; $L16: .loc 1 103 14 setp.ne.u32 %r142,%r58,1; @ %r142 bra $L17; .loc 1 104 12 setp.lt.f32 %r143,%r95,0fbe800000; @ ! %r143 bra $L28; .loc 1 104 55 add.f32 %r144,%r95,0f3f000000; .loc 1 104 52 sub.f32 %r145,%r73,%r144; .loc 1 104 49 mul.f32 %r94,%r145,0fc0000000; bra $L1; $L28: .loc 1 105 47 sub.f32 %r146,%r95,%r73; .loc 1 105 33 fma.rn.f32 %r94,%r146,0f40000000,0f3f800000; bra $L1; $L17: shl.b32 %r93,%r58,23; .loc 1 107 18 add.u32 %r147,%r58,1; .loc 1 107 9 setp.le.u32 %r148,%r147,57; @ %r148 bra $L20; .loc 1 109 20 sub.f32 %r149,%r73,%r95; .loc 1 109 12 mov.f32 %r151,0f3f800000; sub.f32 %r150,%r151,%r149; .loc 1 111 3 mov.b32 %r152,%r150; add.u32 %r46,%r93,%r152; .loc 1 112 18 mov.b32 %r153,%r46; sub.f32 %r94,%r153,%r151; bra $L1; $L20: .loc 1 115 8 setp.gt.s32 %r155,%r58,22; @ %r155 bra $L21; .loc 1 117 10 mov.u32 %r157,16777216; shr.s32 %r156,%r157,%r58; mov.u32 %r159,1065353216; sub.u32 %r158,%r159,%r156; .loc 1 118 18 sub.f32 %r160,%r73,%r95; .loc 1 118 12 mov.b32 %r162,%r158; sub.f32 %r161,%r162,%r160; .loc 1 120 3 mov.b32 %r163,%r161; add.u32 %r50,%r93,%r163; mov.b32 %r94,%r50; bra $L1; $L21: .loc 1 123 3 mov.u32 %r165,127; sub.u32 %r164,%r165,%r58; shl.b32 %r166,%r164,23; .loc 1 124 18 mov.b32 %r168,%r166; add.f32 %r167,%r73,%r168; .loc 1 124 12 sub.f32 %r81,%r95,%r167; .loc 1 125 12 add.f32 %r169,%r81,0f3f800000; .loc 1 127 3 mov.b32 %r170,%r169; add.u32 %r54,%r93,%r170; mov.b32 %r94,%r54; bra $L1; $L23: .loc 1 61 21 mov.f32 %r94,0fbf800000; bra $L1; $L7: .loc 1 78 14 mul.f32 %r84,%r95,0f3fb8aa3b; .loc 1 78 37 mov.f32 %r59,0f3f000000; bra $L13; $L27: .loc 1 78 14 mul.f32 %r84,%r95,0f3fb8aa3b; .loc 1 78 37 mov.f32 %r59,0fbf000000; bra $L13; $L1: .loc 1 131 1 mov.f32 %value,%r94; st.param.f32 [%value_out],%value; ret; } lib_a-sf_fabs.o/1591654536 399 399 100644 623 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/1591654536 399 399 100644 1598 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; .reg .pred %r34; mov.f32 %r25,%ar0; mov.f32 %r26,%ar1; .loc 1 17 11 { .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 18 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 20 6 setp.eq.u32 %r33,%r28,1; @ %r33 bra $L5; .loc 1 23 24 setp.gt.f32 %r34,%r25,%r26; @ ! %r34 bra $L11; sub.f32 %r25,%r25,%r26; bra $L2; $L4: .loc 1 19 42 mov.f32 %r25,%r26; bra $L2; $L5: .loc 1 21 12 mov.f32 %r25,0f7f800000; bra $L2; $L11: .loc 1 23 24 mov.f32 %r25,0f00000000; $L2: .loc 1 24 1 mov.f32 %value,%r25; st.param.f32 [%value_out],%value; ret; } /925 1591654536 399 399 100644 700 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } /944 1591654536 399 399 100644 2220 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r22; .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 %r22,%r38; .loc 1 43 5 and.b32 %r33,%r22,2147483647; .loc 1 44 10 shr.u32 %r39,%r33,23; .loc 1 44 15 add.u32 %r34,%r39,-127; .loc 1 45 4 setp.gt.s32 %r40,%r34,22; @ %r40 bra $L2; .loc 1 46 8 setp.ge.s32 %r41,%r34,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,%r22,0; @ %r44 bra $L10; .loc 1 49 14 setp.eq.u32 %r45,%r33,0; selp.f32 %r37,%r38,0fbf800000,%r45; bra $L1; $L3: .loc 1 53 19 mov.u32 %r46,8388607; shr.s32 %r35,%r46,%r34; .loc 1 54 9 and.b32 %r47,%r22,%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,%r22,0; @ %r51 bra $L8; .loc 1 56 34 mov.u32 %r53,8388608; shr.s32 %r52,%r53,%r34; .loc 1 56 19 add.u32 %r22,%r52,%r22; $L8: .loc 1 57 14 not.b32 %r54,%r35; .loc 1 57 10 and.b32 %r55,%r54,%r22; mov.b32 %r37,%r55; bra $L1; $L2: .loc 1 61 8 setp.le.u32 %r56,%r33,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/ 1591654536 399 399 100644 995 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .f32 %r27; .reg .f32 %r28; .reg .f32 %r29; .reg .f64 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r34; mov.f32 %r27,%ar0; mov.f32 %r28,%ar1; mov.f32 %r29,%ar2; .loc 1 25 20 cvt.f64.f32 %r31,%r27; .loc 1 25 47 cvt.f64.f32 %r32,%r29; .loc 1 25 33 cvt.f64.f32 %r33,%r28; .loc 1 25 45 fma.rn.f64 %r34,%r31,%r33,%r32; .loc 1 25 10 cvt.rn.f32.f64 %value,%r34; .loc 1 26 1 st.param.f32 [%value_out],%value; ret; } lib_a-sf_fmax.o/1591654536 399 399 100644 1468 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/1591654536 399 399 100644 1468 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } /962 1591654536 399 399 100644 1220 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } /985 1591654536 399 399 100644 2005 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r32; .reg .u32 %r36; .reg .f32 %r37; .reg .f32 %r38; .reg .u64 %r39; .reg .u32 %r40; .reg .u32 %r42; .reg .u32 %r43; .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; mov.f32 %r38,%ar0; mov.u64 %r39,%ar1; .loc 1 33 2 mov.b32 %r32,%r38; .loc 1 34 5 and.b32 %r30,%r32,2147483647; .loc 1 35 8 mov.u32 %r40,0; st.u32 [%r39],%r40; .loc 1 36 5 set.u32.gt.s32 %r42,%r30,2139095039; neg.s32 %r43,%r42; .loc 1 36 31 set.u32.eq.u32 %r45,%r30,0; neg.s32 %r46,%r45; .loc 1 36 29 cvt.u16.u32 %r48,%r43; cvt.u16.u32 %r49,%r46; or.b16 %r47,%r48,%r49; .loc 1 36 4 cvt.u32.u16 %r50,%r47; cvt.u16.u8 %r51,%r50; setp.ne.u16 %r52,%r51,0; @ %r52 bra $L4; .loc 1 37 5 and.b32 %r53,%r32,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 %r32,%r55; .loc 1 40 9 and.b32 %r30,%r32,2147483647; mov.u32 %r36,-25; bra $L3; $L5: mov.u32 %r36,%r40; $L3: .loc 1 43 14 shr.s32 %r56,%r30,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,%r32,-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; } /1003 1591654536 399 399 100644 1468 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r26; .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 %r26,%r24,8; .loc 1 33 6 setp.le.s32 %r33,%r26,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 %r26,%r26,%r26; .loc 1 33 6 setp.gt.s32 %r35,%r26,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; } /1021 1591654536 399 399 100644 433 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } /1042 1591654536 399 399 100644 694 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 21 2 mov.b32 %r23,%r27; .loc 1 22 5 and.b32 %r29,%r23,2147483647; .loc 1 23 9 set.u32.eq.u32 %r31,%r29,2139095040; neg.s32 %value,%r31; .loc 1 24 1 st.param.u32 [%value_out],%value; ret; } /1060 1591654536 399 399 100644 703 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 13 2 mov.b32 %r23,%r27; .loc 1 14 5 and.b32 %r29,%r23,2147483647; .loc 1 15 9 set.u32.eq.u32 %r31,%r29,2139095040; neg.s32 %value,%r31; .loc 1 16 1 st.param.u32 [%value_out],%value; ret; } /1079 1591654536 399 399 100644 694 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 31 2 mov.b32 %r23,%r27; .loc 1 32 5 and.b32 %r29,%r23,2147483647; .loc 1 33 9 set.u32.gt.s32 %r31,%r29,2139095040; neg.s32 %value,%r31; .loc 1 34 1 st.param.u32 [%value_out],%value; ret; } /1097 1591654536 399 399 100644 703 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 23 2 mov.b32 %r23,%r27; .loc 1 24 5 and.b32 %r29,%r23,2147483647; .loc 1 25 9 set.u32.gt.s32 %r31,%r29,2139095040; neg.s32 %value,%r31; .loc 1 26 1 st.param.u32 [%value_out],%value; ret; } /1116 1591654536 399 399 100644 2686 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r37; .reg .u32 %r38; .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 %r54; .reg .u32 %r55; .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; 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; .loc 1 26 4 set.u32.eq.u32 %r40,%r35,0; neg.s32 %r41,%r40; .loc 1 26 20 cvt.u16.u32 %r43,%r38; cvt.u16.u32 %r44,%r41; 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; .loc 1 28 4 set.u32.eq.u32 %r57,%r52,0; neg.s32 %r58,%r57; .loc 1 28 20 cvt.u16.u32 %r60,%r55; cvt.u16.u32 %r61,%r58; 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; } /1134 1591654536 399 399 100644 2958 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r44; .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 %r44,%r47,8388607; .loc 1 78 14 or.b32 %r65,%r44,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; } /1153 1591654536 399 399 100644 1954 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r36; .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 %r36,%r42; .loc 1 24 41 shr.u32 %r43,%r36,23; and.b32 %r23,%r43,255; .loc 1 24 48 add.u32 %r35,%r23,-127; .loc 1 25 37 setp.lt.s32 %r44,%r36,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.ne.u32 %r47,%r35,-1; @ %r47 bra $L9; cvt.s64.s32 %r41,%r34; bra $L1; $L4: .loc 1 26 5 and.b32 %r38,%r36,8388607; .loc 1 27 5 or.b32 %r39,%r38,8388608; .loc 1 33 15 setp.le.s32 %r48,%r35,22; @ %r48 bra $L6; .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 $L7; $L6: .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 $L7; $L3: .loc 1 42 14 cvt.rzi.s64.f32 %r41,%r42; bra $L1; $L7: .loc 1 44 15 cvt.s64.s32 %r57,%r34; mul.lo.u64 %r41,%r57,%r33; bra $L1; $L9: .loc 1 32 43 mov.u64 %r41,0; $L1: .loc 1 45 1 mov.u64 %value,%r41; st.param.u64 [%value_out],%value; ret; } /1173 1591654536 399 399 100644 6175 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 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 .f32 %r22; .reg .u32 %r32; .reg .f32 %r34; .reg .f32 %r36; .reg .f32 %r48; .reg .f32 %r54; .reg .f32 %r55; .reg .u32 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .f32 %r61; .reg .u32 %r62; .reg .f32 %r63; .reg .f32 %r64; .reg .f32 %r66; .reg .f32 %r67; .reg .f32 %r68; .reg .f32 %r77; .reg .f32 %r78; .reg .f32 %r79; .reg .pred %r80; .reg .pred %r81; .reg .pred %r82; .reg .pred %r83; .reg .f32 %r84; .reg .pred %r85; .reg .f32 %r86; .reg .u32 %r88; .reg .u32 %r89; .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 .f32 %r99; .reg .u32 %r101; .reg .pred %r102; .reg .f32 %r103; .reg .pred %r104; .reg .u32 %r105; .reg .pred %r106; .reg .f32 %r107; .reg .f32 %r108; .reg .f32 %r109; .reg .f32 %r110; .reg .u32 %r111; .reg .pred %r112; .reg .u32 %r113; .reg .u32 %r114; .reg .u32 %r115; .reg .f32 %r116; .reg .f32 %r117; .reg .pred %r118; .reg .pred %r119; .reg .pred %r120; .reg .f32 %r121; .reg .f32 %r123; .reg .pred %r124; .reg .f32 %r125; .reg .f32 %r126; .reg .f32 %r127; .reg .f32 %r128; .reg .f32 %r129; .reg .f32 %r130; .reg .f32 %r131; .reg .f32 %r132; .reg .f32 %r133; .reg .f32 %r134; .reg .f32 %r135; .reg .f32 %r136; .reg .pred %r137; .reg .f32 %r138; .reg .f32 %r139; .reg .f32 %r140; .reg .f32 %r141; .reg .f32 %r142; .reg .f32 %r143; mov.f32 %r79,%ar0; .loc 1 50 2 mov.b32 %r58,%r79; .loc 1 54 5 setp.le.s32 %r80,%r58,2139095039; @ %r80 bra $L2; .loc 1 54 40 add.f32 %r78,%r79,%r79; bra $L1; $L2: .loc 1 55 5 setp.gt.s32 %r81,%r58,1054086102; @ %r81 bra $L4; .loc 1 51 5 and.b32 %r62,%r58,2147483647; .loc 1 56 8 setp.le.s32 %r82,%r62,1065353215; @ %r82 bra $L5; .loc 1 57 5 setp.neu.f32 %r83,%r79,0fbf800000; @ %r83 bra $L6; .loc 1 57 35 mov.f32 %r84,0fcc000000; div.rn.f32 %r78,%r84,0f00000000; bra $L1; $L6: .loc 1 58 17 sub.f32 %r22,%r79,%r79; .loc 1 58 20 div.rn.f32 %r78,%r22,%r22; bra $L1; $L5: .loc 1 60 8 setp.gt.s32 %r85,%r62,822083583; @ %r85 bra $L7; .loc 1 61 11 add.f32 %r86,%r79,0f4c000000; .loc 1 61 5 set.u32.gt.f32 %r88,%r86,0f00000000; neg.s32 %r89,%r88; .loc 1 62 14 set.u32.le.s32 %r91,%r62,612368383; neg.s32 %r92,%r91; cvt.u16.u32 %r94,%r89; cvt.u16.u32 %r95,%r92; and.b16 %r93,%r94,%r95; cvt.u32.u16 %r96,%r93; cvt.u16.u8 %r97,%r96; setp.ne.u16 %r98,%r97,0; @ %r98 bra $L19; .loc 1 65 19 mul.f32 %r99,%r79,%r79; .loc 1 65 16 fma.rn.f32 %r78,%r99,0fbf000000,%r79; bra $L1; $L7: .loc 1 67 13 add.u32 %r101,%r58,1097468384; .loc 1 67 8 setp.le.u32 %r102,%r101,1097468384; @ %r102 bra $L8; .loc 1 94 17 mul.f32 %r103,%r79,0f3f000000; .loc 1 94 6 mul.f32 %r64,%r103,%r79; .loc 1 68 4 mov.u32 %r57,0; bra $L9; $L4: .loc 1 71 8 setp.gt.s32 %r104,%r58,1509949439; @ %r104 bra $L10; $L8: .loc 1 72 6 add.f32 %r63,%r79,0f3f800000; .loc 1 73 3 mov.b32 %r58,%r63; .loc 1 74 18 shr.s32 %r105,%r58,23; .loc 1 74 13 add.u32 %r57,%r105,-127; .loc 1 76 38 setp.le.s32 %r106,%r57,0; @ %r106 bra $L11; .loc 1 76 35 sub.f32 %r107,%r63,%r79; .loc 1 76 38 mov.f32 %r108,0f3f800000; sub.f32 %r61,%r108,%r107; bra $L12; $L11: .loc 1 76 43 mov.f32 %r110,0f3f800000; sub.f32 %r109,%r63,%r110; .loc 1 76 38 sub.f32 %r61,%r79,%r109; $L12: .loc 1 77 5 div.rn.f32 %r54,%r61,%r63; bra $L13; $L10: .loc 1 81 18 shr.s32 %r111,%r58,23; .loc 1 81 13 add.u32 %r57,%r111,-127; .loc 1 82 6 mov.f32 %r54,0f00000000; $L13: .loc 1 84 9 and.b32 %r59,%r58,8388607; .loc 1 85 8 setp.gt.s32 %r112,%r59,3474678; @ %r112 bra $L14; .loc 1 86 10 or.b32 %r113,%r59,1065353216; mov.b32 %r55,%r113; bra $L15; $L14: .loc 1 88 12 add.u32 %r57,%r57,1; .loc 1 89 3 or.b32 %r114,%r59,1056964608; mov.b32 %r55,%r114; .loc 1 90 26 mov.u32 %r115,8388608; sub.u32 %r32,%r115,%r59; .loc 1 90 13 shr.s32 %r59,%r32,2; $L15: .loc 1 92 8 mov.f32 %r116,0f3f800000; sub.f32 %r79,%r55,%r116; .loc 1 94 17 mul.f32 %r117,%r79,0f3f000000; .loc 1 94 6 mul.f32 %r64,%r117,%r79; .loc 1 95 4 setp.ne.u32 %r118,%r59,0; @ %r118 bra $L9; .loc 1 96 14 setp.neu.f32 %r119,%r79,0f00000000; @ %r119 bra $L16; .loc 1 96 28 setp.eq.u32 %r120,%r57,0; @ %r120 bra $L20; .loc 1 97 36 cvt.rn.f32.s32 %r34,%r57; .loc 1 97 32 fma.rn.f32 %r121,%r34,0f3717f7d1,%r54; .loc 1 97 60 fma.rn.f32 %r78,%r34,0f3f317180,%r121; bra $L1; $L16: .loc 1 98 26 fma.rn.f32 %r123,%r79,0fbf2aaaab,0f3f800000; .loc 1 98 8 mul.f32 %r66,%r123,%r64; .loc 1 99 8 setp.ne.u32 %r124,%r57,0; @ %r124 bra $L17; .loc 1 99 23 sub.f32 %r78,%r79,%r66; bra $L1; $L17: .loc 1 100 20 cvt.rn.f32.s32 %r36,%r57; .loc 1 100 41 fma.rn.f32 %r125,%r36,0f3717f7d1,%r54; .loc 1 100 31 sub.f32 %r126,%r66,%r125; .loc 1 100 45 sub.f32 %r127,%r126,%r79; .loc 1 100 27 neg.f32 %r128,%r127; fma.rn.f32 %r78,%r36,0f3f317180,%r128; bra $L1; $L9: .loc 1 102 20 add.f32 %r129,%r79,0f40000000; .loc 1 102 5 div.rn.f32 %r67,%r79,%r129; .loc 1 103 4 mul.f32 %r68,%r67,%r67; .loc 1 104 47 fma.rn.f32 %r130,%r68,0f3e178897,0f3e1cd04f; .loc 1 104 40 fma.rn.f32 %r131,%r130,%r68,0f3e3a3325; .loc 1 104 33 fma.rn.f32 %r132,%r131,%r68,0f3e638e29; .loc 1 104 26 fma.rn.f32 %r133,%r132,%r68,0f3e924925; .loc 1 104 19 fma.rn.f32 %r134,%r133,%r68,0f3ecccccd; .loc 1 104 12 fma.rn.f32 %r135,%r134,%r68,0f3f2aaaab; fma.rn.f32 %r136,%r135,%r68,%r64; mul.f32 %r77,%r136,%r67; .loc 1 105 4 setp.ne.u32 %r137,%r57,0; @ %r137 bra $L18; .loc 1 105 25 sub.f32 %r138,%r64,%r77; .loc 1 105 19 sub.f32 %r78,%r79,%r138; bra $L1; $L18: .loc 1 106 12 cvt.rn.f32.s32 %r48,%r57; .loc 1 106 48 fma.rn.f32 %r139,%r48,0f3717f7d1,%r54; .loc 1 106 38 add.f32 %r140,%r139,%r77; .loc 1 106 26 sub.f32 %r141,%r64,%r140; .loc 1 106 53 sub.f32 %r142,%r141,%r79; .loc 1 106 19 neg.f32 %r143,%r142; fma.rn.f32 %r78,%r48,0f3f317180,%r143; bra $L1; $L19: .loc 1 63 14 mov.f32 %r78,%r79; bra $L1; $L20: .loc 1 96 42 mov.f32 %r78,0f00000000; $L1: .loc 1 107 1 mov.f32 %value,%r78; st.param.f32 [%value_out],%value; ret; } lib_a-sf_log2.o/1591654536 399 399 100644 825 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/common/sf_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 33 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 33 19 div.rn.f32 %value,%r26,0f3f317218; .loc 1 34 1 st.param.f32 [%value_out],%value; ret; } lib_a-sf_logb.o/1591654536 399 399 100644 1740 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r26; .reg .u32 %r27; .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 %r27,%r25,8; .loc 1 42 6 setp.le.s32 %r36,%r27,0; @ %r36 bra $L7; .loc 1 42 14 mov.u32 %r26,-126; $L6: .loc 1 42 46 add.u32 %r26,%r26,-1; .loc 1 42 37 add.u32 %r27,%r27,%r27; .loc 1 42 6 setp.gt.s32 %r38,%r27,0; @ %r38 bra $L6; cvt.rn.f32.s32 %r30,%r26; bra $L1; $L7: 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; } /1191 1591654536 399 399 100644 2993 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r45; .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 %r45,%r48,8388607; .loc 1 78 14 or.b32 %r67,%r45,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; } /1209 1591654536 399 399 100644 1949 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r36; .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 %r36,%r42; .loc 1 27 41 shr.u32 %r43,%r36,23; and.b32 %r23,%r43,255; .loc 1 27 48 add.u32 %r35,%r23,-127; .loc 1 28 37 setp.lt.s32 %r44,%r36,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.ne.u32 %r47,%r35,-1; @ %r47 bra $L9; cvt.s64.s32 %r41,%r34; bra $L1; $L4: .loc 1 29 5 and.b32 %r38,%r36,8388607; .loc 1 30 5 or.b32 %r39,%r38,8388608; .loc 1 36 15 setp.le.s32 %r48,%r35,22; @ %r48 bra $L6; .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 $L7; $L6: .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 $L7; $L3: .loc 1 45 14 cvt.rzi.s64.f32 %r41,%r42; bra $L1; $L7: .loc 1 47 15 cvt.s64.s32 %r57,%r34; mul.lo.u64 %r41,%r57,%r33; bra $L1; $L9: .loc 1 35 43 mov.u64 %r41,0; $L1: .loc 1 48 1 mov.u64 %value,%r41; st.param.u64 [%value_out],%value; ret; } lib_a-sf_modf.o/1591654536 399 399 100644 1821 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 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 %r34; .reg .u32 %r35; .reg .u32 %r36; .reg .f32 %r37; .reg .f32 %r38; .reg .u64 %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .pred %r42; .reg .pred %r43; .reg .u32 %r44; .reg .f32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .pred %r48; .reg .u32 %r49; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r52; mov.f32 %r38,%ar0; mov.u64 %r39,%ar1; .loc 1 33 2 mov.b32 %r36,%r38; .loc 1 34 11 shr.s32 %r40,%r36,23; .loc 1 34 16 and.b32 %r41,%r40,255; .loc 1 34 5 add.u32 %r34,%r41,-127; .loc 1 35 4 setp.gt.s32 %r42,%r34,22; @ %r42 bra $L2; .loc 1 36 8 setp.ge.s32 %r43,%r34,0; @ %r43 bra $L3; .loc 1 37 10 and.b32 %r44,%r36,-2147483648; mov.b32 %r45,%r44; st.f32 [%r39],%r45; .loc 1 38 10 mov.f32 %r37,%r38; bra $L1; $L3: .loc 1 40 19 mov.u32 %r46,8388607; shr.s32 %r35,%r46,%r34; .loc 1 41 9 and.b32 %r47,%r35,%r36; .loc 1 41 5 setp.ne.u32 %r48,%r47,0; @ %r48 bra $L5; .loc 1 43 13 st.f32 [%r39],%r38; .loc 1 45 7 and.b32 %r49,%r36,-2147483648; mov.b32 %r37,%r49; .loc 1 46 14 bra $L1; $L5: .loc 1 48 7 not.b32 %r50,%r35; and.b32 %r51,%r50,%r36; mov.b32 %r31,%r51; st.f32 [%r39],%r31; .loc 1 49 16 sub.f32 %r37,%r38,%r31; bra $L1; $L2: .loc 1 54 12 st.f32 [%r39],%r38; .loc 1 56 6 and.b32 %r52,%r36,-2147483648; mov.b32 %r37,%r52; $L1: .loc 1 59 1 mov.f32 %value,%r37; st.param.f32 [%value_out],%value; ret; } lib_a-sf_nan.o/ 1591654536 399 399 100644 497 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } /1228 1591654536 399 399 100644 826 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } /1250 1591654536 399 399 100644 2901 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .f32 %r35; .reg .u32 %r38; .reg .f32 %r39; .reg .f32 %r40; .reg .f32 %r41; .reg .u32 %r42; .reg .u32 %r44; .reg .u32 %r45; .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 %r66; .reg .u32 %r67; .reg .u16 %r69; .reg .u16 %r70; .reg .u16 %r71; .reg .u32 %r72; .reg .u16 %r73; .reg .pred %r74; .reg .u32 %r75; .reg .pred %r76; mov.f32 %r40,%ar0; mov.f32 %r41,%ar1; .loc 1 27 2 mov.b32 %r31,%r40; .loc 1 28 2 mov.b32 %r38,%r41; .loc 1 29 5 and.b32 %r33,%r31,2147483647; .loc 1 30 5 and.b32 %r42,%r38,2147483647; .loc 1 33 5 set.u32.gt.s32 %r44,%r42,2139095040; neg.s32 %r45,%r44; .loc 1 32 5 set.u32.gt.s32 %r47,%r33,2139095040; neg.s32 %r48,%r47; .loc 1 32 26 cvt.u16.u32 %r50,%r45; cvt.u16.u32 %r51,%r48; or.b16 %r49,%r50,%r51; .loc 1 32 4 cvt.u32.u16 %r52,%r49; 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,%r38,-2147483648; or.b32 %r58,%r57,1; mov.b32 %r35,%r58; .loc 1 38 8 mul.f32 %r39,%r35,%r35; .loc 1 39 8 setp.eq.f32 %r59,%r35,%r39; .loc 1 39 37 selp.f32 %r39,%r39,%r35,%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,%r38; @ %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,%r38; shr.u32 %r64,%r63,31; .loc 1 48 18 set.u32.gt.s32 %r66,%r31,%r38; neg.s32 %r67,%r66; .loc 1 48 14 cvt.u16.u32 %r70,%r64; cvt.u16.u32 %r71,%r67; or.b16 %r69,%r70,%r71; .loc 1 48 8 cvt.u32.u16 %r72,%r69; 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: 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; } /1272 1591654536 399 399 100644 929 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } /1290 1591654536 399 399 100644 8217 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // 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 %r31; .reg .u32 %r32; .reg .u32 %r36; .reg .f32 %r39; .reg .f32 %r41; .reg .u32 %r43; .reg .f32 %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 %r58; .reg .u32 %r59; .reg .u32 %r61; .reg .u32 %r64; .reg .u32 %r66; .reg .u32 %r67; .reg .u32 %r68; .reg .u32 %r70; .reg .u32 %r74; .reg .f32 %r77; .reg .f32 %r78; .reg .f32 %r79; .reg .u64 %r80; .reg .u32 %r82; .reg .u32 %r83; .reg .u32 %r85; .reg .u32 %r86; .reg .u16 %r87; .reg .u16 %r88; .reg .u16 %r89; .reg .u32 %r91; .reg .u32 %r92; .reg .u16 %r94; .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 .f32 %r150; .reg .pred %r151; .reg .pred %r152; .reg .pred %r153; .reg .u32 %r154; .reg .pred %r155; .reg .pred %r156; .reg .pred %r157; .reg .u32 %r158; .reg .pred %r159; .reg .u32 %r160; .reg .pred %r161; .reg .pred %r163; mov.f32 %r78,%ar0; mov.f32 %r79,%ar1; mov.u64 %r80,%ar2; .loc 1 42 2 mov.b32 %r52,%r78; .loc 1 43 2 mov.b32 %r53,%r79; .loc 1 46 5 and.b32 %r47,%r52,2147483647; .loc 1 47 5 and.b32 %r55,%r53,2147483647; .loc 1 50 7 set.u32.eq.u32 %r82,%r55,0; neg.s32 %r83,%r82; .loc 1 50 26 set.u32.gt.s32 %r85,%r55,2139095040; neg.s32 %r86,%r85; cvt.u16.u32 %r88,%r83; cvt.u16.u32 %r89,%r86; or.b16 %r87,%r88,%r89; .loc 1 50 14 set.u32.gt.s32 %r91,%r47,2139095039; neg.s32 %r92,%r91; .loc 1 50 26 cvt.u16.u32 %r96,%r92; or.b16 %r94,%r87,%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,%r52,%r53; .loc 1 45 5 and.b32 %r54,%r52,-2147483648; .loc 1 54 4 setp.lt.s32 %r101,%r47,%r55; @ %r101 bra $L34; .loc 1 57 11 setp.ne.u32 %r102,%r47,%r55; @ %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,%r54,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,%r52,2139095040; setp.ne.u32 %r110,%r109,0; @ %r110 bra $L6; .loc 1 64 22 shl.b32 %r59,%r47,8; .loc 1 64 6 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 6 setp.gt.s32 %r113,%r59,0; @ %r113 bra $L8; bra $L7; $L6: .loc 1 65 17 shr.s32 %r114,%r47,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,%r53,2139095040; setp.ne.u32 %r116,%r115,0; @ %r116 bra $L9; .loc 1 69 22 shl.b32 %r61,%r55,8; .loc 1 69 6 setp.le.s32 %r117,%r61,0; @ %r117 bra $L36; .loc 1 69 14 mov.u32 %r70,-126; $L11: .loc 1 69 47 add.u32 %r70,%r70,-1; .loc 1 69 38 add.u32 %r61,%r61,%r61; .loc 1 69 6 setp.gt.s32 %r119,%r61,0; @ %r119 bra $L11; bra $L10; $L9: .loc 1 70 17 shr.s32 %r120,%r55,23; .loc 1 70 12 add.u32 %r70,%r120,-127; bra $L10; $L36: .loc 1 69 14 mov.u32 %r70,-126; $L10: .loc 1 73 4 setp.lt.s32 %r121,%r58,-126; @ %r121 bra $L12; .loc 1 74 33 and.b32 %r31,%r52,8388607; .loc 1 74 9 or.b32 %r46,%r31,8388608; bra $L13; $L12: .loc 1 76 8 mov.u32 %r123,-126; sub.u32 %r122,%r123,%r58; .loc 1 77 9 shl.b32 %r46,%r47,%r122; $L13: .loc 1 79 4 setp.lt.s32 %r163,%r70,-126; @ %r163 bra $L14; .loc 1 80 33 and.b32 %r32,%r53,8388607; .loc 1 80 9 or.b32 %r48,%r32,8388608; bra $L15; $L14: .loc 1 82 8 mov.u32 %r126,-126; sub.u32 %r125,%r126,%r70; .loc 1 83 9 shl.b32 %r48,%r55,%r125; $L15: .loc 1 87 4 sub.u32 %r64,%r58,%r70; .loc 1 89 9 add.u32 %r66,%r64,-1; .loc 1 89 7 setp.eq.u32 %r127,%r64,0; @ %r127 bra $L37; .loc 1 88 4 mov.u32 %r49,0; $L19: .loc 1 90 8 sub.u32 %r67,%r46,%r48; .loc 1 91 8 setp.ge.s32 %r128,%r67,0; @ %r128 bra $L17; .loc 1 91 18 add.u32 %r46,%r46,%r46; bra $L18; $L17: .loc 1 92 15 add.u32 %r46,%r67,%r67; .loc 1 92 27 add.u32 %r49,%r49,1; $L18: .loc 1 93 8 add.u32 %r49,%r49,%r49; .loc 1 89 9 add.u32 %r66,%r66,-1; .loc 1 89 7 setp.ne.u32 %r132,%r66,-1; @ %r132 bra $L19; bra $L16; $L37: .loc 1 88 4 mov.u32 %r49,%r64; $L16: .loc 1 95 4 sub.u32 %r68,%r46,%r48; .loc 1 96 4 setp.lt.s32 %r133,%r68,0; @ %r133 bra $L20; .loc 1 96 20 add.u32 %r49,%r49,1; mov.u32 %r46,%r68; $L20: .loc 1 99 4 setp.eq.u32 %r134,%r46,0; @ %r134 bra $L21; .loc 1 103 7 setp.le.s32 %r135,%r46,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 %r50,%r49; bra $L25; $L24: .loc 1 100 23 mov.u32 %r50,%r49; $L25: .loc 1 100 11 st.u32 [%r80],%r50; .loc 1 101 17 cvta.const.u64 %r137,Zero; .loc 1 101 32 shr.u32 %r138,%r54,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 %r46,%r46,%r46; .loc 1 105 9 add.u32 %r70,%r70,-1; .loc 1 103 7 setp.le.s32 %r143,%r46,8388607; @ %r143 bra $L22; setp.lt.s32 %r163,%r70,-126; $L23: .loc 1 107 4 @ %r163 bra $L26; .loc 1 108 15 add.u32 %r36,%r46,-8388608; .loc 1 108 32 add.u32 %r145,%r70,127; .loc 1 108 37 shl.b32 %r146,%r145,23; .loc 1 108 9 or.b32 %r47,%r146,%r36; bra $L4; $L26: .loc 1 110 8 mov.u32 %r148,-126; sub.u32 %r147,%r148,%r70; .loc 1 111 9 shr.s32 %r47,%r46,%r147; bra $L4; $L34: .loc 1 55 8 mov.u32 %r49,0; $L4: .loc 1 114 2 mov.b32 %r45,%r47; .loc 1 115 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r79; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r150,[%value_in]; } .loc 1 116 5 setp.lt.f32 %r151,%r150,0f01000000; @ ! %r151 bra $L50; .loc 1 117 11 add.f32 %r39,%r45,%r45; .loc 1 117 9 setp.gt.f32 %r152,%r39,%r150; @ %r152 bra $L29; .loc 1 117 16 setp.neu.f32 %r153,%r39,%r150; @ %r153 bra $L30; .loc 1 117 33 and.b32 %r154,%r49,1; .loc 1 117 27 setp.eq.u32 %r155,%r154,0; @ %r155 bra $L30; $L29: .loc 1 118 4 add.u32 %r49,%r49,1; .loc 1 119 4 sub.f32 %r45,%r45,%r150; bra $L30; $L50: .loc 1 121 19 mul.f32 %r41,%r150,0f3f000000; .loc 1 121 12 setp.lt.f32 %r156,%r41,%r45; @ %r156 bra $L31; .loc 1 121 22 setp.neu.f32 %r157,%r41,%r45; @ %r157 bra $L30; .loc 1 121 42 and.b32 %r158,%r49,1; .loc 1 121 36 setp.eq.u32 %r159,%r158,0; @ %r159 bra $L30; $L31: .loc 1 122 7 add.u32 %r49,%r49,1; .loc 1 123 7 sub.f32 %r45,%r45,%r150; $L30: .loc 1 126 2 mov.b32 %r160,%r45; xor.b32 %r43,%r54,%r160; mov.b32 %r77,%r43; .loc 1 127 4 and.b32 %r74,%r49,2147483647; .loc 1 128 19 setp.ge.s32 %r161,%r23,0; @ %r161 bra $L32; .loc 1 128 16 neg.s32 %r51,%r74; bra $L33; $L32: .loc 1 128 19 mov.u32 %r51,%r74; $L33: .loc 1 128 7 st.u32 [%r80],%r51; $L1: .loc 1 130 1 mov.f32 %value,%r77; st.param.f32 [%value_out],%value; ret; } lib_a-sf_rint.o/1591654536 399 399 100644 3634 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r22; .reg .f32 %r33; .reg .f32 %r34; .reg .f32 %r35; .reg .u32 %r38; .reg .f32 %r47; .reg .f32 %r48; .reg .f32 %r49; .reg .u32 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r59; .reg .u32 %r60; .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 %r22,%r62; .loc 1 41 5 and.b32 %r52,%r22,2147483647; .loc 1 42 10 shr.u32 %r63,%r52,23; .loc 1 42 15 add.u32 %r53,%r63,-127; .loc 1 43 4 setp.gt.s32 %r64,%r53,22; @ %r64 bra $L2; .loc 1 44 8 setp.eq.u32 %r65,%r52,0; @ %r65 bra $L3; .loc 1 40 15 shr.u32 %r51,%r22,31; .loc 1 46 8 setp.ge.s32 %r66,%r53,0; @ %r66 bra $L4; .loc 1 47 6 and.b32 %r54,%r22,8388607; .loc 1 51 19 cvta.const.u64 %r67,TWO23; cvt.s64.s32 %r68,%r51; shl.b64 %r69,%r68,2; add.u64 %r70,%r67,%r69; ld.f32 %r33,[%r70]; .loc 1 49 14 neg.s32 %r71,%r54; .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,%r22,-1048576; .loc 1 49 6 or.b32 %r76,%r74,%r75; .loc 1 51 23 mov.b32 %r77,%r76; add.f32 %r34,%r33,%r77; .loc 1 51 12 st.f32 [%frame],%r34; .loc 1 52 16 ld.f32 %r35,[%frame]; .loc 1 52 12 sub.f32 %r78,%r35,%r33; .loc 1 54 3 mov.b32 %r80,%r78; and.b32 %r79,%r80,2147483647; shl.b32 %r81,%r51,31; or.b32 %r38,%r79,%r81; mov.b32 %r62,%r38; .loc 1 55 17 bra $L3; $L4: .loc 1 57 19 mov.u32 %r82,8388607; shr.s32 %r59,%r82,%r53; .loc 1 58 9 and.b32 %r83,%r22,%r59; .loc 1 58 5 setp.eq.u32 %r84,%r83,0; @ %r84 bra $L3; .loc 1 59 4 shr.u32 %r60,%r59,1; .loc 1 60 9 and.b32 %r85,%r22,%r60; .loc 1 60 5 setp.eq.u32 %r86,%r85,0; @ %r86 bra $L5; .loc 1 60 27 not.b32 %r87,%r60; .loc 1 60 25 and.b32 %r88,%r87,%r22; .loc 1 60 43 mov.u32 %r90,2097152; shr.s32 %r89,%r90,%r53; .loc 1 60 31 or.b32 %r91,%r88,%r89; mov.b32 %r62,%r91; bra $L5; $L2: .loc 1 63 8 setp.le.u32 %r92,%r52,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,%r51; shl.b64 %r95,%r94,2; add.u64 %r96,%r93,%r95; ld.f32 %r47,[%r96]; .loc 1 68 15 add.f32 %r48,%r47,%r62; .loc 1 68 4 st.f32 [%frame],%r48; .loc 1 69 10 ld.f32 %r49,[%frame]; sub.f32 %r62,%r49,%r47; $L3: .loc 1 70 1 mov.f32 %value,%r62; st.param.f32 [%value_out],%value; ret; } /1309 1591654536 399 399 100644 1783 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r34,%r36; .loc 1 28 46 shr.u32 %r37,%r34,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,%r34,-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 %r32,%r42,%r31; .loc 1 42 18 and.b32 %r43,%r32,%r34; .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 %r33,%r45,%r34; .loc 1 47 16 not.b32 %r47,%r32; .loc 1 47 13 and.b32 %r30,%r47,%r33; 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; } /1327 1591654536 399 399 100644 3799 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 DECL: copysignf .extern .func (.param .f32 %value_out) copysignf (.param .f32 %in_ar0, .param .f32 %in_ar1); // 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 .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 %r64; .reg .u32 %r65; .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 .f32 %r77; .reg .pred %r78; .reg .f32 %r79; .reg .f32 %r81; .reg .pred %r82; .reg .u32 %r83; .reg .u32 %r84; .reg .u32 %r85; .reg .pred %r86; .reg .f32 %r87; .reg .f32 %r89; .reg .u32 %r90; .reg .u32 %r91; .reg .u32 %r92; .reg .u32 %r93; .reg .f32 %r94; 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,%r46,%r62; .loc 1 46 14 set.u32.gt.s64 %r64,%r54,50000; neg.s32 %r65,%r64; .loc 1 46 27 set.u32.gt.s32 %r67,%r28,254; neg.s32 %r68,%r67; .loc 1 46 22 cvt.u16.u32 %r70,%r65; cvt.u16.u32 %r71,%r68; or.b16 %r69,%r70,%r71; .loc 1 46 12 cvt.u32.u16 %r72,%r69; cvt.u16.u8 %r73,%r72; setp.eq.u16 %r74,%r73,0; @ %r74 bra $L5; .loc 1 47 16 mov.f32 %r75,0f7149f2ca; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r75; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r53; call (%value_in),copysignf,(%out_arg1,%out_arg2); ld.param.f32 %r77,[%value_in]; } .loc 1 47 15 mul.f32 %r52,%r77,0f7149f2ca; bra $L1; $L5: .loc 1 48 5 setp.ge.s64 %r78,%r54,-50000; @ %r78 bra $L6; .loc 1 49 16 mov.f32 %r79,0f0da24260; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r79; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r53; call (%value_in),copysignf,(%out_arg1,%out_arg2); ld.param.f32 %r81,[%value_in]; } .loc 1 49 15 mul.f32 %r52,%r81,0f0da24260; bra $L1; $L6: .loc 1 50 12 setp.le.s32 %r82,%r28,0; @ %r82 bra $L7; .loc 1 51 7 and.b32 %r83,%r45,-2139095041; shl.b32 %r84,%r28,23; or.b32 %r85,%r83,%r84; mov.b32 %r52,%r85; .loc 1 51 57 bra $L1; $L7: .loc 1 52 12 setp.ge.s32 %r86,%r28,-24; @ %r86 bra $L8; .loc 1 53 18 mov.f32 %r87,0f0da24260; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r87; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r53; call (%value_in),copysignf,(%out_arg1,%out_arg2); ld.param.f32 %r89,[%value_in]; } .loc 1 53 17 mul.f32 %r52,%r89,0f0da24260; bra $L1; $L8: .loc 1 54 11 add.u32 %r90,%r28,25; .loc 1 55 2 shl.b32 %r91,%r90,23; and.b32 %r92,%r45,-2139095041; or.b32 %r93,%r91,%r92; .loc 1 56 17 mov.b32 %r94,%r93; mul.f32 %r52,%r94,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; } /1347 1591654536 399 399 100644 3548 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 DECL: copysignf .extern .func (.param .f32 %value_out) copysignf (.param .f32 %in_ar0, .param .f32 %in_ar1); // 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 .u32 %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u32 %r43; .reg .u32 %r44; .reg .f32 %r47; .reg .f32 %r48; .reg .u32 %r49; .reg .pred %r50; .reg .pred %r51; .reg .u32 %r52; .reg .pred %r53; .reg .pred %r54; .reg .u32 %r55; .reg .u32 %r56; .reg .pred %r57; .reg .f32 %r58; .reg .f32 %r60; .reg .pred %r61; .reg .u32 %r62; .reg .u32 %r63; .reg .u32 %r64; .reg .pred %r65; .reg .pred %r66; .reg .f32 %r67; .reg .f32 %r69; .reg .f32 %r70; .reg .f32 %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .u32 %r76; .reg .f32 %r77; mov.f32 %r48,%ar0; mov.u32 %r49,%ar1; .loc 1 46 2 mov.b32 %r44,%r48; .loc 1 47 5 and.b32 %r41,%r44,2147483647; .loc 1 49 5 setp.eq.u32 %r50,%r41,0; @ %r50 bra $L11; .loc 1 51 12 setp.le.u32 %r51,%r41,2139095039; @ %r51 bra $L3; .loc 1 52 14 add.f32 %r47,%r48,%r48; bra $L1; $L3: .loc 1 53 12 and.b32 %r52,%r44,2139095040; setp.ne.u32 %r53,%r52,0; @ %r53 bra $L4; .loc 1 54 8 mul.f32 %r48,%r48,0f4c000000; .loc 1 57 16 setp.lt.s32 %r54,%r49,-50000; @ %r54 bra $L5; .loc 1 55 6 mov.b32 %r40,%r48; .loc 1 56 26 shr.s32 %r55,%r40,23; and.b32 %r56,%r55,255; .loc 1 56 8 add.u32 %r39,%r56,-25; bra $L6; $L5: .loc 1 57 39 mul.f32 %r47,%r48,0f0da24260; bra $L1; $L4: .loc 1 46 2 mov.u32 %r40,%r44; .loc 1 48 15 shr.u32 %r39,%r41,23; $L6: .loc 1 59 11 add.u32 %r43,%r39,%r49; .loc 1 60 12 setp.le.s32 %r57,%r43,254; @ %r57 bra $L7; .loc 1 60 46 mov.f32 %r58,0f7149f2ca; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r58; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r48; call (%value_in),copysignf,(%out_arg1,%out_arg2); ld.param.f32 %r60,[%value_in]; } .loc 1 60 45 mul.f32 %r47,%r60,0f7149f2ca; bra $L1; $L7: .loc 1 61 12 setp.le.s32 %r61,%r43,0; @ %r61 bra $L8; .loc 1 62 7 and.b32 %r62,%r40,-2139095041; shl.b32 %r63,%r43,23; or.b32 %r64,%r62,%r63; mov.b32 %r47,%r64; .loc 1 62 57 bra $L1; $L8: .loc 1 63 12 setp.ge.s32 %r65,%r43,-22; @ %r65 bra $L9; .loc 1 64 16 setp.le.s32 %r66,%r49,50000; @ %r66 bra $L10; .loc 1 65 15 mov.f32 %r67,0f7149f2ca; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r67; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r48; call (%value_in),copysignf,(%out_arg1,%out_arg2); ld.param.f32 %r69,[%value_in]; } .loc 1 65 14 mul.f32 %r47,%r69,0f7149f2ca; bra $L1; $L10: .loc 1 66 23 mov.f32 %r70,0f0da24260; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r70; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r48; call (%value_in),copysignf,(%out_arg1,%out_arg2); ld.param.f32 %r72,[%value_in]; } .loc 1 66 22 mul.f32 %r47,%r72,0f0da24260; bra $L1; $L9: .loc 1 68 11 add.u32 %r73,%r43,25; .loc 1 69 2 shl.b32 %r74,%r73,23; and.b32 %r75,%r40,-2139095041; or.b32 %r76,%r74,%r75; .loc 1 70 17 mov.b32 %r77,%r76; mul.f32 %r47,%r77,0f33000000; bra $L1; $L11: .loc 1 50 13 mov.f32 %r47,%r48; $L1: .loc 1 71 1 mov.f32 %value,%r47; st.param.f32 [%value_out],%value; ret; } /1366 1591654536 399 399 100644 1321 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654536 399 399 100644 4348 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 28 2 mov.b32 %r34,%r38; .loc 1 31 5 and.b32 %r35,%r34,2147483647; .loc 1 32 4 setp.gt.s32 %r39,%r35,1061752792; @ %r39 bra $L2; .loc 1 32 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 35 10 setp.le.s32 %r44,%r35,2139095039; @ %r44 bra $L4; .loc 1 35 45 sub.f32 %r37,%r38,%r38; bra $L1; $L4: .loc 1 39 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 40 14 and.b32 %r22,%r47,3; 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 41 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 42 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 43 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 43 18 neg.f32 %r37,%r64; bra $L1; $L7: .loc 1 45 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 45 11 neg.f32 %r37,%r68; $L1: .loc 1 48 1 mov.f32 %value,%r37; st.shared.u64 [%sspslot],%sspprev; st.param.f32 [%value_out],%value; ret; } lib_a-sf_tan.o/ 1591654536 399 399 100644 2910 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/1591654536 399 399 100644 2877 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; 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; } /1385 1591654536 399 399 100644 1152 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r28; .reg .u32 %r30; .reg .f32 %r32; .reg .u32 %r33; .reg .u32 %r34; .reg .pred %r35; .reg .pred %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .u32 %r40; .reg .u32 %r41; mov.f32 %r32,%ar0; .loc 1 23 3 mov.b32 %r28,%r32; .loc 1 29 41 shr.s32 %r33,%r28,23; and.b32 %r34,%r33,255; .loc 1 29 21 add.u32 %r30,%r34,-127; .loc 1 31 6 setp.gt.s32 %r35,%r30,22; @ %r35 bra $L2; .loc 1 33 10 setp.ge.s32 %r36,%r30,0; @ %r36 bra $L3; .loc 1 26 11 and.b32 %r37,%r28,-2147483648; .loc 1 36 11 mov.b32 %r32,%r37; bra $L2; $L3: .loc 1 40 11 mov.u32 %r39,8388607; shr.s32 %r38,%r39,%r30; not.b32 %r40,%r38; and.b32 %r41,%r40,%r28; mov.b32 %r32,%r41; $L2: .loc 1 52 1 mov.f32 %value,%r32; st.param.f32 [%value_out],%value; ret; } lib_a-sinhl.o/ 1591654536 399 399 100644 796 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654536 399 399 100644 788 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } lib_a-sqrtl.o/ 1591654536 399 399 100644 796 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 DECL: sqrt .extern .func (.param .f64 %value_out) sqrt (.param .f64 %in_ar0); // 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; .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),sqrt,(%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-tanhl.o/ 1591654536 399 399 100644 796 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654536 399 399 100644 788 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/1591654536 399 399 100644 812 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654536 399 399 100644 804 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 DECL: trunc .extern .func (.param .f64 %value_out) trunc (.param .f64 %in_ar0); // 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; .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),trunc,(%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-w_acos.o/ 1591654536 399 399 100644 4420 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_acos .extern .func (.param .f64 %value_out) __ieee754_acos (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: nan .extern .func (.param .f64 %value_out) nan (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[5] = {97,99,111,115,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[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 .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 %r32; .reg .f64 %r33; .reg .f64 %r34; .reg .f64 %r36; .reg .u32 %r37; .reg .pred %r38; .reg .u32 %r40; .reg .pred %r41; .reg .f64 %r43; .reg .pred %r44; .reg .u32 %r45; .reg .u64 %r46; .reg .u32 %r47; .reg .u64 %r48; .reg .f64 %r49; .reg .u32 %r50; .reg .pred %r51; .reg .u64 %r52; .reg .u32 %r53; .reg .u32 %r55; .reg .pred %r56; .reg .u64 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .pred %r60; .reg .u64 %r61; mov.f64 %r34,%ar0; .loc 1 96 13 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r34; call (%value_in),__ieee754_acos,(%out_arg1); ld.param.f64 %r36,[%value_in]; } mov.f64 %r33,%r36; .loc 1 97 4 ld.global.u32 %r37,[__fdlib_version]; setp.eq.u32 %r38,%r37,-1; @ %r38 bra $L1; .loc 1 97 31 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r34; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r40,[%value_in]; } .loc 1 97 28 setp.eq.u32 %r41,%r40,0; @ %r41 bra $L1; .loc 1 98 5 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r34; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r43,[%value_in]; } .loc 1 98 4 setp.gt.f64 %r44,%r43,0d3ff0000000000000; @ ! %r44 bra $L1; .loc 1 100 15 mov.u32 %r45,1; st.u32 [%frame],%r45; .loc 1 101 15 cvta.const.u64 %r46,$LC0; st.u64 [%frame+8],%r46; .loc 1 102 14 mov.u32 %r47,0; st.u32 [%frame+40],%r47; .loc 1 103 26 st.f64 [%frame+24],%r34; .loc 1 103 15 st.f64 [%frame+16],%r34; .loc 1 104 19 cvta.const.u64 %r48,$LC1; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r48; call (%value_in),nan,(%out_arg1); ld.param.f64 %r49,[%value_in]; } .loc 1 104 17 st.f64 [%frame+32],%r49; .loc 1 105 9 ld.global.u32 %r50,[__fdlib_version]; setp.ne.u32 %r51,%r50,2; @ %r51 bra $L4; .loc 1 106 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r52,[%value_in]; } .loc 1 106 15 mov.u32 %r53,33; st.u32 [%r52],%r53; bra $L5; $L4: .loc 1 107 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r55,[%value_in]; } .loc 1 107 14 setp.ne.u32 %r56,%r55,0; @ %r56 bra $L5; .loc 1 108 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r57,[%value_in]; } .loc 1 108 15 mov.u32 %r58,33; st.u32 [%r57],%r58; $L5: .loc 1 110 16 ld.u32 %r59,[%frame+40]; setp.eq.u32 %r60,%r59,0; @ %r60 bra $L6; .loc 1 111 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r61,[%value_in]; } .loc 1 111 20 ld.u32 %r32,[%frame+40]; .loc 1 111 15 st.u32 [%r61],%r32; $L6: .loc 1 112 16 ld.f64 %r33,[%frame+32]; $L1: .loc 1 116 1 mov.f64 %value,%r33; st.shared.u64 [%sspslot],%sspprev; st.param.f64 [%value_out],%value; ret; } lib_a-w_acosh.o/1591654536 399 399 100644 3902 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_acosh .extern .func (.param .f64 %value_out) __ieee754_acosh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[6] = {97,99,111,115,104,0 }; // 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 .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 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r35; .reg .u32 %r36; .reg .pred %r37; .reg .u32 %r39; .reg .pred %r40; .reg .pred %r41; .reg .u32 %r42; .reg .u64 %r43; .reg .u32 %r44; .reg .f64 %r45; .reg .f64 %r46; .reg .u32 %r47; .reg .pred %r48; .reg .u64 %r49; .reg .u32 %r50; .reg .u32 %r52; .reg .pred %r53; .reg .u64 %r54; .reg .u32 %r55; .reg .u32 %r56; .reg .pred %r57; .reg .u64 %r58; mov.f64 %r33,%ar0; .loc 1 100 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; call (%value_in),__ieee754_acosh,(%out_arg1); ld.param.f64 %r35,[%value_in]; } mov.f64 %r32,%r35; .loc 1 101 4 ld.global.u32 %r36,[__fdlib_version]; setp.eq.u32 %r37,%r36,-1; @ %r37 bra $L1; .loc 1 101 31 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r39,[%value_in]; } .loc 1 101 28 setp.eq.u32 %r40,%r39,0; @ %r40 bra $L1; .loc 1 102 4 setp.lt.f64 %r41,%r33,0d3ff0000000000000; @ ! %r41 bra $L1; .loc 1 104 22 mov.u32 %r42,1; st.u32 [%frame],%r42; .loc 1 105 22 cvta.const.u64 %r43,$LC0; st.u64 [%frame+8],%r43; .loc 1 106 14 mov.u32 %r44,0; st.u32 [%frame+40],%r44; .loc 1 107 26 st.f64 [%frame+24],%r33; .loc 1 107 15 st.f64 [%frame+16],%r33; .loc 1 108 29 mov.f64 %r46,0d0000000000000000; div.rn.f64 %r45,%r46,0d0000000000000000; .loc 1 108 24 st.f64 [%frame+32],%r45; .loc 1 109 16 ld.global.u32 %r47,[__fdlib_version]; setp.ne.u32 %r48,%r47,2; @ %r48 bra $L4; .loc 1 110 16 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r49,[%value_in]; } .loc 1 110 22 mov.u32 %r50,33; st.u32 [%r49],%r50; bra $L5; $L4: .loc 1 111 23 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r52,[%value_in]; } .loc 1 111 21 setp.ne.u32 %r53,%r52,0; @ %r53 bra $L5; .loc 1 112 16 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r54,[%value_in]; } .loc 1 112 22 mov.u32 %r55,33; st.u32 [%r54],%r55; $L5: .loc 1 114 9 ld.u32 %r56,[%frame+40]; setp.eq.u32 %r57,%r56,0; @ %r57 bra $L6; .loc 1 115 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r58,[%value_in]; } .loc 1 115 20 ld.u32 %r31,[%frame+40]; .loc 1 115 15 st.u32 [%r58],%r31; $L6: .loc 1 116 16 ld.f64 %r32,[%frame+32]; $L1: .loc 1 120 1 mov.f64 %value,%r32; st.shared.u64 [%sspslot],%sspprev; st.param.f64 [%value_out],%value; ret; } lib_a-w_asin.o/ 1591654536 399 399 100644 4424 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_asin .extern .func (.param .f64 %value_out) __ieee754_asin (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabs .extern .func (.param .f64 %value_out) fabs (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: nan .extern .func (.param .f64 %value_out) nan (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[5] = {97,115,105,110,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[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 .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 %r32; .reg .f64 %r33; .reg .f64 %r34; .reg .f64 %r36; .reg .u32 %r37; .reg .pred %r38; .reg .u32 %r40; .reg .pred %r41; .reg .f64 %r43; .reg .pred %r44; .reg .u32 %r45; .reg .u64 %r46; .reg .u32 %r47; .reg .u64 %r48; .reg .f64 %r49; .reg .u32 %r50; .reg .pred %r51; .reg .u64 %r52; .reg .u32 %r53; .reg .u32 %r55; .reg .pred %r56; .reg .u64 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .pred %r60; .reg .u64 %r61; mov.f64 %r34,%ar0; .loc 1 99 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r34; call (%value_in),__ieee754_asin,(%out_arg1); ld.param.f64 %r36,[%value_in]; } mov.f64 %r33,%r36; .loc 1 100 4 ld.global.u32 %r37,[__fdlib_version]; setp.eq.u32 %r38,%r37,-1; @ %r38 bra $L1; .loc 1 100 31 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r34; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r40,[%value_in]; } .loc 1 100 28 setp.eq.u32 %r41,%r40,0; @ %r41 bra $L1; .loc 1 101 5 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r34; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r43,[%value_in]; } .loc 1 101 4 setp.gt.f64 %r44,%r43,0d3ff0000000000000; @ ! %r44 bra $L1; .loc 1 103 15 mov.u32 %r45,1; st.u32 [%frame],%r45; .loc 1 104 15 cvta.const.u64 %r46,$LC0; st.u64 [%frame+8],%r46; .loc 1 105 14 mov.u32 %r47,0; st.u32 [%frame+40],%r47; .loc 1 106 26 st.f64 [%frame+24],%r34; .loc 1 106 15 st.f64 [%frame+16],%r34; .loc 1 107 19 cvta.const.u64 %r48,$LC1; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r48; call (%value_in),nan,(%out_arg1); ld.param.f64 %r49,[%value_in]; } .loc 1 107 17 st.f64 [%frame+32],%r49; .loc 1 108 8 ld.global.u32 %r50,[__fdlib_version]; setp.ne.u32 %r51,%r50,2; @ %r51 bra $L4; .loc 1 109 8 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r52,[%value_in]; } .loc 1 109 14 mov.u32 %r53,33; st.u32 [%r52],%r53; bra $L5; $L4: .loc 1 110 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r55,[%value_in]; } .loc 1 110 14 setp.ne.u32 %r56,%r55,0; @ %r56 bra $L5; .loc 1 111 8 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r57,[%value_in]; } .loc 1 111 14 mov.u32 %r58,33; st.u32 [%r57],%r58; $L5: .loc 1 113 9 ld.u32 %r59,[%frame+40]; setp.eq.u32 %r60,%r59,0; @ %r60 bra $L6; .loc 1 114 8 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r61,[%value_in]; } .loc 1 114 19 ld.u32 %r32,[%frame+40]; .loc 1 114 14 st.u32 [%r61],%r32; $L6: .loc 1 115 16 ld.f64 %r33,[%frame+32]; $L1: .loc 1 119 1 mov.f64 %value,%r33; st.shared.u64 [%sspslot],%sspprev; st.param.f64 [%value_out],%value; ret; } lib_a-w_atan2.o/1591654536 399 399 100644 1035 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 87 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 88 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } lib_a-w_atanh.o/1591654536 399 399 100644 5400 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_atanh .extern .func (.param .f64 %value_out) __ieee754_atanh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.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: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[6] = {97,116,97,110,104,0 }; // 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 .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 %r34; .reg .u32 %r35; .reg .f64 %r37; .reg .f64 %r38; .reg .f64 %r40; .reg .u32 %r41; .reg .pred %r42; .reg .u32 %r44; .reg .pred %r45; .reg .f64 %r47; .reg .pred %r48; .reg .pred %r49; .reg .u32 %r50; .reg .u64 %r51; .reg .u32 %r52; .reg .f64 %r53; .reg .f64 %r54; .reg .pred %r55; .reg .u64 %r56; .reg .u32 %r57; .reg .u32 %r59; .reg .pred %r60; .reg .u64 %r61; .reg .u32 %r62; .reg .u32 %r63; .reg .u64 %r64; .reg .u32 %r65; .reg .f64 %r66; .reg .pred %r67; .reg .u64 %r68; .reg .u32 %r69; .reg .u32 %r71; .reg .pred %r72; .reg .u64 %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .pred %r76; .reg .u64 %r77; mov.f64 %r38,%ar0; .loc 1 99 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; call (%value_in),__ieee754_atanh,(%out_arg1); ld.param.f64 %r40,[%value_in]; } mov.f64 %r37,%r40; .loc 1 100 4 ld.global.u32 %r41,[__fdlib_version]; setp.eq.u32 %r42,%r41,-1; @ %r42 bra $L1; .loc 1 100 31 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r44,[%value_in]; } .loc 1 100 28 setp.eq.u32 %r45,%r44,0; @ %r45 bra $L1; .loc 1 101 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r47,[%value_in]; } .loc 1 102 4 setp.ge.f64 %r48,%r47,0d3ff0000000000000; @ ! %r48 bra $L1; ld.global.u32 %r35,[__fdlib_version]; .loc 1 103 8 setp.gt.f64 %r49,%r47,0d3ff0000000000000; @ ! %r49 bra $L23; .loc 1 105 26 mov.u32 %r50,1; st.u32 [%frame],%r50; .loc 1 106 26 cvta.const.u64 %r51,$LC0; st.u64 [%frame+8],%r51; .loc 1 107 11 mov.u32 %r52,0; st.u32 [%frame+40],%r52; .loc 1 108 23 st.f64 [%frame+24],%r38; .loc 1 108 12 st.f64 [%frame+16],%r38; .loc 1 109 33 mov.f64 %r54,0d0000000000000000; div.rn.f64 %r53,%r54,0d0000000000000000; .loc 1 109 28 st.f64 [%frame+32],%r53; .loc 1 110 20 setp.ne.u32 %r55,%r35,2; @ %r55 bra $L6; .loc 1 111 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r56,[%value_in]; } .loc 1 111 25 mov.u32 %r57,33; st.u32 [%r56],%r57; bra $L7; $L6: .loc 1 112 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r59,[%value_in]; } .loc 1 112 25 setp.eq.u32 %r60,%r59,0; @ ! %r60 bra $L7; .loc 1 113 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r61,[%value_in]; } .loc 1 113 25 mov.u32 %r62,33; st.u32 [%r61],%r62; bra $L7; $L23: .loc 1 117 26 mov.u32 %r63,2; st.u32 [%frame],%r63; .loc 1 118 26 cvta.const.u64 %r64,$LC0; st.u64 [%frame+8],%r64; .loc 1 119 11 mov.u32 %r65,0; st.u32 [%frame+40],%r65; .loc 1 120 23 st.f64 [%frame+24],%r38; .loc 1 120 12 st.f64 [%frame+16],%r38; .loc 1 121 17 div.rn.f64 %r66,%r38,0d0000000000000000; .loc 1 121 14 st.f64 [%frame+32],%r66; .loc 1 122 20 setp.ne.u32 %r67,%r35,2; @ %r67 bra $L9; .loc 1 123 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r68,[%value_in]; } .loc 1 123 25 mov.u32 %r69,33; st.u32 [%r68],%r69; bra $L7; $L9: .loc 1 124 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r71,[%value_in]; } .loc 1 124 25 setp.ne.u32 %r72,%r71,0; @ %r72 bra $L7; .loc 1 125 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r73,[%value_in]; } .loc 1 125 25 mov.u32 %r74,33; st.u32 [%r73],%r74; $L7: .loc 1 128 9 ld.u32 %r75,[%frame+40]; setp.eq.u32 %r76,%r75,0; @ %r76 bra $L11; .loc 1 129 15 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r77,[%value_in]; } .loc 1 129 26 ld.u32 %r34,[%frame+40]; .loc 1 129 21 st.u32 [%r77],%r34; $L11: .loc 1 130 23 ld.f64 %r37,[%frame+32]; $L1: .loc 1 134 1 mov.f64 %value,%r37; st.shared.u64 [%sspslot],%sspprev; st.param.f64 [%value_out],%value; ret; } lib_a-w_cosh.o/ 1591654536 399 399 100644 4270 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_cosh .extern .func (.param .f64 %value_out) __ieee754_cosh (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.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: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[5] = {99,111,115,104,0 }; // 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 .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 %r25; .reg .u32 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r35; .reg .u32 %r36; .reg .pred %r37; .reg .u32 %r39; .reg .pred %r40; .reg .f64 %r42; .reg .pred %r43; .reg .u32 %r44; .reg .u64 %r45; .reg .u32 %r46; .reg .pred %r47; .reg .f64 %r48; .reg .f64 %r49; .reg .pred %r50; .reg .u64 %r51; .reg .u32 %r52; .reg .u32 %r54; .reg .pred %r55; .reg .u64 %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .pred %r59; .reg .u64 %r60; mov.f64 %r33,%ar0; .loc 1 85 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; call (%value_in),__ieee754_cosh,(%out_arg1); ld.param.f64 %r35,[%value_in]; } mov.f64 %r32,%r35; .loc 1 86 4 ld.global.u32 %r36,[__fdlib_version]; setp.eq.u32 %r37,%r36,-1; @ %r37 bra $L1; .loc 1 86 31 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r39,[%value_in]; } .loc 1 86 28 setp.eq.u32 %r40,%r39,0; @ %r40 bra $L1; .loc 1 87 5 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r42,[%value_in]; } .loc 1 87 4 setp.gt.f64 %r43,%r42,0d408633ce8fb9f87d; @ ! %r43 bra $L1; .loc 1 95 15 mov.u32 %r44,3; st.u32 [%frame],%r44; .loc 1 96 15 cvta.const.u64 %r45,$LC0; st.u64 [%frame+8],%r45; .loc 1 97 14 mov.u32 %r46,0; st.u32 [%frame+40],%r46; .loc 1 98 26 st.f64 [%frame+24],%r33; .loc 1 98 15 st.f64 [%frame+16],%r33; .loc 1 99 23 ld.global.u32 %r25,[__fdlib_version]; .loc 1 99 9 setp.ne.u32 %r47,%r25,0; @ %r47 bra $L4; .loc 1 100 20 mov.f64 %r48,0d47efffffe0000000; st.f64 [%frame+32],%r48; bra $L5; $L4: .loc 1 102 20 mov.f64 %r49,0d7ff0000000000000; st.f64 [%frame+32],%r49; .loc 1 103 9 setp.ne.u32 %r50,%r25,2; @ %r50 bra $L5; .loc 1 104 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r51,[%value_in]; } .loc 1 104 15 mov.u32 %r52,34; st.u32 [%r51],%r52; bra $L6; $L5: .loc 1 105 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r54,[%value_in]; } .loc 1 105 14 setp.ne.u32 %r55,%r54,0; @ %r55 bra $L6; .loc 1 106 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r56,[%value_in]; } .loc 1 106 15 mov.u32 %r57,34; st.u32 [%r56],%r57; $L6: .loc 1 108 9 ld.u32 %r58,[%frame+40]; setp.eq.u32 %r59,%r58,0; @ %r59 bra $L7; .loc 1 109 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r60,[%value_in]; } .loc 1 109 20 ld.u32 %r31,[%frame+40]; .loc 1 109 15 st.u32 [%r60],%r31; $L7: .loc 1 110 16 ld.f64 %r32,[%frame+32]; $L1: .loc 1 114 1 mov.f64 %value,%r32; st.shared.u64 [%sspslot],%sspprev; st.param.f64 [%value_out],%value; ret; } lib_a-w_drem.o/ 1591654536 399 399 100644 1012 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654536 399 399 100644 5583 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // 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 DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[4] = {101,120,112,0 }; // 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 .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 .u32 %r30; .reg .u32 %r37; .reg .f64 %r38; .reg .f64 %r39; .reg .f64 %r41; .reg .u32 %r42; .reg .pred %r43; .reg .u32 %r45; .reg .pred %r46; .reg .pred %r47; .reg .u32 %r48; .reg .u64 %r49; .reg .u32 %r50; .reg .pred %r51; .reg .f64 %r52; .reg .f64 %r53; .reg .pred %r54; .reg .u64 %r55; .reg .u32 %r56; .reg .u32 %r58; .reg .pred %r59; .reg .u64 %r60; .reg .u32 %r61; .reg .u32 %r62; .reg .pred %r63; .reg .u64 %r64; .reg .pred %r65; .reg .u32 %r66; .reg .u64 %r67; .reg .u32 %r68; .reg .f64 %r69; .reg .u32 %r70; .reg .pred %r71; .reg .u64 %r72; .reg .u32 %r73; .reg .u32 %r75; .reg .pred %r76; .reg .u64 %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .pred %r80; .reg .u64 %r81; mov.f64 %r39,%ar0; .loc 1 88 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; call (%value_in),__ieee754_exp,(%out_arg1); ld.param.f64 %r41,[%value_in]; } mov.f64 %r38,%r41; .loc 1 89 4 ld.global.u32 %r42,[__fdlib_version]; setp.eq.u32 %r43,%r42,-1; @ %r43 bra $L1; .loc 1 90 5 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; call (%value_in),finite,(%out_arg1); ld.param.u32 %r45,[%value_in]; } .loc 1 90 4 setp.eq.u32 %r46,%r45,0; @ %r46 bra $L1; .loc 1 91 8 setp.gt.f64 %r47,%r39,0d40862e42fefa39ef; @ ! %r47 bra $L27; .loc 1 99 12 mov.u32 %r48,3; st.u32 [%frame],%r48; .loc 1 100 12 cvta.const.u64 %r49,$LC0; st.u64 [%frame+8],%r49; .loc 1 101 11 mov.u32 %r50,0; st.u32 [%frame+40],%r50; .loc 1 102 23 st.f64 [%frame+24],%r39; .loc 1 102 12 st.f64 [%frame+16],%r39; .loc 1 103 20 ld.global.u32 %r24,[__fdlib_version]; .loc 1 103 6 setp.ne.u32 %r51,%r24,0; @ %r51 bra $L5; .loc 1 104 16 mov.f64 %r52,0d47efffffe0000000; st.f64 [%frame+32],%r52; bra $L6; $L5: .loc 1 106 16 mov.f64 %r53,0d7ff0000000000000; st.f64 [%frame+32],%r53; .loc 1 107 6 setp.ne.u32 %r54,%r24,2; @ %r54 bra $L6; .loc 1 108 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r55,[%value_in]; } .loc 1 108 11 mov.u32 %r56,34; st.u32 [%r55],%r56; bra $L7; $L6: .loc 1 109 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r58,[%value_in]; } .loc 1 109 11 setp.ne.u32 %r59,%r58,0; @ %r59 bra $L7; .loc 1 110 4 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r60,[%value_in]; } .loc 1 110 10 mov.u32 %r61,34; st.u32 [%r60],%r61; $L7: .loc 1 112 13 ld.u32 %r62,[%frame+40]; setp.eq.u32 %r63,%r62,0; @ %r63 bra $L8; .loc 1 113 13 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r64,[%value_in]; } .loc 1 113 24 ld.u32 %r30,[%frame+40]; .loc 1 113 19 st.u32 [%r64],%r30; $L8: .loc 1 114 20 ld.f64 %r38,[%frame+32]; bra $L1; $L27: .loc 1 115 15 setp.lt.f64 %r65,%r39,0dc0874910d52d3051; @ ! %r65 bra $L1; .loc 1 117 12 mov.u32 %r66,4; st.u32 [%frame],%r66; .loc 1 118 12 cvta.const.u64 %r67,$LC0; st.u64 [%frame+8],%r67; .loc 1 119 11 mov.u32 %r68,0; st.u32 [%frame+40],%r68; .loc 1 120 23 st.f64 [%frame+24],%r39; .loc 1 120 12 st.f64 [%frame+16],%r39; .loc 1 121 14 mov.f64 %r69,0d0000000000000000; st.f64 [%frame+32],%r69; .loc 1 122 6 ld.global.u32 %r70,[__fdlib_version]; setp.ne.u32 %r71,%r70,2; @ %r71 bra $L10; .loc 1 123 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r72,[%value_in]; } .loc 1 123 11 mov.u32 %r73,34; st.u32 [%r72],%r73; bra $L11; $L10: .loc 1 124 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r75,[%value_in]; } .loc 1 124 11 setp.ne.u32 %r76,%r75,0; @ %r76 bra $L11; .loc 1 125 4 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r77,[%value_in]; } .loc 1 125 10 mov.u32 %r78,34; st.u32 [%r77],%r78; $L11: .loc 1 127 13 ld.u32 %r79,[%frame+40]; setp.eq.u32 %r80,%r79,0; @ %r80 bra $L12; .loc 1 128 13 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r81,[%value_in]; } .loc 1 128 24 ld.u32 %r37,[%frame+40]; .loc 1 128 19 st.u32 [%r81],%r37; $L12: .loc 1 129 20 ld.f64 %r38,[%frame+32]; $L1: .loc 1 134 1 mov.f64 %value,%r38; st.shared.u64 [%sspslot],%sspprev; st.param.f64 [%value_out],%value; ret; } lib_a-w_exp2.o/ 1591654536 399 399 100644 922 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 67 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 68 1 mov.f64 %value,%r26; st.param.f64 [%value_out],%value; ret; } lib_a-w_fmod.o/ 1591654536 399 399 100644 4764 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // 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: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[5] = {102,109,111,100,0 }; // 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 .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 %r25; .reg .u32 %r32; .reg .f64 %r36; .reg .f64 %r37; .reg .f64 %r38; .reg .f64 %r41; .reg .u32 %r42; .reg .pred %r43; .reg .u32 %r45; .reg .pred %r46; .reg .u32 %r48; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r53; .reg .u32 %r54; .reg .u16 %r55; .reg .u16 %r56; .reg .u16 %r57; .reg .u32 %r58; .reg .u16 %r59; .reg .pred %r60; .reg .u32 %r61; .reg .u64 %r62; .reg .u32 %r63; .reg .pred %r64; .reg .f64 %r65; .reg .f64 %r66; .reg .pred %r67; .reg .u64 %r68; .reg .u32 %r69; .reg .u32 %r71; .reg .pred %r72; .reg .u64 %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .pred %r76; .reg .u64 %r77; mov.f64 %r37,%ar0; mov.f64 %r38,%ar1; .loc 1 81 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r37; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r38; call (%value_in),__ieee754_fmod,(%out_arg1,%out_arg2); ld.param.f64 %r41,[%value_in]; } mov.f64 %r36,%r41; .loc 1 82 4 ld.global.u32 %r42,[__fdlib_version]; setp.eq.u32 %r43,%r42,-1; @ %r43 bra $L1; .loc 1 82 30 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r45,[%value_in]; } .loc 1 82 28 setp.eq.u32 %r46,%r45,0; @ %r46 bra $L1; .loc 1 82 40 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r37; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r48,[%value_in]; } .loc 1 82 38 set.u32.ne.u32 %r50,%r48,0; neg.s32 %r51,%r50; .loc 1 83 4 set.u32.eq.f64 %r53,%r38,0d0000000000000000; neg.s32 %r54,%r53; cvt.u16.u32 %r56,%r51; cvt.u16.u32 %r57,%r54; and.b16 %r55,%r56,%r57; cvt.u32.u16 %r58,%r55; cvt.u16.u8 %r59,%r58; setp.eq.u16 %r60,%r59,0; @ %r60 bra $L1; .loc 1 85 22 mov.u32 %r61,1; st.u32 [%frame],%r61; .loc 1 86 22 cvta.const.u64 %r62,$LC0; st.u64 [%frame+8],%r62; .loc 1 87 15 st.f64 [%frame+16],%r37; .loc 1 88 15 st.f64 [%frame+24],%r38; .loc 1 89 14 mov.u32 %r63,0; st.u32 [%frame+40],%r63; .loc 1 90 30 ld.global.u32 %r25,[__fdlib_version]; .loc 1 90 16 setp.ne.u32 %r64,%r25,0; @ %r64 bra $L3; .loc 1 91 27 st.f64 [%frame+32],%r37; bra $L4; $L3: .loc 1 93 25 mov.f64 %r66,0d0000000000000000; div.rn.f64 %r65,%r66,0d0000000000000000; .loc 1 93 20 st.f64 [%frame+32],%r65; .loc 1 94 16 setp.ne.u32 %r67,%r25,2; @ %r67 bra $L4; .loc 1 95 16 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r68,[%value_in]; } .loc 1 95 22 mov.u32 %r69,33; st.u32 [%r68],%r69; bra $L5; $L4: .loc 1 96 23 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r71,[%value_in]; } .loc 1 96 21 setp.ne.u32 %r72,%r71,0; @ %r72 bra $L5; .loc 1 97 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r73,[%value_in]; } .loc 1 97 25 mov.u32 %r74,33; st.u32 [%r73],%r74; $L5: .loc 1 99 9 ld.u32 %r75,[%frame+40]; setp.eq.u32 %r76,%r75,0; @ %r76 bra $L6; .loc 1 100 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r77,[%value_in]; } .loc 1 100 20 ld.u32 %r32,[%frame+40]; .loc 1 100 15 st.u32 [%r77],%r32; $L6: .loc 1 101 23 ld.f64 %r36,[%frame+32]; $L1: .loc 1 105 1 mov.f64 %value,%r36; st.shared.u64 [%sspslot],%sspprev; st.param.f64 [%value_out],%value; ret; } lib_a-w_gamma.o/1591654536 399 399 100644 5617 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_gamma_r .extern .func (.param .f64 %value_out) __ieee754_gamma_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 DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[6] = {103,97,109,109,97,0 }; // 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 .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 %r37; .reg .u32 %r38; .reg .f64 %r39; .reg .f64 %r40; .reg .f64 %r41; .reg .u64 %r44; .reg .u64 %r45; .reg .f64 %r46; .reg .u32 %r47; .reg .pred %r48; .reg .u32 %r50; .reg .pred %r51; .reg .u32 %r53; .reg .pred %r54; .reg .u64 %r55; .reg .u32 %r57; .reg .pred %r58; .reg .f64 %r60; .reg .pred %r61; .reg .pred %r62; .reg .u32 %r63; .reg .pred %r64; .reg .u64 %r65; .reg .u32 %r66; .reg .u32 %r68; .reg .pred %r69; .reg .u64 %r70; .reg .u32 %r71; .reg .u32 %r72; .reg .pred %r73; .reg .u64 %r74; .reg .u32 %r75; .reg .u32 %r77; .reg .pred %r78; .reg .u64 %r79; .reg .u32 %r80; .reg .u32 %r81; .reg .pred %r82; .reg .u64 %r83; mov.f64 %r41,%ar0; .loc 1 185 13 ld.global.u64 %r45,[_impure_ptr]; add.u64 %r44,%r45,224; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r41; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r44; call (%value_in),__ieee754_gamma_r,(%out_arg1,%out_arg2); ld.param.f64 %r46,[%value_in]; } mov.f64 %r40,%r46; .loc 1 186 11 ld.global.u32 %r47,[__fdlib_version]; setp.eq.u32 %r48,%r47,-1; @ %r48 bra $L1; .loc 1 187 13 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r46; call (%value_in),finite,(%out_arg1); ld.param.u32 %r50,[%value_in]; } .loc 1 187 11 setp.ne.u32 %r51,%r50,0; @ %r51 bra $L1; .loc 1 187 24 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r41; call (%value_in),finite,(%out_arg1); ld.param.u32 %r53,[%value_in]; } .loc 1 187 22 setp.eq.u32 %r54,%r53,0; @ %r54 bra $L1; .loc 1 194 15 cvta.const.u64 %r55,$LC0; st.u64 [%frame+8],%r55; .loc 1 195 14 st.u32 [%frame+40],%r50; .loc 1 196 26 st.f64 [%frame+24],%r41; .loc 1 196 15 st.f64 [%frame+16],%r41; .loc 1 197 16 ld.global.u32 %r57,[__fdlib_version]; setp.eq.u32 %r58,%r57,0; .loc 1 200 28 selp.f64 %r39,0d47efffffe0000000,0d7ff0000000000000,%r58; st.f64 [%frame+32],%r39; .loc 1 201 9 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r41; call (%value_in),floor,(%out_arg1); ld.param.f64 %r60,[%value_in]; } .loc 1 201 8 setp.neu.f64 %r61,%r60,%r41; @ %r61 bra $L4; ld.global.u32 %r38,[__fdlib_version]; .loc 1 201 20 setp.le.f64 %r62,%r41,0d0000000000000000; @ ! %r62 bra $L5; .loc 1 203 12 mov.u32 %r63,2; st.u32 [%frame],%r63; .loc 1 204 6 setp.ne.u32 %r64,%r38,2; @ %r64 bra $L7; .loc 1 205 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r65,[%value_in]; } .loc 1 205 11 mov.u32 %r66,33; st.u32 [%r65],%r66; bra $L8; $L7: .loc 1 206 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r68,[%value_in]; } .loc 1 206 11 setp.eq.u32 %r69,%r68,0; @ ! %r69 bra $L8; .loc 1 207 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r70,[%value_in]; } .loc 1 207 11 mov.u32 %r71,33; st.u32 [%r70],%r71; bra $L8; $L4: ld.global.u32 %r38,[__fdlib_version]; $L5: .loc 1 211 12 mov.u32 %r72,3; st.u32 [%frame],%r72; .loc 1 212 20 setp.ne.u32 %r73,%r38,2; @ %r73 bra $L10; .loc 1 213 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r74,[%value_in]; } .loc 1 213 11 mov.u32 %r75,34; st.u32 [%r74],%r75; bra $L8; $L10: .loc 1 214 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r77,[%value_in]; } .loc 1 214 25 setp.ne.u32 %r78,%r77,0; @ %r78 bra $L8; .loc 1 215 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r79,[%value_in]; } .loc 1 215 25 mov.u32 %r80,34; st.u32 [%r79],%r80; $L8: .loc 1 218 9 ld.u32 %r81,[%frame+40]; setp.eq.u32 %r82,%r81,0; @ %r82 bra $L12; .loc 1 219 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r83,[%value_in]; } .loc 1 219 20 ld.u32 %r37,[%frame+40]; .loc 1 219 15 st.u32 [%r83],%r37; $L12: .loc 1 220 16 ld.f64 %r40,[%frame+32]; $L1: .loc 1 224 1 mov.f64 %value,%r40; st.shared.u64 [%sspslot],%sspprev; st.param.f64 [%value_out],%value; ret; } lib_a-w_hypot.o/1591654536 399 399 100644 4557 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // 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 DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[6] = {104,121,112,111,116,0 }; // 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 .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 %r26; .reg .u32 %r32; .reg .f64 %r33; .reg .f64 %r34; .reg .f64 %r35; .reg .f64 %r38; .reg .u32 %r39; .reg .pred %r40; .reg .u32 %r42; .reg .pred %r43; .reg .u32 %r45; .reg .pred %r46; .reg .u32 %r48; .reg .pred %r49; .reg .u32 %r50; .reg .u64 %r51; .reg .pred %r53; .reg .f64 %r54; .reg .f64 %r55; .reg .pred %r56; .reg .u64 %r57; .reg .u32 %r58; .reg .u32 %r60; .reg .pred %r61; .reg .u64 %r62; .reg .u32 %r63; .reg .u32 %r64; .reg .pred %r65; .reg .u64 %r66; mov.f64 %r34,%ar0; mov.f64 %r35,%ar1; .loc 1 77 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r34; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r35; call (%value_in),__ieee754_hypot,(%out_arg1,%out_arg2); ld.param.f64 %r38,[%value_in]; } mov.f64 %r33,%r38; .loc 1 78 4 ld.global.u32 %r39,[__fdlib_version]; setp.eq.u32 %r40,%r39,-1; @ %r40 bra $L1; .loc 1 79 7 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r38; call (%value_in),finite,(%out_arg1); ld.param.u32 %r42,[%value_in]; } .loc 1 79 4 setp.ne.u32 %r43,%r42,0; @ %r43 bra $L1; .loc 1 79 19 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r34; call (%value_in),finite,(%out_arg1); ld.param.u32 %r45,[%value_in]; } .loc 1 79 17 setp.eq.u32 %r46,%r45,0; @ %r46 bra $L1; .loc 1 79 30 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r35; call (%value_in),finite,(%out_arg1); ld.param.u32 %r48,[%value_in]; } .loc 1 79 28 setp.eq.u32 %r49,%r48,0; @ %r49 bra $L1; .loc 1 87 15 mov.u32 %r50,3; st.u32 [%frame],%r50; .loc 1 88 15 cvta.const.u64 %r51,$LC0; st.u64 [%frame+8],%r51; .loc 1 89 14 st.u32 [%frame+40],%r42; .loc 1 90 15 st.f64 [%frame+16],%r34; .loc 1 91 15 st.f64 [%frame+24],%r35; .loc 1 92 23 ld.global.u32 %r26,[__fdlib_version]; .loc 1 92 9 setp.ne.u32 %r53,%r26,0; @ %r53 bra $L3; .loc 1 93 20 mov.f64 %r54,0d47efffffe0000000; st.f64 [%frame+32],%r54; bra $L4; $L3: .loc 1 95 20 mov.f64 %r55,0d7ff0000000000000; st.f64 [%frame+32],%r55; .loc 1 96 9 setp.ne.u32 %r56,%r26,2; @ %r56 bra $L4; .loc 1 97 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r57,[%value_in]; } .loc 1 97 15 mov.u32 %r58,34; st.u32 [%r57],%r58; bra $L5; $L4: .loc 1 98 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r60,[%value_in]; } .loc 1 98 14 setp.ne.u32 %r61,%r60,0; @ %r61 bra $L5; .loc 1 99 8 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r62,[%value_in]; } .loc 1 99 14 mov.u32 %r63,34; st.u32 [%r62],%r63; $L5: .loc 1 101 9 ld.u32 %r64,[%frame+40]; setp.eq.u32 %r65,%r64,0; @ %r65 bra $L6; .loc 1 102 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r66,[%value_in]; } .loc 1 102 20 ld.u32 %r32,[%frame+40]; .loc 1 102 15 st.u32 [%r66],%r32; $L6: .loc 1 103 23 ld.f64 %r33,[%frame+32]; $L1: .loc 1 107 1 mov.f64 %value,%r33; st.shared.u64 [%sspslot],%sspprev; st.param.f64 [%value_out],%value; ret; } lib_a-w_j0.o/ 1591654536 399 399 100644 9068 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_j0 .extern .func (.param .f64 %value_out) __ieee754_j0 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.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: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_y0 .extern .func (.param .f64 %value_out) __ieee754_y0 (.param .f64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[3] = {106,48,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[3] = {121,48,0 }; // 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 .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 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r35; .reg .u32 %r36; .reg .pred %r37; .reg .u32 %r39; .reg .pred %r40; .reg .f64 %r42; .reg .pred %r43; .reg .u32 %r44; .reg .u64 %r45; .reg .u32 %r46; .reg .f64 %r47; .reg .u32 %r48; .reg .pred %r49; .reg .u64 %r50; .reg .u32 %r51; .reg .u32 %r53; .reg .pred %r54; .reg .u64 %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .pred %r58; .reg .u64 %r59; mov.f64 %r33,%ar0; .loc 1 141 13 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; call (%value_in),__ieee754_j0,(%out_arg1); ld.param.f64 %r35,[%value_in]; } mov.f64 %r32,%r35; .loc 1 142 4 ld.global.u32 %r36,[__fdlib_version]; setp.eq.u32 %r37,%r36,-1; @ %r37 bra $L1; .loc 1 142 31 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r39,[%value_in]; } .loc 1 142 28 setp.eq.u32 %r40,%r39,0; @ %r40 bra $L1; .loc 1 143 5 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r42,[%value_in]; } .loc 1 143 4 setp.gt.f64 %r43,%r42,0d434921fb54442d18; @ ! %r43 bra $L1; .loc 1 145 22 mov.u32 %r44,5; st.u32 [%frame],%r44; .loc 1 146 22 cvta.const.u64 %r45,$LC0; st.u64 [%frame+8],%r45; .loc 1 147 14 mov.u32 %r46,0; st.u32 [%frame+40],%r46; .loc 1 148 26 st.f64 [%frame+24],%r33; .loc 1 148 15 st.f64 [%frame+16],%r33; .loc 1 149 24 mov.f64 %r47,0d0000000000000000; st.f64 [%frame+32],%r47; .loc 1 150 16 ld.global.u32 %r48,[__fdlib_version]; setp.ne.u32 %r49,%r48,2; @ %r49 bra $L4; .loc 1 151 16 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r50,[%value_in]; } .loc 1 151 22 mov.u32 %r51,34; st.u32 [%r50],%r51; bra $L5; $L4: .loc 1 152 23 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r53,[%value_in]; } .loc 1 152 21 setp.ne.u32 %r54,%r53,0; @ %r54 bra $L5; .loc 1 153 16 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r55,[%value_in]; } .loc 1 153 22 mov.u32 %r56,34; st.u32 [%r55],%r56; $L5: .loc 1 155 9 ld.u32 %r57,[%frame+40]; setp.eq.u32 %r58,%r57,0; @ %r58 bra $L6; .loc 1 156 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r59,[%value_in]; } .loc 1 156 20 ld.u32 %r31,[%frame+40]; .loc 1 156 15 st.u32 [%r59],%r31; $L6: .loc 1 157 23 ld.f64 %r32,[%frame+32]; $L1: .loc 1 161 1 mov.f64 %value,%r32; st.shared.u64 [%sspslot],%sspprev; 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 .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 .u32 %r30; .reg .u32 %r37; .reg .f64 %r38; .reg .f64 %r39; .reg .f64 %r41; .reg .u32 %r42; .reg .pred %r43; .reg .u32 %r45; .reg .pred %r46; .reg .pred %r47; .reg .u32 %r48; .reg .u64 %r49; .reg .u32 %r50; .reg .pred %r51; .reg .f64 %r52; .reg .f64 %r53; .reg .pred %r54; .reg .u64 %r55; .reg .u32 %r56; .reg .u32 %r58; .reg .pred %r59; .reg .u64 %r60; .reg .u32 %r61; .reg .u32 %r62; .reg .pred %r63; .reg .u64 %r64; .reg .pred %r65; .reg .u32 %r66; .reg .u64 %r67; .reg .u32 %r68; .reg .f64 %r69; .reg .u32 %r70; .reg .pred %r71; .reg .u64 %r72; .reg .u32 %r73; .reg .u32 %r75; .reg .pred %r76; .reg .u64 %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .pred %r80; .reg .u64 %r81; mov.f64 %r39,%ar0; .loc 1 175 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; call (%value_in),__ieee754_y0,(%out_arg1); ld.param.f64 %r41,[%value_in]; } mov.f64 %r38,%r41; .loc 1 176 4 ld.global.u32 %r42,[__fdlib_version]; setp.eq.u32 %r43,%r42,-1; @ %r43 bra $L17; .loc 1 176 31 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r45,[%value_in]; } .loc 1 176 28 setp.eq.u32 %r46,%r45,0; @ %r46 bra $L17; .loc 1 177 11 setp.le.f64 %r47,%r39,0d0000000000000000; @ ! %r47 bra $L43; .loc 1 185 15 mov.u32 %r48,1; st.u32 [%frame],%r48; .loc 1 186 15 cvta.const.u64 %r49,$LC1; st.u64 [%frame+8],%r49; .loc 1 187 14 mov.u32 %r50,0; st.u32 [%frame+40],%r50; .loc 1 188 26 st.f64 [%frame+24],%r39; .loc 1 188 15 st.f64 [%frame+16],%r39; .loc 1 189 23 ld.global.u32 %r24,[__fdlib_version]; .loc 1 189 9 setp.ne.u32 %r51,%r24,0; @ %r51 bra $L21; .loc 1 190 20 mov.f64 %r52,0dc7efffffe0000000; st.f64 [%frame+32],%r52; bra $L22; $L21: .loc 1 192 20 mov.f64 %r53,0dfff0000000000000; st.f64 [%frame+32],%r53; .loc 1 193 9 setp.ne.u32 %r54,%r24,2; @ %r54 bra $L22; .loc 1 194 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r55,[%value_in]; } .loc 1 194 15 mov.u32 %r56,33; st.u32 [%r55],%r56; bra $L23; $L22: .loc 1 195 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r58,[%value_in]; } .loc 1 195 14 setp.ne.u32 %r59,%r58,0; @ %r59 bra $L23; .loc 1 196 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r60,[%value_in]; } .loc 1 196 15 mov.u32 %r61,33; st.u32 [%r60],%r61; $L23: .loc 1 198 9 ld.u32 %r62,[%frame+40]; setp.eq.u32 %r63,%r62,0; @ %r63 bra $L24; .loc 1 199 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r64,[%value_in]; } .loc 1 199 20 ld.u32 %r30,[%frame+40]; .loc 1 199 15 st.u32 [%r64],%r30; $L24: .loc 1 200 23 ld.f64 %r38,[%frame+32]; bra $L17; $L43: .loc 1 202 4 setp.gt.f64 %r65,%r39,0d434921fb54442d18; @ ! %r65 bra $L17; .loc 1 204 22 mov.u32 %r66,5; st.u32 [%frame],%r66; .loc 1 205 22 cvta.const.u64 %r67,$LC1; st.u64 [%frame+8],%r67; .loc 1 206 14 mov.u32 %r68,0; st.u32 [%frame+40],%r68; .loc 1 207 26 st.f64 [%frame+24],%r39; .loc 1 207 15 st.f64 [%frame+16],%r39; .loc 1 208 24 mov.f64 %r69,0d0000000000000000; st.f64 [%frame+32],%r69; .loc 1 209 16 ld.global.u32 %r70,[__fdlib_version]; setp.ne.u32 %r71,%r70,2; @ %r71 bra $L26; .loc 1 210 16 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r72,[%value_in]; } .loc 1 210 22 mov.u32 %r73,34; st.u32 [%r72],%r73; bra $L27; $L26: .loc 1 211 23 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r75,[%value_in]; } .loc 1 211 21 setp.ne.u32 %r76,%r75,0; @ %r76 bra $L27; .loc 1 212 16 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r77,[%value_in]; } .loc 1 212 22 mov.u32 %r78,34; st.u32 [%r77],%r78; $L27: .loc 1 214 9 ld.u32 %r79,[%frame+40]; setp.eq.u32 %r80,%r79,0; @ %r80 bra $L28; .loc 1 215 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r81,[%value_in]; } .loc 1 215 20 ld.u32 %r37,[%frame+40]; .loc 1 215 15 st.u32 [%r81],%r37; $L28: .loc 1 216 16 ld.f64 %r38,[%frame+32]; $L17: .loc 1 220 1 mov.f64 %value,%r38; st.shared.u64 [%sspslot],%sspprev; st.param.f64 [%value_out],%value; ret; } lib_a-w_j1.o/ 1591654536 399 399 100644 9013 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_j1 .extern .func (.param .f64 %value_out) __ieee754_j1 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.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: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_y1 .extern .func (.param .f64 %value_out) __ieee754_y1 (.param .f64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[3] = {106,49,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[3] = {121,49,0 }; // 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 .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 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r35; .reg .u32 %r36; .reg .pred %r37; .reg .u32 %r39; .reg .pred %r40; .reg .f64 %r42; .reg .pred %r43; .reg .u32 %r44; .reg .u64 %r45; .reg .u32 %r46; .reg .f64 %r47; .reg .u32 %r48; .reg .pred %r49; .reg .u64 %r50; .reg .u32 %r51; .reg .u32 %r53; .reg .pred %r54; .reg .u64 %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .pred %r58; .reg .u64 %r59; mov.f64 %r33,%ar0; .loc 1 35 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; call (%value_in),__ieee754_j1,(%out_arg1); ld.param.f64 %r35,[%value_in]; } mov.f64 %r32,%r35; .loc 1 36 4 ld.global.u32 %r36,[__fdlib_version]; setp.eq.u32 %r37,%r36,-1; @ %r37 bra $L1; .loc 1 36 31 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r39,[%value_in]; } .loc 1 36 28 setp.eq.u32 %r40,%r39,0; @ %r40 bra $L1; .loc 1 37 5 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r42,[%value_in]; } .loc 1 37 4 setp.gt.f64 %r43,%r42,0d434921fb54442d18; @ ! %r43 bra $L1; .loc 1 39 22 mov.u32 %r44,5; st.u32 [%frame],%r44; .loc 1 40 22 cvta.const.u64 %r45,$LC0; st.u64 [%frame+8],%r45; .loc 1 41 14 mov.u32 %r46,0; st.u32 [%frame+40],%r46; .loc 1 42 26 st.f64 [%frame+24],%r33; .loc 1 42 15 st.f64 [%frame+16],%r33; .loc 1 43 24 mov.f64 %r47,0d0000000000000000; st.f64 [%frame+32],%r47; .loc 1 44 16 ld.global.u32 %r48,[__fdlib_version]; setp.ne.u32 %r49,%r48,2; @ %r49 bra $L4; .loc 1 45 17 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r50,[%value_in]; } .loc 1 45 23 mov.u32 %r51,34; st.u32 [%r50],%r51; bra $L5; $L4: .loc 1 46 23 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r53,[%value_in]; } .loc 1 46 21 setp.ne.u32 %r54,%r53,0; @ %r54 bra $L5; .loc 1 47 17 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r55,[%value_in]; } .loc 1 47 23 mov.u32 %r56,34; st.u32 [%r55],%r56; $L5: .loc 1 49 9 ld.u32 %r57,[%frame+40]; setp.eq.u32 %r58,%r57,0; @ %r58 bra $L6; .loc 1 50 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r59,[%value_in]; } .loc 1 50 20 ld.u32 %r31,[%frame+40]; .loc 1 50 15 st.u32 [%r59],%r31; $L6: .loc 1 51 23 ld.f64 %r32,[%frame+32]; $L1: .loc 1 55 1 mov.f64 %value,%r32; st.shared.u64 [%sspslot],%sspprev; 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 .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 .u32 %r30; .reg .u32 %r37; .reg .f64 %r38; .reg .f64 %r39; .reg .f64 %r41; .reg .u32 %r42; .reg .pred %r43; .reg .u32 %r45; .reg .pred %r46; .reg .pred %r47; .reg .u32 %r48; .reg .u64 %r49; .reg .u32 %r50; .reg .pred %r51; .reg .f64 %r52; .reg .f64 %r53; .reg .pred %r54; .reg .u64 %r55; .reg .u32 %r56; .reg .u32 %r58; .reg .pred %r59; .reg .u64 %r60; .reg .u32 %r61; .reg .u32 %r62; .reg .pred %r63; .reg .u64 %r64; .reg .pred %r65; .reg .u32 %r66; .reg .u64 %r67; .reg .u32 %r68; .reg .f64 %r69; .reg .u32 %r70; .reg .pred %r71; .reg .u64 %r72; .reg .u32 %r73; .reg .u32 %r75; .reg .pred %r76; .reg .u64 %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .pred %r80; .reg .u64 %r81; mov.f64 %r39,%ar0; .loc 1 69 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; call (%value_in),__ieee754_y1,(%out_arg1); ld.param.f64 %r41,[%value_in]; } mov.f64 %r38,%r41; .loc 1 70 4 ld.global.u32 %r42,[__fdlib_version]; setp.eq.u32 %r43,%r42,-1; @ %r43 bra $L17; .loc 1 70 31 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r45,[%value_in]; } .loc 1 70 28 setp.eq.u32 %r46,%r45,0; @ %r46 bra $L17; .loc 1 71 11 setp.le.f64 %r47,%r39,0d0000000000000000; @ ! %r47 bra $L43; .loc 1 79 15 mov.u32 %r48,1; st.u32 [%frame],%r48; .loc 1 80 15 cvta.const.u64 %r49,$LC1; st.u64 [%frame+8],%r49; .loc 1 81 14 mov.u32 %r50,0; st.u32 [%frame+40],%r50; .loc 1 82 26 st.f64 [%frame+24],%r39; .loc 1 82 15 st.f64 [%frame+16],%r39; .loc 1 83 23 ld.global.u32 %r24,[__fdlib_version]; .loc 1 83 9 setp.ne.u32 %r51,%r24,0; @ %r51 bra $L21; .loc 1 84 20 mov.f64 %r52,0dc7efffffe0000000; st.f64 [%frame+32],%r52; bra $L22; $L21: .loc 1 86 20 mov.f64 %r53,0dfff0000000000000; st.f64 [%frame+32],%r53; .loc 1 87 9 setp.ne.u32 %r54,%r24,2; @ %r54 bra $L22; .loc 1 88 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r55,[%value_in]; } .loc 1 88 15 mov.u32 %r56,33; st.u32 [%r55],%r56; bra $L23; $L22: .loc 1 89 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r58,[%value_in]; } .loc 1 89 14 setp.ne.u32 %r59,%r58,0; @ %r59 bra $L23; .loc 1 90 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r60,[%value_in]; } .loc 1 90 15 mov.u32 %r61,33; st.u32 [%r60],%r61; $L23: .loc 1 92 9 ld.u32 %r62,[%frame+40]; setp.eq.u32 %r63,%r62,0; @ %r63 bra $L24; .loc 1 93 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r64,[%value_in]; } .loc 1 93 20 ld.u32 %r30,[%frame+40]; .loc 1 93 15 st.u32 [%r64],%r30; $L24: .loc 1 94 23 ld.f64 %r38,[%frame+32]; bra $L17; $L43: .loc 1 96 4 setp.gt.f64 %r65,%r39,0d434921fb54442d18; @ ! %r65 bra $L17; .loc 1 98 22 mov.u32 %r66,5; st.u32 [%frame],%r66; .loc 1 99 22 cvta.const.u64 %r67,$LC1; st.u64 [%frame+8],%r67; .loc 1 100 14 mov.u32 %r68,0; st.u32 [%frame+40],%r68; .loc 1 101 26 st.f64 [%frame+24],%r39; .loc 1 101 15 st.f64 [%frame+16],%r39; .loc 1 102 24 mov.f64 %r69,0d0000000000000000; st.f64 [%frame+32],%r69; .loc 1 103 16 ld.global.u32 %r70,[__fdlib_version]; setp.ne.u32 %r71,%r70,2; @ %r71 bra $L26; .loc 1 104 17 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r72,[%value_in]; } .loc 1 104 23 mov.u32 %r73,34; st.u32 [%r72],%r73; bra $L27; $L26: .loc 1 105 23 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r75,[%value_in]; } .loc 1 105 21 setp.ne.u32 %r76,%r75,0; @ %r76 bra $L27; .loc 1 106 17 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r77,[%value_in]; } .loc 1 106 23 mov.u32 %r78,34; st.u32 [%r77],%r78; $L27: .loc 1 108 9 ld.u32 %r79,[%frame+40]; setp.eq.u32 %r80,%r79,0; @ %r80 bra $L28; .loc 1 109 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r81,[%value_in]; } .loc 1 109 20 ld.u32 %r37,[%frame+40]; .loc 1 109 15 st.u32 [%r81],%r37; $L28: .loc 1 110 23 ld.f64 %r38,[%frame+32]; $L17: .loc 1 114 1 mov.f64 %value,%r38; st.shared.u64 [%sspslot],%sspprev; st.param.f64 [%value_out],%value; ret; } lib_a-w_jn.o/ 1591654536 399 399 100644 9581 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // 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: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.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: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_yn .extern .func (.param .f64 %value_out) __ieee754_yn (.param .u32 %in_ar0, .param .f64 %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] = {106,110,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[3] = {121,110,0 }; // 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 .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 %r32; .reg .f64 %r33; .reg .u32 %r34; .reg .f64 %r35; .reg .f64 %r38; .reg .u32 %r39; .reg .pred %r40; .reg .u32 %r42; .reg .pred %r43; .reg .f64 %r45; .reg .pred %r46; .reg .u32 %r47; .reg .u64 %r48; .reg .u32 %r49; .reg .f64 %r50; .reg .f64 %r51; .reg .u32 %r52; .reg .pred %r53; .reg .u64 %r54; .reg .u32 %r55; .reg .u32 %r57; .reg .pred %r58; .reg .u64 %r59; .reg .u32 %r60; .reg .u32 %r61; .reg .pred %r62; .reg .u64 %r63; mov.u32 %r34,%ar0; mov.f64 %r35,%ar1; .loc 1 57 6 { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r34; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r35; call (%value_in),__ieee754_jn,(%out_arg1,%out_arg2); ld.param.f64 %r38,[%value_in]; } mov.f64 %r33,%r38; .loc 1 58 4 ld.global.u32 %r39,[__fdlib_version]; setp.eq.u32 %r40,%r39,-1; @ %r40 bra $L1; .loc 1 58 31 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r35; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r42,[%value_in]; } .loc 1 58 28 setp.eq.u32 %r43,%r42,0; @ %r43 bra $L1; .loc 1 59 5 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r35; call (%value_in),fabs,(%out_arg1); ld.param.f64 %r45,[%value_in]; } .loc 1 59 4 setp.gt.f64 %r46,%r45,0d434921fb54442d18; @ ! %r46 bra $L1; .loc 1 61 22 mov.u32 %r47,5; st.u32 [%frame],%r47; .loc 1 62 22 cvta.const.u64 %r48,$LC0; st.u64 [%frame+8],%r48; .loc 1 63 14 mov.u32 %r49,0; st.u32 [%frame+40],%r49; .loc 1 64 15 cvt.rn.f64.s32 %r50,%r34; st.f64 [%frame+16],%r50; .loc 1 65 15 st.f64 [%frame+24],%r35; .loc 1 66 24 mov.f64 %r51,0d0000000000000000; st.f64 [%frame+32],%r51; .loc 1 67 16 ld.global.u32 %r52,[__fdlib_version]; setp.ne.u32 %r53,%r52,2; @ %r53 bra $L4; .loc 1 68 17 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r54,[%value_in]; } .loc 1 68 23 mov.u32 %r55,34; st.u32 [%r54],%r55; bra $L5; $L4: .loc 1 69 23 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r57,[%value_in]; } .loc 1 69 21 setp.ne.u32 %r58,%r57,0; @ %r58 bra $L5; .loc 1 70 16 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r59,[%value_in]; } .loc 1 70 22 mov.u32 %r60,34; st.u32 [%r59],%r60; $L5: .loc 1 72 9 ld.u32 %r61,[%frame+40]; setp.eq.u32 %r62,%r61,0; @ %r62 bra $L6; .loc 1 73 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r63,[%value_in]; } .loc 1 73 20 ld.u32 %r32,[%frame+40]; .loc 1 73 15 st.u32 [%r63],%r32; $L6: .loc 1 74 23 ld.f64 %r33,[%frame+32]; $L1: .loc 1 78 1 mov.f64 %value,%r33; st.shared.u64 [%sspslot],%sspprev; 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 .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 %r25; .reg .u32 %r31; .reg .u32 %r39; .reg .f64 %r40; .reg .u32 %r41; .reg .f64 %r42; .reg .f64 %r45; .reg .u32 %r46; .reg .pred %r47; .reg .u32 %r49; .reg .pred %r50; .reg .pred %r51; .reg .u32 %r52; .reg .u64 %r53; .reg .u32 %r54; .reg .f64 %r55; .reg .pred %r56; .reg .f64 %r57; .reg .f64 %r58; .reg .pred %r59; .reg .u64 %r60; .reg .u32 %r61; .reg .u32 %r63; .reg .pred %r64; .reg .u64 %r65; .reg .u32 %r66; .reg .u32 %r67; .reg .pred %r68; .reg .u64 %r69; .reg .pred %r70; .reg .u32 %r71; .reg .u64 %r72; .reg .u32 %r73; .reg .f64 %r74; .reg .f64 %r75; .reg .u32 %r76; .reg .pred %r77; .reg .u64 %r78; .reg .u32 %r79; .reg .u32 %r81; .reg .pred %r82; .reg .u64 %r83; .reg .u32 %r84; .reg .u32 %r85; .reg .pred %r86; .reg .u64 %r87; mov.u32 %r41,%ar0; mov.f64 %r42,%ar1; .loc 1 92 6 { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r41; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r42; call (%value_in),__ieee754_yn,(%out_arg1,%out_arg2); ld.param.f64 %r45,[%value_in]; } mov.f64 %r40,%r45; .loc 1 93 4 ld.global.u32 %r46,[__fdlib_version]; setp.eq.u32 %r47,%r46,-1; @ %r47 bra $L17; .loc 1 93 31 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r42; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r49,[%value_in]; } .loc 1 93 28 setp.eq.u32 %r50,%r49,0; @ %r50 bra $L17; .loc 1 94 11 setp.le.f64 %r51,%r42,0d0000000000000000; @ ! %r51 bra $L43; .loc 1 102 15 mov.u32 %r52,1; st.u32 [%frame],%r52; .loc 1 103 15 cvta.const.u64 %r53,$LC1; st.u64 [%frame+8],%r53; .loc 1 104 14 mov.u32 %r54,0; st.u32 [%frame+40],%r54; .loc 1 105 15 cvt.rn.f64.s32 %r55,%r41; st.f64 [%frame+16],%r55; .loc 1 106 15 st.f64 [%frame+24],%r42; .loc 1 107 23 ld.global.u32 %r25,[__fdlib_version]; .loc 1 107 9 setp.ne.u32 %r56,%r25,0; @ %r56 bra $L21; .loc 1 108 21 mov.f64 %r57,0dc7efffffe0000000; st.f64 [%frame+32],%r57; bra $L22; $L21: .loc 1 110 21 mov.f64 %r58,0dfff0000000000000; st.f64 [%frame+32],%r58; .loc 1 111 9 setp.ne.u32 %r59,%r25,2; @ %r59 bra $L22; .loc 1 112 10 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r60,[%value_in]; } .loc 1 112 16 mov.u32 %r61,33; st.u32 [%r60],%r61; bra $L23; $L22: .loc 1 113 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r63,[%value_in]; } .loc 1 113 14 setp.ne.u32 %r64,%r63,0; @ %r64 bra $L23; .loc 1 114 10 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r65,[%value_in]; } .loc 1 114 16 mov.u32 %r66,33; st.u32 [%r65],%r66; $L23: .loc 1 116 9 ld.u32 %r67,[%frame+40]; setp.eq.u32 %r68,%r67,0; @ %r68 bra $L24; .loc 1 117 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r69,[%value_in]; } .loc 1 117 20 ld.u32 %r31,[%frame+40]; .loc 1 117 15 st.u32 [%r69],%r31; $L24: .loc 1 118 23 ld.f64 %r40,[%frame+32]; bra $L17; $L43: .loc 1 120 4 setp.gt.f64 %r70,%r42,0d434921fb54442d18; @ ! %r70 bra $L17; .loc 1 122 22 mov.u32 %r71,5; st.u32 [%frame],%r71; .loc 1 123 22 cvta.const.u64 %r72,$LC1; st.u64 [%frame+8],%r72; .loc 1 124 14 mov.u32 %r73,0; st.u32 [%frame+40],%r73; .loc 1 125 15 cvt.rn.f64.s32 %r74,%r41; st.f64 [%frame+16],%r74; .loc 1 126 15 st.f64 [%frame+24],%r42; .loc 1 127 24 mov.f64 %r75,0d0000000000000000; st.f64 [%frame+32],%r75; .loc 1 128 16 ld.global.u32 %r76,[__fdlib_version]; setp.ne.u32 %r77,%r76,2; @ %r77 bra $L26; .loc 1 129 17 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r78,[%value_in]; } .loc 1 129 23 mov.u32 %r79,34; st.u32 [%r78],%r79; bra $L27; $L26: .loc 1 130 23 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r81,[%value_in]; } .loc 1 130 21 setp.ne.u32 %r82,%r81,0; @ %r82 bra $L27; .loc 1 131 17 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r83,[%value_in]; } .loc 1 131 23 mov.u32 %r84,34; st.u32 [%r83],%r84; $L27: .loc 1 133 9 ld.u32 %r85,[%frame+40]; setp.eq.u32 %r86,%r85,0; @ %r86 bra $L28; .loc 1 134 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r87,[%value_in]; } .loc 1 134 20 ld.u32 %r39,[%frame+40]; .loc 1 134 15 st.u32 [%r87],%r39; $L28: .loc 1 135 23 ld.f64 %r40,[%frame+32]; $L17: .loc 1 139 1 mov.f64 %value,%r40; st.shared.u64 [%sspslot],%sspprev; st.param.f64 [%value_out],%value; ret; } /1403 1591654536 399 399 100644 5592 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // 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: 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: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[7] = {108,103,97,109,109,97,0 }; // 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 .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 %r37; .reg .u32 %r38; .reg .f64 %r39; .reg .f64 %r40; .reg .f64 %r41; .reg .u64 %r44; .reg .u64 %r45; .reg .f64 %r46; .reg .u32 %r47; .reg .pred %r48; .reg .u32 %r50; .reg .pred %r51; .reg .u32 %r53; .reg .pred %r54; .reg .u64 %r55; .reg .u32 %r57; .reg .pred %r58; .reg .f64 %r60; .reg .pred %r61; .reg .pred %r62; .reg .u32 %r63; .reg .pred %r64; .reg .u64 %r65; .reg .u32 %r66; .reg .u32 %r68; .reg .pred %r69; .reg .u64 %r70; .reg .u32 %r71; .reg .u32 %r72; .reg .pred %r73; .reg .u64 %r74; .reg .u32 %r75; .reg .u32 %r77; .reg .pred %r78; .reg .u64 %r79; .reg .u32 %r80; .reg .u32 %r81; .reg .pred %r82; .reg .u64 %r83; mov.f64 %r41,%ar0; .loc 1 39 13 ld.global.u64 %r45,[_impure_ptr]; add.u64 %r44,%r45,224; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r41; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r44; call (%value_in),__ieee754_lgamma_r,(%out_arg1,%out_arg2); ld.param.f64 %r46,[%value_in]; } mov.f64 %r40,%r46; .loc 1 40 11 ld.global.u32 %r47,[__fdlib_version]; setp.eq.u32 %r48,%r47,-1; @ %r48 bra $L1; .loc 1 41 13 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r46; call (%value_in),finite,(%out_arg1); ld.param.u32 %r50,[%value_in]; } .loc 1 41 11 setp.ne.u32 %r51,%r50,0; @ %r51 bra $L1; .loc 1 41 24 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r41; call (%value_in),finite,(%out_arg1); ld.param.u32 %r53,[%value_in]; } .loc 1 41 22 setp.eq.u32 %r54,%r53,0; @ %r54 bra $L1; .loc 1 48 15 cvta.const.u64 %r55,$LC0; st.u64 [%frame+8],%r55; .loc 1 49 14 st.u32 [%frame+40],%r50; .loc 1 50 15 st.f64 [%frame+16],%r41; .loc 1 51 15 st.f64 [%frame+24],%r41; .loc 1 52 16 ld.global.u32 %r57,[__fdlib_version]; setp.eq.u32 %r58,%r57,0; .loc 1 55 27 selp.f64 %r39,0d47efffffe0000000,0d7ff0000000000000,%r58; st.f64 [%frame+32],%r39; .loc 1 56 9 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r41; call (%value_in),floor,(%out_arg1); ld.param.f64 %r60,[%value_in]; } .loc 1 56 8 setp.neu.f64 %r61,%r60,%r41; @ %r61 bra $L4; ld.global.u32 %r38,[__fdlib_version]; .loc 1 56 20 setp.le.f64 %r62,%r41,0d0000000000000000; @ ! %r62 bra $L5; .loc 1 58 12 mov.u32 %r63,2; st.u32 [%frame],%r63; .loc 1 59 6 setp.ne.u32 %r64,%r38,2; @ %r64 bra $L7; .loc 1 60 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r65,[%value_in]; } .loc 1 60 12 mov.u32 %r66,33; st.u32 [%r65],%r66; bra $L8; $L7: .loc 1 61 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r68,[%value_in]; } .loc 1 61 11 setp.eq.u32 %r69,%r68,0; @ ! %r69 bra $L8; .loc 1 62 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r70,[%value_in]; } .loc 1 62 12 mov.u32 %r71,33; st.u32 [%r70],%r71; bra $L8; $L4: ld.global.u32 %r38,[__fdlib_version]; $L5: .loc 1 67 12 mov.u32 %r72,3; st.u32 [%frame],%r72; .loc 1 68 20 setp.ne.u32 %r73,%r38,2; @ %r73 bra $L10; .loc 1 69 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r74,[%value_in]; } .loc 1 69 12 mov.u32 %r75,34; st.u32 [%r74],%r75; bra $L8; $L10: .loc 1 70 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r77,[%value_in]; } .loc 1 70 25 setp.ne.u32 %r78,%r77,0; @ %r78 bra $L8; .loc 1 71 20 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r79,[%value_in]; } .loc 1 71 26 mov.u32 %r80,34; st.u32 [%r79],%r80; $L8: .loc 1 74 9 ld.u32 %r81,[%frame+40]; setp.eq.u32 %r82,%r81,0; @ %r82 bra $L12; .loc 1 75 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r83,[%value_in]; } .loc 1 75 20 ld.u32 %r37,[%frame+40]; .loc 1 75 15 st.u32 [%r83],%r37; $L12: .loc 1 76 23 ld.f64 %r40,[%frame+32]; $L1: .loc 1 80 1 mov.f64 %value,%r40; st.shared.u64 [%sspslot],%sspprev; st.param.f64 [%value_out],%value; ret; } lib_a-w_log.o/ 1591654536 399 399 100644 5484 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_log .extern .func (.param .f64 %value_out) __ieee754_log (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: nan .extern .func (.param .f64 %value_out) nan (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[4] = {108,111,103,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[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 .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 .u32 %r34; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r38; .reg .u32 %r39; .reg .pred %r40; .reg .u32 %r42; .reg .pred %r43; .reg .pred %r44; .reg .u64 %r45; .reg .u32 %r46; .reg .pred %r47; .reg .f64 %r48; .reg .pred %r49; .reg .u32 %r50; .reg .pred %r51; .reg .u64 %r52; .reg .u32 %r53; .reg .u32 %r55; .reg .pred %r56; .reg .u64 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .pred %r60; .reg .u64 %r61; .reg .u32 %r62; .reg .u32 %r64; .reg .pred %r65; .reg .u64 %r66; .reg .u32 %r67; .reg .u64 %r68; .reg .f64 %r69; .reg .u32 %r70; .reg .pred %r71; .reg .u64 %r72; .reg .u32 %r74; .reg .f64 %r75; .reg .pred %r76; .reg .u32 %r77; mov.f64 %r36,%ar0; .loc 1 76 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r36; call (%value_in),__ieee754_log,(%out_arg1); ld.param.f64 %r38,[%value_in]; } mov.f64 %r35,%r38; .loc 1 77 4 ld.global.u32 %r39,[__fdlib_version]; setp.eq.u32 %r40,%r39,-1; @ %r40 bra $L1; .loc 1 77 31 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r36; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r42,[%value_in]; } .loc 1 77 28 setp.eq.u32 %r43,%r42,0; @ %r43 bra $L1; .loc 1 77 40 setp.gt.f64 %r44,%r36,0d0000000000000000; @ %r44 bra $L1; .loc 1 84 11 cvta.const.u64 %r45,$LC0; st.u64 [%frame+8],%r45; .loc 1 85 10 mov.u32 %r46,0; st.u32 [%frame+40],%r46; .loc 1 86 11 st.f64 [%frame+16],%r36; .loc 1 87 11 st.f64 [%frame+24],%r36; .loc 1 88 19 ld.global.u32 %r24,[__fdlib_version]; .loc 1 88 5 setp.eq.u32 %r47,%r24,0; @ %r47 bra $L3; mov.f64 %r48,0dfff0000000000000; st.f64 [%frame+32],%r48; .loc 1 92 4 setp.neu.f64 %r49,%r36,0d0000000000000000; @ %r49 bra $L4; .loc 1 94 15 mov.u32 %r50,2; st.u32 [%frame],%r50; .loc 1 95 9 setp.ne.u32 %r51,%r24,2; @ %r51 bra $L5; .loc 1 96 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r52,[%value_in]; } .loc 1 96 15 mov.u32 %r53,34; st.u32 [%r52],%r53; bra $L6; $L5: .loc 1 97 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r55,[%value_in]; } .loc 1 97 14 setp.ne.u32 %r56,%r55,0; @ %r56 bra $L6; .loc 1 98 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r57,[%value_in]; } .loc 1 98 15 mov.u32 %r58,34; st.u32 [%r57],%r58; bra $L6; $L4: .loc 1 102 15 mov.u32 %r59,1; st.u32 [%frame],%r59; .loc 1 103 9 setp.ne.u32 %r60,%r24,2; @ %r60 bra $L7; .loc 1 104 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r61,[%value_in]; } .loc 1 104 15 mov.u32 %r62,33; st.u32 [%r61],%r62; bra $L8; $L7: .loc 1 105 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r64,[%value_in]; } .loc 1 105 14 setp.ne.u32 %r65,%r64,0; @ %r65 bra $L8; .loc 1 106 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r66,[%value_in]; } .loc 1 106 15 mov.u32 %r67,33; st.u32 [%r66],%r67; $L8: .loc 1 108 26 cvta.const.u64 %r68,$LC1; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r68; call (%value_in),nan,(%out_arg1); ld.param.f64 %r69,[%value_in]; } .loc 1 108 24 st.f64 [%frame+32],%r69; $L6: .loc 1 110 5 ld.u32 %r70,[%frame+40]; setp.eq.u32 %r71,%r70,0; @ %r71 bra $L9; .loc 1 111 12 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r72,[%value_in]; } .loc 1 111 23 ld.u32 %r34,[%frame+40]; .loc 1 111 18 st.u32 [%r72],%r34; $L9: .loc 1 112 19 ld.f64 %r35,[%frame+32]; bra $L1; $L10: .loc 1 94 15 mov.u32 %r74,2; st.u32 [%frame],%r74; bra $L5; $L3: mov.f64 %r75,0dc7efffffe0000000; st.f64 [%frame+32],%r75; .loc 1 92 4 setp.eq.f64 %r76,%r36,0d0000000000000000; @ %r76 bra $L10; .loc 1 102 15 mov.u32 %r77,1; st.u32 [%frame],%r77; bra $L7; $L1: .loc 1 114 1 mov.f64 %value,%r35; st.shared.u64 [%sspslot],%sspprev; st.param.f64 [%value_out],%value; ret; } lib_a-w_log10.o/1591654536 399 399 100644 5515 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_log10 .extern .func (.param .f64 %value_out) __ieee754_log10 (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: nan .extern .func (.param .f64 %value_out) nan (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[6] = {108,111,103,49,48,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[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 .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 .u32 %r34; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r38; .reg .u32 %r39; .reg .pred %r40; .reg .u32 %r42; .reg .pred %r43; .reg .pred %r44; .reg .u64 %r45; .reg .u32 %r46; .reg .pred %r47; .reg .f64 %r48; .reg .pred %r49; .reg .u32 %r50; .reg .pred %r51; .reg .u64 %r52; .reg .u32 %r53; .reg .u32 %r55; .reg .pred %r56; .reg .u64 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .pred %r60; .reg .u64 %r61; .reg .u32 %r62; .reg .u32 %r64; .reg .pred %r65; .reg .u64 %r66; .reg .u32 %r67; .reg .u64 %r68; .reg .f64 %r69; .reg .u32 %r70; .reg .pred %r71; .reg .u64 %r72; .reg .u32 %r74; .reg .f64 %r75; .reg .pred %r76; .reg .u32 %r77; mov.f64 %r36,%ar0; .loc 1 73 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r36; call (%value_in),__ieee754_log10,(%out_arg1); ld.param.f64 %r38,[%value_in]; } mov.f64 %r35,%r38; .loc 1 74 4 ld.global.u32 %r39,[__fdlib_version]; setp.eq.u32 %r40,%r39,-1; @ %r40 bra $L1; .loc 1 74 31 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r36; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r42,[%value_in]; } .loc 1 74 28 setp.eq.u32 %r43,%r42,0; @ %r43 bra $L1; .loc 1 75 4 setp.le.f64 %r44,%r36,0d0000000000000000; @ ! %r44 bra $L1; .loc 1 82 15 cvta.const.u64 %r45,$LC0; st.u64 [%frame+8],%r45; .loc 1 83 14 mov.u32 %r46,0; st.u32 [%frame+40],%r46; .loc 1 84 15 st.f64 [%frame+16],%r36; .loc 1 85 15 st.f64 [%frame+24],%r36; .loc 1 86 23 ld.global.u32 %r24,[__fdlib_version]; .loc 1 86 9 setp.eq.u32 %r47,%r24,0; @ %r47 bra $L4; mov.f64 %r48,0dfff0000000000000; st.f64 [%frame+32],%r48; .loc 1 90 8 setp.neu.f64 %r49,%r36,0d0000000000000000; @ %r49 bra $L5; .loc 1 92 19 mov.u32 %r50,2; st.u32 [%frame],%r50; .loc 1 93 13 setp.ne.u32 %r51,%r24,2; @ %r51 bra $L6; .loc 1 94 13 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r52,[%value_in]; } .loc 1 94 19 mov.u32 %r53,34; st.u32 [%r52],%r53; bra $L7; $L6: .loc 1 95 20 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r55,[%value_in]; } .loc 1 95 18 setp.ne.u32 %r56,%r55,0; @ %r56 bra $L7; .loc 1 96 13 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r57,[%value_in]; } .loc 1 96 19 mov.u32 %r58,34; st.u32 [%r57],%r58; bra $L7; $L5: .loc 1 100 19 mov.u32 %r59,1; st.u32 [%frame],%r59; .loc 1 101 13 setp.ne.u32 %r60,%r24,2; @ %r60 bra $L8; .loc 1 102 13 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r61,[%value_in]; } .loc 1 102 19 mov.u32 %r62,33; st.u32 [%r61],%r62; bra $L9; $L8: .loc 1 103 20 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r64,[%value_in]; } .loc 1 103 18 setp.ne.u32 %r65,%r64,0; @ %r65 bra $L9; .loc 1 104 13 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r66,[%value_in]; } .loc 1 104 19 mov.u32 %r67,33; st.u32 [%r66],%r67; $L9: .loc 1 106 30 cvta.const.u64 %r68,$LC1; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r68; call (%value_in),nan,(%out_arg1); ld.param.f64 %r69,[%value_in]; } .loc 1 106 28 st.f64 [%frame+32],%r69; $L7: .loc 1 108 9 ld.u32 %r70,[%frame+40]; setp.eq.u32 %r71,%r70,0; @ %r71 bra $L10; .loc 1 109 16 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r72,[%value_in]; } .loc 1 109 27 ld.u32 %r34,[%frame+40]; .loc 1 109 22 st.u32 [%r72],%r34; $L10: .loc 1 110 23 ld.f64 %r35,[%frame+32]; bra $L1; $L11: .loc 1 92 19 mov.u32 %r74,2; st.u32 [%frame],%r74; bra $L6; $L4: mov.f64 %r75,0dc7efffffe0000000; st.f64 [%frame+32],%r75; .loc 1 90 8 setp.eq.f64 %r76,%r36,0d0000000000000000; @ %r76 bra $L11; .loc 1 100 19 mov.u32 %r77,1; st.u32 [%frame],%r77; bra $L8; $L1: .loc 1 114 1 mov.f64 %value,%r35; st.shared.u64 [%sspslot],%sspprev; st.param.f64 [%value_out],%value; ret; } lib_a-w_pow.o/ 1591654536 399 399 100644 16350 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // 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: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %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 DECL: rint .extern .func (.param .f64 %value_out) rint (.param .f64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[4] = {112,111,119,0 }; // 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 .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 %r32; .reg .u32 %r38; .reg .u32 %r40; .reg .u32 %r46; .reg .u32 %r51; .reg .u32 %r58; .reg .u32 %r68; .reg .u32 %r77; .reg .u32 %r78; .reg .f64 %r79; .reg .f64 %r80; .reg .f64 %r81; .reg .f64 %r82; .reg .f64 %r85; .reg .u32 %r86; .reg .pred %r87; .reg .u32 %r89; .reg .pred %r90; .reg .u32 %r92; .reg .pred %r93; .reg .pred %r94; .reg .u32 %r95; .reg .u64 %r96; .reg .f64 %r98; .reg .u32 %r100; .reg .u32 %r101; .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 .u32 %r112; .reg .pred %r113; .reg .u64 %r114; .reg .u32 %r115; .reg .u32 %r116; .reg .pred %r117; .reg .u64 %r118; .reg .pred %r119; .reg .pred %r120; .reg .u32 %r121; .reg .u64 %r122; .reg .u32 %r123; .reg .f64 %r124; .reg .u32 %r125; .reg .pred %r126; .reg .u32 %r128; .reg .pred %r129; .reg .u64 %r130; .reg .u32 %r131; .reg .u32 %r132; .reg .pred %r133; .reg .u64 %r134; .reg .u32 %r136; .reg .pred %r137; .reg .pred %r138; .reg .u32 %r139; .reg .u64 %r140; .reg .u32 %r141; .reg .pred %r142; .reg .f64 %r143; .reg .f64 %r144; .reg .pred %r145; .reg .u64 %r146; .reg .u32 %r147; .reg .u32 %r149; .reg .pred %r150; .reg .u64 %r151; .reg .u32 %r152; .reg .u32 %r153; .reg .pred %r154; .reg .u64 %r155; .reg .u32 %r157; .reg .pred %r158; .reg .u32 %r160; .reg .pred %r161; .reg .u32 %r163; .reg .pred %r164; .reg .u32 %r166; .reg .pred %r167; .reg .u32 %r168; .reg .u64 %r169; .reg .pred %r171; .reg .f64 %r172; .reg .f64 %r173; .reg .f64 %r174; .reg .pred %r175; .reg .u64 %r176; .reg .u32 %r177; .reg .u32 %r179; .reg .pred %r180; .reg .u64 %r181; .reg .u32 %r182; .reg .u32 %r183; .reg .pred %r184; .reg .u64 %r185; .reg .u32 %r186; .reg .u64 %r187; .reg .pred %r190; .reg .f64 %r191; .reg .pred %r192; .reg .f64 %r194; .reg .pred %r195; .reg .f64 %r196; .reg .f64 %r197; .reg .pred %r198; .reg .f64 %r200; .reg .pred %r201; .reg .f64 %r202; .reg .pred %r204; .reg .u64 %r205; .reg .u32 %r206; .reg .u32 %r208; .reg .pred %r209; .reg .u64 %r210; .reg .u32 %r211; .reg .u32 %r212; .reg .pred %r213; .reg .u64 %r214; .reg .pred %r215; .reg .u32 %r217; .reg .pred %r218; .reg .u32 %r220; .reg .pred %r221; .reg .u32 %r222; .reg .u64 %r223; .reg .u32 %r224; .reg .f64 %r225; .reg .u32 %r226; .reg .pred %r227; .reg .u64 %r228; .reg .u32 %r229; .reg .u32 %r231; .reg .pred %r232; .reg .u64 %r233; .reg .u32 %r234; .reg .u32 %r235; .reg .pred %r236; .reg .u64 %r237; .reg .u32 %r239; mov.f64 %r81,%ar0; mov.f64 %r82,%ar1; .loc 1 85 4 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r81; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r82; call (%value_in),__ieee754_pow,(%out_arg1,%out_arg2); ld.param.f64 %r85,[%value_in]; } mov.f64 %r80,%r85; .loc 1 86 4 ld.global.u32 %r86,[__fdlib_version]; setp.eq.u32 %r87,%r86,-1; @ %r87 bra $L1; .loc 1 86 30 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r82; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r89,[%value_in]; } .loc 1 86 27 setp.eq.u32 %r90,%r89,0; @ %r90 bra $L1; .loc 1 87 5 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r81; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r92,[%value_in]; } .loc 1 87 4 setp.ne.u32 %r93,%r92,0; @ %r93 bra $L3; .loc 1 88 8 setp.neu.f64 %r94,%r82,0d0000000000000000; @ %r94 bra $L1; .loc 1 91 12 mov.u32 %r95,1; st.u32 [%frame],%r95; .loc 1 92 12 cvta.const.u64 %r96,$LC0; st.u64 [%frame+8],%r96; .loc 1 93 11 st.u32 [%frame+40],%r92; .loc 1 94 12 st.f64 [%frame+16],%r81; .loc 1 95 12 st.f64 [%frame+24],%r82; .loc 1 96 14 mov.f64 %r98,0d3ff0000000000000; st.f64 [%frame+32],%r98; .loc 1 97 30 ld.global.u32 %r78,[__fdlib_version]; set.u32.eq.u32 %r100,%r78,-1; neg.s32 %r101,%r100; set.u32.eq.u32 %r103,%r78,2; neg.s32 %r104,%r103; cvt.u16.u32 %r106,%r101; cvt.u16.u32 %r107,%r104; or.b16 %r105,%r106,%r107; .loc 1 97 6 cvt.u32.u16 %r108,%r105; cvt.u16.u8 %r109,%r108; setp.ne.u16 %r110,%r109,0; @ %r110 bra $L35; .loc 1 99 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r112,[%value_in]; } .loc 1 99 11 setp.ne.u32 %r113,%r112,0; @ %r113 bra $L5; .loc 1 100 4 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r114,[%value_in]; } .loc 1 100 10 mov.u32 %r115,33; st.u32 [%r114],%r115; $L5: .loc 1 102 13 ld.u32 %r116,[%frame+40]; setp.ne.u32 %r117,%r116,0; @ %r117 bra $L6; ld.f64 %r80,[%frame+32]; bra $L1; $L6: .loc 1 103 13 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r118,[%value_in]; } .loc 1 103 24 ld.u32 %r32,[%frame+40]; .loc 1 103 19 st.u32 [%r118],%r32; ld.f64 %r80,[%frame+32]; bra $L1; $L35: mov.f64 %r80,%r98; .loc 1 104 27 bra $L1; $L3: .loc 1 108 4 setp.neu.f64 %r119,%r81,0d0000000000000000; @ %r119 bra $L7; .loc 1 109 8 setp.neu.f64 %r120,%r82,0d0000000000000000; @ %r120 bra $L8; .loc 1 112 12 mov.u32 %r121,1; st.u32 [%frame],%r121; .loc 1 113 12 cvta.const.u64 %r122,$LC0; st.u64 [%frame+8],%r122; .loc 1 114 11 mov.u32 %r123,0; st.u32 [%frame+40],%r123; .loc 1 115 12 st.f64 [%frame+16],%r81; .loc 1 116 12 st.f64 [%frame+24],%r82; .loc 1 117 14 mov.f64 %r124,0d0000000000000000; st.f64 [%frame+32],%r124; .loc 1 118 6 ld.global.u32 %r125,[__fdlib_version]; setp.ne.u32 %r126,%r125,0; @ %r126 bra $L36; .loc 1 119 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r128,[%value_in]; } .loc 1 119 11 setp.ne.u32 %r129,%r128,0; @ %r129 bra $L10; .loc 1 120 4 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r130,[%value_in]; } .loc 1 120 10 mov.u32 %r131,33; st.u32 [%r130],%r131; $L10: .loc 1 122 13 ld.u32 %r132,[%frame+40]; setp.ne.u32 %r133,%r132,0; @ %r133 bra $L11; ld.f64 %r80,[%frame+32]; bra $L1; $L11: .loc 1 123 13 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r134,[%value_in]; } .loc 1 123 24 ld.u32 %r38,[%frame+40]; .loc 1 123 19 st.u32 [%r134],%r38; ld.f64 %r80,[%frame+32]; bra $L1; $L36: mov.f64 %r80,0d3ff0000000000000; .loc 1 124 27 bra $L1; $L8: .loc 1 126 16 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r82; call (%value_in),finite,(%out_arg1); ld.param.u32 %r136,[%value_in]; } .loc 1 126 15 setp.eq.u32 %r137,%r136,0; @ %r137 bra $L1; .loc 1 126 25 setp.lt.f64 %r138,%r82,0d0000000000000000; @ ! %r138 bra $L1; .loc 1 128 12 mov.u32 %r139,1; st.u32 [%frame],%r139; .loc 1 129 12 cvta.const.u64 %r140,$LC0; st.u64 [%frame+8],%r140; .loc 1 130 11 mov.u32 %r141,0; st.u32 [%frame+40],%r141; .loc 1 131 12 st.f64 [%frame+16],%r81; .loc 1 132 12 st.f64 [%frame+24],%r82; .loc 1 133 20 ld.global.u32 %r40,[__fdlib_version]; .loc 1 133 6 setp.ne.u32 %r142,%r40,0; @ %r142 bra $L13; .loc 1 134 16 mov.f64 %r143,0d0000000000000000; st.f64 [%frame+32],%r143; bra $L14; $L13: .loc 1 136 16 mov.f64 %r144,0dfff0000000000000; st.f64 [%frame+32],%r144; .loc 1 137 6 setp.ne.u32 %r145,%r40,2; @ %r145 bra $L14; .loc 1 138 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r146,[%value_in]; } .loc 1 138 11 mov.u32 %r147,33; st.u32 [%r146],%r147; bra $L15; $L14: .loc 1 139 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r149,[%value_in]; } .loc 1 139 11 setp.ne.u32 %r150,%r149,0; @ %r150 bra $L15; .loc 1 140 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r151,[%value_in]; } .loc 1 140 11 mov.u32 %r152,33; st.u32 [%r151],%r152; $L15: .loc 1 142 13 ld.u32 %r153,[%frame+40]; setp.eq.u32 %r154,%r153,0; @ %r154 bra $L16; .loc 1 143 13 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r155,[%value_in]; } .loc 1 143 24 ld.u32 %r46,[%frame+40]; .loc 1 143 19 st.u32 [%r155],%r46; $L16: .loc 1 144 27 ld.f64 %r80,[%frame+32]; bra $L1; $L7: .loc 1 148 6 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r85; call (%value_in),finite,(%out_arg1); ld.param.u32 %r157,[%value_in]; } .loc 1 148 4 setp.ne.u32 %r158,%r157,0; @ %r158 bra $L17; .loc 1 149 9 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r81; call (%value_in),finite,(%out_arg1); ld.param.u32 %r160,[%value_in]; } .loc 1 149 8 setp.eq.u32 %r161,%r160,0; @ %r161 bra $L17; .loc 1 149 20 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r82; call (%value_in),finite,(%out_arg1); ld.param.u32 %r163,[%value_in]; } .loc 1 149 18 setp.eq.u32 %r164,%r163,0; @ %r164 bra $L17; .loc 1 150 13 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r85; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r166,[%value_in]; } .loc 1 150 12 setp.ne.u32 %r167,%r166,0; @ %r167 bra $L18; .loc 1 152 16 mov.u32 %r168,1; st.u32 [%frame],%r168; .loc 1 153 16 cvta.const.u64 %r169,$LC0; st.u64 [%frame+8],%r169; .loc 1 154 15 st.u32 [%frame+40],%r166; .loc 1 155 16 st.f64 [%frame+16],%r81; .loc 1 156 16 st.f64 [%frame+24],%r82; .loc 1 157 24 ld.global.u32 %r51,[__fdlib_version]; .loc 1 157 10 setp.ne.u32 %r171,%r51,0; @ %r171 bra $L19; .loc 1 158 22 mov.f64 %r172,0d0000000000000000; st.f64 [%frame+32],%r172; bra $L20; $L19: .loc 1 160 27 mov.f64 %r174,0d0000000000000000; div.rn.f64 %r173,%r174,0d0000000000000000; .loc 1 160 22 st.f64 [%frame+32],%r173; .loc 1 161 10 setp.ne.u32 %r175,%r51,2; @ %r175 bra $L20; .loc 1 162 11 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r176,[%value_in]; } .loc 1 162 17 mov.u32 %r177,33; st.u32 [%r176],%r177; bra $L21; $L20: .loc 1 163 17 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r179,[%value_in]; } .loc 1 163 15 setp.ne.u32 %r180,%r179,0; @ %r180 bra $L21; .loc 1 164 11 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r181,[%value_in]; } .loc 1 164 17 mov.u32 %r182,33; st.u32 [%r181],%r182; $L21: .loc 1 166 17 ld.u32 %r183,[%frame+40]; setp.eq.u32 %r184,%r183,0; @ %r184 bra $L22; .loc 1 167 18 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r185,[%value_in]; } .loc 1 167 29 ld.u32 %r58,[%frame+40]; .loc 1 167 24 st.u32 [%r185],%r58; $L22: .loc 1 168 31 ld.f64 %r80,[%frame+32]; bra $L1; $L18: .loc 1 171 16 mov.u32 %r186,3; st.u32 [%frame],%r186; .loc 1 172 16 cvta.const.u64 %r187,$LC0; st.u64 [%frame+8],%r187; .loc 1 173 15 st.u32 [%frame+40],%r157; .loc 1 174 16 st.f64 [%frame+16],%r81; .loc 1 175 16 st.f64 [%frame+24],%r82; mul.f64 %r79,%r82,0d3fe0000000000000; .loc 1 176 10 ld.global.u32 %r239,[__fdlib_version]; setp.ne.u32 %r190,%r239,0; @ %r190 bra $L23; .loc 1 177 21 mov.f64 %r191,0d47efffffe0000000; st.f64 [%frame+32],%r191; .loc 1 179 12 setp.lt.f64 %r192,%r81,0d0000000000000000; @ ! %r192 bra $L24; .loc 1 179 20 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r79; call (%value_in),rint,(%out_arg1); ld.param.f64 %r194,[%value_in]; } .loc 1 179 18 setp.neu.f64 %r195,%r194,%r79; @ %r195 bra $L26; ld.global.u32 %r239,[__fdlib_version]; bra $L27; $L26: .loc 1 179 43 mov.f64 %r196,0dc7efffffe0000000; st.f64 [%frame+32],%r196; ld.global.u32 %r239,[__fdlib_version]; bra $L27; $L23: .loc 1 181 21 mov.f64 %r197,0d7ff0000000000000; st.f64 [%frame+32],%r197; .loc 1 183 12 setp.lt.f64 %r198,%r81,0d0000000000000000; @ ! %r198 bra $L27; .loc 1 183 20 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r79; call (%value_in),rint,(%out_arg1); ld.param.f64 %r200,[%value_in]; } .loc 1 183 18 setp.eq.f64 %r201,%r200,%r79; @ ! %r201 bra $L74; ld.global.u32 %r239,[__fdlib_version]; bra $L27; $L74: .loc 1 183 43 mov.f64 %r202,0dfff0000000000000; st.f64 [%frame+32],%r202; ld.global.u32 %r239,[__fdlib_version]; $L27: .loc 1 185 10 setp.ne.u32 %r204,%r239,2; @ %r204 bra $L24; .loc 1 186 11 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r205,[%value_in]; } .loc 1 186 17 mov.u32 %r206,34; st.u32 [%r205],%r206; bra $L30; $L24: .loc 1 187 17 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r208,[%value_in]; } .loc 1 187 15 setp.ne.u32 %r209,%r208,0; @ %r209 bra $L30; .loc 1 188 4 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r210,[%value_in]; } .loc 1 188 10 mov.u32 %r211,34; st.u32 [%r210],%r211; $L30: .loc 1 190 17 ld.u32 %r212,[%frame+40]; setp.eq.u32 %r213,%r212,0; @ %r213 bra $L31; .loc 1 191 18 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r214,[%value_in]; } .loc 1 191 29 ld.u32 %r68,[%frame+40]; .loc 1 191 24 st.u32 [%r214],%r68; $L31: .loc 1 192 31 ld.f64 %r80,[%frame+32]; bra $L1; $L17: .loc 1 196 4 setp.neu.f64 %r215,%r85,0d0000000000000000; @ %r215 bra $L1; .loc 1 196 13 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r81; call (%value_in),finite,(%out_arg1); ld.param.u32 %r217,[%value_in]; } .loc 1 196 11 setp.eq.u32 %r218,%r217,0; @ %r218 bra $L1; .loc 1 196 24 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r82; call (%value_in),finite,(%out_arg1); ld.param.u32 %r220,[%value_in]; } .loc 1 196 22 setp.eq.u32 %r221,%r220,0; @ %r221 bra $L1; .loc 1 198 15 mov.u32 %r222,4; st.u32 [%frame],%r222; .loc 1 199 15 cvta.const.u64 %r223,$LC0; st.u64 [%frame+8],%r223; .loc 1 200 14 mov.u32 %r224,0; st.u32 [%frame+40],%r224; .loc 1 201 15 st.f64 [%frame+16],%r81; .loc 1 202 15 st.f64 [%frame+24],%r82; .loc 1 203 17 mov.f64 %r225,0d0000000000000000; st.f64 [%frame+32],%r225; .loc 1 204 9 ld.global.u32 %r226,[__fdlib_version]; setp.ne.u32 %r227,%r226,2; @ %r227 bra $L32; .loc 1 205 10 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r228,[%value_in]; } .loc 1 205 16 mov.u32 %r229,34; st.u32 [%r228],%r229; bra $L33; $L32: .loc 1 206 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r231,[%value_in]; } .loc 1 206 14 setp.ne.u32 %r232,%r231,0; @ %r232 bra $L33; .loc 1 207 8 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r233,[%value_in]; } .loc 1 207 14 mov.u32 %r234,34; st.u32 [%r233],%r234; $L33: .loc 1 209 9 ld.u32 %r235,[%frame+40]; setp.eq.u32 %r236,%r235,0; @ %r236 bra $L34; .loc 1 210 10 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r237,[%value_in]; } .loc 1 210 21 ld.u32 %r77,[%frame+40]; .loc 1 210 16 st.u32 [%r237],%r77; $L34: .loc 1 211 23 ld.f64 %r80,[%frame+32]; $L1: .loc 1 215 1 mov.f64 %value,%r80; st.shared.u64 [%sspslot],%sspprev; st.param.f64 [%value_out],%value; ret; } /1421 1591654536 399 399 100644 4439 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // 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: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[10] = {114,101,109,97,105,110,100,101,114,0 }; // 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 .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 %r31; .reg .f64 %r35; .reg .f64 %r36; .reg .f64 %r37; .reg .f64 %r40; .reg .u32 %r41; .reg .pred %r42; .reg .u32 %r44; .reg .u32 %r46; .reg .u32 %r47; .reg .u32 %r49; .reg .u32 %r50; .reg .u16 %r51; .reg .u16 %r52; .reg .u16 %r53; .reg .u32 %r54; .reg .u16 %r55; .reg .pred %r56; .reg .u32 %r57; .reg .u64 %r58; .reg .u32 %r59; .reg .f64 %r60; .reg .f64 %r61; .reg .u32 %r62; .reg .pred %r63; .reg .u64 %r64; .reg .u32 %r65; .reg .u32 %r67; .reg .pred %r68; .reg .u64 %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .pred %r72; .reg .u64 %r73; mov.f64 %r36,%ar0; mov.f64 %r37,%ar1; .loc 1 68 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r36; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r37; call (%value_in),__ieee754_remainder,(%out_arg1,%out_arg2); ld.param.f64 %r40,[%value_in]; } mov.f64 %r35,%r40; .loc 1 69 4 ld.global.u32 %r41,[__fdlib_version]; setp.eq.u32 %r42,%r41,-1; @ %r42 bra $L1; .loc 1 69 31 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r37; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r44,[%value_in]; } .loc 1 70 4 set.u32.eq.f64 %r46,%r37,0d0000000000000000; neg.s32 %r47,%r46; .loc 1 69 28 set.u32.ne.u32 %r49,%r44,0; neg.s32 %r50,%r49; .loc 1 70 4 cvt.u16.u32 %r52,%r47; cvt.u16.u32 %r53,%r50; and.b16 %r51,%r52,%r53; cvt.u32.u16 %r54,%r51; cvt.u16.u8 %r55,%r54; setp.eq.u16 %r56,%r55,0; @ %r56 bra $L1; .loc 1 72 22 mov.u32 %r57,1; st.u32 [%frame],%r57; .loc 1 73 22 cvta.const.u64 %r58,$LC0; st.u64 [%frame+8],%r58; .loc 1 74 14 mov.u32 %r59,0; st.u32 [%frame+40],%r59; .loc 1 75 15 st.f64 [%frame+16],%r36; .loc 1 76 15 st.f64 [%frame+24],%r37; .loc 1 77 29 mov.f64 %r61,0d0000000000000000; div.rn.f64 %r60,%r61,0d0000000000000000; .loc 1 77 24 st.f64 [%frame+32],%r60; .loc 1 78 16 ld.global.u32 %r62,[__fdlib_version]; setp.ne.u32 %r63,%r62,2; @ %r63 bra $L3; .loc 1 79 16 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r64,[%value_in]; } .loc 1 79 22 mov.u32 %r65,33; st.u32 [%r64],%r65; bra $L4; $L3: .loc 1 80 23 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r67,[%value_in]; } .loc 1 80 21 setp.ne.u32 %r68,%r67,0; @ %r68 bra $L4; .loc 1 81 16 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r69,[%value_in]; } .loc 1 81 22 mov.u32 %r70,33; st.u32 [%r69],%r70; $L4: .loc 1 83 9 ld.u32 %r71,[%frame+40]; setp.eq.u32 %r72,%r71,0; @ %r72 bra $L5; .loc 1 84 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r73,[%value_in]; } .loc 1 84 20 ld.u32 %r31,[%frame+40]; .loc 1 84 15 st.u32 [%r73],%r31; $L5: .loc 1 85 23 ld.f64 %r35,[%frame+32]; $L1: .loc 1 89 1 mov.f64 %value,%r35; st.shared.u64 [%sspslot],%sspprev; st.param.f64 [%value_out],%value; ret; } lib_a-w_scalb.o/1591654536 399 399 100644 7427 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // 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: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // 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]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[6] = {115,99,97,108,98,0 }; // 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 .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 %r32; .reg .u32 %r43; .reg .f64 %r46; .reg .f64 %r47; .reg .f64 %r48; .reg .f64 %r49; .reg .f64 %r52; .reg .u32 %r53; .reg .pred %r54; .reg .u32 %r56; .reg .pred %r57; .reg .u32 %r59; .reg .pred %r60; .reg .u32 %r62; .reg .pred %r63; .reg .u32 %r64; .reg .u64 %r65; .reg .pred %r67; .reg .u32 %r68; .reg .pred %r69; .reg .u64 %r70; .reg .u32 %r71; .reg .u32 %r73; .reg .pred %r74; .reg .u64 %r75; .reg .u32 %r76; .reg .u32 %r77; .reg .pred %r78; .reg .u64 %r79; .reg .u32 %r81; .reg .u32 %r82; .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 .u64 %r93; .reg .u32 %r94; .reg .f64 %r95; .reg .f64 %r97; .reg .u32 %r98; .reg .pred %r99; .reg .u64 %r100; .reg .u32 %r101; .reg .u32 %r103; .reg .pred %r104; .reg .u64 %r105; .reg .u32 %r106; .reg .u32 %r107; .reg .pred %r108; .reg .u64 %r109; .reg .u32 %r111; .reg .pred %r112; .reg .u64 %r113; .reg .u32 %r114; mov.f64 %r48,%ar0; mov.f64 %r49,%ar1; .loc 1 51 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r48; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r49; call (%value_in),__ieee754_scalb,(%out_arg1,%out_arg2); ld.param.f64 %r52,[%value_in]; } mov.f64 %r47,%r52; .loc 1 52 4 ld.global.u32 %r53,[__fdlib_version]; setp.eq.u32 %r54,%r53,-1; @ %r54 bra $L1; .loc 1 53 7 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r52; call (%value_in),finite,(%out_arg1); ld.param.u32 %r56,[%value_in]; } .loc 1 53 4 setp.ne.u32 %r57,%r56,0; @ %r57 bra $L3; .loc 1 53 18 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r52; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r59,[%value_in]; } .loc 1 53 5 setp.eq.u32 %r60,%r59,0; @ %r60 bra $L3; .loc 1 53 29 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r48; call (%value_in),finite,(%out_arg1); ld.param.u32 %r62,[%value_in]; } .loc 1 53 27 setp.eq.u32 %r63,%r62,0; @ %r63 bra $L3; .loc 1 55 15 mov.u32 %r64,3; st.u32 [%frame],%r64; .loc 1 56 15 cvta.const.u64 %r65,$LC0; st.u64 [%frame+8],%r65; .loc 1 57 14 st.u32 [%frame+40],%r56; .loc 1 58 15 st.f64 [%frame+16],%r48; .loc 1 59 15 st.f64 [%frame+24],%r49; .loc 1 60 38 setp.gt.f64 %r67,%r48,0d0000000000000000; selp.f64 %r46,0d7ff0000000000000,0dfff0000000000000,%r67; .loc 1 60 17 st.f64 [%frame+32],%r46; .loc 1 61 9 ld.global.u32 %r68,[__fdlib_version]; setp.ne.u32 %r69,%r68,2; @ %r69 bra $L5; .loc 1 62 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r70,[%value_in]; } .loc 1 62 15 mov.u32 %r71,34; st.u32 [%r70],%r71; bra $L6; $L5: .loc 1 63 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r73,[%value_in]; } .loc 1 63 14 setp.ne.u32 %r74,%r73,0; @ %r74 bra $L6; .loc 1 64 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r75,[%value_in]; } .loc 1 64 15 mov.u32 %r76,34; st.u32 [%r75],%r76; $L6: .loc 1 66 9 ld.u32 %r77,[%frame+40]; setp.eq.u32 %r78,%r77,0; @ %r78 bra $L7; .loc 1 67 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r79,[%value_in]; } .loc 1 67 20 ld.u32 %r32,[%frame+40]; .loc 1 67 15 st.u32 [%r79],%r32; $L7: .loc 1 68 23 ld.f64 %r47,[%frame+32]; bra $L1; $L3: .loc 1 70 6 set.u32.eq.f64 %r81,%r52,0d0000000000000000; neg.s32 %r82,%r81; .loc 1 70 14 set.u32.neu.f64 %r84,%r48,%r52; neg.s32 %r85,%r84; .loc 1 70 11 cvt.u16.u32 %r87,%r82; cvt.u16.u32 %r88,%r85; and.b16 %r86,%r87,%r88; .loc 1 70 4 cvt.u32.u16 %r89,%r86; cvt.u16.u8 %r90,%r89; setp.eq.u16 %r91,%r90,0; @ %r91 bra $L8; .loc 1 72 15 mov.u32 %r92,4; st.u32 [%frame],%r92; .loc 1 73 15 cvta.const.u64 %r93,$LC0; st.u64 [%frame+8],%r93; .loc 1 74 14 mov.u32 %r94,0; st.u32 [%frame+40],%r94; .loc 1 75 15 st.f64 [%frame+16],%r48; .loc 1 76 15 st.f64 [%frame+24],%r49; .loc 1 77 19 mov.f64 %r95,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r95; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r48; call (%value_in),copysign,(%out_arg1,%out_arg2); ld.param.f64 %r97,[%value_in]; } .loc 1 77 17 st.f64 [%frame+32],%r97; .loc 1 78 9 ld.global.u32 %r98,[__fdlib_version]; setp.ne.u32 %r99,%r98,2; @ %r99 bra $L9; .loc 1 79 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r100,[%value_in]; } .loc 1 79 15 mov.u32 %r101,34; st.u32 [%r100],%r101; bra $L10; $L9: .loc 1 80 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r103,[%value_in]; } .loc 1 80 14 setp.ne.u32 %r104,%r103,0; @ %r104 bra $L10; .loc 1 81 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r105,[%value_in]; } .loc 1 81 15 mov.u32 %r106,34; st.u32 [%r105],%r106; $L10: .loc 1 83 9 ld.u32 %r107,[%frame+40]; setp.eq.u32 %r108,%r107,0; @ %r108 bra $L11; .loc 1 84 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r109,[%value_in]; } .loc 1 84 20 ld.u32 %r43,[%frame+40]; .loc 1 84 15 st.u32 [%r109],%r43; $L11: .loc 1 85 23 ld.f64 %r47,[%frame+32]; bra $L1; $L8: .loc 1 88 6 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r49; call (%value_in),finite,(%out_arg1); ld.param.u32 %r111,[%value_in]; } .loc 1 88 4 setp.ne.u32 %r112,%r111,0; @ %r112 bra $L1; .loc 1 88 18 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r113,[%value_in]; } .loc 1 88 24 mov.u32 %r114,34; st.u32 [%r113],%r114; $L1: .loc 1 92 1 mov.f64 %value,%r47; st.shared.u64 [%sspslot],%sspprev; st.param.f64 [%value_out],%value; ret; } /1442 1591654536 399 399 100644 1259 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654536 399 399 100644 4300 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // 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 DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[5] = {115,105,110,104,0 }; // 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 .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 %r25; .reg .u32 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r34; .reg .f64 %r35; .reg .f64 %r37; .reg .u32 %r38; .reg .pred %r39; .reg .u32 %r41; .reg .pred %r42; .reg .u32 %r44; .reg .pred %r45; .reg .u32 %r46; .reg .u64 %r47; .reg .pred %r49; .reg .pred %r50; .reg .pred %r51; .reg .pred %r52; .reg .u64 %r53; .reg .u32 %r54; .reg .u32 %r56; .reg .pred %r57; .reg .u64 %r58; .reg .u32 %r59; .reg .u32 %r60; .reg .pred %r61; .reg .u64 %r62; mov.f64 %r35,%ar0; .loc 1 89 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r35; call (%value_in),__ieee754_sinh,(%out_arg1); ld.param.f64 %r37,[%value_in]; } mov.f64 %r34,%r37; .loc 1 90 4 ld.global.u32 %r38,[__fdlib_version]; setp.eq.u32 %r39,%r38,-1; @ %r39 bra $L1; .loc 1 91 6 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r37; call (%value_in),finite,(%out_arg1); ld.param.u32 %r41,[%value_in]; } .loc 1 91 4 setp.ne.u32 %r42,%r41,0; @ %r42 bra $L1; .loc 1 91 17 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r35; call (%value_in),finite,(%out_arg1); ld.param.u32 %r44,[%value_in]; } .loc 1 91 15 setp.eq.u32 %r45,%r44,0; @ %r45 bra $L1; .loc 1 99 15 mov.u32 %r46,3; st.u32 [%frame],%r46; .loc 1 100 15 cvta.const.u64 %r47,$LC0; st.u64 [%frame+8],%r47; .loc 1 101 14 st.u32 [%frame+40],%r41; .loc 1 102 26 st.f64 [%frame+24],%r35; .loc 1 102 15 st.f64 [%frame+16],%r35; .loc 1 103 23 ld.global.u32 %r25,[__fdlib_version]; .loc 1 103 9 setp.ne.u32 %r49,%r25,0; @ %r49 bra $L3; .loc 1 104 39 setp.gt.f64 %r50,%r35,0d0000000000000000; selp.f64 %r32,0d47efffffe0000000,0dc7efffffe0000000,%r50; .loc 1 104 20 st.f64 [%frame+32],%r32; bra $L5; $L3: .loc 1 106 43 setp.gt.f64 %r51,%r35,0d0000000000000000; selp.f64 %r33,0d7ff0000000000000,0dfff0000000000000,%r51; .loc 1 106 20 st.f64 [%frame+32],%r33; .loc 1 107 9 setp.ne.u32 %r52,%r25,2; @ %r52 bra $L5; .loc 1 108 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r53,[%value_in]; } .loc 1 108 15 mov.u32 %r54,34; st.u32 [%r53],%r54; bra $L7; $L5: .loc 1 109 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r56,[%value_in]; } .loc 1 109 14 setp.ne.u32 %r57,%r56,0; @ %r57 bra $L7; .loc 1 110 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r58,[%value_in]; } .loc 1 110 15 mov.u32 %r59,34; st.u32 [%r58],%r59; $L7: .loc 1 112 9 ld.u32 %r60,[%frame+40]; setp.eq.u32 %r61,%r60,0; @ %r61 bra $L8; .loc 1 113 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r62,[%value_in]; } .loc 1 113 20 ld.u32 %r31,[%frame+40]; .loc 1 113 15 st.u32 [%r62],%r31; $L8: .loc 1 114 23 ld.f64 %r34,[%frame+32]; $L1: .loc 1 118 1 mov.f64 %value,%r34; st.shared.u64 [%sspslot],%sspprev; st.param.f64 [%value_out],%value; ret; } lib_a-w_sqrt.o/ 1591654536 399 399 100644 4052 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrt .extern .func (.param .f64 %value_out) __ieee754_sqrt (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[5] = {115,113,114,116,0 }; // 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 .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 .u32 %r31; .reg .f64 %r32; .reg .f64 %r33; .reg .f64 %r35; .reg .u32 %r36; .reg .pred %r37; .reg .u32 %r39; .reg .pred %r40; .reg .pred %r41; .reg .u32 %r42; .reg .u64 %r43; .reg .u32 %r44; .reg .pred %r45; .reg .f64 %r46; .reg .f64 %r47; .reg .f64 %r48; .reg .pred %r49; .reg .u64 %r50; .reg .u32 %r51; .reg .u32 %r53; .reg .pred %r54; .reg .u64 %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .pred %r58; .reg .u64 %r59; mov.f64 %r33,%ar0; .loc 1 69 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; call (%value_in),__ieee754_sqrt,(%out_arg1); ld.param.f64 %r35,[%value_in]; } mov.f64 %r32,%r35; .loc 1 70 4 ld.global.u32 %r36,[__fdlib_version]; setp.eq.u32 %r37,%r36,-1; @ %r37 bra $L1; .loc 1 70 31 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r33; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r39,[%value_in]; } .loc 1 70 28 setp.eq.u32 %r40,%r39,0; @ %r40 bra $L1; .loc 1 71 4 setp.lt.f64 %r41,%r33,0d0000000000000000; @ ! %r41 bra $L1; .loc 1 72 13 mov.u32 %r42,1; st.u32 [%frame],%r42; .loc 1 73 13 cvta.const.u64 %r43,$LC0; st.u64 [%frame+8],%r43; .loc 1 74 12 mov.u32 %r44,0; st.u32 [%frame+40],%r44; .loc 1 75 24 st.f64 [%frame+24],%r33; .loc 1 75 13 st.f64 [%frame+16],%r33; .loc 1 76 21 ld.global.u32 %r24,[__fdlib_version]; .loc 1 76 7 setp.ne.u32 %r45,%r24,0; @ %r45 bra $L4; .loc 1 77 17 mov.f64 %r46,0d0000000000000000; st.f64 [%frame+32],%r46; bra $L5; $L4: .loc 1 79 29 mov.f64 %r48,0d0000000000000000; div.rn.f64 %r47,%r48,0d0000000000000000; .loc 1 79 24 st.f64 [%frame+32],%r47; .loc 1 80 14 setp.ne.u32 %r49,%r24,2; @ %r49 bra $L5; .loc 1 81 13 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r50,[%value_in]; } .loc 1 81 19 mov.u32 %r51,33; st.u32 [%r50],%r51; bra $L6; $L5: .loc 1 82 21 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r53,[%value_in]; } .loc 1 82 19 setp.ne.u32 %r54,%r53,0; @ %r54 bra $L6; .loc 1 83 13 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r55,[%value_in]; } .loc 1 83 19 mov.u32 %r56,33; st.u32 [%r55],%r56; $L6: .loc 1 85 14 ld.u32 %r57,[%frame+40]; setp.eq.u32 %r58,%r57,0; @ %r58 bra $L7; .loc 1 86 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r59,[%value_in]; } .loc 1 86 17 ld.u32 %r31,[%frame+40]; .loc 1 86 12 st.u32 [%r59],%r31; $L7: .loc 1 87 14 ld.f64 %r32,[%frame+32]; $L1: .loc 1 91 1 mov.f64 %value,%r32; st.shared.u64 [%sspslot],%sspprev; st.param.f64 [%value_out],%value; ret; } /1460 1591654536 399 399 100644 3796 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_gamma_r .extern .func (.param .f64 %value_out) __ieee754_gamma_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: __kernel_standard .extern .func (.param .f64 %value_out) __kernel_standard (.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: 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 .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 %r27; .reg .f64 %r28; .reg .f64 %r31; .reg .u32 %r32; .reg .pred %r33; .reg .u32 %r34; .reg .pred %r35; .reg .u32 %r37; .reg .pred %r38; .reg .u32 %r40; .reg .pred %r41; .reg .f64 %r43; .reg .pred %r44; .reg .pred %r45; .reg .u32 %r48; .reg .f64 %r49; .reg .u32 %r52; .reg .f64 %r53; mov.f64 %r28,%ar0; .loc 1 31 6 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; call (%value_in),__ieee754_gamma_r,(%out_arg1,%out_arg2); ld.param.f64 %r31,[%value_in]; } mov.f64 %r27,%r31; .loc 1 32 5 ld.u32 %r32,[%frame]; setp.ge.s32 %r33,%r32,0; @ %r33 bra $L2; .loc 1 32 27 neg.f64 %r27,%r27; $L2: .loc 1 36 4 ld.global.u32 %r34,[__fdlib_version]; setp.eq.u32 %r35,%r34,-1; @ %r35 bra $L1; .loc 1 38 6 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r27; call (%value_in),finite,(%out_arg1); ld.param.u32 %r37,[%value_in]; } .loc 1 38 4 setp.ne.u32 %r38,%r37,0; @ %r38 bra $L1; .loc 1 38 17 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r28; call (%value_in),finite,(%out_arg1); ld.param.u32 %r40,[%value_in]; } .loc 1 38 15 setp.eq.u32 %r41,%r40,0; @ %r41 bra $L1; .loc 1 39 7 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r28; call (%value_in),floor,(%out_arg1); ld.param.f64 %r43,[%value_in]; } .loc 1 39 6 setp.neu.f64 %r44,%r43,%r28; @ %r44 bra $L4; .loc 1 39 18 setp.le.f64 %r45,%r28,0d0000000000000000; @ ! %r45 bra $L4; .loc 1 40 13 mov.u32 %r48,41; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r28; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r28; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r48; call (%value_in),__kernel_standard,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r49,[%value_in]; } mov.f64 %r27,%r49; bra $L1; $L4: .loc 1 42 13 mov.u32 %r52,40; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r28; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r28; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r52; call (%value_in),__kernel_standard,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r53,[%value_in]; } mov.f64 %r27,%r53; $L1: .loc 1 46 1 mov.f64 %value,%r27; st.shared.u64 [%sspslot],%sspprev; st.param.f64 [%value_out],%value; ret; } lib_a-wf_acos.o/1591654536 399 399 100644 4500 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_acosf .extern .func (.param .f32 %value_out) __ieee754_acosf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __fpclassifyf .extern .func (.param .u32 %value_out) __fpclassifyf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: nan .extern .func (.param .f64 %value_out) nan (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[6] = {97,99,111,115,102,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[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 .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 .f64 %r25; .reg .u32 %r33; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r38; .reg .u32 %r39; .reg .pred %r40; .reg .u32 %r42; .reg .pred %r43; .reg .f32 %r45; .reg .pred %r46; .reg .u32 %r47; .reg .u64 %r48; .reg .u32 %r49; .reg .u64 %r50; .reg .f64 %r51; .reg .u32 %r52; .reg .pred %r53; .reg .u64 %r54; .reg .u32 %r55; .reg .u32 %r57; .reg .pred %r58; .reg .u64 %r59; .reg .u32 %r60; .reg .u32 %r61; .reg .pred %r62; .reg .u64 %r63; .reg .f64 %r64; mov.f32 %r36,%ar0; .loc 1 35 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r36; call (%value_in),__ieee754_acosf,(%out_arg1); ld.param.f32 %r38,[%value_in]; } mov.f32 %r35,%r38; .loc 1 36 4 ld.global.u32 %r39,[__fdlib_version]; setp.eq.u32 %r40,%r39,-1; @ %r40 bra $L1; .loc 1 36 31 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r36; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r42,[%value_in]; } .loc 1 36 28 setp.eq.u32 %r43,%r42,0; @ %r43 bra $L1; .loc 1 37 5 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r36; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r45,[%value_in]; } .loc 1 37 4 setp.gt.f32 %r46,%r45,0f3f800000; @ ! %r46 bra $L1; .loc 1 39 15 mov.u32 %r47,1; st.u32 [%frame],%r47; .loc 1 40 15 cvta.const.u64 %r48,$LC0; st.u64 [%frame+8],%r48; .loc 1 41 14 mov.u32 %r49,0; st.u32 [%frame+40],%r49; .loc 1 42 28 cvt.f64.f32 %r25,%r36; .loc 1 42 26 st.f64 [%frame+24],%r25; .loc 1 42 15 st.f64 [%frame+16],%r25; .loc 1 43 19 cvta.const.u64 %r50,$LC1; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r50; call (%value_in),nan,(%out_arg1); ld.param.f64 %r51,[%value_in]; } .loc 1 43 17 st.f64 [%frame+32],%r51; .loc 1 44 9 ld.global.u32 %r52,[__fdlib_version]; setp.ne.u32 %r53,%r52,2; @ %r53 bra $L4; .loc 1 45 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r54,[%value_in]; } .loc 1 45 15 mov.u32 %r55,33; st.u32 [%r54],%r55; bra $L5; $L4: .loc 1 46 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r57,[%value_in]; } .loc 1 46 14 setp.ne.u32 %r58,%r57,0; @ %r58 bra $L5; .loc 1 47 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r59,[%value_in]; } .loc 1 47 15 mov.u32 %r60,33; st.u32 [%r59],%r60; $L5: .loc 1 49 16 ld.u32 %r61,[%frame+40]; setp.eq.u32 %r62,%r61,0; @ %r62 bra $L6; .loc 1 50 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r63,[%value_in]; } .loc 1 50 20 ld.u32 %r33,[%frame+40]; .loc 1 50 15 st.u32 [%r63],%r33; $L6: .loc 1 51 13 ld.f64 %r64,[%frame+32]; cvt.rn.f32.f64 %r35,%r64; $L1: .loc 1 55 1 mov.f32 %value,%r35; st.shared.u64 [%sspslot],%sspprev; st.param.f32 [%value_out],%value; ret; } /1478 1591654536 399 399 100644 3975 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_acoshf .extern .func (.param .f32 %value_out) __ieee754_acoshf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __fpclassifyf .extern .func (.param .u32 %value_out) __fpclassifyf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[7] = {97,99,111,115,104,102,0 }; // 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 .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 .f64 %r24; .reg .u32 %r32; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r37; .reg .u32 %r38; .reg .pred %r39; .reg .u32 %r41; .reg .pred %r42; .reg .pred %r43; .reg .u32 %r44; .reg .u64 %r45; .reg .u32 %r46; .reg .f64 %r47; .reg .f64 %r48; .reg .u32 %r49; .reg .pred %r50; .reg .u64 %r51; .reg .u32 %r52; .reg .u32 %r54; .reg .pred %r55; .reg .u64 %r56; .reg .u32 %r57; .reg .u32 %r58; .reg .pred %r59; .reg .u64 %r60; .reg .f64 %r61; mov.f32 %r35,%ar0; .loc 1 36 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r35; call (%value_in),__ieee754_acoshf,(%out_arg1); ld.param.f32 %r37,[%value_in]; } mov.f32 %r34,%r37; .loc 1 37 4 ld.global.u32 %r38,[__fdlib_version]; setp.eq.u32 %r39,%r38,-1; @ %r39 bra $L1; .loc 1 37 31 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r35; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r41,[%value_in]; } .loc 1 37 28 setp.eq.u32 %r42,%r41,0; @ %r42 bra $L1; .loc 1 38 4 setp.lt.f32 %r43,%r35,0f3f800000; @ ! %r43 bra $L1; .loc 1 40 22 mov.u32 %r44,1; st.u32 [%frame],%r44; .loc 1 41 22 cvta.const.u64 %r45,$LC0; st.u64 [%frame+8],%r45; .loc 1 42 14 mov.u32 %r46,0; st.u32 [%frame+40],%r46; .loc 1 43 28 cvt.f64.f32 %r24,%r35; .loc 1 43 26 st.f64 [%frame+24],%r24; .loc 1 43 15 st.f64 [%frame+16],%r24; .loc 1 44 29 mov.f64 %r48,0d0000000000000000; div.rn.f64 %r47,%r48,0d0000000000000000; .loc 1 44 24 st.f64 [%frame+32],%r47; .loc 1 45 16 ld.global.u32 %r49,[__fdlib_version]; setp.ne.u32 %r50,%r49,2; @ %r50 bra $L4; .loc 1 46 16 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r51,[%value_in]; } .loc 1 46 22 mov.u32 %r52,33; st.u32 [%r51],%r52; bra $L5; $L4: .loc 1 47 23 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r54,[%value_in]; } .loc 1 47 21 setp.ne.u32 %r55,%r54,0; @ %r55 bra $L5; .loc 1 48 16 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r56,[%value_in]; } .loc 1 48 22 mov.u32 %r57,33; st.u32 [%r56],%r57; $L5: .loc 1 50 9 ld.u32 %r58,[%frame+40]; setp.eq.u32 %r59,%r58,0; @ %r59 bra $L6; .loc 1 51 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r60,[%value_in]; } .loc 1 51 20 ld.u32 %r32,[%frame+40]; .loc 1 51 15 st.u32 [%r60],%r32; $L6: .loc 1 52 13 ld.f64 %r61,[%frame+32]; cvt.rn.f32.f64 %r34,%r61; $L1: .loc 1 56 1 mov.f32 %value,%r34; st.shared.u64 [%sspslot],%sspprev; st.param.f32 [%value_out],%value; ret; } lib_a-wf_asin.o/1591654536 399 399 100644 4500 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_asinf .extern .func (.param .f32 %value_out) __ieee754_asinf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __fpclassifyf .extern .func (.param .u32 %value_out) __fpclassifyf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: fabsf .extern .func (.param .f32 %value_out) fabsf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: nan .extern .func (.param .f64 %value_out) nan (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[6] = {97,115,105,110,102,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[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 .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 .f64 %r25; .reg .u32 %r33; .reg .f32 %r35; .reg .f32 %r36; .reg .f32 %r38; .reg .u32 %r39; .reg .pred %r40; .reg .u32 %r42; .reg .pred %r43; .reg .f32 %r45; .reg .pred %r46; .reg .u32 %r47; .reg .u64 %r48; .reg .u32 %r49; .reg .u64 %r50; .reg .f64 %r51; .reg .u32 %r52; .reg .pred %r53; .reg .u64 %r54; .reg .u32 %r55; .reg .u32 %r57; .reg .pred %r58; .reg .u64 %r59; .reg .u32 %r60; .reg .u32 %r61; .reg .pred %r62; .reg .u64 %r63; .reg .f64 %r64; mov.f32 %r36,%ar0; .loc 1 37 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r36; call (%value_in),__ieee754_asinf,(%out_arg1); ld.param.f32 %r38,[%value_in]; } mov.f32 %r35,%r38; .loc 1 38 4 ld.global.u32 %r39,[__fdlib_version]; setp.eq.u32 %r40,%r39,-1; @ %r40 bra $L1; .loc 1 38 31 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r36; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r42,[%value_in]; } .loc 1 38 28 setp.eq.u32 %r43,%r42,0; @ %r43 bra $L1; .loc 1 39 5 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r36; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r45,[%value_in]; } .loc 1 39 4 setp.gt.f32 %r46,%r45,0f3f800000; @ ! %r46 bra $L1; .loc 1 41 15 mov.u32 %r47,1; st.u32 [%frame],%r47; .loc 1 42 15 cvta.const.u64 %r48,$LC0; st.u64 [%frame+8],%r48; .loc 1 43 14 mov.u32 %r49,0; st.u32 [%frame+40],%r49; .loc 1 44 28 cvt.f64.f32 %r25,%r36; .loc 1 44 26 st.f64 [%frame+24],%r25; .loc 1 44 15 st.f64 [%frame+16],%r25; .loc 1 45 19 cvta.const.u64 %r50,$LC1; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r50; call (%value_in),nan,(%out_arg1); ld.param.f64 %r51,[%value_in]; } .loc 1 45 17 st.f64 [%frame+32],%r51; .loc 1 46 8 ld.global.u32 %r52,[__fdlib_version]; setp.ne.u32 %r53,%r52,2; @ %r53 bra $L4; .loc 1 47 8 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r54,[%value_in]; } .loc 1 47 14 mov.u32 %r55,33; st.u32 [%r54],%r55; bra $L5; $L4: .loc 1 48 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r57,[%value_in]; } .loc 1 48 14 setp.ne.u32 %r58,%r57,0; @ %r58 bra $L5; .loc 1 49 8 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r59,[%value_in]; } .loc 1 49 14 mov.u32 %r60,33; st.u32 [%r59],%r60; $L5: .loc 1 51 9 ld.u32 %r61,[%frame+40]; setp.eq.u32 %r62,%r61,0; @ %r62 bra $L6; .loc 1 52 8 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r63,[%value_in]; } .loc 1 52 19 ld.u32 %r33,[%frame+40]; .loc 1 52 14 st.u32 [%r63],%r33; $L6: .loc 1 53 13 ld.f64 %r64,[%frame+32]; cvt.rn.f32.f64 %r35,%r64; $L1: .loc 1 57 1 mov.f32 %value,%r35; st.shared.u64 [%sspslot],%sspprev; st.param.f32 [%value_out],%value; ret; } /1496 1591654536 399 399 100644 1043 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } /1514 1591654536 399 399 100644 5440 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_atanhf .extern .func (.param .f32 %value_out) __ieee754_atanhf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __fpclassifyf .extern .func (.param .u32 %value_out) __fpclassifyf (.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: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[7] = {97,116,97,110,104,102,0 }; // 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 .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 %r34; .reg .f64 %r37; .reg .u32 %r38; .reg .f32 %r39; .reg .f32 %r40; .reg .f32 %r42; .reg .u32 %r43; .reg .pred %r44; .reg .u32 %r46; .reg .pred %r47; .reg .f32 %r49; .reg .pred %r50; .reg .pred %r51; .reg .u32 %r52; .reg .u64 %r53; .reg .u32 %r54; .reg .f64 %r55; .reg .f64 %r56; .reg .pred %r57; .reg .u64 %r58; .reg .u32 %r59; .reg .u32 %r61; .reg .pred %r62; .reg .u64 %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .u64 %r66; .reg .u32 %r67; .reg .f64 %r68; .reg .pred %r69; .reg .u64 %r70; .reg .u32 %r71; .reg .u32 %r73; .reg .pred %r74; .reg .u64 %r75; .reg .u32 %r76; .reg .u32 %r77; .reg .pred %r78; .reg .u64 %r79; .reg .f64 %r80; mov.f32 %r40,%ar0; .loc 1 34 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r40; call (%value_in),__ieee754_atanhf,(%out_arg1); ld.param.f32 %r42,[%value_in]; } mov.f32 %r39,%r42; .loc 1 35 4 ld.global.u32 %r43,[__fdlib_version]; setp.eq.u32 %r44,%r43,-1; @ %r44 bra $L1; .loc 1 35 31 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r40; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r46,[%value_in]; } .loc 1 35 28 setp.eq.u32 %r47,%r46,0; @ %r47 bra $L1; .loc 1 36 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r40; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r49,[%value_in]; } .loc 1 37 4 setp.ge.f32 %r50,%r49,0f3f800000; @ ! %r50 bra $L1; cvt.f64.f32 %r37,%r40; ld.global.u32 %r38,[__fdlib_version]; .loc 1 38 8 setp.gt.f32 %r51,%r49,0f3f800000; @ ! %r51 bra $L23; .loc 1 40 26 mov.u32 %r52,1; st.u32 [%frame],%r52; .loc 1 41 26 cvta.const.u64 %r53,$LC0; st.u64 [%frame+8],%r53; .loc 1 42 11 mov.u32 %r54,0; st.u32 [%frame+40],%r54; .loc 1 43 23 st.f64 [%frame+24],%r37; .loc 1 43 12 st.f64 [%frame+16],%r37; .loc 1 44 33 mov.f64 %r56,0d0000000000000000; div.rn.f64 %r55,%r56,0d0000000000000000; .loc 1 44 28 st.f64 [%frame+32],%r55; .loc 1 45 20 setp.ne.u32 %r57,%r38,2; @ %r57 bra $L6; .loc 1 46 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r58,[%value_in]; } .loc 1 46 25 mov.u32 %r59,33; st.u32 [%r58],%r59; bra $L7; $L6: .loc 1 47 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r61,[%value_in]; } .loc 1 47 25 setp.eq.u32 %r62,%r61,0; @ ! %r62 bra $L7; .loc 1 48 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r63,[%value_in]; } .loc 1 48 25 mov.u32 %r64,33; st.u32 [%r63],%r64; bra $L7; $L23: .loc 1 52 26 mov.u32 %r65,2; st.u32 [%frame],%r65; .loc 1 53 26 cvta.const.u64 %r66,$LC0; st.u64 [%frame+8],%r66; .loc 1 54 11 mov.u32 %r67,0; st.u32 [%frame+40],%r67; .loc 1 55 23 st.f64 [%frame+24],%r37; .loc 1 55 12 st.f64 [%frame+16],%r37; .loc 1 56 17 div.rn.f64 %r68,%r37,0d0000000000000000; .loc 1 56 14 st.f64 [%frame+32],%r68; .loc 1 57 20 setp.ne.u32 %r69,%r38,2; @ %r69 bra $L9; .loc 1 58 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r70,[%value_in]; } .loc 1 58 25 mov.u32 %r71,33; st.u32 [%r70],%r71; bra $L7; $L9: .loc 1 59 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r73,[%value_in]; } .loc 1 59 25 setp.ne.u32 %r74,%r73,0; @ %r74 bra $L7; .loc 1 60 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r75,[%value_in]; } .loc 1 60 25 mov.u32 %r76,33; st.u32 [%r75],%r76; $L7: .loc 1 63 9 ld.u32 %r77,[%frame+40]; setp.eq.u32 %r78,%r77,0; @ %r78 bra $L11; .loc 1 64 15 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r79,[%value_in]; } .loc 1 64 26 ld.u32 %r34,[%frame+40]; .loc 1 64 21 st.u32 [%r79],%r34; $L11: .loc 1 65 20 ld.f64 %r80,[%frame+32]; cvt.rn.f32.f64 %r39,%r80; $L1: .loc 1 69 1 mov.f32 %value,%r39; st.shared.u64 [%sspslot],%sspprev; st.param.f32 [%value_out],%value; ret; } lib_a-wf_cosh.o/1591654536 399 399 100644 4356 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_coshf .extern .func (.param .f32 %value_out) __ieee754_coshf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __fpclassifyf .extern .func (.param .u32 %value_out) __fpclassifyf (.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: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[6] = {99,111,115,104,102,0 }; // 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 .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 .f64 %r25; .reg .u32 %r26; .reg .u32 %r32; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r37; .reg .u32 %r38; .reg .pred %r39; .reg .u32 %r41; .reg .pred %r42; .reg .f32 %r44; .reg .pred %r45; .reg .u32 %r46; .reg .u64 %r47; .reg .u32 %r48; .reg .pred %r49; .reg .f64 %r50; .reg .f64 %r51; .reg .pred %r52; .reg .u64 %r53; .reg .u32 %r54; .reg .u32 %r56; .reg .pred %r57; .reg .u64 %r58; .reg .u32 %r59; .reg .u32 %r60; .reg .pred %r61; .reg .u64 %r62; .reg .f64 %r63; mov.f32 %r35,%ar0; .loc 1 35 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r35; call (%value_in),__ieee754_coshf,(%out_arg1); ld.param.f32 %r37,[%value_in]; } mov.f32 %r34,%r37; .loc 1 36 4 ld.global.u32 %r38,[__fdlib_version]; setp.eq.u32 %r39,%r38,-1; @ %r39 bra $L1; .loc 1 36 31 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r35; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r41,[%value_in]; } .loc 1 36 28 setp.eq.u32 %r42,%r41,0; @ %r42 bra $L1; .loc 1 37 5 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r35; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r44,[%value_in]; } .loc 1 37 4 setp.gt.f32 %r45,%r44,0f42b2d4fc; @ ! %r45 bra $L1; .loc 1 45 15 mov.u32 %r46,3; st.u32 [%frame],%r46; .loc 1 46 15 cvta.const.u64 %r47,$LC0; st.u64 [%frame+8],%r47; .loc 1 47 14 mov.u32 %r48,0; st.u32 [%frame+40],%r48; .loc 1 48 28 cvt.f64.f32 %r25,%r35; .loc 1 48 26 st.f64 [%frame+24],%r25; .loc 1 48 15 st.f64 [%frame+16],%r25; .loc 1 49 23 ld.global.u32 %r26,[__fdlib_version]; .loc 1 49 9 setp.ne.u32 %r49,%r26,0; @ %r49 bra $L4; .loc 1 50 20 mov.f64 %r50,0d47efffffe0000000; st.f64 [%frame+32],%r50; bra $L5; $L4: .loc 1 52 20 mov.f64 %r51,0d7ff0000000000000; st.f64 [%frame+32],%r51; .loc 1 53 9 setp.ne.u32 %r52,%r26,2; @ %r52 bra $L5; .loc 1 54 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r53,[%value_in]; } .loc 1 54 15 mov.u32 %r54,34; st.u32 [%r53],%r54; bra $L6; $L5: .loc 1 55 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r56,[%value_in]; } .loc 1 55 14 setp.ne.u32 %r57,%r56,0; @ %r57 bra $L6; .loc 1 56 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r58,[%value_in]; } .loc 1 56 15 mov.u32 %r59,34; st.u32 [%r58],%r59; $L6: .loc 1 58 9 ld.u32 %r60,[%frame+40]; setp.eq.u32 %r61,%r60,0; @ %r61 bra $L7; .loc 1 59 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r62,[%value_in]; } .loc 1 59 20 ld.u32 %r32,[%frame+40]; .loc 1 59 15 st.u32 [%r62],%r32; $L7: .loc 1 60 13 ld.f64 %r63,[%frame+32]; cvt.rn.f32.f64 %r34,%r63; $L1: .loc 1 64 1 mov.f32 %value,%r34; st.shared.u64 [%sspslot],%sspprev; st.param.f32 [%value_out],%value; ret; } lib_a-wf_drem.o/1591654536 399 399 100644 1020 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654536 399 399 100644 5730 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // 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 DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[5] = {101,120,112,102,0 }; // 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 .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 .f64 %r24; .reg .u32 %r25; .reg .u32 %r31; .reg .f64 %r33; .reg .u32 %r40; .reg .f32 %r42; .reg .f32 %r43; .reg .f32 %r45; .reg .u32 %r46; .reg .pred %r47; .reg .u32 %r49; .reg .pred %r50; .reg .pred %r51; .reg .u32 %r52; .reg .u64 %r53; .reg .u32 %r54; .reg .pred %r55; .reg .f64 %r56; .reg .f64 %r57; .reg .pred %r58; .reg .u64 %r59; .reg .u32 %r60; .reg .u32 %r62; .reg .pred %r63; .reg .u64 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .pred %r67; .reg .u64 %r68; .reg .f64 %r69; .reg .pred %r70; .reg .u32 %r71; .reg .u64 %r72; .reg .u32 %r73; .reg .f64 %r74; .reg .u32 %r75; .reg .pred %r76; .reg .u64 %r77; .reg .u32 %r78; .reg .u32 %r80; .reg .pred %r81; .reg .u64 %r82; .reg .u32 %r83; .reg .u32 %r84; .reg .pred %r85; .reg .u64 %r86; .reg .f64 %r87; mov.f32 %r43,%ar0; .loc 1 43 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r43; call (%value_in),__ieee754_expf,(%out_arg1); ld.param.f32 %r45,[%value_in]; } mov.f32 %r42,%r45; .loc 1 44 4 ld.global.u32 %r46,[__fdlib_version]; setp.eq.u32 %r47,%r46,-1; @ %r47 bra $L1; .loc 1 45 5 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r43; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r49,[%value_in]; } .loc 1 45 4 setp.eq.u32 %r50,%r49,0; @ %r50 bra $L1; .loc 1 46 8 setp.gt.f32 %r51,%r43,0f42b17180; @ ! %r51 bra $L27; .loc 1 54 12 mov.u32 %r52,3; st.u32 [%frame],%r52; .loc 1 55 12 cvta.const.u64 %r53,$LC0; st.u64 [%frame+8],%r53; .loc 1 56 11 mov.u32 %r54,0; st.u32 [%frame+40],%r54; .loc 1 57 25 cvt.f64.f32 %r24,%r43; .loc 1 57 23 st.f64 [%frame+24],%r24; .loc 1 57 12 st.f64 [%frame+16],%r24; .loc 1 58 20 ld.global.u32 %r25,[__fdlib_version]; .loc 1 58 6 setp.ne.u32 %r55,%r25,0; @ %r55 bra $L5; .loc 1 59 16 mov.f64 %r56,0d47efffffe0000000; st.f64 [%frame+32],%r56; bra $L6; $L5: .loc 1 61 16 mov.f64 %r57,0d7ff0000000000000; st.f64 [%frame+32],%r57; .loc 1 62 6 setp.ne.u32 %r58,%r25,2; @ %r58 bra $L6; .loc 1 63 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r59,[%value_in]; } .loc 1 63 11 mov.u32 %r60,34; st.u32 [%r59],%r60; bra $L7; $L6: .loc 1 64 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r62,[%value_in]; } .loc 1 64 11 setp.ne.u32 %r63,%r62,0; @ %r63 bra $L7; .loc 1 65 4 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r64,[%value_in]; } .loc 1 65 10 mov.u32 %r65,34; st.u32 [%r64],%r65; $L7: .loc 1 67 13 ld.u32 %r66,[%frame+40]; setp.eq.u32 %r67,%r66,0; @ %r67 bra $L8; .loc 1 68 13 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r68,[%value_in]; } .loc 1 68 24 ld.u32 %r31,[%frame+40]; .loc 1 68 19 st.u32 [%r68],%r31; $L8: .loc 1 69 20 ld.f64 %r69,[%frame+32]; cvt.rn.f32.f64 %r42,%r69; bra $L1; $L27: .loc 1 70 15 setp.lt.f32 %r70,%r43,0fc2cff1b5; @ ! %r70 bra $L1; .loc 1 72 12 mov.u32 %r71,4; st.u32 [%frame],%r71; .loc 1 73 12 cvta.const.u64 %r72,$LC0; st.u64 [%frame+8],%r72; .loc 1 74 11 mov.u32 %r73,0; st.u32 [%frame+40],%r73; .loc 1 75 25 cvt.f64.f32 %r33,%r43; .loc 1 75 23 st.f64 [%frame+24],%r33; .loc 1 75 12 st.f64 [%frame+16],%r33; .loc 1 76 14 mov.f64 %r74,0d0000000000000000; st.f64 [%frame+32],%r74; .loc 1 77 6 ld.global.u32 %r75,[__fdlib_version]; setp.ne.u32 %r76,%r75,2; @ %r76 bra $L10; .loc 1 78 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r77,[%value_in]; } .loc 1 78 11 mov.u32 %r78,34; st.u32 [%r77],%r78; bra $L11; $L10: .loc 1 79 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r80,[%value_in]; } .loc 1 79 11 setp.ne.u32 %r81,%r80,0; @ %r81 bra $L11; .loc 1 80 4 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r82,[%value_in]; } .loc 1 80 10 mov.u32 %r83,34; st.u32 [%r82],%r83; $L11: .loc 1 82 13 ld.u32 %r84,[%frame+40]; setp.eq.u32 %r85,%r84,0; @ %r85 bra $L12; .loc 1 83 13 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r86,[%value_in]; } .loc 1 83 24 ld.u32 %r40,[%frame+40]; .loc 1 83 19 st.u32 [%r86],%r40; $L12: .loc 1 84 20 ld.f64 %r87,[%frame+32]; cvt.rn.f32.f64 %r42,%r87; $L1: .loc 1 89 1 mov.f32 %value,%r42; st.shared.u64 [%sspslot],%sspprev; st.param.f32 [%value_out],%value; ret; } lib_a-wf_exp2.o/1591654536 399 399 100644 922 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 31 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 32 1 mov.f32 %value,%r26; st.param.f32 [%value_out],%value; ret; } lib_a-wf_fmod.o/1591654536 399 399 100644 4896 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // 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: __fpclassifyf .extern .func (.param .u32 %value_out) __fpclassifyf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[6] = {102,109,111,100,102,0 }; // 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 .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 .f64 %r25; .reg .u32 %r27; .reg .u32 %r34; .reg .f32 %r39; .reg .f32 %r40; .reg .f32 %r41; .reg .f32 %r44; .reg .u32 %r45; .reg .pred %r46; .reg .u32 %r48; .reg .pred %r49; .reg .u32 %r51; .reg .u32 %r53; .reg .u32 %r54; .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 .u32 %r64; .reg .u64 %r65; .reg .u32 %r66; .reg .f64 %r67; .reg .pred %r68; .reg .f64 %r69; .reg .f64 %r70; .reg .pred %r71; .reg .u64 %r72; .reg .u32 %r73; .reg .u32 %r75; .reg .pred %r76; .reg .u64 %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .pred %r80; .reg .u64 %r81; .reg .f64 %r82; mov.f32 %r40,%ar0; mov.f32 %r41,%ar1; .loc 1 35 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),__ieee754_fmodf,(%out_arg1,%out_arg2); ld.param.f32 %r44,[%value_in]; } mov.f32 %r39,%r44; .loc 1 36 4 ld.global.u32 %r45,[__fdlib_version]; setp.eq.u32 %r46,%r45,-1; @ %r46 bra $L1; .loc 1 36 30 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r41; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r48,[%value_in]; } .loc 1 36 28 setp.eq.u32 %r49,%r48,0; @ %r49 bra $L1; .loc 1 36 40 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r40; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r51,[%value_in]; } .loc 1 36 38 set.u32.ne.u32 %r53,%r51,0; neg.s32 %r54,%r53; .loc 1 37 4 set.u32.eq.f32 %r56,%r41,0f00000000; neg.s32 %r57,%r56; cvt.u16.u32 %r59,%r54; cvt.u16.u32 %r60,%r57; and.b16 %r58,%r59,%r60; cvt.u32.u16 %r61,%r58; cvt.u16.u8 %r62,%r61; setp.eq.u16 %r63,%r62,0; @ %r63 bra $L1; .loc 1 39 22 mov.u32 %r64,1; st.u32 [%frame],%r64; .loc 1 40 22 cvta.const.u64 %r65,$LC0; st.u64 [%frame+8],%r65; .loc 1 41 14 mov.u32 %r66,0; st.u32 [%frame+40],%r66; .loc 1 42 17 cvt.f64.f32 %r25,%r40; .loc 1 42 15 st.f64 [%frame+16],%r25; .loc 1 43 17 cvt.f64.f32 %r67,%r41; st.f64 [%frame+24],%r67; .loc 1 44 30 ld.global.u32 %r27,[__fdlib_version]; .loc 1 44 16 setp.ne.u32 %r68,%r27,0; @ %r68 bra $L3; .loc 1 45 27 st.f64 [%frame+32],%r25; bra $L4; $L3: .loc 1 47 25 mov.f64 %r70,0d0000000000000000; div.rn.f64 %r69,%r70,0d0000000000000000; .loc 1 47 20 st.f64 [%frame+32],%r69; .loc 1 48 16 setp.ne.u32 %r71,%r27,2; @ %r71 bra $L4; .loc 1 49 16 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r72,[%value_in]; } .loc 1 49 22 mov.u32 %r73,33; st.u32 [%r72],%r73; bra $L5; $L4: .loc 1 50 23 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r75,[%value_in]; } .loc 1 50 21 setp.ne.u32 %r76,%r75,0; @ %r76 bra $L5; .loc 1 51 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r77,[%value_in]; } .loc 1 51 25 mov.u32 %r78,33; st.u32 [%r77],%r78; $L5: .loc 1 53 9 ld.u32 %r79,[%frame+40]; setp.eq.u32 %r80,%r79,0; @ %r80 bra $L6; .loc 1 54 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r81,[%value_in]; } .loc 1 54 20 ld.u32 %r34,[%frame+40]; .loc 1 54 15 st.u32 [%r81],%r34; $L6: .loc 1 55 20 ld.f64 %r82,[%frame+32]; cvt.rn.f32.f64 %r39,%r82; $L1: .loc 1 59 1 mov.f32 %value,%r39; st.shared.u64 [%sspslot],%sspprev; st.param.f32 [%value_out],%value; ret; } /1532 1591654536 399 399 100644 6220 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_gammaf_r .extern .func (.param .f32 %value_out) __ieee754_gammaf_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 DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[7] = {103,97,109,109,97,102,0 }; // 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 .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 %r36; .reg .u32 %r38; .reg .f64 %r39; .reg .f32 %r40; .reg .f32 %r41; .reg .u64 %r44; .reg .u64 %r45; .reg .f32 %r46; .reg .u32 %r47; .reg .pred %r48; .reg .u32 %r50; .reg .pred %r51; .reg .u32 %r53; .reg .pred %r54; .reg .f32 %r56; .reg .pred %r57; .reg .pred %r58; .reg .u32 %r59; .reg .u64 %r60; .reg .pred %r62; .reg .f64 %r63; .reg .f64 %r64; .reg .pred %r65; .reg .u64 %r66; .reg .u32 %r67; .reg .u32 %r69; .reg .pred %r70; .reg .u64 %r71; .reg .u32 %r72; .reg .u32 %r73; .reg .u64 %r74; .reg .u32 %r75; .reg .pred %r76; .reg .f64 %r77; .reg .f64 %r78; .reg .pred %r79; .reg .u64 %r80; .reg .u32 %r81; .reg .u32 %r83; .reg .pred %r84; .reg .u64 %r85; .reg .u32 %r86; .reg .u32 %r87; .reg .pred %r88; .reg .u64 %r89; .reg .f64 %r90; mov.f32 %r41,%ar0; .loc 1 33 13 ld.global.u64 %r45,[_impure_ptr]; add.u64 %r44,%r45,224; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r41; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r44; call (%value_in),__ieee754_gammaf_r,(%out_arg1,%out_arg2); ld.param.f32 %r46,[%value_in]; } mov.f32 %r40,%r46; .loc 1 34 11 ld.global.u32 %r47,[__fdlib_version]; setp.eq.u32 %r48,%r47,-1; @ %r48 bra $L1; .loc 1 35 13 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r46; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r50,[%value_in]; } .loc 1 35 11 setp.ne.u32 %r51,%r50,0; @ %r51 bra $L1; .loc 1 35 25 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r41; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r53,[%value_in]; } .loc 1 35 23 setp.eq.u32 %r54,%r53,0; @ %r54 bra $L1; .loc 1 42 9 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r41; call (%value_in),floorf,(%out_arg1); ld.param.f32 %r56,[%value_in]; } .loc 1 42 8 setp.neu.f32 %r57,%r56,%r41; @ %r57 bra $L3; cvt.f64.f32 %r39,%r41; ld.global.u32 %r38,[__fdlib_version]; .loc 1 42 21 setp.le.f32 %r58,%r41,0f00000000; @ ! %r58 bra $L4; .loc 1 44 12 mov.u32 %r59,2; st.u32 [%frame],%r59; .loc 1 45 12 cvta.const.u64 %r60,$LC0; st.u64 [%frame+8],%r60; .loc 1 46 11 st.u32 [%frame+40],%r50; .loc 1 47 23 st.f64 [%frame+24],%r39; .loc 1 47 12 st.f64 [%frame+16],%r39; .loc 1 48 20 setp.ne.u32 %r62,%r38,0; @ %r62 bra $L6; .loc 1 49 30 mov.f64 %r63,0d47efffffe0000000; st.f64 [%frame+32],%r63; bra $L7; $L6: .loc 1 51 30 mov.f64 %r64,0d7ff0000000000000; st.f64 [%frame+32],%r64; .loc 1 52 6 setp.ne.u32 %r65,%r38,2; @ %r65 bra $L7; .loc 1 53 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r66,[%value_in]; } .loc 1 53 11 mov.u32 %r67,33; st.u32 [%r66],%r67; bra $L8; $L7: .loc 1 54 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r69,[%value_in]; } .loc 1 54 11 setp.eq.u32 %r70,%r69,0; @ ! %r70 bra $L8; .loc 1 55 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r71,[%value_in]; } .loc 1 55 11 mov.u32 %r72,33; st.u32 [%r71],%r72; bra $L8; $L3: cvt.f64.f32 %r39,%r41; ld.global.u32 %r38,[__fdlib_version]; $L4: .loc 1 59 12 mov.u32 %r73,3; st.u32 [%frame],%r73; .loc 1 60 12 cvta.const.u64 %r74,$LC0; st.u64 [%frame+8],%r74; .loc 1 61 11 mov.u32 %r75,0; st.u32 [%frame+40],%r75; .loc 1 62 23 st.f64 [%frame+24],%r39; .loc 1 62 12 st.f64 [%frame+16],%r39; .loc 1 63 20 setp.ne.u32 %r76,%r38,0; @ %r76 bra $L10; .loc 1 64 30 mov.f64 %r77,0d47efffffe0000000; st.f64 [%frame+32],%r77; bra $L11; $L10: .loc 1 66 30 mov.f64 %r78,0d7ff0000000000000; st.f64 [%frame+32],%r78; .loc 1 67 20 setp.ne.u32 %r79,%r38,2; @ %r79 bra $L11; .loc 1 68 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r80,[%value_in]; } .loc 1 68 11 mov.u32 %r81,34; st.u32 [%r80],%r81; bra $L8; $L11: .loc 1 69 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r83,[%value_in]; } .loc 1 69 25 setp.ne.u32 %r84,%r83,0; @ %r84 bra $L8; .loc 1 70 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r85,[%value_in]; } .loc 1 70 25 mov.u32 %r86,34; st.u32 [%r85],%r86; $L8: .loc 1 73 9 ld.u32 %r87,[%frame+40]; setp.eq.u32 %r88,%r87,0; @ %r88 bra $L13; .loc 1 74 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r89,[%value_in]; } .loc 1 74 20 ld.u32 %r36,[%frame+40]; .loc 1 74 15 st.u32 [%r89],%r36; $L13: .loc 1 75 13 ld.f64 %r90,[%frame+32]; cvt.rn.f32.f64 %r40,%r90; $L1: .loc 1 79 1 mov.f32 %value,%r40; st.shared.u64 [%sspslot],%sspprev; st.param.f32 [%value_out],%value; ret; } /1550 1591654536 399 399 100644 4688 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // 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 DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[7] = {104,121,112,111,116,102,0 }; // 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 .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 %r28; .reg .u32 %r34; .reg .f32 %r36; .reg .f32 %r37; .reg .f32 %r38; .reg .f32 %r41; .reg .u32 %r42; .reg .pred %r43; .reg .u32 %r45; .reg .pred %r46; .reg .u32 %r48; .reg .pred %r49; .reg .u32 %r51; .reg .pred %r52; .reg .u32 %r53; .reg .u64 %r54; .reg .f64 %r56; .reg .f64 %r57; .reg .pred %r58; .reg .f64 %r59; .reg .f64 %r60; .reg .pred %r61; .reg .u64 %r62; .reg .u32 %r63; .reg .u32 %r65; .reg .pred %r66; .reg .u64 %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .pred %r70; .reg .u64 %r71; .reg .f64 %r72; mov.f32 %r37,%ar0; mov.f32 %r38,%ar1; .loc 1 35 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_hypotf,(%out_arg1,%out_arg2); ld.param.f32 %r41,[%value_in]; } mov.f32 %r36,%r41; .loc 1 36 4 ld.global.u32 %r42,[__fdlib_version]; setp.eq.u32 %r43,%r42,-1; @ %r43 bra $L1; .loc 1 37 7 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r41; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r45,[%value_in]; } .loc 1 37 4 setp.ne.u32 %r46,%r45,0; @ %r46 bra $L1; .loc 1 37 20 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r37; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r48,[%value_in]; } .loc 1 37 18 setp.eq.u32 %r49,%r48,0; @ %r49 bra $L1; .loc 1 37 32 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r38; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r51,[%value_in]; } .loc 1 37 30 setp.eq.u32 %r52,%r51,0; @ %r52 bra $L1; .loc 1 45 15 mov.u32 %r53,3; st.u32 [%frame],%r53; .loc 1 46 15 cvta.const.u64 %r54,$LC0; st.u64 [%frame+8],%r54; .loc 1 47 14 st.u32 [%frame+40],%r45; .loc 1 48 17 cvt.f64.f32 %r56,%r37; st.f64 [%frame+16],%r56; .loc 1 49 17 cvt.f64.f32 %r57,%r38; st.f64 [%frame+24],%r57; .loc 1 50 23 ld.global.u32 %r28,[__fdlib_version]; .loc 1 50 9 setp.ne.u32 %r58,%r28,0; @ %r58 bra $L3; .loc 1 51 20 mov.f64 %r59,0d47efffffe0000000; st.f64 [%frame+32],%r59; bra $L4; $L3: .loc 1 53 20 mov.f64 %r60,0d7ff0000000000000; st.f64 [%frame+32],%r60; .loc 1 54 9 setp.ne.u32 %r61,%r28,2; @ %r61 bra $L4; .loc 1 55 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r62,[%value_in]; } .loc 1 55 15 mov.u32 %r63,34; st.u32 [%r62],%r63; bra $L5; $L4: .loc 1 56 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r65,[%value_in]; } .loc 1 56 14 setp.ne.u32 %r66,%r65,0; @ %r66 bra $L5; .loc 1 57 8 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r67,[%value_in]; } .loc 1 57 14 mov.u32 %r68,34; st.u32 [%r67],%r68; $L5: .loc 1 59 9 ld.u32 %r69,[%frame+40]; setp.eq.u32 %r70,%r69,0; @ %r70 bra $L6; .loc 1 60 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r71,[%value_in]; } .loc 1 60 20 ld.u32 %r34,[%frame+40]; .loc 1 60 15 st.u32 [%r71],%r34; $L6: .loc 1 61 20 ld.f64 %r72,[%frame+32]; cvt.rn.f32.f64 %r36,%r72; $L1: .loc 1 65 1 mov.f32 %value,%r36; st.shared.u64 [%sspslot],%sspprev; st.param.f32 [%value_out],%value; ret; } lib_a-wf_j0.o/ 1591654536 399 399 100644 9298 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_j0f .extern .func (.param .f32 %value_out) __ieee754_j0f (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __fpclassifyf .extern .func (.param .u32 %value_out) __fpclassifyf (.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: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_y0f .extern .func (.param .f32 %value_out) __ieee754_y0f (.param .f32 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[4] = {106,48,102,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[4] = {121,48,102,0 }; // 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 .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 .f64 %r25; .reg .u32 %r32; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r37; .reg .u32 %r38; .reg .pred %r39; .reg .u32 %r41; .reg .pred %r42; .reg .f32 %r44; .reg .pred %r45; .reg .u32 %r46; .reg .u64 %r47; .reg .u32 %r48; .reg .f64 %r49; .reg .u32 %r50; .reg .pred %r51; .reg .u64 %r52; .reg .u32 %r53; .reg .u32 %r55; .reg .pred %r56; .reg .u64 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .pred %r60; .reg .u64 %r61; .reg .f64 %r62; mov.f32 %r35,%ar0; .loc 1 34 12 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r35; call (%value_in),__ieee754_j0f,(%out_arg1); ld.param.f32 %r37,[%value_in]; } mov.f32 %r34,%r37; .loc 1 35 4 ld.global.u32 %r38,[__fdlib_version]; setp.eq.u32 %r39,%r38,-1; @ %r39 bra $L1; .loc 1 35 31 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r35; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r41,[%value_in]; } .loc 1 35 28 setp.eq.u32 %r42,%r41,0; @ %r42 bra $L1; .loc 1 36 5 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r35; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r44,[%value_in]; } .loc 1 36 4 setp.gt.f32 %r45,%r44,0f5a490fdb; @ ! %r45 bra $L1; .loc 1 38 22 mov.u32 %r46,5; st.u32 [%frame],%r46; .loc 1 39 22 cvta.const.u64 %r47,$LC0; st.u64 [%frame+8],%r47; .loc 1 40 14 mov.u32 %r48,0; st.u32 [%frame+40],%r48; .loc 1 41 28 cvt.f64.f32 %r25,%r35; .loc 1 41 26 st.f64 [%frame+24],%r25; .loc 1 41 15 st.f64 [%frame+16],%r25; .loc 1 42 24 mov.f64 %r49,0d0000000000000000; st.f64 [%frame+32],%r49; .loc 1 43 16 ld.global.u32 %r50,[__fdlib_version]; setp.ne.u32 %r51,%r50,2; @ %r51 bra $L4; .loc 1 44 16 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r52,[%value_in]; } .loc 1 44 22 mov.u32 %r53,34; st.u32 [%r52],%r53; bra $L5; $L4: .loc 1 45 23 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r55,[%value_in]; } .loc 1 45 21 setp.ne.u32 %r56,%r55,0; @ %r56 bra $L5; .loc 1 46 16 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r57,[%value_in]; } .loc 1 46 22 mov.u32 %r58,34; st.u32 [%r57],%r58; $L5: .loc 1 48 9 ld.u32 %r59,[%frame+40]; setp.eq.u32 %r60,%r59,0; @ %r60 bra $L6; .loc 1 49 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r61,[%value_in]; } .loc 1 49 20 ld.u32 %r32,[%frame+40]; .loc 1 49 15 st.u32 [%r61],%r32; $L6: .loc 1 50 20 ld.f64 %r62,[%frame+32]; cvt.rn.f32.f64 %r34,%r62; $L1: .loc 1 54 1 mov.f32 %value,%r34; st.shared.u64 [%sspslot],%sspprev; 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 .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 .f64 %r24; .reg .u32 %r25; .reg .u32 %r31; .reg .f64 %r33; .reg .u32 %r40; .reg .f32 %r42; .reg .f32 %r43; .reg .f32 %r45; .reg .u32 %r46; .reg .pred %r47; .reg .u32 %r49; .reg .pred %r50; .reg .pred %r51; .reg .u32 %r52; .reg .u64 %r53; .reg .u32 %r54; .reg .pred %r55; .reg .f64 %r56; .reg .f64 %r57; .reg .pred %r58; .reg .u64 %r59; .reg .u32 %r60; .reg .u32 %r62; .reg .pred %r63; .reg .u64 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .pred %r67; .reg .u64 %r68; .reg .f64 %r69; .reg .pred %r70; .reg .u32 %r71; .reg .u64 %r72; .reg .u32 %r73; .reg .f64 %r74; .reg .u32 %r75; .reg .pred %r76; .reg .u64 %r77; .reg .u32 %r78; .reg .u32 %r80; .reg .pred %r81; .reg .u64 %r82; .reg .u32 %r83; .reg .u32 %r84; .reg .pred %r85; .reg .u64 %r86; .reg .f64 %r87; mov.f32 %r43,%ar0; .loc 1 68 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r43; call (%value_in),__ieee754_y0f,(%out_arg1); ld.param.f32 %r45,[%value_in]; } mov.f32 %r42,%r45; .loc 1 69 4 ld.global.u32 %r46,[__fdlib_version]; setp.eq.u32 %r47,%r46,-1; @ %r47 bra $L17; .loc 1 69 31 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r43; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r49,[%value_in]; } .loc 1 69 28 setp.eq.u32 %r50,%r49,0; @ %r50 bra $L17; .loc 1 70 11 setp.le.f32 %r51,%r43,0f00000000; @ ! %r51 bra $L43; .loc 1 78 15 mov.u32 %r52,1; st.u32 [%frame],%r52; .loc 1 79 15 cvta.const.u64 %r53,$LC1; st.u64 [%frame+8],%r53; .loc 1 80 14 mov.u32 %r54,0; st.u32 [%frame+40],%r54; .loc 1 81 28 cvt.f64.f32 %r24,%r43; .loc 1 81 26 st.f64 [%frame+24],%r24; .loc 1 81 15 st.f64 [%frame+16],%r24; .loc 1 82 23 ld.global.u32 %r25,[__fdlib_version]; .loc 1 82 9 setp.ne.u32 %r55,%r25,0; @ %r55 bra $L21; .loc 1 83 20 mov.f64 %r56,0dc7efffffe0000000; st.f64 [%frame+32],%r56; bra $L22; $L21: .loc 1 85 20 mov.f64 %r57,0dfff0000000000000; st.f64 [%frame+32],%r57; .loc 1 86 9 setp.ne.u32 %r58,%r25,2; @ %r58 bra $L22; .loc 1 87 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r59,[%value_in]; } .loc 1 87 15 mov.u32 %r60,33; st.u32 [%r59],%r60; bra $L23; $L22: .loc 1 88 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r62,[%value_in]; } .loc 1 88 14 setp.ne.u32 %r63,%r62,0; @ %r63 bra $L23; .loc 1 89 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r64,[%value_in]; } .loc 1 89 15 mov.u32 %r65,33; st.u32 [%r64],%r65; $L23: .loc 1 91 9 ld.u32 %r66,[%frame+40]; setp.eq.u32 %r67,%r66,0; @ %r67 bra $L24; .loc 1 92 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r68,[%value_in]; } .loc 1 92 20 ld.u32 %r31,[%frame+40]; .loc 1 92 15 st.u32 [%r68],%r31; $L24: .loc 1 93 20 ld.f64 %r69,[%frame+32]; cvt.rn.f32.f64 %r42,%r69; bra $L17; $L43: .loc 1 95 4 setp.gt.f32 %r70,%r43,0f5a490fdb; @ ! %r70 bra $L17; .loc 1 97 22 mov.u32 %r71,5; st.u32 [%frame],%r71; .loc 1 98 22 cvta.const.u64 %r72,$LC1; st.u64 [%frame+8],%r72; .loc 1 99 14 mov.u32 %r73,0; st.u32 [%frame+40],%r73; .loc 1 100 28 cvt.f64.f32 %r33,%r43; .loc 1 100 26 st.f64 [%frame+24],%r33; .loc 1 100 15 st.f64 [%frame+16],%r33; .loc 1 101 24 mov.f64 %r74,0d0000000000000000; st.f64 [%frame+32],%r74; .loc 1 102 16 ld.global.u32 %r75,[__fdlib_version]; setp.ne.u32 %r76,%r75,2; @ %r76 bra $L26; .loc 1 103 17 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r77,[%value_in]; } .loc 1 103 23 mov.u32 %r78,34; st.u32 [%r77],%r78; bra $L27; $L26: .loc 1 104 23 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r80,[%value_in]; } .loc 1 104 21 setp.ne.u32 %r81,%r80,0; @ %r81 bra $L27; .loc 1 105 17 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r82,[%value_in]; } .loc 1 105 23 mov.u32 %r83,34; st.u32 [%r82],%r83; $L27: .loc 1 107 9 ld.u32 %r84,[%frame+40]; setp.eq.u32 %r85,%r84,0; @ %r85 bra $L28; .loc 1 108 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r86,[%value_in]; } .loc 1 108 20 ld.u32 %r40,[%frame+40]; .loc 1 108 15 st.u32 [%r86],%r40; $L28: .loc 1 109 20 ld.f64 %r87,[%frame+32]; cvt.rn.f32.f64 %r42,%r87; $L17: .loc 1 113 1 mov.f32 %value,%r42; st.shared.u64 [%sspslot],%sspprev; st.param.f32 [%value_out],%value; ret; } lib_a-wf_j1.o/ 1591654536 399 399 100644 9299 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_j1f .extern .func (.param .f32 %value_out) __ieee754_j1f (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __fpclassifyf .extern .func (.param .u32 %value_out) __fpclassifyf (.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: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_y1f .extern .func (.param .f32 %value_out) __ieee754_y1f (.param .f32 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[4] = {106,49,102,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[4] = {121,49,102,0 }; // 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 .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 .f64 %r25; .reg .u32 %r32; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r37; .reg .u32 %r38; .reg .pred %r39; .reg .u32 %r41; .reg .pred %r42; .reg .f32 %r44; .reg .pred %r45; .reg .u32 %r46; .reg .u64 %r47; .reg .u32 %r48; .reg .f64 %r49; .reg .u32 %r50; .reg .pred %r51; .reg .u64 %r52; .reg .u32 %r53; .reg .u32 %r55; .reg .pred %r56; .reg .u64 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .pred %r60; .reg .u64 %r61; .reg .f64 %r62; mov.f32 %r35,%ar0; .loc 1 36 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r35; call (%value_in),__ieee754_j1f,(%out_arg1); ld.param.f32 %r37,[%value_in]; } mov.f32 %r34,%r37; .loc 1 37 4 ld.global.u32 %r38,[__fdlib_version]; setp.eq.u32 %r39,%r38,-1; @ %r39 bra $L1; .loc 1 37 31 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r35; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r41,[%value_in]; } .loc 1 37 28 setp.eq.u32 %r42,%r41,0; @ %r42 bra $L1; .loc 1 38 5 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r35; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r44,[%value_in]; } .loc 1 38 4 setp.gt.f32 %r45,%r44,0f5a490fdb; @ ! %r45 bra $L1; .loc 1 40 22 mov.u32 %r46,5; st.u32 [%frame],%r46; .loc 1 41 22 cvta.const.u64 %r47,$LC0; st.u64 [%frame+8],%r47; .loc 1 42 14 mov.u32 %r48,0; st.u32 [%frame+40],%r48; .loc 1 43 28 cvt.f64.f32 %r25,%r35; .loc 1 43 26 st.f64 [%frame+24],%r25; .loc 1 43 15 st.f64 [%frame+16],%r25; .loc 1 44 24 mov.f64 %r49,0d0000000000000000; st.f64 [%frame+32],%r49; .loc 1 45 16 ld.global.u32 %r50,[__fdlib_version]; setp.ne.u32 %r51,%r50,2; @ %r51 bra $L4; .loc 1 46 17 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r52,[%value_in]; } .loc 1 46 23 mov.u32 %r53,34; st.u32 [%r52],%r53; bra $L5; $L4: .loc 1 47 23 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r55,[%value_in]; } .loc 1 47 21 setp.ne.u32 %r56,%r55,0; @ %r56 bra $L5; .loc 1 48 17 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r57,[%value_in]; } .loc 1 48 23 mov.u32 %r58,34; st.u32 [%r57],%r58; $L5: .loc 1 50 9 ld.u32 %r59,[%frame+40]; setp.eq.u32 %r60,%r59,0; @ %r60 bra $L6; .loc 1 51 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r61,[%value_in]; } .loc 1 51 20 ld.u32 %r32,[%frame+40]; .loc 1 51 15 st.u32 [%r61],%r32; $L6: .loc 1 52 23 ld.f64 %r62,[%frame+32]; cvt.rn.f32.f64 %r34,%r62; $L1: .loc 1 56 1 mov.f32 %value,%r34; st.shared.u64 [%sspslot],%sspprev; 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 .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 .f64 %r24; .reg .u32 %r25; .reg .u32 %r31; .reg .f64 %r33; .reg .u32 %r40; .reg .f32 %r42; .reg .f32 %r43; .reg .f32 %r45; .reg .u32 %r46; .reg .pred %r47; .reg .u32 %r49; .reg .pred %r50; .reg .pred %r51; .reg .u32 %r52; .reg .u64 %r53; .reg .u32 %r54; .reg .pred %r55; .reg .f64 %r56; .reg .f64 %r57; .reg .pred %r58; .reg .u64 %r59; .reg .u32 %r60; .reg .u32 %r62; .reg .pred %r63; .reg .u64 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .pred %r67; .reg .u64 %r68; .reg .f64 %r69; .reg .pred %r70; .reg .u32 %r71; .reg .u64 %r72; .reg .u32 %r73; .reg .f64 %r74; .reg .u32 %r75; .reg .pred %r76; .reg .u64 %r77; .reg .u32 %r78; .reg .u32 %r80; .reg .pred %r81; .reg .u64 %r82; .reg .u32 %r83; .reg .u32 %r84; .reg .pred %r85; .reg .u64 %r86; .reg .f64 %r87; mov.f32 %r43,%ar0; .loc 1 70 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r43; call (%value_in),__ieee754_y1f,(%out_arg1); ld.param.f32 %r45,[%value_in]; } mov.f32 %r42,%r45; .loc 1 71 4 ld.global.u32 %r46,[__fdlib_version]; setp.eq.u32 %r47,%r46,-1; @ %r47 bra $L17; .loc 1 71 31 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r43; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r49,[%value_in]; } .loc 1 71 28 setp.eq.u32 %r50,%r49,0; @ %r50 bra $L17; .loc 1 72 11 setp.le.f32 %r51,%r43,0f00000000; @ ! %r51 bra $L43; .loc 1 80 15 mov.u32 %r52,1; st.u32 [%frame],%r52; .loc 1 81 15 cvta.const.u64 %r53,$LC1; st.u64 [%frame+8],%r53; .loc 1 82 14 mov.u32 %r54,0; st.u32 [%frame+40],%r54; .loc 1 83 28 cvt.f64.f32 %r24,%r43; .loc 1 83 26 st.f64 [%frame+24],%r24; .loc 1 83 15 st.f64 [%frame+16],%r24; .loc 1 84 23 ld.global.u32 %r25,[__fdlib_version]; .loc 1 84 9 setp.ne.u32 %r55,%r25,0; @ %r55 bra $L21; .loc 1 85 20 mov.f64 %r56,0dc7efffffe0000000; st.f64 [%frame+32],%r56; bra $L22; $L21: .loc 1 87 20 mov.f64 %r57,0dfff0000000000000; st.f64 [%frame+32],%r57; .loc 1 88 9 setp.ne.u32 %r58,%r25,2; @ %r58 bra $L22; .loc 1 89 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r59,[%value_in]; } .loc 1 89 15 mov.u32 %r60,33; st.u32 [%r59],%r60; bra $L23; $L22: .loc 1 90 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r62,[%value_in]; } .loc 1 90 14 setp.ne.u32 %r63,%r62,0; @ %r63 bra $L23; .loc 1 91 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r64,[%value_in]; } .loc 1 91 15 mov.u32 %r65,33; st.u32 [%r64],%r65; $L23: .loc 1 93 9 ld.u32 %r66,[%frame+40]; setp.eq.u32 %r67,%r66,0; @ %r67 bra $L24; .loc 1 94 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r68,[%value_in]; } .loc 1 94 20 ld.u32 %r31,[%frame+40]; .loc 1 94 15 st.u32 [%r68],%r31; $L24: .loc 1 95 20 ld.f64 %r69,[%frame+32]; cvt.rn.f32.f64 %r42,%r69; bra $L17; $L43: .loc 1 97 4 setp.gt.f32 %r70,%r43,0f5a490fdb; @ ! %r70 bra $L17; .loc 1 99 22 mov.u32 %r71,5; st.u32 [%frame],%r71; .loc 1 100 22 cvta.const.u64 %r72,$LC1; st.u64 [%frame+8],%r72; .loc 1 101 14 mov.u32 %r73,0; st.u32 [%frame+40],%r73; .loc 1 102 28 cvt.f64.f32 %r33,%r43; .loc 1 102 26 st.f64 [%frame+24],%r33; .loc 1 102 15 st.f64 [%frame+16],%r33; .loc 1 103 24 mov.f64 %r74,0d0000000000000000; st.f64 [%frame+32],%r74; .loc 1 104 16 ld.global.u32 %r75,[__fdlib_version]; setp.ne.u32 %r76,%r75,2; @ %r76 bra $L26; .loc 1 105 17 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r77,[%value_in]; } .loc 1 105 23 mov.u32 %r78,34; st.u32 [%r77],%r78; bra $L27; $L26: .loc 1 106 23 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r80,[%value_in]; } .loc 1 106 21 setp.ne.u32 %r81,%r80,0; @ %r81 bra $L27; .loc 1 107 17 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r82,[%value_in]; } .loc 1 107 23 mov.u32 %r83,34; st.u32 [%r82],%r83; $L27: .loc 1 109 9 ld.u32 %r84,[%frame+40]; setp.eq.u32 %r85,%r84,0; @ %r85 bra $L28; .loc 1 110 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r86,[%value_in]; } .loc 1 110 20 ld.u32 %r40,[%frame+40]; .loc 1 110 15 st.u32 [%r86],%r40; $L28: .loc 1 111 20 ld.f64 %r87,[%frame+32]; cvt.rn.f32.f64 %r42,%r87; $L17: .loc 1 115 1 mov.f32 %value,%r42; st.shared.u64 [%sspslot],%sspprev; st.param.f32 [%value_out],%value; ret; } lib_a-wf_jn.o/ 1591654536 399 399 100644 9801 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // 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: __fpclassifyf .extern .func (.param .u32 %value_out) __fpclassifyf (.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: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __ieee754_ynf .extern .func (.param .f32 %value_out) __ieee754_ynf (.param .u32 %in_ar0, .param .f32 %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[4] = {106,110,102,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[4] = {121,110,102,0 }; // 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 .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 %r33; .reg .f32 %r35; .reg .u32 %r36; .reg .f32 %r37; .reg .f32 %r40; .reg .u32 %r41; .reg .pred %r42; .reg .u32 %r44; .reg .pred %r45; .reg .f32 %r47; .reg .pred %r48; .reg .u32 %r49; .reg .u64 %r50; .reg .u32 %r51; .reg .f64 %r52; .reg .f64 %r53; .reg .f64 %r54; .reg .u32 %r55; .reg .pred %r56; .reg .u64 %r57; .reg .u32 %r58; .reg .u32 %r60; .reg .pred %r61; .reg .u64 %r62; .reg .u32 %r63; .reg .u32 %r64; .reg .pred %r65; .reg .u64 %r66; .reg .f64 %r67; mov.u32 %r36,%ar0; mov.f32 %r37,%ar1; .loc 1 32 6 { .param .f32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r36; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r37; call (%value_in),__ieee754_jnf,(%out_arg1,%out_arg2); ld.param.f32 %r40,[%value_in]; } mov.f32 %r35,%r40; .loc 1 33 4 ld.global.u32 %r41,[__fdlib_version]; setp.eq.u32 %r42,%r41,-1; @ %r42 bra $L1; .loc 1 33 31 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r37; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r44,[%value_in]; } .loc 1 33 28 setp.eq.u32 %r45,%r44,0; @ %r45 bra $L1; .loc 1 34 5 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r37; call (%value_in),fabsf,(%out_arg1); ld.param.f32 %r47,[%value_in]; } .loc 1 34 4 setp.gt.f32 %r48,%r47,0f5a490fdb; @ ! %r48 bra $L1; .loc 1 36 22 mov.u32 %r49,5; st.u32 [%frame],%r49; .loc 1 37 22 cvta.const.u64 %r50,$LC0; st.u64 [%frame+8],%r50; .loc 1 38 14 mov.u32 %r51,0; st.u32 [%frame+40],%r51; .loc 1 39 17 cvt.rn.f64.s32 %r52,%r36; st.f64 [%frame+16],%r52; .loc 1 40 17 cvt.f64.f32 %r53,%r37; st.f64 [%frame+24],%r53; .loc 1 41 24 mov.f64 %r54,0d0000000000000000; st.f64 [%frame+32],%r54; .loc 1 42 16 ld.global.u32 %r55,[__fdlib_version]; setp.ne.u32 %r56,%r55,2; @ %r56 bra $L4; .loc 1 43 17 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r57,[%value_in]; } .loc 1 43 23 mov.u32 %r58,34; st.u32 [%r57],%r58; bra $L5; $L4: .loc 1 44 23 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r60,[%value_in]; } .loc 1 44 21 setp.ne.u32 %r61,%r60,0; @ %r61 bra $L5; .loc 1 45 16 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r62,[%value_in]; } .loc 1 45 22 mov.u32 %r63,34; st.u32 [%r62],%r63; $L5: .loc 1 47 9 ld.u32 %r64,[%frame+40]; setp.eq.u32 %r65,%r64,0; @ %r65 bra $L6; .loc 1 48 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r66,[%value_in]; } .loc 1 48 20 ld.u32 %r33,[%frame+40]; .loc 1 48 15 st.u32 [%r66],%r33; $L6: .loc 1 49 23 ld.f64 %r67,[%frame+32]; cvt.rn.f32.f64 %r35,%r67; $L1: .loc 1 53 1 mov.f32 %value,%r35; st.shared.u64 [%sspslot],%sspprev; 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 .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 %r26; .reg .u32 %r32; .reg .u32 %r42; .reg .f32 %r44; .reg .u32 %r45; .reg .f32 %r46; .reg .f32 %r49; .reg .u32 %r50; .reg .pred %r51; .reg .u32 %r53; .reg .pred %r54; .reg .pred %r55; .reg .u32 %r56; .reg .u64 %r57; .reg .u32 %r58; .reg .f64 %r59; .reg .f64 %r60; .reg .pred %r61; .reg .f64 %r62; .reg .f64 %r63; .reg .pred %r64; .reg .u64 %r65; .reg .u32 %r66; .reg .u32 %r68; .reg .pred %r69; .reg .u64 %r70; .reg .u32 %r71; .reg .u32 %r72; .reg .pred %r73; .reg .u64 %r74; .reg .f64 %r75; .reg .pred %r76; .reg .u32 %r77; .reg .u64 %r78; .reg .u32 %r79; .reg .f64 %r80; .reg .f64 %r81; .reg .f64 %r82; .reg .u32 %r83; .reg .pred %r84; .reg .u64 %r85; .reg .u32 %r86; .reg .u32 %r88; .reg .pred %r89; .reg .u64 %r90; .reg .u32 %r91; .reg .u32 %r92; .reg .pred %r93; .reg .u64 %r94; .reg .f64 %r95; mov.u32 %r45,%ar0; mov.f32 %r46,%ar1; .loc 1 67 6 { .param .f32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r45; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r46; call (%value_in),__ieee754_ynf,(%out_arg1,%out_arg2); ld.param.f32 %r49,[%value_in]; } mov.f32 %r44,%r49; .loc 1 68 4 ld.global.u32 %r50,[__fdlib_version]; setp.eq.u32 %r51,%r50,-1; @ %r51 bra $L17; .loc 1 68 31 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r46; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r53,[%value_in]; } .loc 1 68 28 setp.eq.u32 %r54,%r53,0; @ %r54 bra $L17; .loc 1 69 11 setp.le.f32 %r55,%r46,0f00000000; @ ! %r55 bra $L43; .loc 1 77 15 mov.u32 %r56,1; st.u32 [%frame],%r56; .loc 1 78 15 cvta.const.u64 %r57,$LC1; st.u64 [%frame+8],%r57; .loc 1 79 14 mov.u32 %r58,0; st.u32 [%frame+40],%r58; .loc 1 80 17 cvt.rn.f64.s32 %r59,%r45; st.f64 [%frame+16],%r59; .loc 1 81 17 cvt.f64.f32 %r60,%r46; st.f64 [%frame+24],%r60; .loc 1 82 23 ld.global.u32 %r26,[__fdlib_version]; .loc 1 82 9 setp.ne.u32 %r61,%r26,0; @ %r61 bra $L21; .loc 1 83 21 mov.f64 %r62,0dc7efffffe0000000; st.f64 [%frame+32],%r62; bra $L22; $L21: .loc 1 85 21 mov.f64 %r63,0dfff0000000000000; st.f64 [%frame+32],%r63; .loc 1 86 9 setp.ne.u32 %r64,%r26,2; @ %r64 bra $L22; .loc 1 87 10 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r65,[%value_in]; } .loc 1 87 16 mov.u32 %r66,33; st.u32 [%r65],%r66; bra $L23; $L22: .loc 1 88 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r68,[%value_in]; } .loc 1 88 14 setp.ne.u32 %r69,%r68,0; @ %r69 bra $L23; .loc 1 89 10 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r70,[%value_in]; } .loc 1 89 16 mov.u32 %r71,33; st.u32 [%r70],%r71; $L23: .loc 1 91 9 ld.u32 %r72,[%frame+40]; setp.eq.u32 %r73,%r72,0; @ %r73 bra $L24; .loc 1 92 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r74,[%value_in]; } .loc 1 92 20 ld.u32 %r32,[%frame+40]; .loc 1 92 15 st.u32 [%r74],%r32; $L24: .loc 1 93 20 ld.f64 %r75,[%frame+32]; cvt.rn.f32.f64 %r44,%r75; bra $L17; $L43: .loc 1 95 4 setp.gt.f32 %r76,%r46,0f5a490fdb; @ ! %r76 bra $L17; .loc 1 97 22 mov.u32 %r77,5; st.u32 [%frame],%r77; .loc 1 98 22 cvta.const.u64 %r78,$LC1; st.u64 [%frame+8],%r78; .loc 1 99 14 mov.u32 %r79,0; st.u32 [%frame+40],%r79; .loc 1 100 17 cvt.rn.f64.s32 %r80,%r45; st.f64 [%frame+16],%r80; .loc 1 101 17 cvt.f64.f32 %r81,%r46; st.f64 [%frame+24],%r81; .loc 1 102 24 mov.f64 %r82,0d0000000000000000; st.f64 [%frame+32],%r82; .loc 1 103 16 ld.global.u32 %r83,[__fdlib_version]; setp.ne.u32 %r84,%r83,2; @ %r84 bra $L26; .loc 1 104 17 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r85,[%value_in]; } .loc 1 104 23 mov.u32 %r86,34; st.u32 [%r85],%r86; bra $L27; $L26: .loc 1 105 23 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r88,[%value_in]; } .loc 1 105 21 setp.ne.u32 %r89,%r88,0; @ %r89 bra $L27; .loc 1 106 17 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r90,[%value_in]; } .loc 1 106 23 mov.u32 %r91,34; st.u32 [%r90],%r91; $L27: .loc 1 108 9 ld.u32 %r92,[%frame+40]; setp.eq.u32 %r93,%r92,0; @ %r93 bra $L28; .loc 1 109 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r94,[%value_in]; } .loc 1 109 20 ld.u32 %r42,[%frame+40]; .loc 1 109 15 st.u32 [%r94],%r42; $L28: .loc 1 110 20 ld.f64 %r95,[%frame+32]; cvt.rn.f32.f64 %r44,%r95; $L17: .loc 1 114 1 mov.f32 %value,%r44; st.shared.u64 [%sspslot],%sspprev; st.param.f32 [%value_out],%value; ret; } /1568 1591654536 399 399 100644 5697 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // 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: 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 DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[8] = {108,103,97,109,109,97,102,0 }; // 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 .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 .f64 %r27; .reg .u32 %r38; .reg .f64 %r40; .reg .u32 %r41; .reg .f32 %r42; .reg .f32 %r43; .reg .u64 %r46; .reg .u64 %r47; .reg .f32 %r48; .reg .u32 %r49; .reg .pred %r50; .reg .u32 %r52; .reg .pred %r53; .reg .u32 %r55; .reg .pred %r56; .reg .u64 %r57; .reg .u32 %r59; .reg .pred %r60; .reg .f32 %r62; .reg .pred %r63; .reg .pred %r64; .reg .u32 %r65; .reg .pred %r66; .reg .u64 %r67; .reg .u32 %r68; .reg .u32 %r70; .reg .pred %r71; .reg .u64 %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .pred %r75; .reg .u64 %r76; .reg .u32 %r77; .reg .u32 %r79; .reg .pred %r80; .reg .u64 %r81; .reg .u32 %r82; .reg .u32 %r83; .reg .pred %r84; .reg .u64 %r85; .reg .f64 %r86; mov.f32 %r43,%ar0; .loc 1 33 13 ld.global.u64 %r47,[_impure_ptr]; add.u64 %r46,%r47,224; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r43; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r46; call (%value_in),__ieee754_lgammaf_r,(%out_arg1,%out_arg2); ld.param.f32 %r48,[%value_in]; } mov.f32 %r42,%r48; .loc 1 34 11 ld.global.u32 %r49,[__fdlib_version]; setp.eq.u32 %r50,%r49,-1; @ %r50 bra $L1; .loc 1 35 13 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r48; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r52,[%value_in]; } .loc 1 35 11 setp.ne.u32 %r53,%r52,0; @ %r53 bra $L1; .loc 1 35 25 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r43; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r55,[%value_in]; } .loc 1 35 23 setp.eq.u32 %r56,%r55,0; @ %r56 bra $L1; .loc 1 42 15 cvta.const.u64 %r57,$LC0; st.u64 [%frame+8],%r57; .loc 1 43 14 st.u32 [%frame+40],%r52; .loc 1 44 28 cvt.f64.f32 %r27,%r43; .loc 1 44 26 st.f64 [%frame+24],%r27; .loc 1 44 15 st.f64 [%frame+16],%r27; .loc 1 45 16 ld.global.u32 %r59,[__fdlib_version]; setp.eq.u32 %r60,%r59,0; .loc 1 48 27 selp.f64 %r40,0d47efffffe0000000,0d7ff0000000000000,%r60; st.f64 [%frame+32],%r40; .loc 1 49 9 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r43; call (%value_in),floorf,(%out_arg1); ld.param.f32 %r62,[%value_in]; } .loc 1 49 8 setp.neu.f32 %r63,%r62,%r43; @ %r63 bra $L4; ld.global.u32 %r41,[__fdlib_version]; .loc 1 49 21 setp.le.f32 %r64,%r43,0f00000000; @ ! %r64 bra $L5; .loc 1 51 12 mov.u32 %r65,2; st.u32 [%frame],%r65; .loc 1 52 6 setp.ne.u32 %r66,%r41,2; @ %r66 bra $L7; .loc 1 53 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r67,[%value_in]; } .loc 1 53 12 mov.u32 %r68,33; st.u32 [%r67],%r68; bra $L8; $L7: .loc 1 54 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r70,[%value_in]; } .loc 1 54 11 setp.eq.u32 %r71,%r70,0; @ ! %r71 bra $L8; .loc 1 55 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r72,[%value_in]; } .loc 1 55 12 mov.u32 %r73,33; st.u32 [%r72],%r73; bra $L8; $L4: ld.global.u32 %r41,[__fdlib_version]; $L5: .loc 1 60 12 mov.u32 %r74,3; st.u32 [%frame],%r74; .loc 1 61 20 setp.ne.u32 %r75,%r41,2; @ %r75 bra $L10; .loc 1 62 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r76,[%value_in]; } .loc 1 62 12 mov.u32 %r77,34; st.u32 [%r76],%r77; bra $L8; $L10: .loc 1 63 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r79,[%value_in]; } .loc 1 63 25 setp.ne.u32 %r80,%r79,0; @ %r80 bra $L8; .loc 1 64 20 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r81,[%value_in]; } .loc 1 64 26 mov.u32 %r82,34; st.u32 [%r81],%r82; $L8: .loc 1 67 9 ld.u32 %r83,[%frame+40]; setp.eq.u32 %r84,%r83,0; @ %r84 bra $L12; .loc 1 68 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r85,[%value_in]; } .loc 1 68 20 ld.u32 %r38,[%frame+40]; .loc 1 68 15 st.u32 [%r85],%r38; $L12: .loc 1 69 20 ld.f64 %r86,[%frame+32]; cvt.rn.f32.f64 %r42,%r86; $L1: .loc 1 73 1 mov.f32 %value,%r42; st.shared.u64 [%sspslot],%sspprev; st.param.f32 [%value_out],%value; ret; } lib_a-wf_log.o/ 1591654536 399 399 100644 5549 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_logf .extern .func (.param .f32 %value_out) __ieee754_logf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __fpclassifyf .extern .func (.param .u32 %value_out) __fpclassifyf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: nan .extern .func (.param .f64 %value_out) nan (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[5] = {108,111,103,102,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[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 .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 .f64 %r24; .reg .u32 %r25; .reg .u32 %r35; .reg .f32 %r37; .reg .f32 %r38; .reg .f32 %r40; .reg .u32 %r41; .reg .pred %r42; .reg .u32 %r44; .reg .pred %r45; .reg .pred %r46; .reg .u64 %r47; .reg .u32 %r48; .reg .pred %r49; .reg .f64 %r50; .reg .pred %r51; .reg .u32 %r52; .reg .pred %r53; .reg .u64 %r54; .reg .u32 %r55; .reg .u32 %r57; .reg .pred %r58; .reg .u64 %r59; .reg .u32 %r60; .reg .u32 %r61; .reg .pred %r62; .reg .u64 %r63; .reg .u32 %r64; .reg .u32 %r66; .reg .pred %r67; .reg .u64 %r68; .reg .u32 %r69; .reg .u64 %r70; .reg .f64 %r71; .reg .u32 %r72; .reg .pred %r73; .reg .u64 %r74; .reg .f64 %r75; .reg .u32 %r77; .reg .f64 %r78; .reg .pred %r79; .reg .u32 %r80; mov.f32 %r38,%ar0; .loc 1 35 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r38; call (%value_in),__ieee754_logf,(%out_arg1); ld.param.f32 %r40,[%value_in]; } mov.f32 %r37,%r40; .loc 1 36 4 ld.global.u32 %r41,[__fdlib_version]; setp.eq.u32 %r42,%r41,-1; @ %r42 bra $L1; .loc 1 36 31 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r38; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r44,[%value_in]; } .loc 1 36 28 setp.eq.u32 %r45,%r44,0; @ %r45 bra $L1; .loc 1 36 40 setp.gt.f32 %r46,%r38,0f00000000; @ %r46 bra $L1; .loc 1 43 11 cvta.const.u64 %r47,$LC0; st.u64 [%frame+8],%r47; .loc 1 44 10 mov.u32 %r48,0; st.u32 [%frame+40],%r48; .loc 1 45 24 cvt.f64.f32 %r24,%r38; .loc 1 45 22 st.f64 [%frame+24],%r24; .loc 1 45 11 st.f64 [%frame+16],%r24; .loc 1 46 19 ld.global.u32 %r25,[__fdlib_version]; .loc 1 46 5 setp.eq.u32 %r49,%r25,0; @ %r49 bra $L3; mov.f64 %r50,0dfff0000000000000; st.f64 [%frame+32],%r50; .loc 1 50 4 setp.neu.f32 %r51,%r38,0f00000000; @ %r51 bra $L4; .loc 1 52 15 mov.u32 %r52,2; st.u32 [%frame],%r52; .loc 1 53 9 setp.ne.u32 %r53,%r25,2; @ %r53 bra $L5; .loc 1 54 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r54,[%value_in]; } .loc 1 54 15 mov.u32 %r55,34; st.u32 [%r54],%r55; bra $L6; $L5: .loc 1 55 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r57,[%value_in]; } .loc 1 55 14 setp.ne.u32 %r58,%r57,0; @ %r58 bra $L6; .loc 1 56 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r59,[%value_in]; } .loc 1 56 15 mov.u32 %r60,34; st.u32 [%r59],%r60; bra $L6; $L4: .loc 1 60 15 mov.u32 %r61,1; st.u32 [%frame],%r61; .loc 1 61 9 setp.ne.u32 %r62,%r25,2; @ %r62 bra $L7; .loc 1 62 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r63,[%value_in]; } .loc 1 62 15 mov.u32 %r64,33; st.u32 [%r63],%r64; bra $L8; $L7: .loc 1 63 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r66,[%value_in]; } .loc 1 63 14 setp.ne.u32 %r67,%r66,0; @ %r67 bra $L8; .loc 1 64 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r68,[%value_in]; } .loc 1 64 15 mov.u32 %r69,33; st.u32 [%r68],%r69; $L8: .loc 1 66 26 cvta.const.u64 %r70,$LC1; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r70; call (%value_in),nan,(%out_arg1); ld.param.f64 %r71,[%value_in]; } .loc 1 66 24 st.f64 [%frame+32],%r71; $L6: .loc 1 68 5 ld.u32 %r72,[%frame+40]; setp.eq.u32 %r73,%r72,0; @ %r73 bra $L9; .loc 1 69 12 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r74,[%value_in]; } .loc 1 69 23 ld.u32 %r35,[%frame+40]; .loc 1 69 18 st.u32 [%r74],%r35; $L9: .loc 1 70 16 ld.f64 %r75,[%frame+32]; cvt.rn.f32.f64 %r37,%r75; bra $L1; $L10: .loc 1 52 15 mov.u32 %r77,2; st.u32 [%frame],%r77; bra $L5; $L3: mov.f64 %r78,0dc7efffffe0000000; st.f64 [%frame+32],%r78; .loc 1 50 4 setp.eq.f32 %r79,%r38,0f00000000; @ %r79 bra $L10; .loc 1 60 15 mov.u32 %r80,1; st.u32 [%frame],%r80; bra $L7; $L1: .loc 1 72 1 mov.f32 %value,%r37; st.shared.u64 [%sspslot],%sspprev; st.param.f32 [%value_out],%value; ret; } /1587 1591654536 399 399 100644 5580 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_log10f .extern .func (.param .f32 %value_out) __ieee754_log10f (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __fpclassifyf .extern .func (.param .u32 %value_out) __fpclassifyf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: nan .extern .func (.param .f64 %value_out) nan (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[7] = {108,111,103,49,48,102,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[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 .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 .f64 %r24; .reg .u32 %r25; .reg .u32 %r35; .reg .f32 %r37; .reg .f32 %r38; .reg .f32 %r40; .reg .u32 %r41; .reg .pred %r42; .reg .u32 %r44; .reg .pred %r45; .reg .pred %r46; .reg .u64 %r47; .reg .u32 %r48; .reg .pred %r49; .reg .f64 %r50; .reg .pred %r51; .reg .u32 %r52; .reg .pred %r53; .reg .u64 %r54; .reg .u32 %r55; .reg .u32 %r57; .reg .pred %r58; .reg .u64 %r59; .reg .u32 %r60; .reg .u32 %r61; .reg .pred %r62; .reg .u64 %r63; .reg .u32 %r64; .reg .u32 %r66; .reg .pred %r67; .reg .u64 %r68; .reg .u32 %r69; .reg .u64 %r70; .reg .f64 %r71; .reg .u32 %r72; .reg .pred %r73; .reg .u64 %r74; .reg .f64 %r75; .reg .u32 %r77; .reg .f64 %r78; .reg .pred %r79; .reg .u32 %r80; mov.f32 %r38,%ar0; .loc 1 35 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r38; call (%value_in),__ieee754_log10f,(%out_arg1); ld.param.f32 %r40,[%value_in]; } mov.f32 %r37,%r40; .loc 1 36 4 ld.global.u32 %r41,[__fdlib_version]; setp.eq.u32 %r42,%r41,-1; @ %r42 bra $L1; .loc 1 36 31 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r38; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r44,[%value_in]; } .loc 1 36 28 setp.eq.u32 %r45,%r44,0; @ %r45 bra $L1; .loc 1 37 4 setp.le.f32 %r46,%r38,0f00000000; @ ! %r46 bra $L1; .loc 1 44 15 cvta.const.u64 %r47,$LC0; st.u64 [%frame+8],%r47; .loc 1 45 14 mov.u32 %r48,0; st.u32 [%frame+40],%r48; .loc 1 46 28 cvt.f64.f32 %r24,%r38; .loc 1 46 26 st.f64 [%frame+24],%r24; .loc 1 46 15 st.f64 [%frame+16],%r24; .loc 1 47 23 ld.global.u32 %r25,[__fdlib_version]; .loc 1 47 9 setp.eq.u32 %r49,%r25,0; @ %r49 bra $L4; mov.f64 %r50,0dfff0000000000000; st.f64 [%frame+32],%r50; .loc 1 51 8 setp.neu.f32 %r51,%r38,0f00000000; @ %r51 bra $L5; .loc 1 53 19 mov.u32 %r52,2; st.u32 [%frame],%r52; .loc 1 54 13 setp.ne.u32 %r53,%r25,2; @ %r53 bra $L6; .loc 1 55 13 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r54,[%value_in]; } .loc 1 55 19 mov.u32 %r55,34; st.u32 [%r54],%r55; bra $L7; $L6: .loc 1 56 20 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r57,[%value_in]; } .loc 1 56 18 setp.ne.u32 %r58,%r57,0; @ %r58 bra $L7; .loc 1 57 13 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r59,[%value_in]; } .loc 1 57 19 mov.u32 %r60,34; st.u32 [%r59],%r60; bra $L7; $L5: .loc 1 61 19 mov.u32 %r61,1; st.u32 [%frame],%r61; .loc 1 62 13 setp.ne.u32 %r62,%r25,2; @ %r62 bra $L8; .loc 1 63 13 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r63,[%value_in]; } .loc 1 63 19 mov.u32 %r64,33; st.u32 [%r63],%r64; bra $L9; $L8: .loc 1 64 20 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r66,[%value_in]; } .loc 1 64 18 setp.ne.u32 %r67,%r66,0; @ %r67 bra $L9; .loc 1 65 13 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r68,[%value_in]; } .loc 1 65 19 mov.u32 %r69,33; st.u32 [%r68],%r69; $L9: .loc 1 67 30 cvta.const.u64 %r70,$LC1; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r70; call (%value_in),nan,(%out_arg1); ld.param.f64 %r71,[%value_in]; } .loc 1 67 28 st.f64 [%frame+32],%r71; $L7: .loc 1 69 9 ld.u32 %r72,[%frame+40]; setp.eq.u32 %r73,%r72,0; @ %r73 bra $L10; .loc 1 70 16 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r74,[%value_in]; } .loc 1 70 27 ld.u32 %r35,[%frame+40]; .loc 1 70 22 st.u32 [%r74],%r35; $L10: .loc 1 71 20 ld.f64 %r75,[%frame+32]; cvt.rn.f32.f64 %r37,%r75; bra $L1; $L11: .loc 1 53 19 mov.u32 %r77,2; st.u32 [%frame],%r77; bra $L6; $L4: mov.f64 %r78,0dc7efffffe0000000; st.f64 [%frame+32],%r78; .loc 1 51 8 setp.eq.f32 %r79,%r38,0f00000000; @ %r79 bra $L11; .loc 1 61 19 mov.u32 %r80,1; st.u32 [%frame],%r80; bra $L8; $L1: .loc 1 75 1 mov.f32 %value,%r37; st.shared.u64 [%sspslot],%sspprev; st.param.f32 [%value_out],%value; ret; } lib_a-wf_pow.o/ 1591654536 399 399 100644 17271 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // 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: __fpclassifyf .extern .func (.param .u32 %value_out) __fpclassifyf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: finitef .extern .func (.param .u32 %value_out) finitef (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: rint .extern .func (.param .f64 %value_out) rint (.param .f64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[5] = {112,111,119,102,0 }; // 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 .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 %r34; .reg .u32 %r42; .reg .u32 %r46; .reg .u32 %r52; .reg .u32 %r60; .reg .u32 %r67; .reg .f64 %r72; .reg .f64 %r74; .reg .u32 %r82; .reg .u32 %r94; .reg .u32 %r96; .reg .f32 %r97; .reg .f32 %r102; .reg .f32 %r103; .reg .f32 %r104; .reg .f32 %r107; .reg .u32 %r108; .reg .pred %r109; .reg .u32 %r111; .reg .pred %r112; .reg .u32 %r114; .reg .pred %r115; .reg .pred %r116; .reg .u32 %r117; .reg .u64 %r118; .reg .f64 %r120; .reg .f64 %r121; .reg .f64 %r122; .reg .u32 %r124; .reg .u32 %r125; .reg .u32 %r127; .reg .u32 %r128; .reg .u16 %r129; .reg .u16 %r130; .reg .u16 %r131; .reg .u32 %r132; .reg .u16 %r133; .reg .pred %r134; .reg .u32 %r136; .reg .pred %r137; .reg .u64 %r138; .reg .u32 %r139; .reg .u32 %r140; .reg .pred %r141; .reg .f64 %r142; .reg .u64 %r143; .reg .f64 %r144; .reg .pred %r145; .reg .pred %r146; .reg .u32 %r147; .reg .u64 %r148; .reg .u32 %r149; .reg .f64 %r150; .reg .f64 %r151; .reg .f64 %r152; .reg .u32 %r153; .reg .pred %r154; .reg .u32 %r156; .reg .pred %r157; .reg .u64 %r158; .reg .u32 %r159; .reg .u32 %r160; .reg .pred %r161; .reg .f64 %r162; .reg .u64 %r163; .reg .f64 %r164; .reg .u32 %r166; .reg .pred %r167; .reg .pred %r168; .reg .u32 %r169; .reg .u64 %r170; .reg .u32 %r171; .reg .f64 %r172; .reg .f64 %r173; .reg .pred %r174; .reg .f64 %r175; .reg .f64 %r176; .reg .pred %r177; .reg .u64 %r178; .reg .u32 %r179; .reg .u32 %r181; .reg .pred %r182; .reg .u64 %r183; .reg .u32 %r184; .reg .u32 %r185; .reg .pred %r186; .reg .u64 %r187; .reg .f64 %r188; .reg .u32 %r190; .reg .pred %r191; .reg .u32 %r193; .reg .pred %r194; .reg .u32 %r196; .reg .pred %r197; .reg .u32 %r199; .reg .pred %r200; .reg .u32 %r201; .reg .u64 %r202; .reg .f64 %r204; .reg .f64 %r205; .reg .pred %r206; .reg .f64 %r207; .reg .f64 %r208; .reg .f64 %r209; .reg .pred %r210; .reg .u64 %r211; .reg .u32 %r212; .reg .u32 %r214; .reg .pred %r215; .reg .u64 %r216; .reg .u32 %r217; .reg .u32 %r218; .reg .pred %r219; .reg .u64 %r220; .reg .f64 %r221; .reg .u32 %r222; .reg .u64 %r223; .reg .f64 %r225; .reg .f64 %r226; .reg .pred %r228; .reg .f64 %r229; .reg .pred %r230; .reg .f64 %r232; .reg .pred %r233; .reg .f64 %r234; .reg .f64 %r235; .reg .pred %r236; .reg .f64 %r238; .reg .pred %r239; .reg .f64 %r240; .reg .pred %r242; .reg .u64 %r243; .reg .u32 %r244; .reg .u32 %r246; .reg .pred %r247; .reg .u64 %r248; .reg .u32 %r249; .reg .u32 %r250; .reg .pred %r251; .reg .u64 %r252; .reg .f64 %r253; .reg .pred %r254; .reg .u32 %r256; .reg .pred %r257; .reg .u32 %r259; .reg .pred %r260; .reg .u32 %r261; .reg .u64 %r262; .reg .u32 %r263; .reg .f64 %r264; .reg .f64 %r265; .reg .f64 %r266; .reg .u32 %r267; .reg .pred %r268; .reg .u64 %r269; .reg .u32 %r270; .reg .u32 %r272; .reg .pred %r273; .reg .u64 %r274; .reg .u32 %r275; .reg .u32 %r276; .reg .pred %r277; .reg .u64 %r278; .reg .f64 %r279; .reg .u32 %r281; mov.f32 %r103,%ar0; mov.f32 %r104,%ar1; .loc 1 35 4 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r103; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r104; call (%value_in),__ieee754_powf,(%out_arg1,%out_arg2); ld.param.f32 %r107,[%value_in]; } mov.f32 %r102,%r107; .loc 1 36 4 ld.global.u32 %r108,[__fdlib_version]; setp.eq.u32 %r109,%r108,-1; @ %r109 bra $L1; .loc 1 36 30 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r104; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r111,[%value_in]; } .loc 1 36 27 setp.eq.u32 %r112,%r111,0; @ %r112 bra $L1; .loc 1 37 5 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r103; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r114,[%value_in]; } .loc 1 37 4 setp.ne.u32 %r115,%r114,0; @ %r115 bra $L3; .loc 1 38 8 setp.neu.f32 %r116,%r104,0f00000000; @ %r116 bra $L1; .loc 1 41 12 mov.u32 %r117,1; st.u32 [%frame],%r117; .loc 1 42 12 cvta.const.u64 %r118,$LC0; st.u64 [%frame+8],%r118; .loc 1 43 11 st.u32 [%frame+40],%r114; .loc 1 44 14 cvt.f64.f32 %r120,%r103; st.f64 [%frame+16],%r120; .loc 1 45 14 cvt.f64.f32 %r121,%r104; st.f64 [%frame+24],%r121; .loc 1 46 14 mov.f64 %r122,0d3ff0000000000000; st.f64 [%frame+32],%r122; .loc 1 47 30 ld.global.u32 %r96,[__fdlib_version]; set.u32.eq.u32 %r124,%r96,-1; neg.s32 %r125,%r124; set.u32.eq.u32 %r127,%r96,2; neg.s32 %r128,%r127; cvt.u16.u32 %r130,%r125; cvt.u16.u32 %r131,%r128; or.b16 %r129,%r130,%r131; .loc 1 47 6 cvt.u32.u16 %r132,%r129; cvt.u16.u8 %r133,%r132; setp.ne.u16 %r134,%r133,0; @ %r134 bra $L35; .loc 1 49 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r136,[%value_in]; } .loc 1 49 11 setp.ne.u32 %r137,%r136,0; @ %r137 bra $L5; .loc 1 50 4 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r138,[%value_in]; } .loc 1 50 10 mov.u32 %r139,33; st.u32 [%r138],%r139; $L5: .loc 1 52 13 ld.u32 %r140,[%frame+40]; setp.ne.u32 %r141,%r140,0; @ %r141 bra $L6; ld.f64 %r142,[%frame+32]; cvt.rn.f32.f64 %r102,%r142; bra $L1; $L6: .loc 1 53 13 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r143,[%value_in]; } .loc 1 53 24 ld.u32 %r34,[%frame+40]; .loc 1 53 19 st.u32 [%r143],%r34; ld.f64 %r144,[%frame+32]; cvt.rn.f32.f64 %r102,%r144; bra $L1; $L35: mov.f32 %r102,0f3f800000; .loc 1 54 24 bra $L1; $L3: .loc 1 58 4 setp.neu.f32 %r145,%r103,0f00000000; @ %r145 bra $L7; .loc 1 59 8 setp.neu.f32 %r146,%r104,0f00000000; @ %r146 bra $L8; .loc 1 62 12 mov.u32 %r147,1; st.u32 [%frame],%r147; .loc 1 63 12 cvta.const.u64 %r148,$LC0; st.u64 [%frame+8],%r148; .loc 1 64 11 mov.u32 %r149,0; st.u32 [%frame+40],%r149; .loc 1 65 14 cvt.f64.f32 %r150,%r103; st.f64 [%frame+16],%r150; .loc 1 66 14 cvt.f64.f32 %r151,%r104; st.f64 [%frame+24],%r151; .loc 1 67 14 mov.f64 %r152,0d0000000000000000; st.f64 [%frame+32],%r152; .loc 1 68 6 ld.global.u32 %r153,[__fdlib_version]; setp.ne.u32 %r154,%r153,0; @ %r154 bra $L36; .loc 1 69 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r156,[%value_in]; } .loc 1 69 11 setp.ne.u32 %r157,%r156,0; @ %r157 bra $L10; .loc 1 70 4 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r158,[%value_in]; } .loc 1 70 10 mov.u32 %r159,33; st.u32 [%r158],%r159; $L10: .loc 1 72 13 ld.u32 %r160,[%frame+40]; setp.ne.u32 %r161,%r160,0; @ %r161 bra $L11; ld.f64 %r162,[%frame+32]; cvt.rn.f32.f64 %r102,%r162; bra $L1; $L11: .loc 1 73 13 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r163,[%value_in]; } .loc 1 73 24 ld.u32 %r42,[%frame+40]; .loc 1 73 19 st.u32 [%r163],%r42; ld.f64 %r164,[%frame+32]; cvt.rn.f32.f64 %r102,%r164; bra $L1; $L36: mov.f32 %r102,0f3f800000; .loc 1 74 24 bra $L1; $L8: .loc 1 76 9 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r104; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r166,[%value_in]; } .loc 1 76 8 setp.eq.u32 %r167,%r166,0; @ %r167 bra $L1; .loc 1 76 19 setp.lt.f32 %r168,%r104,0f00000000; @ ! %r168 bra $L1; .loc 1 78 12 mov.u32 %r169,1; st.u32 [%frame],%r169; .loc 1 79 12 cvta.const.u64 %r170,$LC0; st.u64 [%frame+8],%r170; .loc 1 80 11 mov.u32 %r171,0; st.u32 [%frame+40],%r171; .loc 1 81 14 cvt.f64.f32 %r172,%r103; st.f64 [%frame+16],%r172; .loc 1 82 14 cvt.f64.f32 %r173,%r104; st.f64 [%frame+24],%r173; .loc 1 83 20 ld.global.u32 %r46,[__fdlib_version]; .loc 1 83 6 setp.ne.u32 %r174,%r46,0; @ %r174 bra $L13; .loc 1 84 16 mov.f64 %r175,0d0000000000000000; st.f64 [%frame+32],%r175; bra $L14; $L13: .loc 1 86 16 mov.f64 %r176,0dfff0000000000000; st.f64 [%frame+32],%r176; .loc 1 87 6 setp.ne.u32 %r177,%r46,2; @ %r177 bra $L14; .loc 1 88 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r178,[%value_in]; } .loc 1 88 11 mov.u32 %r179,33; st.u32 [%r178],%r179; bra $L15; $L14: .loc 1 89 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r181,[%value_in]; } .loc 1 89 11 setp.ne.u32 %r182,%r181,0; @ %r182 bra $L15; .loc 1 90 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r183,[%value_in]; } .loc 1 90 11 mov.u32 %r184,33; st.u32 [%r183],%r184; $L15: .loc 1 92 13 ld.u32 %r185,[%frame+40]; setp.eq.u32 %r186,%r185,0; @ %r186 bra $L16; .loc 1 93 13 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r187,[%value_in]; } .loc 1 93 24 ld.u32 %r52,[%frame+40]; .loc 1 93 19 st.u32 [%r187],%r52; $L16: .loc 1 94 24 ld.f64 %r188,[%frame+32]; cvt.rn.f32.f64 %r102,%r188; bra $L1; $L7: .loc 1 98 6 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r107; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r190,[%value_in]; } .loc 1 98 4 setp.ne.u32 %r191,%r190,0; @ %r191 bra $L17; .loc 1 99 9 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r103; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r193,[%value_in]; } .loc 1 99 8 setp.eq.u32 %r194,%r193,0; @ %r194 bra $L17; .loc 1 99 21 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r104; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r196,[%value_in]; } .loc 1 99 19 setp.eq.u32 %r197,%r196,0; @ %r197 bra $L17; .loc 1 100 13 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r107; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r199,[%value_in]; } .loc 1 100 12 setp.ne.u32 %r200,%r199,0; @ %r200 bra $L18; .loc 1 102 16 mov.u32 %r201,1; st.u32 [%frame],%r201; .loc 1 103 16 cvta.const.u64 %r202,$LC0; st.u64 [%frame+8],%r202; .loc 1 104 15 st.u32 [%frame+40],%r199; .loc 1 105 18 cvt.f64.f32 %r204,%r103; st.f64 [%frame+16],%r204; .loc 1 106 18 cvt.f64.f32 %r205,%r104; st.f64 [%frame+24],%r205; .loc 1 107 24 ld.global.u32 %r60,[__fdlib_version]; .loc 1 107 10 setp.ne.u32 %r206,%r60,0; @ %r206 bra $L19; .loc 1 108 22 mov.f64 %r207,0d0000000000000000; st.f64 [%frame+32],%r207; bra $L20; $L19: .loc 1 110 27 mov.f64 %r209,0d0000000000000000; div.rn.f64 %r208,%r209,0d0000000000000000; .loc 1 110 22 st.f64 [%frame+32],%r208; .loc 1 111 10 setp.ne.u32 %r210,%r60,2; @ %r210 bra $L20; .loc 1 112 11 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r211,[%value_in]; } .loc 1 112 17 mov.u32 %r212,33; st.u32 [%r211],%r212; bra $L21; $L20: .loc 1 113 17 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r214,[%value_in]; } .loc 1 113 15 setp.ne.u32 %r215,%r214,0; @ %r215 bra $L21; .loc 1 114 11 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r216,[%value_in]; } .loc 1 114 17 mov.u32 %r217,33; st.u32 [%r216],%r217; $L21: .loc 1 116 17 ld.u32 %r218,[%frame+40]; setp.eq.u32 %r219,%r218,0; @ %r219 bra $L22; .loc 1 117 18 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r220,[%value_in]; } .loc 1 117 29 ld.u32 %r67,[%frame+40]; .loc 1 117 24 st.u32 [%r220],%r67; $L22: .loc 1 118 28 ld.f64 %r221,[%frame+32]; cvt.rn.f32.f64 %r102,%r221; bra $L1; $L18: .loc 1 121 16 mov.u32 %r222,3; st.u32 [%frame],%r222; .loc 1 122 16 cvta.const.u64 %r223,$LC0; st.u64 [%frame+8],%r223; .loc 1 123 15 st.u32 [%frame+40],%r190; .loc 1 124 18 cvt.f64.f32 %r225,%r103; st.f64 [%frame+16],%r225; .loc 1 125 18 cvt.f64.f32 %r226,%r104; st.f64 [%frame+24],%r226; mul.f32 %r97,%r104,0f3f000000; .loc 1 126 10 ld.global.u32 %r281,[__fdlib_version]; setp.ne.u32 %r228,%r281,0; @ %r228 bra $L23; .loc 1 127 21 mov.f64 %r229,0d47efffffe0000000; st.f64 [%frame+32],%r229; .loc 1 129 12 setp.lt.f32 %r230,%r103,0f00000000; @ ! %r230 bra $L24; .loc 1 129 20 cvt.f64.f32 %r72,%r97; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r72; call (%value_in),rint,(%out_arg1); ld.param.f64 %r232,[%value_in]; } .loc 1 129 18 setp.neu.f64 %r233,%r72,%r232; @ %r233 bra $L26; ld.global.u32 %r281,[__fdlib_version]; bra $L27; $L26: .loc 1 129 43 mov.f64 %r234,0dc7efffffe0000000; st.f64 [%frame+32],%r234; ld.global.u32 %r281,[__fdlib_version]; bra $L27; $L23: .loc 1 131 21 mov.f64 %r235,0d7ff0000000000000; st.f64 [%frame+32],%r235; .loc 1 133 12 setp.lt.f32 %r236,%r103,0f00000000; @ ! %r236 bra $L27; .loc 1 133 20 cvt.f64.f32 %r74,%r97; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r74; call (%value_in),rint,(%out_arg1); ld.param.f64 %r238,[%value_in]; } .loc 1 133 18 setp.eq.f64 %r239,%r74,%r238; @ ! %r239 bra $L74; ld.global.u32 %r281,[__fdlib_version]; bra $L27; $L74: .loc 1 133 43 mov.f64 %r240,0dfff0000000000000; st.f64 [%frame+32],%r240; ld.global.u32 %r281,[__fdlib_version]; $L27: .loc 1 135 10 setp.ne.u32 %r242,%r281,2; @ %r242 bra $L24; .loc 1 136 11 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r243,[%value_in]; } .loc 1 136 17 mov.u32 %r244,34; st.u32 [%r243],%r244; bra $L30; $L24: .loc 1 137 17 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r246,[%value_in]; } .loc 1 137 15 setp.ne.u32 %r247,%r246,0; @ %r247 bra $L30; .loc 1 138 4 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r248,[%value_in]; } .loc 1 138 10 mov.u32 %r249,34; st.u32 [%r248],%r249; $L30: .loc 1 140 17 ld.u32 %r250,[%frame+40]; setp.eq.u32 %r251,%r250,0; @ %r251 bra $L31; .loc 1 141 18 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r252,[%value_in]; } .loc 1 141 29 ld.u32 %r82,[%frame+40]; .loc 1 141 24 st.u32 [%r252],%r82; $L31: .loc 1 142 28 ld.f64 %r253,[%frame+32]; cvt.rn.f32.f64 %r102,%r253; bra $L1; $L17: .loc 1 146 4 setp.neu.f32 %r254,%r107,0f00000000; @ %r254 bra $L1; .loc 1 146 20 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r103; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r256,[%value_in]; } .loc 1 146 18 setp.eq.u32 %r257,%r256,0; @ %r257 bra $L1; .loc 1 146 32 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r104; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r259,[%value_in]; } .loc 1 146 30 setp.eq.u32 %r260,%r259,0; @ %r260 bra $L1; .loc 1 148 15 mov.u32 %r261,4; st.u32 [%frame],%r261; .loc 1 149 15 cvta.const.u64 %r262,$LC0; st.u64 [%frame+8],%r262; .loc 1 150 14 mov.u32 %r263,0; st.u32 [%frame+40],%r263; .loc 1 151 17 cvt.f64.f32 %r264,%r103; st.f64 [%frame+16],%r264; .loc 1 152 17 cvt.f64.f32 %r265,%r104; st.f64 [%frame+24],%r265; .loc 1 153 17 mov.f64 %r266,0d0000000000000000; st.f64 [%frame+32],%r266; .loc 1 154 9 ld.global.u32 %r267,[__fdlib_version]; setp.ne.u32 %r268,%r267,2; @ %r268 bra $L32; .loc 1 155 10 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r269,[%value_in]; } .loc 1 155 16 mov.u32 %r270,34; st.u32 [%r269],%r270; bra $L33; $L32: .loc 1 156 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r272,[%value_in]; } .loc 1 156 14 setp.ne.u32 %r273,%r272,0; @ %r273 bra $L33; .loc 1 157 8 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r274,[%value_in]; } .loc 1 157 14 mov.u32 %r275,34; st.u32 [%r274],%r275; $L33: .loc 1 159 9 ld.u32 %r276,[%frame+40]; setp.eq.u32 %r277,%r276,0; @ %r277 bra $L34; .loc 1 160 10 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r278,[%value_in]; } .loc 1 160 21 ld.u32 %r94,[%frame+40]; .loc 1 160 16 st.u32 [%r278],%r94; $L34: .loc 1 161 20 ld.f64 %r279,[%frame+32]; cvt.rn.f32.f64 %r102,%r279; $L1: .loc 1 165 1 mov.f32 %value,%r102; st.shared.u64 [%sspslot],%sspprev; st.param.f32 [%value_out],%value; ret; } /1605 1591654536 399 399 100644 4563 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // 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: __fpclassifyf .extern .func (.param .u32 %value_out) __fpclassifyf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[11] = {114,101,109,97,105,110,100,101,114,102,0 }; // 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 .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 %r33; .reg .f32 %r38; .reg .f32 %r39; .reg .f32 %r40; .reg .f32 %r43; .reg .u32 %r44; .reg .pred %r45; .reg .u32 %r47; .reg .u32 %r49; .reg .u32 %r50; .reg .u32 %r52; .reg .u32 %r53; .reg .u16 %r54; .reg .u16 %r55; .reg .u16 %r56; .reg .u32 %r57; .reg .u16 %r58; .reg .pred %r59; .reg .u32 %r60; .reg .u64 %r61; .reg .u32 %r62; .reg .f64 %r63; .reg .f64 %r64; .reg .f64 %r65; .reg .f64 %r66; .reg .u32 %r67; .reg .pred %r68; .reg .u64 %r69; .reg .u32 %r70; .reg .u32 %r72; .reg .pred %r73; .reg .u64 %r74; .reg .u32 %r75; .reg .u32 %r76; .reg .pred %r77; .reg .u64 %r78; .reg .f64 %r79; mov.f32 %r39,%ar0; mov.f32 %r40,%ar1; .loc 1 35 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r39; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r40; call (%value_in),__ieee754_remainderf,(%out_arg1,%out_arg2); ld.param.f32 %r43,[%value_in]; } mov.f32 %r38,%r43; .loc 1 36 4 ld.global.u32 %r44,[__fdlib_version]; setp.eq.u32 %r45,%r44,-1; @ %r45 bra $L1; .loc 1 36 31 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r40; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r47,[%value_in]; } .loc 1 37 4 set.u32.eq.f32 %r49,%r40,0f00000000; neg.s32 %r50,%r49; .loc 1 36 28 set.u32.ne.u32 %r52,%r47,0; neg.s32 %r53,%r52; .loc 1 37 4 cvt.u16.u32 %r55,%r50; cvt.u16.u32 %r56,%r53; and.b16 %r54,%r55,%r56; cvt.u32.u16 %r57,%r54; cvt.u16.u8 %r58,%r57; setp.eq.u16 %r59,%r58,0; @ %r59 bra $L1; .loc 1 39 22 mov.u32 %r60,1; st.u32 [%frame],%r60; .loc 1 40 22 cvta.const.u64 %r61,$LC0; st.u64 [%frame+8],%r61; .loc 1 41 14 mov.u32 %r62,0; st.u32 [%frame+40],%r62; .loc 1 42 17 cvt.f64.f32 %r63,%r39; st.f64 [%frame+16],%r63; .loc 1 43 17 cvt.f64.f32 %r64,%r40; st.f64 [%frame+24],%r64; .loc 1 44 29 mov.f64 %r66,0d0000000000000000; div.rn.f64 %r65,%r66,0d0000000000000000; .loc 1 44 24 st.f64 [%frame+32],%r65; .loc 1 45 16 ld.global.u32 %r67,[__fdlib_version]; setp.ne.u32 %r68,%r67,2; @ %r68 bra $L3; .loc 1 46 16 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r69,[%value_in]; } .loc 1 46 22 mov.u32 %r70,33; st.u32 [%r69],%r70; bra $L4; $L3: .loc 1 47 23 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r72,[%value_in]; } .loc 1 47 21 setp.ne.u32 %r73,%r72,0; @ %r73 bra $L4; .loc 1 48 16 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r74,[%value_in]; } .loc 1 48 22 mov.u32 %r75,33; st.u32 [%r74],%r75; $L4: .loc 1 50 9 ld.u32 %r76,[%frame+40]; setp.eq.u32 %r77,%r76,0; @ %r77 bra $L5; .loc 1 51 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r78,[%value_in]; } .loc 1 51 20 ld.u32 %r33,[%frame+40]; .loc 1 51 15 st.u32 [%r78],%r33; $L5: .loc 1 52 20 ld.f64 %r79,[%frame+32]; cvt.rn.f32.f64 %r38,%r79; $L1: .loc 1 56 1 mov.f32 %value,%r38; st.shared.u64 [%sspslot],%sspprev; st.param.f32 [%value_out],%value; ret; } /1627 1591654536 399 399 100644 7711 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // 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: __fpclassifyf .extern .func (.param .u32 %value_out) __fpclassifyf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // 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]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[7] = {115,99,97,108,98,102,0 }; // 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 .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 %r34; .reg .f64 %r39; .reg .u32 %r48; .reg .f64 %r52; .reg .f32 %r53; .reg .f32 %r54; .reg .f32 %r55; .reg .f32 %r58; .reg .u32 %r59; .reg .pred %r60; .reg .u32 %r62; .reg .pred %r63; .reg .u32 %r65; .reg .pred %r66; .reg .u32 %r68; .reg .pred %r69; .reg .u32 %r70; .reg .u64 %r71; .reg .f64 %r73; .reg .f64 %r74; .reg .pred %r75; .reg .u32 %r76; .reg .pred %r77; .reg .u64 %r78; .reg .u32 %r79; .reg .u32 %r81; .reg .pred %r82; .reg .u64 %r83; .reg .u32 %r84; .reg .u32 %r85; .reg .pred %r86; .reg .u64 %r87; .reg .f64 %r88; .reg .u32 %r90; .reg .u32 %r91; .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 .u64 %r102; .reg .u32 %r103; .reg .f64 %r104; .reg .f64 %r105; .reg .f64 %r107; .reg .u32 %r108; .reg .pred %r109; .reg .u64 %r110; .reg .u32 %r111; .reg .u32 %r113; .reg .pred %r114; .reg .u64 %r115; .reg .u32 %r116; .reg .u32 %r117; .reg .pred %r118; .reg .u64 %r119; .reg .f64 %r120; .reg .u32 %r122; .reg .pred %r123; .reg .u64 %r124; .reg .u32 %r125; mov.f32 %r54,%ar0; mov.f32 %r55,%ar1; .loc 1 51 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r54; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r55; call (%value_in),__ieee754_scalbf,(%out_arg1,%out_arg2); ld.param.f32 %r58,[%value_in]; } mov.f32 %r53,%r58; .loc 1 52 4 ld.global.u32 %r59,[__fdlib_version]; setp.eq.u32 %r60,%r59,-1; @ %r60 bra $L1; .loc 1 53 7 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r58; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r62,[%value_in]; } .loc 1 53 4 setp.ne.u32 %r63,%r62,0; @ %r63 bra $L3; .loc 1 53 19 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r58; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r65,[%value_in]; } .loc 1 53 5 setp.eq.u32 %r66,%r65,0; @ %r66 bra $L3; .loc 1 53 30 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r54; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r68,[%value_in]; } .loc 1 53 28 setp.eq.u32 %r69,%r68,0; @ %r69 bra $L3; .loc 1 55 15 mov.u32 %r70,3; st.u32 [%frame],%r70; .loc 1 56 15 cvta.const.u64 %r71,$LC0; st.u64 [%frame+8],%r71; .loc 1 57 14 st.u32 [%frame+40],%r62; .loc 1 58 17 cvt.f64.f32 %r73,%r54; st.f64 [%frame+16],%r73; .loc 1 59 17 cvt.f64.f32 %r74,%r55; st.f64 [%frame+24],%r74; .loc 1 60 38 setp.gt.f32 %r75,%r54,0f00000000; selp.f64 %r52,0d7ff0000000000000,0dfff0000000000000,%r75; .loc 1 60 17 st.f64 [%frame+32],%r52; .loc 1 61 9 ld.global.u32 %r76,[__fdlib_version]; setp.ne.u32 %r77,%r76,2; @ %r77 bra $L5; .loc 1 62 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r78,[%value_in]; } .loc 1 62 15 mov.u32 %r79,34; st.u32 [%r78],%r79; bra $L6; $L5: .loc 1 63 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r81,[%value_in]; } .loc 1 63 14 setp.ne.u32 %r82,%r81,0; @ %r82 bra $L6; .loc 1 64 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r83,[%value_in]; } .loc 1 64 15 mov.u32 %r84,34; st.u32 [%r83],%r84; $L6: .loc 1 66 9 ld.u32 %r85,[%frame+40]; setp.eq.u32 %r86,%r85,0; @ %r86 bra $L7; .loc 1 67 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r87,[%value_in]; } .loc 1 67 20 ld.u32 %r34,[%frame+40]; .loc 1 67 15 st.u32 [%r87],%r34; $L7: .loc 1 68 23 ld.f64 %r88,[%frame+32]; cvt.rn.f32.f64 %r53,%r88; bra $L1; $L3: .loc 1 70 6 set.u32.eq.f32 %r90,%r58,0f00000000; neg.s32 %r91,%r90; .loc 1 70 21 set.u32.neu.f32 %r93,%r54,%r58; neg.s32 %r94,%r93; .loc 1 70 18 cvt.u16.u32 %r96,%r91; cvt.u16.u32 %r97,%r94; and.b16 %r95,%r96,%r97; .loc 1 70 4 cvt.u32.u16 %r98,%r95; cvt.u16.u8 %r99,%r98; setp.eq.u16 %r100,%r99,0; @ %r100 bra $L8; .loc 1 72 15 mov.u32 %r101,4; st.u32 [%frame],%r101; .loc 1 73 15 cvta.const.u64 %r102,$LC0; st.u64 [%frame+8],%r102; .loc 1 74 14 mov.u32 %r103,0; st.u32 [%frame+40],%r103; .loc 1 75 17 cvt.f64.f32 %r39,%r54; .loc 1 75 15 st.f64 [%frame+16],%r39; .loc 1 76 17 cvt.f64.f32 %r104,%r55; st.f64 [%frame+24],%r104; .loc 1 77 19 mov.f64 %r105,0d0000000000000000; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r105; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r39; call (%value_in),copysign,(%out_arg1,%out_arg2); ld.param.f64 %r107,[%value_in]; } .loc 1 77 17 st.f64 [%frame+32],%r107; .loc 1 78 9 ld.global.u32 %r108,[__fdlib_version]; setp.ne.u32 %r109,%r108,2; @ %r109 bra $L9; .loc 1 79 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r110,[%value_in]; } .loc 1 79 15 mov.u32 %r111,34; st.u32 [%r110],%r111; bra $L10; $L9: .loc 1 80 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r113,[%value_in]; } .loc 1 80 14 setp.ne.u32 %r114,%r113,0; @ %r114 bra $L10; .loc 1 81 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r115,[%value_in]; } .loc 1 81 15 mov.u32 %r116,34; st.u32 [%r115],%r116; $L10: .loc 1 83 9 ld.u32 %r117,[%frame+40]; setp.eq.u32 %r118,%r117,0; @ %r118 bra $L11; .loc 1 84 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r119,[%value_in]; } .loc 1 84 20 ld.u32 %r48,[%frame+40]; .loc 1 84 15 st.u32 [%r119],%r48; $L11: .loc 1 85 23 ld.f64 %r120,[%frame+32]; cvt.rn.f32.f64 %r53,%r120; bra $L1; $L8: .loc 1 88 6 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r55; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r122,[%value_in]; } .loc 1 88 4 setp.ne.u32 %r123,%r122,0; @ %r123 bra $L1; .loc 1 88 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r124,[%value_in]; } .loc 1 88 25 mov.u32 %r125,34; st.u32 [%r124],%r125; $L1: .loc 1 92 1 mov.f32 %value,%r53; st.shared.u64 [%sspslot],%sspprev; st.param.f32 [%value_out],%value; ret; } /1645 1591654536 399 399 100644 1270 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 15 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 15 9 st.f32 [%r25],%r28; .loc 1 16 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 16 9 st.f32 [%r26],%r30; .loc 1 17 1 ret; } lib_a-wf_sinh.o/1591654536 399 399 100644 4371 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // 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 DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[6] = {115,105,110,104,102,0 }; // 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 .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 .f64 %r25; .reg .u32 %r26; .reg .u32 %r32; .reg .f64 %r34; .reg .f64 %r35; .reg .f32 %r36; .reg .f32 %r37; .reg .f32 %r39; .reg .u32 %r40; .reg .pred %r41; .reg .u32 %r43; .reg .pred %r44; .reg .u32 %r46; .reg .pred %r47; .reg .u32 %r48; .reg .u64 %r49; .reg .pred %r51; .reg .pred %r52; .reg .pred %r53; .reg .pred %r54; .reg .u64 %r55; .reg .u32 %r56; .reg .u32 %r58; .reg .pred %r59; .reg .u64 %r60; .reg .u32 %r61; .reg .u32 %r62; .reg .pred %r63; .reg .u64 %r64; .reg .f64 %r65; mov.f32 %r37,%ar0; .loc 1 35 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r37; call (%value_in),__ieee754_sinhf,(%out_arg1); ld.param.f32 %r39,[%value_in]; } mov.f32 %r36,%r39; .loc 1 36 4 ld.global.u32 %r40,[__fdlib_version]; setp.eq.u32 %r41,%r40,-1; @ %r41 bra $L1; .loc 1 37 6 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r39; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r43,[%value_in]; } .loc 1 37 4 setp.ne.u32 %r44,%r43,0; @ %r44 bra $L1; .loc 1 37 18 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r37; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r46,[%value_in]; } .loc 1 37 16 setp.eq.u32 %r47,%r46,0; @ %r47 bra $L1; .loc 1 45 15 mov.u32 %r48,3; st.u32 [%frame],%r48; .loc 1 46 15 cvta.const.u64 %r49,$LC0; st.u64 [%frame+8],%r49; .loc 1 47 14 st.u32 [%frame+40],%r43; .loc 1 48 28 cvt.f64.f32 %r25,%r37; .loc 1 48 26 st.f64 [%frame+24],%r25; .loc 1 48 15 st.f64 [%frame+16],%r25; .loc 1 49 23 ld.global.u32 %r26,[__fdlib_version]; .loc 1 49 9 setp.ne.u32 %r51,%r26,0; @ %r51 bra $L3; .loc 1 50 39 setp.gt.f32 %r52,%r37,0f00000000; selp.f64 %r34,0d47efffffe0000000,0dc7efffffe0000000,%r52; .loc 1 50 20 st.f64 [%frame+32],%r34; bra $L5; $L3: .loc 1 52 43 setp.gt.f32 %r53,%r37,0f00000000; selp.f64 %r35,0d7ff0000000000000,0dfff0000000000000,%r53; .loc 1 52 20 st.f64 [%frame+32],%r35; .loc 1 53 9 setp.ne.u32 %r54,%r26,2; @ %r54 bra $L5; .loc 1 54 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r55,[%value_in]; } .loc 1 54 15 mov.u32 %r56,34; st.u32 [%r55],%r56; bra $L7; $L5: .loc 1 55 16 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r58,[%value_in]; } .loc 1 55 14 setp.ne.u32 %r59,%r58,0; @ %r59 bra $L7; .loc 1 56 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r60,[%value_in]; } .loc 1 56 15 mov.u32 %r61,34; st.u32 [%r60],%r61; $L7: .loc 1 58 9 ld.u32 %r62,[%frame+40]; setp.eq.u32 %r63,%r62,0; @ %r63 bra $L8; .loc 1 59 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r64,[%value_in]; } .loc 1 59 20 ld.u32 %r32,[%frame+40]; .loc 1 59 15 st.u32 [%r64],%r32; $L8: .loc 1 60 20 ld.f64 %r65,[%frame+32]; cvt.rn.f32.f64 %r36,%r65; $L1: .loc 1 64 1 mov.f32 %value,%r36; st.shared.u64 [%sspslot],%sspprev; st.param.f32 [%value_out],%value; ret; } lib_a-wf_sqrt.o/1591654536 399 399 100644 4151 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_sqrtf .extern .func (.param .f32 %value_out) __ieee754_sqrtf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __fpclassifyf .extern .func (.param .u32 %value_out) __fpclassifyf (.param .f32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: __errno .extern .func (.param .u64 %value_out) __errno; // BEGIN GLOBAL FUNCTION DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[6] = {115,113,114,116,102,0 }; // 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 .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 .f64 %r24; .reg .u32 %r25; .reg .u32 %r32; .reg .f32 %r34; .reg .f32 %r35; .reg .f32 %r37; .reg .u32 %r38; .reg .pred %r39; .reg .u32 %r41; .reg .pred %r42; .reg .pred %r43; .reg .u32 %r44; .reg .u64 %r45; .reg .u32 %r46; .reg .pred %r47; .reg .f64 %r48; .reg .f64 %r49; .reg .f64 %r50; .reg .pred %r51; .reg .u64 %r52; .reg .u32 %r53; .reg .u32 %r55; .reg .pred %r56; .reg .u64 %r57; .reg .u32 %r58; .reg .u32 %r59; .reg .pred %r60; .reg .u64 %r61; .reg .f64 %r62; mov.f32 %r35,%ar0; .loc 1 35 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r35; call (%value_in),__ieee754_sqrtf,(%out_arg1); ld.param.f32 %r37,[%value_in]; } mov.f32 %r34,%r37; .loc 1 36 4 ld.global.u32 %r38,[__fdlib_version]; setp.eq.u32 %r39,%r38,-1; @ %r39 bra $L1; .loc 1 36 31 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r35; call (%value_in),__fpclassifyf,(%out_arg1); ld.param.u32 %r41,[%value_in]; } .loc 1 36 28 setp.eq.u32 %r42,%r41,0; @ %r42 bra $L1; .loc 1 37 4 setp.lt.f32 %r43,%r35,0f00000000; @ ! %r43 bra $L1; .loc 1 39 22 mov.u32 %r44,1; st.u32 [%frame],%r44; .loc 1 40 22 cvta.const.u64 %r45,$LC0; st.u64 [%frame+8],%r45; .loc 1 41 14 mov.u32 %r46,0; st.u32 [%frame+40],%r46; .loc 1 42 28 cvt.f64.f32 %r24,%r35; .loc 1 42 26 st.f64 [%frame+24],%r24; .loc 1 42 15 st.f64 [%frame+16],%r24; .loc 1 43 30 ld.global.u32 %r25,[__fdlib_version]; .loc 1 43 16 setp.ne.u32 %r47,%r25,0; @ %r47 bra $L4; .loc 1 44 26 mov.f64 %r48,0d0000000000000000; st.f64 [%frame+32],%r48; bra $L5; $L4: .loc 1 46 31 mov.f64 %r50,0d0000000000000000; div.rn.f64 %r49,%r50,0d0000000000000000; .loc 1 46 26 st.f64 [%frame+32],%r49; .loc 1 47 16 setp.ne.u32 %r51,%r25,2; @ %r51 bra $L5; .loc 1 48 15 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r52,[%value_in]; } .loc 1 48 21 mov.u32 %r53,33; st.u32 [%r52],%r53; bra $L6; $L5: .loc 1 49 23 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r55,[%value_in]; } .loc 1 49 21 setp.ne.u32 %r56,%r55,0; @ %r56 bra $L6; .loc 1 50 15 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r57,[%value_in]; } .loc 1 50 21 mov.u32 %r58,33; st.u32 [%r57],%r58; $L6: .loc 1 52 16 ld.u32 %r59,[%frame+40]; setp.eq.u32 %r60,%r59,0; @ %r60 bra $L7; .loc 1 53 8 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r61,[%value_in]; } .loc 1 53 19 ld.u32 %r32,[%frame+40]; .loc 1 53 14 st.u32 [%r61],%r32; $L7: .loc 1 54 13 ld.f64 %r62,[%frame+32]; cvt.rn.f32.f64 %r34,%r62; $L1: .loc 1 58 1 mov.f32 %value,%r34; st.shared.u64 [%sspslot],%sspprev; st.param.f32 [%value_out],%value; ret; } /1664 1591654536 399 399 100644 3912 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_gammaf_r .extern .func (.param .f32 %value_out) __ieee754_gammaf_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: __kernel_standard .extern .func (.param .f64 %value_out) __kernel_standard (.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: 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 .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 %r29; .reg .f32 %r30; .reg .f32 %r31; .reg .f32 %r34; .reg .u32 %r35; .reg .pred %r36; .reg .u32 %r37; .reg .pred %r38; .reg .u32 %r40; .reg .pred %r41; .reg .u32 %r43; .reg .pred %r44; .reg .f32 %r46; .reg .pred %r47; .reg .pred %r48; .reg .u32 %r51; .reg .f64 %r52; .reg .u32 %r55; .reg .f64 %r56; mov.f32 %r31,%ar0; .loc 1 28 6 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; call (%value_in),__ieee754_gammaf_r,(%out_arg1,%out_arg2); ld.param.f32 %r34,[%value_in]; } mov.f32 %r30,%r34; .loc 1 29 5 ld.u32 %r35,[%frame]; setp.ge.s32 %r36,%r35,0; @ %r36 bra $L2; .loc 1 29 27 neg.f32 %r30,%r30; $L2: .loc 1 33 4 ld.global.u32 %r37,[__fdlib_version]; setp.eq.u32 %r38,%r37,-1; @ %r38 bra $L1; .loc 1 35 6 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r30; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r40,[%value_in]; } .loc 1 35 4 setp.ne.u32 %r41,%r40,0; @ %r41 bra $L1; .loc 1 35 18 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r31; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r43,[%value_in]; } .loc 1 35 16 setp.eq.u32 %r44,%r43,0; @ %r44 bra $L1; .loc 1 36 7 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r31; call (%value_in),floorf,(%out_arg1); ld.param.f32 %r46,[%value_in]; } .loc 1 36 6 setp.neu.f32 %r47,%r46,%r31; @ %r47 bra $L4; cvt.f64.f32 %r29,%r31; .loc 1 36 19 setp.le.f32 %r48,%r31,0f00000000; @ ! %r48 bra $L5; .loc 1 38 20 mov.u32 %r51,141; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r29; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r29; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r51; call (%value_in),__kernel_standard,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r52,[%value_in]; } .loc 1 38 13 cvt.rn.f32.f64 %r30,%r52; bra $L1; $L4: cvt.f64.f32 %r29,%r31; $L5: .loc 1 41 20 mov.u32 %r55,140; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r29; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r29; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r55; call (%value_in),__kernel_standard,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r56,[%value_in]; } .loc 1 41 13 cvt.rn.f32.f64 %r30,%r56; $L1: .loc 1 45 1 mov.f32 %value,%r30; st.shared.u64 [%sspslot],%sspprev; st.param.f32 [%value_out],%value; ret; } /1683 1591654536 399 399 100644 5540 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_gamma_r .extern .func (.param .f64 %value_out) __ieee754_gamma_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 DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[6] = {103,97,109,109,97,0 }; // 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 .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 %r35; .reg .u32 %r36; .reg .f64 %r37; .reg .f64 %r38; .reg .f64 %r39; .reg .u64 %r40; .reg .f64 %r43; .reg .u32 %r44; .reg .pred %r45; .reg .u32 %r47; .reg .pred %r48; .reg .u32 %r50; .reg .pred %r51; .reg .u64 %r52; .reg .u32 %r54; .reg .pred %r55; .reg .f64 %r57; .reg .pred %r58; .reg .pred %r59; .reg .u32 %r60; .reg .pred %r61; .reg .u64 %r62; .reg .u32 %r63; .reg .u32 %r65; .reg .pred %r66; .reg .u64 %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .pred %r70; .reg .u64 %r71; .reg .u32 %r72; .reg .u32 %r74; .reg .pred %r75; .reg .u64 %r76; .reg .u32 %r77; .reg .u32 %r78; .reg .pred %r79; .reg .u64 %r80; mov.f64 %r39,%ar0; mov.u64 %r40,%ar1; .loc 1 35 13 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r40; call (%value_in),__ieee754_gamma_r,(%out_arg1,%out_arg2); ld.param.f64 %r43,[%value_in]; } mov.f64 %r38,%r43; .loc 1 36 11 ld.global.u32 %r44,[__fdlib_version]; setp.eq.u32 %r45,%r44,-1; @ %r45 bra $L1; .loc 1 37 13 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r43; call (%value_in),finite,(%out_arg1); ld.param.u32 %r47,[%value_in]; } .loc 1 37 11 setp.ne.u32 %r48,%r47,0; @ %r48 bra $L1; .loc 1 37 24 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; call (%value_in),finite,(%out_arg1); ld.param.u32 %r50,[%value_in]; } .loc 1 37 22 setp.eq.u32 %r51,%r50,0; @ %r51 bra $L1; .loc 1 44 15 cvta.const.u64 %r52,$LC0; st.u64 [%frame+8],%r52; .loc 1 45 14 st.u32 [%frame+40],%r47; .loc 1 46 26 st.f64 [%frame+24],%r39; .loc 1 46 15 st.f64 [%frame+16],%r39; .loc 1 47 16 ld.global.u32 %r54,[__fdlib_version]; setp.eq.u32 %r55,%r54,0; .loc 1 50 28 selp.f64 %r37,0d47efffffe0000000,0d7ff0000000000000,%r55; st.f64 [%frame+32],%r37; .loc 1 51 16 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; call (%value_in),floor,(%out_arg1); ld.param.f64 %r57,[%value_in]; } .loc 1 51 15 setp.neu.f64 %r58,%r57,%r39; @ %r58 bra $L4; ld.global.u32 %r36,[__fdlib_version]; .loc 1 51 27 setp.le.f64 %r59,%r39,0d0000000000000000; @ ! %r59 bra $L5; .loc 1 53 12 mov.u32 %r60,2; st.u32 [%frame],%r60; .loc 1 54 6 setp.ne.u32 %r61,%r36,2; @ %r61 bra $L7; .loc 1 55 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r62,[%value_in]; } .loc 1 55 11 mov.u32 %r63,33; st.u32 [%r62],%r63; bra $L8; $L7: .loc 1 56 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r65,[%value_in]; } .loc 1 56 11 setp.eq.u32 %r66,%r65,0; @ ! %r66 bra $L8; .loc 1 57 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r67,[%value_in]; } .loc 1 57 11 mov.u32 %r68,33; st.u32 [%r67],%r68; bra $L8; $L4: ld.global.u32 %r36,[__fdlib_version]; $L5: .loc 1 61 12 mov.u32 %r69,3; st.u32 [%frame],%r69; .loc 1 62 20 setp.ne.u32 %r70,%r36,2; @ %r70 bra $L10; .loc 1 63 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r71,[%value_in]; } .loc 1 63 11 mov.u32 %r72,34; st.u32 [%r71],%r72; bra $L8; $L10: .loc 1 64 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r74,[%value_in]; } .loc 1 64 25 setp.ne.u32 %r75,%r74,0; @ %r75 bra $L8; .loc 1 65 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r76,[%value_in]; } .loc 1 65 25 mov.u32 %r77,34; st.u32 [%r76],%r77; $L8: .loc 1 68 9 ld.u32 %r78,[%frame+40]; setp.eq.u32 %r79,%r78,0; @ %r79 bra $L12; .loc 1 69 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r80,[%value_in]; } .loc 1 69 20 ld.u32 %r35,[%frame+40]; .loc 1 69 15 st.u32 [%r80],%r35; $L12: .loc 1 70 16 ld.f64 %r38,[%frame+32]; $L1: .loc 1 74 1 mov.f64 %value,%r38; st.shared.u64 [%sspslot],%sspprev; st.param.f64 [%value_out],%value; ret; } /1701 1591654536 399 399 100644 5550 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[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: 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: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[7] = {108,103,97,109,109,97,0 }; // 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 .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 %r35; .reg .u32 %r36; .reg .f64 %r37; .reg .f64 %r38; .reg .f64 %r39; .reg .u64 %r40; .reg .f64 %r43; .reg .u32 %r44; .reg .pred %r45; .reg .u32 %r47; .reg .pred %r48; .reg .u32 %r50; .reg .pred %r51; .reg .u64 %r52; .reg .u32 %r54; .reg .pred %r55; .reg .f64 %r57; .reg .pred %r58; .reg .pred %r59; .reg .u32 %r60; .reg .pred %r61; .reg .u64 %r62; .reg .u32 %r63; .reg .u32 %r65; .reg .pred %r66; .reg .u64 %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .pred %r70; .reg .u64 %r71; .reg .u32 %r72; .reg .u32 %r74; .reg .pred %r75; .reg .u64 %r76; .reg .u32 %r77; .reg .u32 %r78; .reg .pred %r79; .reg .u64 %r80; mov.f64 %r39,%ar0; mov.u64 %r40,%ar1; .loc 1 35 13 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r40; call (%value_in),__ieee754_lgamma_r,(%out_arg1,%out_arg2); ld.param.f64 %r43,[%value_in]; } mov.f64 %r38,%r43; .loc 1 36 11 ld.global.u32 %r44,[__fdlib_version]; setp.eq.u32 %r45,%r44,-1; @ %r45 bra $L1; .loc 1 37 13 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r43; call (%value_in),finite,(%out_arg1); ld.param.u32 %r47,[%value_in]; } .loc 1 37 11 setp.ne.u32 %r48,%r47,0; @ %r48 bra $L1; .loc 1 37 24 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; call (%value_in),finite,(%out_arg1); ld.param.u32 %r50,[%value_in]; } .loc 1 37 22 setp.eq.u32 %r51,%r50,0; @ %r51 bra $L1; .loc 1 44 15 cvta.const.u64 %r52,$LC0; st.u64 [%frame+8],%r52; .loc 1 45 14 st.u32 [%frame+40],%r47; .loc 1 46 26 st.f64 [%frame+24],%r39; .loc 1 46 15 st.f64 [%frame+16],%r39; .loc 1 47 16 ld.global.u32 %r54,[__fdlib_version]; setp.eq.u32 %r55,%r54,0; .loc 1 50 27 selp.f64 %r37,0d47efffffe0000000,0d7ff0000000000000,%r55; st.f64 [%frame+32],%r37; .loc 1 51 9 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r39; call (%value_in),floor,(%out_arg1); ld.param.f64 %r57,[%value_in]; } .loc 1 51 8 setp.neu.f64 %r58,%r57,%r39; @ %r58 bra $L4; ld.global.u32 %r36,[__fdlib_version]; .loc 1 51 20 setp.le.f64 %r59,%r39,0d0000000000000000; @ ! %r59 bra $L5; .loc 1 53 12 mov.u32 %r60,2; st.u32 [%frame],%r60; .loc 1 54 6 setp.ne.u32 %r61,%r36,2; @ %r61 bra $L7; .loc 1 55 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r62,[%value_in]; } .loc 1 55 12 mov.u32 %r63,33; st.u32 [%r62],%r63; bra $L8; $L7: .loc 1 56 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r65,[%value_in]; } .loc 1 56 11 setp.eq.u32 %r66,%r65,0; @ ! %r66 bra $L8; .loc 1 57 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r67,[%value_in]; } .loc 1 57 12 mov.u32 %r68,33; st.u32 [%r67],%r68; bra $L8; $L4: ld.global.u32 %r36,[__fdlib_version]; $L5: .loc 1 62 12 mov.u32 %r69,3; st.u32 [%frame],%r69; .loc 1 63 20 setp.ne.u32 %r70,%r36,2; @ %r70 bra $L10; .loc 1 64 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r71,[%value_in]; } .loc 1 64 12 mov.u32 %r72,34; st.u32 [%r71],%r72; bra $L8; $L10: .loc 1 65 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r74,[%value_in]; } .loc 1 65 25 setp.ne.u32 %r75,%r74,0; @ %r75 bra $L8; .loc 1 66 20 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r76,[%value_in]; } .loc 1 66 26 mov.u32 %r77,34; st.u32 [%r76],%r77; $L8: .loc 1 69 9 ld.u32 %r78,[%frame+40]; setp.eq.u32 %r79,%r78,0; @ %r79 bra $L12; .loc 1 70 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r80,[%value_in]; } .loc 1 70 20 ld.u32 %r35,[%frame+40]; .loc 1 70 15 st.u32 [%r80],%r35; $L12: .loc 1 71 23 ld.f64 %r38,[%frame+32]; $L1: .loc 1 75 1 mov.f64 %value,%r38; st.shared.u64 [%sspslot],%sspprev; st.param.f64 [%value_out],%value; ret; } /1720 1591654536 399 399 100644 5645 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[1]; // BEGIN GLOBAL FUNCTION DECL: __ieee754_gammaf_r .extern .func (.param .f32 %value_out) __ieee754_gammaf_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 DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[7] = {103,97,109,109,97,102,0 }; // 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 .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 .f64 %r25; .reg .u32 %r36; .reg .f64 %r38; .reg .u32 %r39; .reg .f32 %r40; .reg .f32 %r41; .reg .u64 %r42; .reg .f32 %r45; .reg .u32 %r46; .reg .pred %r47; .reg .u32 %r49; .reg .pred %r50; .reg .u32 %r52; .reg .pred %r53; .reg .u64 %r54; .reg .u32 %r56; .reg .pred %r57; .reg .f32 %r59; .reg .pred %r60; .reg .pred %r61; .reg .u32 %r62; .reg .pred %r63; .reg .u64 %r64; .reg .u32 %r65; .reg .u32 %r67; .reg .pred %r68; .reg .u64 %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .pred %r72; .reg .u64 %r73; .reg .u32 %r74; .reg .u32 %r76; .reg .pred %r77; .reg .u64 %r78; .reg .u32 %r79; .reg .u32 %r80; .reg .pred %r81; .reg .u64 %r82; .reg .f64 %r83; mov.f32 %r41,%ar0; mov.u64 %r42,%ar1; .loc 1 35 13 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r41; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r42; call (%value_in),__ieee754_gammaf_r,(%out_arg1,%out_arg2); ld.param.f32 %r45,[%value_in]; } mov.f32 %r40,%r45; .loc 1 36 11 ld.global.u32 %r46,[__fdlib_version]; setp.eq.u32 %r47,%r46,-1; @ %r47 bra $L1; .loc 1 37 13 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r45; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r49,[%value_in]; } .loc 1 37 11 setp.ne.u32 %r50,%r49,0; @ %r50 bra $L1; .loc 1 37 25 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r41; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r52,[%value_in]; } .loc 1 37 23 setp.eq.u32 %r53,%r52,0; @ %r53 bra $L1; .loc 1 44 15 cvta.const.u64 %r54,$LC0; st.u64 [%frame+8],%r54; .loc 1 45 14 st.u32 [%frame+40],%r49; .loc 1 46 28 cvt.f64.f32 %r25,%r41; .loc 1 46 26 st.f64 [%frame+24],%r25; .loc 1 46 15 st.f64 [%frame+16],%r25; .loc 1 47 16 ld.global.u32 %r56,[__fdlib_version]; setp.eq.u32 %r57,%r56,0; .loc 1 50 28 selp.f64 %r38,0d47efffffe0000000,0d7ff0000000000000,%r57; st.f64 [%frame+32],%r38; .loc 1 51 16 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r41; call (%value_in),floorf,(%out_arg1); ld.param.f32 %r59,[%value_in]; } .loc 1 51 15 setp.neu.f32 %r60,%r59,%r41; @ %r60 bra $L4; ld.global.u32 %r39,[__fdlib_version]; .loc 1 51 28 setp.le.f32 %r61,%r41,0f00000000; @ ! %r61 bra $L5; .loc 1 53 12 mov.u32 %r62,2; st.u32 [%frame],%r62; .loc 1 54 6 setp.ne.u32 %r63,%r39,2; @ %r63 bra $L7; .loc 1 55 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r64,[%value_in]; } .loc 1 55 11 mov.u32 %r65,33; st.u32 [%r64],%r65; bra $L8; $L7: .loc 1 56 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r67,[%value_in]; } .loc 1 56 11 setp.eq.u32 %r68,%r67,0; @ ! %r68 bra $L8; .loc 1 57 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r69,[%value_in]; } .loc 1 57 11 mov.u32 %r70,33; st.u32 [%r69],%r70; bra $L8; $L4: ld.global.u32 %r39,[__fdlib_version]; $L5: .loc 1 61 12 mov.u32 %r71,3; st.u32 [%frame],%r71; .loc 1 62 20 setp.ne.u32 %r72,%r39,2; @ %r72 bra $L10; .loc 1 63 5 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r73,[%value_in]; } .loc 1 63 11 mov.u32 %r74,34; st.u32 [%r73],%r74; bra $L8; $L10: .loc 1 64 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r76,[%value_in]; } .loc 1 64 25 setp.ne.u32 %r77,%r76,0; @ %r77 bra $L8; .loc 1 65 19 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r78,[%value_in]; } .loc 1 65 25 mov.u32 %r79,34; st.u32 [%r78],%r79; $L8: .loc 1 68 9 ld.u32 %r80,[%frame+40]; setp.eq.u32 %r81,%r80,0; @ %r81 bra $L12; .loc 1 69 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r82,[%value_in]; } .loc 1 69 20 ld.u32 %r36,[%frame+40]; .loc 1 69 15 st.u32 [%r82],%r36; $L12: .loc 1 70 13 ld.f64 %r83,[%frame+32]; cvt.rn.f32.f64 %r40,%r83; $L1: .loc 1 74 1 mov.f32 %value,%r40; st.shared.u64 [%sspslot],%sspprev; st.param.f32 [%value_out],%value; ret; } /1739 1591654536 399 399 100644 5655 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // 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 VAR DECL: __fdlib_version .extern .global .align 4 .u32 __fdlib_version[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: 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 DECL: matherr .extern .func (.param .u32 %value_out) matherr (.param .u64 %in_ar0); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[8] = {108,103,97,109,109,97,102,0 }; // 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 .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 .f64 %r25; .reg .u32 %r36; .reg .f64 %r38; .reg .u32 %r39; .reg .f32 %r40; .reg .f32 %r41; .reg .u64 %r42; .reg .f32 %r45; .reg .u32 %r46; .reg .pred %r47; .reg .u32 %r49; .reg .pred %r50; .reg .u32 %r52; .reg .pred %r53; .reg .u64 %r54; .reg .u32 %r56; .reg .pred %r57; .reg .f32 %r59; .reg .pred %r60; .reg .pred %r61; .reg .u32 %r62; .reg .pred %r63; .reg .u64 %r64; .reg .u32 %r65; .reg .u32 %r67; .reg .pred %r68; .reg .u64 %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .pred %r72; .reg .u64 %r73; .reg .u32 %r74; .reg .u32 %r76; .reg .pred %r77; .reg .u64 %r78; .reg .u32 %r79; .reg .u32 %r80; .reg .pred %r81; .reg .u64 %r82; .reg .f64 %r83; mov.f32 %r41,%ar0; mov.u64 %r42,%ar1; .loc 1 35 13 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r41; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r42; call (%value_in),__ieee754_lgammaf_r,(%out_arg1,%out_arg2); ld.param.f32 %r45,[%value_in]; } mov.f32 %r40,%r45; .loc 1 36 11 ld.global.u32 %r46,[__fdlib_version]; setp.eq.u32 %r47,%r46,-1; @ %r47 bra $L1; .loc 1 37 13 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r45; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r49,[%value_in]; } .loc 1 37 11 setp.ne.u32 %r50,%r49,0; @ %r50 bra $L1; .loc 1 37 25 { .param .u32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r41; call (%value_in),finitef,(%out_arg1); ld.param.u32 %r52,[%value_in]; } .loc 1 37 23 setp.eq.u32 %r53,%r52,0; @ %r53 bra $L1; .loc 1 44 15 cvta.const.u64 %r54,$LC0; st.u64 [%frame+8],%r54; .loc 1 45 14 st.u32 [%frame+40],%r49; .loc 1 46 28 cvt.f64.f32 %r25,%r41; .loc 1 46 26 st.f64 [%frame+24],%r25; .loc 1 46 15 st.f64 [%frame+16],%r25; .loc 1 47 16 ld.global.u32 %r56,[__fdlib_version]; setp.eq.u32 %r57,%r56,0; .loc 1 50 27 selp.f64 %r38,0d47efffffe0000000,0d7ff0000000000000,%r57; st.f64 [%frame+32],%r38; .loc 1 51 9 { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r41; call (%value_in),floorf,(%out_arg1); ld.param.f32 %r59,[%value_in]; } .loc 1 51 8 setp.neu.f32 %r60,%r59,%r41; @ %r60 bra $L4; ld.global.u32 %r39,[__fdlib_version]; .loc 1 51 21 setp.le.f32 %r61,%r41,0f00000000; @ ! %r61 bra $L5; .loc 1 53 12 mov.u32 %r62,2; st.u32 [%frame],%r62; .loc 1 54 6 setp.ne.u32 %r63,%r39,2; @ %r63 bra $L7; .loc 1 55 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r64,[%value_in]; } .loc 1 55 12 mov.u32 %r65,33; st.u32 [%r64],%r65; bra $L8; $L7: .loc 1 56 13 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r67,[%value_in]; } .loc 1 56 11 setp.eq.u32 %r68,%r67,0; @ ! %r68 bra $L8; .loc 1 57 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r69,[%value_in]; } .loc 1 57 12 mov.u32 %r70,33; st.u32 [%r69],%r70; bra $L8; $L4: ld.global.u32 %r39,[__fdlib_version]; $L5: .loc 1 62 12 mov.u32 %r71,3; st.u32 [%frame],%r71; .loc 1 63 20 setp.ne.u32 %r72,%r39,2; @ %r72 bra $L10; .loc 1 64 6 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r73,[%value_in]; } .loc 1 64 12 mov.u32 %r74,34; st.u32 [%r73],%r74; bra $L8; $L10: .loc 1 65 27 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),matherr,(%out_arg1); ld.param.u32 %r76,[%value_in]; } .loc 1 65 25 setp.ne.u32 %r77,%r76,0; @ %r77 bra $L8; .loc 1 66 20 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r78,[%value_in]; } .loc 1 66 26 mov.u32 %r79,34; st.u32 [%r78],%r79; $L8: .loc 1 69 9 ld.u32 %r80,[%frame+40]; setp.eq.u32 %r81,%r80,0; @ %r81 bra $L12; .loc 1 70 9 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r82,[%value_in]; } .loc 1 70 20 ld.u32 %r36,[%frame+40]; .loc 1 70 15 st.u32 [%r82],%r36; $L12: .loc 1 71 20 ld.f64 %r83,[%frame+32]; cvt.rn.f32.f64 %r40,%r83; $L1: .loc 1 75 1 mov.f32 %value,%r40; st.shared.u64 [%sspslot],%sspprev; st.param.f32 [%value_out],%value; ret; } 0707010000006d000081a40000000000000000000000025edeb89900000000000000000000000000000000000000000000001c00000000./usr/nvptx-none/lib/libc.a0707010000006d000081a40000000000000000000000025edeb89900117184000000000000000000000000000000000000001c00000000./usr/nvptx-none/lib/libg.a! // 958 ` lib_a-dtoastub.o/ lib_a-fix_grouping.o/ lib_a-gdtoa-gethex.o/ lib_a-gdtoa-hexnan.o/ lib_a-isxdigit.o/ lib_a-lmessages.o/ lib_a-lmonetary.o/ lib_a-lnumeric.o/ lib_a-nl_langinfo.o/ lib_a-rawmemchr.o/ lib_a-reallocr.o/ lib_a-s_copysign.o/ lib_a-s_finite.o/ lib_a-s_fpclassify.o/ lib_a-s_infconst.o/ lib_a-s_isinfd.o/ lib_a-s_isnand.o/ lib_a-s_scalbn.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-snprintf.o/ lib_a-strcasecmp.o/ lib_a-strcasestr.o/ lib_a-strchrnul.o/ lib_a-strdup_r.o/ lib_a-strerror.o/ lib_a-strerror_r.o/ lib_a-strncasecmp.o/ lib_a-strndup_r.o/ lib_a-strsignal.o/ lib_a-strtok_r.o/ lib_a-strtoll_r.o/ lib_a-strtoull.o/ lib_a-strtoull_r.o/ lib_a-svfiprintf.o/ lib_a-svfprintf.o/ lib_a-timelocal.o/ lib_a-u_strerr.o/ lib_a-vfprintf.o/ lib_a-vsnprintf.o/ lib_a-vsprintf.o/ lib_a-a64l.o/ 1591654539 399 399 100644 2716 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: a64l .visible .func (.param .u64 %value_out) a64l (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/stdlib/a64l.c" // BEGIN GLOBAL FUNCTION DEF: a64l .visible .func (.param .u64 %value_out) a64l (.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; .reg .u32 %r31; .reg .u64 %r35; .reg .u32 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .pred %r39; .reg .u16 %r40; .reg .u32 %r41; .reg .pred %r42; .reg .pred %r43; .reg .pred %r44; .reg .u16 %r45; .reg .pred %r46; .reg .pred %r48; .reg .pred %r50; .reg .pred %r52; .reg .pred %r54; .reg .u16 %r56; .reg .u16 %r58; .reg .u32 %r59; .reg .pred %r60; .reg .u32 %r61; .reg .u32 %r62; .reg .u32 %r63; .reg .pred %r64; .reg .u64 %r65; .reg .pred %r66; .reg .u64 %r68; .reg .u64 %r69; mov.u64 %r38,%ar0; .loc 1 75 6 setp.eq.u64 %r39,%r38,0; @ %r39 bra $L13; mov.u64 %r27,%r38; mov.u32 %r36,6; $L4: .loc 1 84 10 ld.s8 %r41,[%r27]; cvt.u16.u32 %r40,%r41; setp.eq.u16 %r42,%r40,0; @ %r42 bra $L3; .loc 1 85 2 add.u64 %r27,%r27,1; $L3: add.u32 %r36,%r36,-1; .loc 1 82 3 setp.ne.u32 %r43,%r36,0; @ %r43 bra $L4; .loc 1 88 9 setp.le.u64 %r44,%r27,%r38; @ %r44 bra $L14; .loc 1 73 17 mov.u64 %r28,0; .loc 1 104 7 mov.u64 %r68,%r28; mov.u64 %r69,1; $L11: .loc 1 90 10 add.u64 %r27,%r27,-1; ld.s8 %r31,[%r27]; cvt.u16.u32 %r45,%r31; setp.gt.s16 %r46,%r45,90; @ %r46 bra $L6; setp.ge.s16 %r48,%r45,65; @ %r48 bra $L7; setp.eq.u16 %r50,%r45,47; @ %r50 bra $L15; setp.lt.s16 %r52,%r45,47; @ %r52 bra $L16; setp.gt.s16 %r54,%r45,57; @ ! %r54 bra $L24; bra $L17; $L6: add.u16 %r56,%r45,-97; cvt.u32.u16 %r59,%r56; cvt.u16.u8 %r58,%r59; setp.gt.u16 %r60,%r58,25; @ ! %r60 bra $L25; bra $L18; $L24: .loc 1 119 10 add.u32 %r61,%r31,-46; cvt.s64.s32 %r35,%r61; .loc 1 120 4 bra $L8; $L7: .loc 1 147 10 add.u32 %r62,%r31,-53; cvt.s64.s32 %r35,%r62; .loc 1 148 4 bra $L8; $L25: .loc 1 175 10 add.u32 %r63,%r31,-59; cvt.s64.s32 %r35,%r63; .loc 1 176 4 bra $L8; $L15: .loc 1 104 7 mov.u64 %r35,%r69; bra $L8; $L16: mov.u64 %r35,%r68; bra $L8; $L17: mov.u64 %r35,%r68; bra $L8; $L18: mov.u64 %r35,%r68; $L8: .loc 1 183 24 shl.b64 %r24,%r28,6; .loc 1 183 14 add.u64 %r28,%r24,%r35; .loc 1 88 9 setp.ne.u64 %r64,%r38,%r27; @ %r64 bra $L11; .loc 1 188 14 and.b64 %r65,%r28,2147483648; .loc 1 188 6 setp.ne.u64 %r66,%r65,0; @ %r66 bra $L12; mov.u64 %r37,%r28; bra $L1; $L12: .loc 1 189 39 add.u64 %r37,%r28,-4294967296; bra $L1; $L14: .loc 1 88 9 mov.u64 %r37,0; .loc 1 192 10 bra $L1; $L13: .loc 1 76 12 mov.u64 %r37,%r38; $L1: .loc 1 193 1 mov.u64 %value,%r37; st.param.u64 [%value_out],%value; ret; } lib_a-abort.o/ 1591654539 399 399 100644 375 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 { $L2: .loc 1 24 5 // #APP // 24 "../../../../../../newlib/libc/machine/nvptx/abort.c" 1 exit; // #NO_APP bra $L2; } lib_a-abs.o/ 1591654539 399 399 100644 517 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 42 23 abs.s32 %value,%r23; .loc 1 43 1 st.param.u32 [%value_out],%value; ret; } lib_a-assert.o/ 1591654539 399 399 100644 1222 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/stdlib/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 65 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 65 3 { call abort; trap; // (noreturn) exit; // (noreturn) } } lib_a-atof.o/ 1591654539 399 399 100644 911 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 71 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 72 1 mov.f64 %value,%r26; st.param.f64 [%value_out],%value; ret; } lib_a-atoff.o/ 1591654539 399 399 100644 914 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 8 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 9 1 mov.f32 %value,%r26; st.param.f32 [%value_out],%value; ret; } lib_a-atoi.o/ 1591654539 399 399 100644 2165 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 70 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 71 1 cvt.u32.u64 %value,%r28; 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 79 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 80 1 cvt.u32.u64 %value,%r30; st.param.u32 [%value_out],%value; ret; } lib_a-atol.o/ 1591654539 399 399 100644 2157 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654539 399 399 100644 2170 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 84 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 85 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 93 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 94 1 mov.u64 %value,%r29; st.param.u64 [%value_out],%value; ret; } lib_a-bcmp.o/ 1591654539 399 399 100644 1208 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: bcmp .visible .func (.param .u32 %value_out) bcmp (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/string/bcmp.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 DEF: bcmp .visible .func (.param .u32 %value_out) 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 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r29; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; .loc 1 48 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; call (%value_in),memcmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r29,[%value_in]; } .loc 1 49 1 mov.u32 %value,%r29; st.param.u32 [%value_out],%value; ret; } lib_a-bcopy.o/ 1591654539 399 399 100644 1092 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 38 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 39 1 ret; } lib_a-btowc.o/ 1591654539 399 399 100644 2692 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: btowc .visible .func (.param .u32 %value_out) btowc (.param .u32 %in_ar0); .file 1 "../../../../../newlib/libc/stdlib/btowc.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL VAR DECL: __mbtowc .extern .global .align 8 .u64 __mbtowc[1]; // 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: __locale_charset .extern .func (.param .u64 %value_out) __locale_charset; // BEGIN GLOBAL FUNCTION DEF: btowc .visible .func (.param .u32 %value_out) btowc (.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 .u64 %r23; .reg .u32 %r29; .reg .u32 %r30; .reg .pred %r31; .reg .u32 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r40; .reg .u64 %r43; .reg .u64 %r44; .reg .u64 %r45; .reg .u32 %r46; .reg .pred %r47; mov.u32 %r30,%ar0; .loc 1 16 6 setp.ne.u32 %r31,%r30,-1; @ %r31 bra $L2; $L4: .loc 1 17 12 mov.u32 %r29,-1; bra $L1; $L2: .loc 1 19 7 st.u8 [%frame+12],%r30; .loc 1 22 3 mov.u64 %r34,8; mov.u32 %r33,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r33; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r34; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r35,[%value_in]; } .loc 1 26 12 ld.global.u64 %r23,[__mbtowc]; .loc 1 27 8 { .param .u64 %value_in; call (%value_in),__locale_charset; ld.param.u64 %r36,[%value_in]; } .loc 1 26 12 add.u64 %r43,%frame,12; add.u64 %r44,%frame,8; ld.global.u64 %r45,[_impure_ptr]; mov.u64 %r40,1; { .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 %in_ar5); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r45; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r44; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r43; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r40; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r36; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%frame; call (%value_in),%r23,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6),$LCT0; ld.param.u32 %r46,[%value_in]; } .loc 1 29 6 setp.gt.u32 %r47,%r46,1; @ %r47 bra $L4; .loc 1 32 10 ld.u32 %r29,[%frame+8]; $L1: .loc 1 33 1 mov.u32 %value,%r29; st.param.u32 [%value_out],%value; ret; } lib_a-bzero.o/ 1591654539 399 399 100644 826 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 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 .u64 %r25; .reg .u64 %r26; .reg .pred %r27; .reg .u32 %r28; .reg .pred %r29; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; .loc 1 41 9 setp.eq.u64 %r27,%r26,0; @ %r27 bra $L1; mov.u64 %r22,%r25; add.u64 %r23,%r22,%r26; .loc 1 42 12 mov.u32 %r28,0; $L3: st.u8 [%r22],%r28; add.u64 %r22,%r22,1; .loc 1 41 9 setp.ne.u64 %r29,%r22,%r23; @ %r29 bra $L3; $L1: .loc 1 43 1 ret; } lib_a-calloc.o/ 1591654539 399 399 100644 1619 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r29; .reg .u32 %r31; .reg .u64 %r33; 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 %r29,%r23,0; @ %r29 bra $L1; .loc 1 25 10 mov.u32 %r31,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r31; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r33,[%value_in]; } mov.u64 %r23,%r33; $L1: .loc 1 26 1 mov.u64 %value,%r23; st.param.u64 [%value_out],%value; ret; } lib_a-callocr.o/1591654539 399 399 100644 1121 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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-ctype_.o/ 1591654539 399 399 100644 1783 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // BEGIN VAR DEF: _ctype_b .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 }; // BEGIN GLOBAL VAR DEF: __ctype_ptr__ .visible .global .align 8 .u64 __ctype_ptr__[1] = {generic(_ctype_b) + 127 }; lib_a-div.o/ 1591654539 399 399 100644 1164 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 95 15 div.s32 %r22,%r25,%r26; .loc 1 96 14 rem.s32 %r23,%r25,%r26; .loc 1 123 5 setp.lt.s32 %r27,%r25,0; @ %r27 bra $L2; .loc 1 123 15 setp.ge.s32 %r28,%r23,0; @ %r28 bra $L3; .loc 1 124 3 add.u32 %r22,%r22,1; .loc 1 125 9 sub.u32 %r23,%r23,%r26; bra $L3; $L2: .loc 1 127 19 setp.le.s32 %r29,%r23,0; @ %r29 bra $L3; .loc 1 128 3 add.u32 %r22,%r22,-1; .loc 1 129 9 add.u32 %r23,%r23,%r26; $L3: .loc 1 131 9 st.u32 [%r24],%r22; st.u32 [%r24+4],%r23; .loc 1 132 1 ret; } lib_a-drand48.o/1591654539 399 399 100644 1683 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 21 24 add.u64 %r27,%r24,240; .loc 1 21 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 22 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 28 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 21 24 add.u64 %r27,%r22,240; .loc 1 21 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 29 1 mov.f64 %value,%r28; st.param.f64 [%value_out],%value; ret; } lib_a-dtoa.o/ 1591654539 399 399 100644 61357 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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[5]; // BEGIN GLOBAL VAR DECL: __mprec_tens .extern .const .align 8 .u64 __mprec_tens[25]; // 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: __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: $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 %r24; .reg .u32 %r25; .reg .u32 %r27; .reg .u32 %r33; .reg .u32 %r52; .reg .u32 %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .u32 %r72; .reg .u32 %r74; .reg .u64 %r76; .reg .u64 %r78; .reg .u32 %r79; .reg .u32 %r80; .reg .u32 %r81; .reg .u32 %r82; .reg .u32 %r84; .reg .u64 %r85; .reg .u32 %r86; .reg .u32 %r87; .reg .u32 %r89; .reg .u64 %r90; .reg .u64 %r91; .reg .u32 %r92; .reg .u64 %r99; .reg .u64 %r101; .reg .u64 %r106; .reg .u64 %r108; .reg .u32 %r109; .reg .u64 %r110; .reg .u64 %r111; .reg .u32 %r112; .reg .pred %r113; .reg .u64 %r114; .reg .u32 %r116; .reg .pred %r117; .reg .u32 %r118; .reg .u32 %r120; .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 .pred %r133; .reg .u32 %r134; .reg .pred %r135; .reg .pred %r136; .reg .u32 %r137; .reg .pred %r138; .reg .pred %r139; .reg .u32 %r140; .reg .pred %r141; .reg .u32 %r144; .reg .pred %r145; .reg .u32 %r146; .reg .u32 %r147; .reg .u32 %r148; .reg .u32 %r149; .reg .u32 %r150; .reg .u32 %r151; .reg .u32 %r152; .reg .u32 %r153; .reg .u32 %r154; .reg .u32 %r155; .reg .pred %r156; .reg .u64 %r157; .reg .u64 %r158; .reg .u32 %r159; .reg .pred %r160; .reg .pred %r161; .reg .u32 %r162; .reg .pred %r163; .reg .pred %r164; .reg .u32 %r165; .reg .pred %r166; .reg .u64 %r168; .reg .u64 %r169; mov.u64 %r110,%ar0; mov.u64 %r111,%ar1; .loc 1 49 5 ld.u32 %r74,[%r111+20]; .loc 1 54 6 ld.u32 %r112,[%r110+20]; setp.lt.s32 %r113,%r112,%r74; @ %r113 bra $L11; .loc 1 57 7 add.u32 %r92,%r74,-1; .loc 1 57 14 cvt.s64.s32 %r114,%r92; .loc 1 57 12 shl.b64 %r24,%r114,2; .loc 1 56 6 add.u64 %r169,%r111,24; .loc 1 57 7 add.u64 %r76,%r169,%r24; .loc 1 58 6 add.u64 %r168,%r110,24; .loc 1 59 7 add.u64 %r78,%r168,%r24; .loc 1 60 7 ld.u32 %r25,[%r78]; .loc 1 60 20 ld.u32 %r116,[%r76]; add.u32 %r27,%r116,1; .loc 1 60 5 div.u32 %r72,%r25,%r27; .loc 1 65 6 setp.lt.u32 %r117,%r25,%r27; @ %r117 bra $L3; mov.u64 %r101,%r168; mov.u64 %r99,%r169; .loc 1 68 13 mov.u32 %r71,0; .loc 1 67 14 mov.u32 %r69,%r71; $L4: .loc 1 72 7 ld.u32 %r79,[%r99]; .loc 1 73 13 and.b32 %r118,%r79,65535; .loc 1 73 7 mad.lo.u32 %r80,%r118,%r72,%r71; .loc 1 74 13 shr.u32 %r120,%r79,16; .loc 1 74 30 shr.u32 %r122,%r80,16; .loc 1 74 7 mad.lo.u32 %r81,%r120,%r72,%r122; .loc 1 75 10 shr.u32 %r71,%r81,16; .loc 1 76 9 ld.u32 %r33,[%r101]; .loc 1 76 13 and.b32 %r123,%r33,65535; .loc 1 76 39 add.u32 %r124,%r123,%r69; .loc 1 76 29 and.b32 %r125,%r80,65535; .loc 1 76 39 sub.u32 %r82,%r124,%r125; .loc 1 79 13 shr.u32 %r126,%r33,16; .loc 1 79 26 and.b32 %r127,%r81,65535; .loc 1 79 20 sub.u32 %r128,%r126,%r127; .loc 1 77 11 shr.s32 %r129,%r82,16; .loc 1 79 36 add.u32 %r84,%r128,%r129; .loc 1 80 11 shr.s32 %r69,%r84,16; .loc 1 82 4 shl.b32 %r130,%r84,16; and.b32 %r131,%r82,65535; or.b32 %r132,%r130,%r131; st.u32 [%r101],%r132; add.u64 %r101,%r101,4; add.u64 %r99,%r99,4; .loc 1 92 7 setp.ge.u64 %r133,%r76,%r99; @ %r133 bra $L4; .loc 1 93 10 ld.u32 %r134,[%r78]; setp.ne.u32 %r135,%r134,0; @ %r135 bra $L3; .loc 1 96 10 add.u64 %r85,%r78,-4; setp.le.u64 %r136,%r85,%r168; @ %r136 bra $L5; .loc 1 96 22 ld.u32 %r137,[%r78+-4]; setp.ne.u32 %r138,%r137,0; @ %r138 bra $L5; $L6: .loc 1 97 6 add.u32 %r92,%r92,-1; .loc 1 96 10 add.u64 %r85,%r85,-4; setp.le.u64 %r139,%r85,%r168; @ %r139 bra $L5; .loc 1 96 22 ld.u32 %r140,[%r85]; setp.eq.u32 %r141,%r140,0; @ %r141 bra $L6; $L5: .loc 1 98 12 st.u32 [%r110+20],%r92; $L3: .loc 1 101 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r110; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r111; call (%value_in),__mcmp,(%out_arg1,%out_arg2); ld.param.u32 %r144,[%value_in]; } .loc 1 101 6 setp.lt.s32 %r145,%r144,0; @ %r145 bra $L7; .loc 1 103 8 add.u32 %r72,%r72,1; mov.u64 %r108,%r168; mov.u64 %r106,%r169; .loc 1 104 14 mov.u32 %r70,0; $L8: .loc 1 111 7 ld.u32 %r86,[%r106]; .loc 1 115 9 ld.u32 %r52,[%r108]; .loc 1 115 13 and.b32 %r146,%r52,65535; .loc 1 115 39 add.u32 %r147,%r146,%r70; .loc 1 112 13 and.b32 %r148,%r86,65535; .loc 1 115 39 sub.u32 %r87,%r147,%r148; .loc 1 118 13 shr.u32 %r149,%r52,16; .loc 1 113 13 shr.u32 %r150,%r86,16; .loc 1 118 20 sub.u32 %r151,%r149,%r150; .loc 1 116 11 shr.s32 %r152,%r87,16; .loc 1 118 36 add.u32 %r89,%r151,%r152; .loc 1 119 11 shr.s32 %r70,%r89,16; .loc 1 121 4 shl.b32 %r153,%r89,16; and.b32 %r154,%r87,65535; or.b32 %r155,%r153,%r154; st.u32 [%r108],%r155; add.u64 %r108,%r108,4; add.u64 %r106,%r106,4; .loc 1 131 7 setp.ge.u64 %r156,%r76,%r106; @ %r156 bra $L8; .loc 1 133 16 cvt.s64.s32 %r157,%r92; shl.b64 %r158,%r157,2; .loc 1 133 11 add.u64 %r90,%r168,%r158; .loc 1 134 10 ld.u32 %r159,[%r90]; setp.ne.u32 %r160,%r159,0; @ %r160 bra $L7; .loc 1 136 10 add.u64 %r91,%r90,-4; setp.le.u64 %r161,%r91,%r168; @ %r161 bra $L9; .loc 1 136 22 ld.u32 %r162,[%r90+-4]; setp.ne.u32 %r163,%r162,0; @ %r163 bra $L9; $L10: .loc 1 137 6 add.u32 %r92,%r92,-1; .loc 1 136 10 add.u64 %r91,%r91,-4; setp.le.u64 %r164,%r91,%r168; @ %r164 bra $L9; .loc 1 136 22 ld.u32 %r165,[%r91]; setp.eq.u32 %r166,%r165,0; @ %r166 bra $L10; $L9: .loc 1 138 12 st.u32 [%r110+20],%r92; $L7: .loc 1 141 10 mov.u32 %r109,%r72; bra $L1; $L11: .loc 1 55 12 mov.u32 %r109,0; $L1: .loc 1 142 1 mov.u32 %value,%r109; 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 %r25; .reg .f64 %r29; .reg .u32 %r30; .reg .u32 %r35; .reg .f64 %r41; .reg .u64 %r47; .reg .u32 %r50; .reg .u32 %r53; .reg .u64 %r56; .reg .f64 %r62; .reg .u32 %r65; .reg .f64 %r68; .reg .u64 %r72; .reg .f64 %r73; .reg .f64 %r75; .reg .f64 %r76; .reg .f64 %r83; .reg .f64 %r84; .reg .f64 %r85; .reg .f64 %r87; .reg .u32 %r95; .reg .f64 %r96; .reg .u32 %r97; .reg .u64 %r105; .reg .f64 %r106; .reg .f64 %r110; .reg .u32 %r129; .reg .u32 %r160; .reg .u32 %r161; .reg .u32 %r162; .reg .u32 %r163; .reg .u32 %r165; .reg .u32 %r167; .reg .u32 %r170; .reg .u32 %r171; .reg .u32 %r172; .reg .u32 %r173; .reg .u32 %r174; .reg .u32 %r175; .reg .u64 %r176; .reg .u64 %r178; .reg .u64 %r179; .reg .u64 %r180; .reg .f64 %r181; .reg .u64 %r183; .reg .u64 %r184; .reg .u32 %r185; .reg .u32 %r186; .reg .u32 %r188; .reg .f64 %r190; .reg .u64 %r191; .reg .u32 %r192; .reg .f64 %r193; .reg .u32 %r197; .reg .u64 %r199; .reg .u32 %r200; .reg .u32 %r202; .reg .u32 %r203; .reg .u32 %r205; .reg .u32 %r207; .reg .u32 %r208; .reg .f64 %r210; .reg .u32 %r211; .reg .u32 %r213; .reg .u32 %r214; .reg .u32 %r215; .reg .u32 %r217; .reg .u32 %r219; .reg .u32 %r220; .reg .u32 %r221; .reg .u32 %r222; .reg .u32 %r223; .reg .u32 %r227; .reg .u32 %r232; .reg .u64 %r234; .reg .u64 %r235; .reg .u32 %r236; .reg .u64 %r237; .reg .u64 %r239; .reg .u64 %r243; .reg .u64 %r244; .reg .u64 %r251; .reg .u64 %r259; .reg .u64 %r260; .reg .u32 %r265; .reg .u64 %r268; .reg .u64 %r270; .reg .u32 %r272; .reg .u64 %r275; .reg .u64 %r278; .reg .u64 %r279; .reg .u64 %r285; .reg .u64 %r289; .reg .f64 %r291; .reg .f64 %r297; .reg .u32 %r300; .reg .u64 %r301; .reg .u32 %r303; .reg .u32 %r304; .reg .u32 %r305; .reg .u32 %r308; .reg .u32 %r309; .reg .u32 %r311; .reg .u32 %r312; .reg .f64 %r316; .reg .u32 %r317; .reg .f64 %r321; .reg .f64 %r323; .reg .u32 %r326; .reg .u32 %r327; .reg .u32 %r328; .reg .u32 %r329; .reg .u64 %r337; .reg .u64 %r338; .reg .u64 %r339; .reg .u64 %r340; .reg .u64 %r341; .reg .f64 %r342; .reg .u32 %r343; .reg .u32 %r344; .reg .u64 %r345; .reg .u64 %r346; .reg .u64 %r347; .reg .pred %r348; .reg .u32 %r349; .reg .u32 %r350; .reg .u64 %r353; .reg .u64 %r354; .reg .u64 %r355; .reg .pred %r356; .reg .u32 %r357; .reg .u64 %r358; .reg .u64 %r359; .reg .u64 %r360; .reg .u32 %r362; .reg .u32 %r363; .reg .pred %r364; .reg .u32 %r365; .reg .u64 %r366; .reg .u64 %r367; .reg .pred %r368; .reg .pred %r369; .reg .u32 %r370; .reg .pred %r371; .reg .u64 %r372; .reg .u64 %r377; .reg .u64 %r378; .reg .pred %r379; .reg .u64 %r381; .reg .u32 %r382; .reg .u32 %r383; .reg .u32 %r384; .reg .u64 %r385; .reg .u64 %r386; .reg .u64 %r387; .reg .u32 %r389; .reg .pred %r390; .reg .u32 %r391; .reg .u32 %r392; .reg .u32 %r393; .reg .u32 %r394; .reg .u32 %r395; .reg .u32 %r396; .reg .u32 %r397; .reg .u64 %r399; .reg .u32 %r400; .reg .u32 %r401; .reg .u64 %r402; .reg .u64 %r403; .reg .u64 %r404; .reg .f64 %r406; .reg .f64 %r407; .reg .f64 %r408; .reg .f64 %r409; .reg .f64 %r410; .reg .pred %r411; .reg .f64 %r412; .reg .pred %r413; .reg .pred %r414; .reg .u64 %r415; .reg .u64 %r416; .reg .u64 %r417; .reg .u64 %r418; .reg .f64 %r419; .reg .pred %r420; .reg .pred %r421; .reg .u32 %r422; .reg .pred %r423; .reg .pred %r424; .reg .pred %r425; .reg .pred %r426; .reg .u32 %r427; .reg .u32 %r429; .reg .u32 %r430; .reg .u16 %r431; .reg .u16 %r432; .reg .u16 %r433; .reg .u32 %r434; .reg .pred %r435; .reg .u64 %r437; .reg .u64 %r438; .reg .pred %r439; .reg .u64 %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 .u32 %r454; .reg .pred %r455; .reg .f64 %r456; .reg .pred %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 .f64 %r500; .reg .u16 %r502; .reg .u16 %r503; .reg .u32 %r504; .reg .u64 %r505; .reg .u32 %r506; .reg .u64 %r507; .reg .u64 %r508; .reg .u64 %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 .u64 %r519; .reg .u32 %r520; .reg .u64 %r521; .reg .f64 %r522; .reg .pred %r524; .reg .pred %r525; .reg .f64 %r526; .reg .u16 %r528; .reg .u16 %r529; .reg .u32 %r530; .reg .pred %r532; .reg .pred %r534; .reg .f64 %r535; .reg .pred %r536; .reg .f64 %r537; .reg .f64 %r538; .reg .pred %r539; .reg .u16 %r540; .reg .pred %r541; .reg .u32 %r542; .reg .u64 %r543; .reg .f64 %r544; .reg .u16 %r546; .reg .u16 %r547; .reg .u32 %r548; .reg .pred %r549; .reg .u64 %r550; .reg .u32 %r552; .reg .u32 %r553; .reg .u32 %r555; .reg .u32 %r556; .reg .u16 %r558; .reg .u16 %r559; .reg .u16 %r560; .reg .u32 %r561; .reg .u16 %r562; .reg .pred %r563; .reg .u64 %r564; .reg .u64 %r565; .reg .u64 %r566; .reg .u64 %r567; .reg .u32 %r569; .reg .u32 %r571; .reg .u32 %r572; .reg .u16 %r574; .reg .u16 %r575; .reg .u16 %r576; .reg .u32 %r577; .reg .u16 %r578; .reg .pred %r579; .reg .pred %r580; .reg .f64 %r581; .reg .f64 %r582; .reg .pred %r583; .reg .f64 %r584; .reg .f64 %r585; .reg .f64 %r586; .reg .u16 %r588; .reg .u16 %r589; .reg .u32 %r590; .reg .pred %r591; .reg .pred %r592; .reg .u32 %r594; .reg .u64 %r595; .reg .pred %r596; .reg .pred %r597; .reg .u32 %r598; .reg .pred %r599; .reg .pred %r600; .reg .u16 %r601; .reg .pred %r602; .reg .u16 %r604; .reg .u32 %r606; .reg .u32 %r607; .reg .pred %r608; .reg .f64 %r609; .reg .f64 %r610; .reg .f64 %r611; .reg .u16 %r613; .reg .u16 %r614; .reg .u32 %r615; .reg .pred %r616; .reg .pred %r618; .reg .pred %r619; .reg .u32 %r620; .reg .u32 %r621; .reg .pred %r622; .reg .u32 %r623; .reg .pred %r624; .reg .u32 %r626; .reg .u64 %r627; .reg .u32 %r629; .reg .u32 %r630; .reg .u32 %r632; .reg .u32 %r633; .reg .u16 %r634; .reg .u16 %r635; .reg .u16 %r636; .reg .u32 %r637; .reg .u16 %r638; .reg .pred %r639; .reg .pred %r640; .reg .pred %r642; .reg .u64 %r646; .reg .u64 %r650; .reg .pred %r653; .reg .u64 %r657; .reg .u64 %r661; .reg .u32 %r663; .reg .u64 %r664; .reg .pred %r665; .reg .u64 %r669; .reg .pred %r670; .reg .pred %r671; .reg .u64 %r672; .reg .pred %r673; .reg .u64 %r674; .reg .u32 %r675; .reg .u32 %r676; .reg .pred %r677; .reg .pred %r678; .reg .u32 %r679; .reg .u32 %r680; .reg .u32 %r681; .reg .u64 %r682; .reg .u64 %r683; .reg .u64 %r684; .reg .u64 %r685; .reg .u32 %r687; .reg .u32 %r688; .reg .u32 %r689; .reg .pred %r690; .reg .u32 %r691; .reg .pred %r692; .reg .u32 %r693; .reg .pred %r694; .reg .u32 %r695; .reg .pred %r696; .reg .u64 %r700; .reg .pred %r701; .reg .u64 %r705; .reg .u32 %r706; .reg .u32 %r707; .reg .u32 %r708; .reg .pred %r709; .reg .u32 %r712; .reg .pred %r713; .reg .u32 %r716; .reg .u32 %r717; .reg .u64 %r718; .reg .u32 %r720; .reg .u32 %r721; .reg .u16 %r722; .reg .u16 %r723; .reg .u16 %r724; .reg .u32 %r725; .reg .u64 %r731; .reg .pred %r732; .reg .u32 %r734; .reg .u32 %r735; .reg .u16 %r736; .reg .u16 %r737; .reg .u16 %r738; .reg .u32 %r739; .reg .u16 %r740; .reg .pred %r741; .reg .pred %r742; .reg .u32 %r745; .reg .u64 %r747; .reg .u32 %r750; .reg .pred %r751; .reg .u32 %r752; .reg .pred %r754; .reg .u64 %r758; .reg .pred %r759; .reg .u64 %r762; .reg .u64 %r766; .reg .u64 %r767; .reg .u64 %r768; .reg .u64 %r769; .reg .u64 %r770; .reg .u64 %r771; .reg .u32 %r774; .reg .u64 %r775; .reg .u32 %r776; .reg .u64 %r777; .reg .u32 %r780; .reg .u32 %r783; .reg .u64 %r787; .reg .u32 %r788; .reg .pred %r789; .reg .u32 %r792; .reg .u32 %r797; .reg .u32 %r798; .reg .pred %r799; .reg .pred %r800; .reg .pred %r801; .reg .pred %r802; .reg .u32 %r805; .reg .u32 %r806; .reg .pred %r807; .reg .pred %r808; .reg .u32 %r811; .reg .u64 %r812; .reg .u32 %r815; .reg .pred %r816; .reg .pred %r817; .reg .u32 %r818; .reg .pred %r819; .reg .pred %r820; .reg .pred %r821; .reg .pred %r822; .reg .u32 %r823; .reg .u16 %r825; .reg .u16 %r826; .reg .u32 %r827; .reg .pred %r828; .reg .u32 %r831; .reg .u32 %r832; .reg .u64 %r833; .reg .pred %r834; .reg .u64 %r839; .reg .u64 %r844; .reg .u64 %r849; .reg .u32 %r852; .reg .u32 %r853; .reg .u32 %r854; .reg .u32 %r855; .reg .u32 %r856; .reg .u32 %r857; .reg .pred %r858; .reg .u32 %r861; .reg .u32 %r862; .reg .u64 %r863; .reg .u32 %r866; .reg .u64 %r867; .reg .u32 %r870; .reg .pred %r871; .reg .pred %r872; .reg .u32 %r873; .reg .pred %r874; .reg .pred %r875; .reg .u32 %r876; .reg .u16 %r877; .reg .pred %r878; .reg .u16 %r880; .reg .u32 %r882; .reg .u16 %r883; .reg .pred %r884; .reg .pred %r887; .reg .u32 %r889; .reg .u32 %r890; .reg .u32 %r892; .reg .u32 %r893; .reg .u16 %r894; .reg .u16 %r895; .reg .u16 %r896; .reg .u32 %r897; .reg .u16 %r898; .reg .pred %r899; .reg .u32 %r906; .reg .pred %r907; .reg .pred %r909; .reg .pred %r910; .reg .pred %r913; .reg .pred %r914; .reg .f64 %r915; .reg .u64 %r917; .reg .u32 %r918; .reg .u32 %r919; .reg .u64 %r920; .reg .u64 %r921; .reg .u64 %r922; .reg .u32 %r926; .reg .u32 %r927; .reg .u64 %r930; .reg .u32 %r932; .reg .u32 %r933; .reg .u32 %r935; .reg .u32 %r936; .reg .u16 %r938; .reg .u16 %r939; .reg .u16 %r940; .reg .u32 %r941; .reg .u16 %r942; .reg .pred %r943; .reg .pred %r944; .reg .pred %r945; .reg .pred %r946; .reg .pred %r947; .reg .pred %r948; .reg .pred %r949; .reg .u64 %r950; .reg .pred %r951; .reg .u64 %r952; .reg .u32 %r953; .reg .u32 %r954; .reg .pred %r955; .reg .u64 %r956; .reg .u64 %r957; .reg .u64 %r958; .reg .u64 %r959; .reg .u64 %r960; .reg .u64 %r961; .reg .pred %r962; .reg .u32 %r965; .reg .u32 %r966; .reg .f64 %r967; mov.u64 %r341,%ar0; mov.f64 %r342,%ar1; mov.u32 %r343,%ar2; mov.u32 %r344,%ar3; mov.u64 %r345,%ar4; mov.u64 %r346,%ar5; mov.u64 %r347,%ar6; .loc 1 236 7 mov.b64 %r337,%r342; .loc 1 239 7 ld.u64 %r22,[%r341+96]; .loc 1 239 6 setp.eq.u64 %r348,%r22,0; @ %r348 bra $L19; .loc 1 241 35 ld.u32 %r23,[%r341+104]; .loc 1 241 33 st.u32 [%r22+8],%r23; .loc 1 242 42 mov.u32 %r350,1; shl.b32 %r349,%r350,%r23; .loc 1 242 38 st.u32 [%r22+12],%r349; .loc 1 243 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r22; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 244 29 mov.u64 %r353,0; st.u64 [%r341+96],%r353; $L19: mov.b64 %r354,%r342; shr.u64 %r355,%r354,32; cvt.u32.u64 %r197,%r355; .loc 1 247 6 setp.ge.s32 %r356,%r197,0; @ %r356 bra $L20; .loc 1 250 13 mov.u32 %r357,1; st.u32 [%r346],%r357; .loc 1 251 17 and.b32 %r197,%r197,2147483647; cvt.u64.u32 %r358,%r197; shl.b64 %r359,%r358,32; and.b64 %r360,%r337,4294967295; or.b64 %r337,%r360,%r359; mov.b64 %r342,%r337; bra $L21; $L20: .loc 1 254 11 mov.u32 %r362,0; st.u32 [%r346],%r362; $L21: .loc 1 258 18 and.b32 %r363,%r197,2146435072; .loc 1 258 6 setp.ne.u32 %r364,%r363,2146435072; @ %r364 bra $L22; .loc 1 264 14 mov.u32 %r365,9999; st.u32 [%r345],%r365; .loc 1 267 13 mov.b64 %r367,%r342; and.b64 %r366,%r367,4503599627370495; .loc 1 267 52 setp.eq.u64 %r368,%r366,0; @ %r368 bra $L23; bra $L263; $L188: cvta.const.u64 %r340,$LC0; .loc 1 273 17 add.u64 %r184,%r340,8; bra $L147; $L189: .loc 1 267 52 cvta.const.u64 %r340,$LC1; .loc 1 273 17 add.u64 %r184,%r340,3; $L147: .loc 1 271 7 st.u64 [%r347],%r184; bra $L18; $L22: .loc 1 282 6 setp.neu.f64 %r369,%r342,0d0000000000000000; @ %r369 bra $L26; .loc 1 284 14 mov.u32 %r370,1; st.u32 [%r345],%r370; .loc 1 286 10 setp.eq.u64 %r371,%r347,0; @ %r371 bra $L157; .loc 1 287 7 cvta.const.u64 %r372,$LC2+1; st.u64 [%r347],%r372; .loc 1 288 14 cvta.const.u64 %r340,$LC2; bra $L18; $L26: .loc 1 291 7 add.u64 %r377,%frame,4; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r342; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r377; call (%value_in),__d2b,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r378,[%value_in]; } mov.u64 %r176,%r378; .loc 1 295 29 shr.u32 %r30,%r197,20; .loc 1 295 6 setp.eq.u32 %r379,%r30,0; @ %r379 bra $L27; .loc 1 298 12 mov.b64 %r338,%r342; .loc 1 299 18 shr.u64 %r381,%r338,32; cvt.u32.u64 %r383,%r381; and.b32 %r382,%r383,1048575; .loc 1 300 18 or.b32 %r384,%r382,1072693248; cvt.u64.u32 %r385,%r384; shl.b64 %r386,%r385,32; and.b64 %r387,%r338,4294967295; or.b64 %r338,%r387,%r386; .loc 1 328 9 add.u32 %r163,%r30,-1023; ld.u32 %r303,[%frame+4]; .loc 1 334 14 mov.u32 %r175,0; bra $L28; $L27: .loc 1 340 17 ld.u32 %r303,[%frame+4]; ld.u32 %r389,[%frame]; add.u32 %r35,%r303,%r389; .loc 1 340 9 add.u32 %r192,%r35,1074; cvt.u32.u64 %r326,%r337; .loc 1 345 8 setp.le.s32 %r390,%r192,32; @ %r390 bra $L29; .loc 1 344 40 mov.u32 %r392,64; sub.u32 %r391,%r392,%r192; .loc 1 344 33 shl.b32 %r393,%r197,%r391; .loc 1 344 65 add.u32 %r394,%r35,1042; .loc 1 344 59 shr.u32 %r395,%r326,%r394; .loc 1 345 8 or.b32 %r185,%r393,%r395; bra $L30; $L29: .loc 1 345 28 mov.u32 %r397,32; sub.u32 %r396,%r397,%r192; .loc 1 345 8 shl.b32 %r185,%r326,%r396; $L30: .loc 1 347 12 cvt.rn.f64.u32 %r41,%r185; mov.b64 %r338,%r41; .loc 1 348 18 shr.u64 %r399,%r338,32; cvt.u32.u64 %r401,%r399; add.u32 %r400,%r401,-32505856; cvt.u64.u32 %r402,%r400; shl.b64 %r403,%r402,32; and.b64 %r404,%r338,4294967295; or.b64 %r338,%r404,%r403; .loc 1 349 9 add.u32 %r163,%r35,-1; .loc 1 350 14 mov.u32 %r175,1; $L28: .loc 1 356 63 cvt.rn.f64.s32 %r406,%r163; .loc 1 356 14 mov.b64 %r408,%r338; mov.f64 %r409,0d3ff8000000000000; sub.f64 %r407,%r408,%r409; .loc 1 356 41 fma.rn.f64 %r410,%r407,0d3fd287a7636f4361,0d3fc68a288b60c8b3; .loc 1 356 6 fma.rn.f64 %r193,%r406,0d3fd34413509f79fb,%r410; .loc 1 358 5 cvt.rzi.s32.f64 %r167,%r193; .loc 1 359 6 setp.lt.f64 %r411,%r193,0d0000000000000000; @ ! %r411 bra $L31; .loc 1 359 21 cvt.rn.f64.s32 %r412,%r167; .loc 1 359 15 setp.eq.f64 %r413,%r412,%r193; @ %r413 bra $L31; .loc 1 360 6 add.u32 %r167,%r167,-1; $L31: sub.u32 %r327,%r303,%r163; add.u32 %r173,%r327,-1; .loc 1 362 6 setp.gt.u32 %r414,%r167,22; @ %r414 bra $L158; .loc 1 364 21 cvta.const.u64 %r415,__mprec_tens; cvt.s64.s32 %r416,%r167; shl.b64 %r417,%r416,3; add.u64 %r418,%r415,%r417; .loc 1 364 10 ld.f64 %r419,[%r418]; setp.gt.f64 %r420,%r419,%r342; @ ! %r420 bra $L264; .loc 1 365 3 add.u32 %r167,%r167,-1; .loc 1 366 15 mov.u32 %r170,0; bra $L33; $L158: .loc 1 361 11 mov.u32 %r170,1; $L33: .loc 1 369 6 setp.ge.s32 %r421,%r173,0; @ %r421 bra $L159; $L155: .loc 1 376 10 mov.u32 %r422,1; sub.u32 %r160,%r422,%r327; .loc 1 377 10 mov.u32 %r173,0; bra $L36; $L159: .loc 1 371 10 mov.u32 %r160,0; $L36: .loc 1 379 6 setp.lt.s32 %r423,%r167,0; @ ! %r423 bra $L154; bra $L37; $L195: .loc 1 366 15 mov.u32 %r170,0; .loc 1 371 10 mov.u32 %r160,%r170; $L154: .loc 1 383 10 add.u32 %r173,%r173,%r167; mov.u32 %r328,%r167; .loc 1 381 10 mov.u32 %r161,0; bra $L38; $L37: .loc 1 387 10 sub.u32 %r160,%r160,%r167; .loc 1 388 10 neg.s32 %r161,%r167; mov.u32 %r328,%r167; .loc 1 389 10 mov.u32 %r167,0; $L38: .loc 1 391 6 setp.gt.u32 %r424,%r343,9; @ %r424 bra $L160; .loc 1 394 6 setp.le.s32 %r425,%r343,5; @ %r425 bra $L161; .loc 1 396 12 add.u32 %r343,%r343,-4; mov.u32 %r304,0; bra $L40; $L192: .loc 1 409 17 mov.u32 %r265,0; bra $L152; $L193: .loc 1 399 13 mov.u32 %r265,1; $L152: .loc 1 412 10 setp.le.s32 %r426,%r344,0; @ %r426 bra $L162; mov.u32 %r272,%r344; mov.u32 %r236,%r344; mov.u32 %r65,%r344; bra $L41; $L191: .loc 1 417 17 mov.u32 %r265,0; bra $L150; $L194: .loc 1 399 13 mov.u32 %r265,1; $L150: .loc 1 420 19 add.u32 %r272,%r344,%r328; .loc 1 420 9 add.u32 %r236,%r272,1; max.s32 %r65,%r236,1; $L41: .loc 1 427 32 mov.u32 %r427,0; st.u32 [%r341+104],%r427; .loc 1 427 77 cvt.s64.s32 %r289,%r65; set.u32.le.u32 %r429,%r236,14; neg.s32 %r430,%r429; cvt.u16.u32 %r432,%r430; cvt.u16.u32 %r433,%r304; and.b16 %r431,%r432,%r433; cvt.u32.u16 %r434,%r431; cvt.u32.u8 %r304,%r434; .loc 1 427 3 setp.le.s32 %r435,%r65,31; @ %r435 bra $L163; mov.u32 %r50,1; .loc 1 426 5 mov.u32 %r188,4; $L43: .loc 1 429 28 mov.u32 %r53,%r50; .loc 1 428 10 add.u32 %r188,%r188,%r188; add.u32 %r50,%r53,1; .loc 1 427 73 cvt.s64.s32 %r437,%r188; add.u64 %r438,%r437,28; .loc 1 427 3 setp.le.u64 %r439,%r438,%r289; @ %r439 bra $L43; st.u32 [%r341+104],%r53; bra $L42; $L163: mov.u32 %r53,%r427; $L42: .loc 1 430 27 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r53; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r442,[%value_in]; } mov.u64 %r56,%r442; .loc 1 430 25 st.u64 [%r341+96],%r442; .loc 1 433 6 setp.eq.u32 %r443,%r304,0; @ %r443 bra $L44; .loc 1 442 10 setp.le.s32 %r444,%r328,0; @ %r444 bra $L45; .loc 1 444 7 cvta.const.u64 %r445,__mprec_tens; .loc 1 444 16 and.b32 %r446,%r328,15; .loc 1 444 7 cvt.s64.s32 %r447,%r446; shl.b64 %r448,%r447,3; add.u64 %r449,%r445,%r448; ld.f64 %r181,[%r449]; .loc 1 445 6 shr.s32 %r200,%r328,4; .loc 1 446 10 and.b32 %r450,%r200,16; .loc 1 446 7 setp.eq.u32 %r451,%r450,0; @ %r451 bra $L46; .loc 1 449 10 and.b32 %r200,%r200,15; .loc 1 450 22 cvta.const.u64 %r452,__mprec_bigtens; .loc 1 450 12 ld.f64 %r453,[%r452+32]; div.rn.f64 %r62,%r342,%r453; .loc 1 451 12 mov.u32 %r165,3; bra $L47; $L51: cvta.const.u64 %r235,__mprec_bigtens; $L49: .loc 1 454 12 and.b32 %r454,%r200,1; .loc 1 454 9 setp.eq.u32 %r455,%r454,0; @ %r455 bra $L48; .loc 1 456 7 add.u32 %r165,%r165,1; .loc 1 457 6 ld.f64 %r456,[%r235]; mul.f64 %r181,%r181,%r456; $L48: .loc 1 453 16 shr.s32 %r200,%r200,1; add.u64 %r235,%r235,8; .loc 1 453 4 setp.ne.u32 %r457,%r200,0; @ %r457 bra $L49; bra $L50; $L46: mov.b64 %r62,%r337; .loc 1 441 12 mov.u32 %r165,2; $L47: .loc 1 453 4 setp.ne.u32 %r458,%r200,0; @ %r458 bra $L51; $L50: .loc 1 459 8 div.rn.f64 %r316,%r62,%r181; bra $L52; $L45: .loc 1 461 15 setp.ne.u32 %r459,%r328,0; @ %r459 bra $L53; mov.b64 %r316,%r337; .loc 1 441 12 mov.u32 %r165,2; bra $L52; $L53: .loc 1 461 20 neg.s32 %r202,%r328; .loc 1 463 15 cvta.const.u64 %r460,__mprec_tens; .loc 1 463 19 and.b32 %r461,%r202,15; .loc 1 463 15 cvt.s64.s32 %r462,%r461; shl.b64 %r463,%r462,3; add.u64 %r464,%r460,%r463; .loc 1 463 8 ld.f64 %r465,[%r464]; mul.f64 %r68,%r342,%r465; .loc 1 464 11 shr.s32 %r203,%r202,4; .loc 1 464 4 setp.eq.u32 %r466,%r203,0; @ %r466 bra $L164; cvta.const.u64 %r199,__mprec_bigtens; mov.f64 %r316,%r68; mov.u32 %r25,0; .loc 1 441 12 mov.u32 %r165,2; $L55: .loc 1 465 12 and.b32 %r467,%r203,1; .loc 1 465 9 setp.eq.u32 %r468,%r467,0; @ %r468 bra $L54; .loc 1 467 7 add.u32 %r165,%r165,1; .loc 1 468 7 ld.f64 %r469,[%r199]; mul.f64 %r316,%r316,%r469; mov.u32 %r25,%r304; $L54: .loc 1 464 27 shr.s32 %r203,%r203,1; add.u64 %r199,%r199,8; .loc 1 464 4 setp.ne.u32 %r470,%r203,0; @ %r470 bra $L55; setp.eq.u32 %r471,%r25,0; selp.f64 %r316,%r68,%r316,%r471; bra $L52; $L164: mov.f64 %r316,%r68; .loc 1 441 12 mov.u32 %r165,2; $L52: .loc 1 471 10 setp.eq.u32 %r472,%r170,0; @ %r472 bra $L57; .loc 1 471 19 setp.lt.f64 %r473,%r316,0d3ff0000000000000; @ ! %r473 bra $L57; .loc 1 471 31 setp.eq.u32 %r474,%r236,0; @ %r474 bra $L59; .loc 1 473 7 setp.le.s32 %r475,%r272,0; @ %r475 bra $L60; .loc 1 476 5 add.u32 %r205,%r328,-1; .loc 1 477 8 mul.f64 %r316,%r316,0d4024000000000000; .loc 1 478 8 add.u32 %r476,%r165,1; .loc 1 480 20 cvt.rn.f64.s32 %r477,%r476; .loc 1 480 26 fma.rn.f64 %r297,%r316,%r477,0d401c000000000000; .loc 1 480 13 mov.b64 %r339,%r297; .loc 1 481 19 shr.u64 %r479,%r339,32; cvt.u32.u64 %r481,%r479; add.u32 %r480,%r481,-54525952; cvt.u64.u32 %r482,%r480; shl.b64 %r483,%r482,32; and.b64 %r484,%r339,4294967295; or.b64 %r339,%r484,%r483; mov.u32 %r300,%r272; bra $L61; $L57: .loc 1 480 20 cvt.rn.f64.s32 %r486,%r165; .loc 1 480 26 fma.rn.f64 %r73,%r486,%r316,0d401c000000000000; .loc 1 480 13 mov.b64 %r339,%r73; .loc 1 481 19 shr.u64 %r488,%r339,32; cvt.u32.u64 %r490,%r488; add.u32 %r489,%r490,-54525952; cvt.u64.u32 %r491,%r489; shl.b64 %r492,%r491,32; and.b64 %r493,%r339,4294967295; or.b64 %r339,%r493,%r492; .loc 1 482 10 setp.ne.u32 %r495,%r236,0; @ %r495 bra $L166; $L148: .loc 1 485 8 mov.f64 %r496,0d4014000000000000; sub.f64 %r75,%r316,%r496; .loc 1 486 17 mov.b64 %r76,%r339; .loc 1 486 7 setp.gt.f64 %r497,%r75,%r76; @ %r497 bra $L167; .loc 1 488 14 neg.f64 %r498,%r76; .loc 1 488 7 setp.lt.f64 %r499,%r75,%r498; @ %r499 bra $L168; bra $L60; $L166: mov.u32 %r205,%r328; mov.u32 %r300,%r236; $L61: cvt.rzi.s32.f64 %r317,%r316; cvt.rn.f64.s32 %r500,%r317; sub.f64 %r87,%r316,%r500; add.u64 %r268,%r442,1; cvt.u16.u32 %r503,%r317; add.u16 %r502,%r503,48; cvt.u32.u16 %r504,%r502; cvt.s32.s8 %r305,%r504; mov.b64 %r321,%r339; cvta.const.u64 %r505,__mprec_tens; add.u32 %r506,%r300,-1; cvt.s64.s32 %r507,%r506; shl.b64 %r508,%r507,3; add.u64 %r509,%r505,%r508; ld.f64 %r323,[%r509]; .loc 1 493 10 setp.eq.u32 %r510,%r265,0; @ %r510 bra $L64; .loc 1 498 16 mov.f64 %r512,0d3fe0000000000000; div.rn.f64 %r511,%r512,%r323; .loc 1 498 33 sub.f64 %r83,%r511,%r321; .loc 1 503 13 st.u8 [%r442],%r504; .loc 1 504 11 setp.gt.f64 %r514,%r83,%r87; @ ! %r514 bra $L265; add.u32 %r328,%r205,1; mov.u64 %r340,%r442; .loc 1 503 10 mov.u64 %r56,%r268; bra $L67; $L265: .loc 1 506 15 mov.f64 %r516,0d3ff0000000000000; sub.f64 %r515,%r516,%r87; .loc 1 506 11 setp.gt.f64 %r517,%r83,%r515; @ %r517 bra $L68; .loc 1 508 11 setp.eq.u32 %r518,%r300,1; @ %r518 bra $L60; mov.u64 %r191,%r268; add.u64 %r519,%r442,2; add.u32 %r520,%r300,-2; cvt.u64.u32 %r521,%r520; add.u64 %r244,%r519,%r521; .loc 1 506 15 mov.f64 %r967,%r516; bra $L69; $L267: sub.f64 %r522,%r967,%r87; .loc 1 506 11 setp.lt.f64 %r524,%r522,%r83; @ ! %r524 bra $L266; add.u32 %r328,%r205,1; mov.u64 %r340,%r442; mov.u64 %r56,%r251; bra $L72; $L266: mov.u64 %r191,%r251; .loc 1 508 11 setp.eq.u64 %r525,%r244,%r191; @ %r525 bra $L60; $L69: .loc 1 510 14 mul.f64 %r83,%r83,0d4024000000000000; .loc 1 511 12 mul.f64 %r84,%r87,0d4024000000000000; .loc 1 501 10 cvt.rzi.s32.f64 %r207,%r84; .loc 1 502 12 cvt.rn.f64.s32 %r526,%r207; sub.f64 %r87,%r84,%r526; add.u64 %r251,%r191,1; .loc 1 503 19 cvt.u16.u32 %r529,%r207; add.u16 %r528,%r529,48; cvt.u32.u16 %r530,%r528; cvt.s32.s8 %r305,%r530; .loc 1 503 13 st.u8 [%r191],%r530; .loc 1 504 11 setp.lt.f64 %r532,%r87,%r83; @ ! %r532 bra $L267; add.u32 %r328,%r205,1; mov.u64 %r340,%r442; mov.u64 %r56,%r251; bra $L67; $L64: .loc 1 518 10 mul.f64 %r85,%r321,%r323; .loc 1 523 13 st.u8 [%r442],%r504; .loc 1 524 11 setp.ne.u32 %r534,%r300,1; @ %r534 bra $L75; $L81: .loc 1 526 19 add.f64 %r535,%r85,0d3fe0000000000000; .loc 1 526 8 setp.lt.f64 %r536,%r535,%r87; @ ! %r536 bra $L268; ld.s8 %r305,[%r268+-1]; add.u32 %r328,%r205,1; mov.u64 %r340,%r442; mov.u64 %r56,%r268; bra $L72; $L268: .loc 1 528 24 mov.f64 %r538,0d3fe0000000000000; sub.f64 %r537,%r538,%r85; .loc 1 528 13 setp.gt.f64 %r539,%r537,%r87; @ ! %r539 bra $L60; bra $L79; $L169: mov.u64 %r268,%r47; $L79: .loc 1 530 15 add.u64 %r47,%r268,-1; .loc 1 530 16 ld.s8 %r95,[%r47]; .loc 1 530 15 cvt.u16.u32 %r540,%r95; setp.eq.u16 %r541,%r540,48; @ %r541 bra $L169; add.u32 %r328,%r205,1; mov.u64 %r340,%r442; mov.u64 %r56,%r268; bra $L67; $L75: mov.u64 %r243,%r268; add.u32 %r542,%r300,-2; cvt.u64.u32 %r239,%r542; add.u64 %r543,%r442,2; add.u64 %r237,%r543,%r239; $L80: .loc 1 519 26 mul.f64 %r96,%r87,0d4024000000000000; .loc 1 521 10 cvt.rzi.s32.f64 %r208,%r96; .loc 1 522 12 cvt.rn.f64.s32 %r544,%r208; sub.f64 %r87,%r96,%r544; .loc 1 523 19 cvt.u16.u32 %r547,%r208; add.u16 %r546,%r547,48; .loc 1 523 13 cvt.u32.u16 %r548,%r546; st.u8 [%r243],%r548; add.u64 %r243,%r243,1; .loc 1 524 11 setp.ne.u64 %r549,%r237,%r243; @ %r549 bra $L80; add.u64 %r550,%r239,1; add.u64 %r268,%r268,%r550; bra $L81; $L60: .loc 1 542 11 mov.b64 %r337,%r342; $L44: .loc 1 549 10 ld.u32 %r97,[%frame]; .loc 1 549 6 not.b32 %r552,%r97; shr.u32 %r553,%r552,31; .loc 1 549 15 set.u32.le.s32 %r555,%r328,14; neg.s32 %r556,%r555; cvt.u16.u32 %r559,%r553; cvt.u16.u32 %r560,%r556; and.b16 %r558,%r559,%r560; cvt.u32.u16 %r561,%r558; cvt.u16.u8 %r562,%r561; setp.eq.u16 %r563,%r562,0; @ %r563 bra $L82; .loc 1 552 10 cvta.const.u64 %r564,__mprec_tens; cvt.s64.s32 %r565,%r328; shl.b64 %r566,%r565,3; add.u64 %r567,%r564,%r566; ld.f64 %r210,[%r567]; .loc 1 553 19 shr.u32 %r569,%r344,31; .loc 1 553 31 set.u32.le.s32 %r571,%r236,0; neg.s32 %r572,%r571; .loc 1 553 23 cvt.u16.u32 %r575,%r569; cvt.u16.u32 %r576,%r572; and.b16 %r574,%r575,%r576; .loc 1 553 10 cvt.u32.u16 %r577,%r574; cvt.u16.u8 %r578,%r577; setp.eq.u16 %r579,%r578,0; @ %r579 bra $L83; .loc 1 556 7 setp.ne.u32 %r580,%r236,0; @ %r580 bra $L170; .loc 1 556 29 mul.f64 %r581,%r210,0d4014000000000000; .loc 1 556 17 mov.b64 %r582,%r337; setp.ge.f64 %r583,%r581,%r582; @ %r583 bra $L171; .loc 1 555 6 mov.u64 %r270,0; .loc 1 555 12 mov.u64 %r179,%r270; bra $L62; $L83: .loc 1 562 9 mov.b64 %r29,%r337; .loc 1 562 12 div.rn.f64 %r584,%r29,%r210; .loc 1 562 6 cvt.rzi.s32.f64 %r211,%r584; .loc 1 563 13 cvt.rn.f64.s32 %r585,%r211; .loc 1 563 8 neg.f64 %r586,%r585; fma.rn.f64 %r106,%r586,%r210,%r29; .loc 1 572 6 add.u64 %r234,%r56,1; .loc 1 572 15 cvt.u16.u32 %r589,%r211; add.u16 %r588,%r589,48; .loc 1 572 9 cvt.u32.u16 %r590,%r588; st.u8 [%r56],%r590; add.u32 %r328,%r328,1; .loc 1 573 7 setp.eq.u32 %r591,%r236,1; @ %r591 bra $L84; .loc 1 590 14 mul.f64 %r190,%r106,0d4024000000000000; .loc 1 590 7 setp.eq.f64 %r592,%r190,0d0000000000000000; @ %r592 bra $L172; mov.u64 %r105,%r234; add.u32 %r594,%r236,-2; cvt.u64.u32 %r595,%r594; add.u64 %r279,%r105,%r595; bra $L85; $L84: .loc 1 575 12 add.f64 %r110,%r106,%r106; .loc 1 576 17 setp.gt.f64 %r596,%r110,%r210; @ ! %r596 bra $L269; ld.s8 %r305,[%r234+-1]; mov.u64 %r340,%r56; mov.u64 %r56,%r234; bra $L72; $L269: .loc 1 576 29 setp.neu.f64 %r597,%r110,%r210; @ %r597 bra $L173; .loc 1 576 51 and.b32 %r598,%r211,1; .loc 1 576 45 setp.eq.u32 %r599,%r598,0; @ %r599 bra $L174; ld.s8 %r305,[%r234+-1]; mov.u64 %r340,%r56; mov.u64 %r56,%r234; bra $L72; $L91: add.u64 %r301,%r301,-1; .loc 1 580 10 setp.eq.u64 %r600,%r340,%r960; @ %r600 bra $L88; ld.s8 %r305,[%r301]; mov.u64 %r56,%r960; add.u64 %r960,%r960,-1; bra $L89; $L88: add.u32 %r328,%r328,1; .loc 1 584 4 mov.u32 %r308,49; bra $L90; $L68: add.u32 %r328,%r205,1; .loc 1 506 11 mov.u64 %r340,%r442; .loc 1 503 10 mov.u64 %r56,%r268; $L72: add.u64 %r960,%r56,-1; mov.u64 %r301,%r960; $L89: .loc 1 579 11 cvt.u16.u32 %r601,%r305; setp.eq.u16 %r602,%r601,57; @ %r602 bra $L91; add.u16 %r604,%r601,1; cvt.u32.u16 %r606,%r604; cvt.s32.s8 %r308,%r606; $L90: .loc 1 586 5 cvt.u32.u32 %r607,%r308; st.u8 [%r960],%r607; bra $L67; $L270: .loc 1 590 14 mul.f64 %r190,%r106,0d4024000000000000; mov.u64 %r105,%r285; .loc 1 590 7 setp.eq.f64 %r608,%r190,0d0000000000000000; @ %r608 bra $L175; $L85: .loc 1 562 12 div.rn.f64 %r609,%r190,%r210; .loc 1 562 6 cvt.rzi.s32.f64 %r211,%r609; .loc 1 563 13 cvt.rn.f64.s32 %r610,%r211; .loc 1 563 8 neg.f64 %r611,%r610; fma.rn.f64 %r106,%r611,%r210,%r190; add.u64 %r285,%r105,1; mov.u64 %r234,%r285; .loc 1 572 15 cvt.u16.u32 %r614,%r211; add.u16 %r613,%r614,48; .loc 1 572 9 cvt.u32.u16 %r615,%r613; st.u8 [%r105],%r615; .loc 1 573 7 setp.eq.u64 %r616,%r105,%r279; @ ! %r616 bra $L270; bra $L84; $L82: .loc 1 599 6 setp.eq.u32 %r962,%r265,0; @ %r962 bra $L176; $L271: .loc 1 601 10 setp.gt.s32 %r618,%r343,1; @ %r618 bra $L94; .loc 1 605 45 setp.eq.u32 %r619,%r175,0; @ %r619 bra $L95; add.u32 %r213,%r97,1075; add.u32 %r173,%r173,%r213; mov.u32 %r172,%r161; .loc 1 596 6 mov.u32 %r171,%r160; add.u32 %r160,%r160,%r213; bra $L96; $L95: .loc 1 605 45 mov.u32 %r620,54; ld.u32 %r621,[%frame+4]; sub.u32 %r214,%r620,%r621; add.u32 %r173,%r173,%r214; mov.u32 %r172,%r161; .loc 1 596 6 mov.u32 %r171,%r160; .loc 1 605 45 add.u32 %r160,%r160,%r214; bra $L96; $L94: .loc 1 615 6 add.u32 %r215,%r236,-1; .loc 1 616 7 setp.lt.s32 %r622,%r161,%r215; @ %r622 bra $L97; .loc 1 617 9 sub.u32 %r172,%r161,%r215; bra $L98; $L97: .loc 1 620 16 sub.u32 %r623,%r215,%r161; .loc 1 620 11 add.u32 %r167,%r167,%r623; mov.u32 %r161,%r215; .loc 1 622 11 mov.u32 %r172,0; $L98: .loc 1 624 7 setp.lt.s32 %r624,%r236,0; @ %r624 bra $L99; add.u32 %r173,%r173,%r236; .loc 1 596 6 mov.u32 %r171,%r160; .loc 1 624 7 add.u32 %r160,%r160,%r236; bra $L96; $L99: .loc 1 626 11 sub.u32 %r171,%r160,%r236; $L96: .loc 1 632 13 mov.u32 %r626,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r626; call (%value_in),__i2b,(%out_arg1,%out_arg2); ld.param.u64 %r627,[%value_in]; } mov.u64 %r179,%r627; bra $L93; $L176: mov.u32 %r172,%r161; .loc 1 596 6 mov.u32 %r171,%r160; .loc 1 598 7 mov.u64 %r179,0; $L93: .loc 1 634 10 set.u32.gt.s32 %r629,%r171,0; neg.s32 %r630,%r629; .loc 1 634 20 set.u32.gt.s32 %r632,%r173,0; neg.s32 %r633,%r632; .loc 1 634 14 cvt.u16.u32 %r635,%r630; cvt.u16.u32 %r636,%r633; and.b16 %r634,%r635,%r636; .loc 1 634 6 cvt.u32.u16 %r637,%r634; cvt.u16.u8 %r638,%r637; setp.eq.u16 %r639,%r638,0; @ %r639 bra $L100; .loc 1 636 9 min.s32 %r217,%r171,%r173; .loc 1 637 10 sub.u32 %r160,%r160,%r217; .loc 1 638 10 sub.u32 %r171,%r171,%r217; .loc 1 639 10 sub.u32 %r173,%r173,%r217; $L100: .loc 1 641 6 setp.eq.u32 %r640,%r161,0; @ %r640 bra $L101; .loc 1 643 10 @ %r962 bra $L102; .loc 1 645 7 setp.le.s32 %r642,%r172,0; @ %r642 bra $L103; .loc 1 647 14 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r179; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r172; call (%value_in),__pow5mult,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r646,[%value_in]; } mov.u64 %r179,%r646; .loc 1 648 13 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r179; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r378; call (%value_in),__multiply,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r650,[%value_in]; } .loc 1 649 8 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r378; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 650 10 mov.u64 %r176,%r650; $L103: .loc 1 652 17 sub.u32 %r219,%r161,%r172; .loc 1 652 13 setp.eq.u32 %r653,%r219,0; @ %r653 bra $L101; .loc 1 653 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r176; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r219; call (%value_in),__pow5mult,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r657,[%value_in]; } mov.u64 %r176,%r657; bra $L101; $L102: .loc 1 656 6 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r378; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r161; call (%value_in),__pow5mult,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r661,[%value_in]; } mov.u64 %r176,%r661; $L101: .loc 1 658 7 mov.u32 %r663,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r663; call (%value_in),__i2b,(%out_arg1,%out_arg2); ld.param.u64 %r664,[%value_in]; } mov.u64 %r270,%r664; .loc 1 659 6 setp.le.s32 %r665,%r167,0; @ %r665 bra $L104; .loc 1 660 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r270; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r167; call (%value_in),__pow5mult,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r669,[%value_in]; } mov.u64 %r270,%r669; .loc 1 665 6 setp.le.s32 %r670,%r343,1; @ %r670 bra $L105; .loc 1 664 13 mov.u32 %r174,0; bra $L106; $L104: .loc 1 665 6 setp.gt.s32 %r671,%r343,1; @ %r671 bra $L177; .loc 1 667 22 and.b64 %r672,%r337,4503599627370495; .loc 1 667 10 setp.ne.u64 %r673,%r672,0; @ %r673 bra $L178; .loc 1 669 7 shr.u64 %r674,%r337,32; .loc 1 669 17 cvt.u32.u64 %r676,%r674; and.b32 %r675,%r676,2146435072; .loc 1 669 4 setp.eq.u32 %r677,%r675,0; @ %r677 bra $L179; $L156: .loc 1 674 7 add.u32 %r160,%r160,1; .loc 1 675 7 add.u32 %r173,%r173,1; .loc 1 676 14 mov.u32 %r174,1; bra $L107; $L177: .loc 1 664 13 mov.u32 %r174,0; bra $L107; $L178: mov.u32 %r174,0; bra $L107; $L179: cvt.u32.u64 %r174,%r672; $L107: .loc 1 689 53 setp.eq.u32 %r678,%r167,0; @ %r678 bra $L180; bra $L106; $L196: .loc 1 664 13 mov.u32 %r174,0; $L106: .loc 1 689 47 ld.u32 %r681,[%r270+20]; add.u32 %r680,%r681,-1; .loc 1 689 24 cvt.s64.s32 %r682,%r680; add.u64 %r683,%r682,4; shl.b64 %r684,%r683,2; add.u64 %r685,%r270,%r684; ld.u32 %r679,[%r685+8]; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r679; call (%value_in),__hi0bits,(%out_arg1); ld.param.u32 %r687,[%value_in]; } .loc 1 689 53 mov.u32 %r688,32; sub.u32 %r186,%r688,%r687; bra $L108; $L180: mov.u32 %r186,1; $L108: .loc 1 689 58 add.u32 %r689,%r186,%r173; .loc 1 689 10 and.b32 %r220,%r689,31; .loc 1 689 6 setp.eq.u32 %r690,%r220,0; @ %r690 bra $L181; .loc 1 690 7 mov.u32 %r691,32; sub.u32 %r221,%r691,%r220; .loc 1 695 6 setp.le.s32 %r692,%r221,4; @ %r692 bra $L110; .loc 1 697 9 mov.u32 %r693,28; sub.u32 %r222,%r693,%r220; .loc 1 698 10 add.u32 %r160,%r160,%r222; .loc 1 699 10 add.u32 %r171,%r171,%r222; .loc 1 700 10 add.u32 %r173,%r173,%r222; bra $L111; $L110: .loc 1 702 11 setp.eq.u32 %r694,%r221,4; @ %r694 bra $L111; mov.u32 %r695,60; sub.u32 %r312,%r695,%r220; bra $L109; $L181: mov.u32 %r312,28; $L109: .loc 1 705 10 add.u32 %r160,%r160,%r312; .loc 1 706 10 add.u32 %r171,%r171,%r312; .loc 1 707 10 add.u32 %r173,%r173,%r312; $L111: .loc 1 709 6 setp.le.s32 %r696,%r160,0; @ %r696 bra $L112; .loc 1 710 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r176; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r160; call (%value_in),__lshift,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r700,[%value_in]; } mov.u64 %r176,%r700; $L112: .loc 1 711 6 setp.le.s32 %r701,%r173,0; @ %r701 bra $L113; .loc 1 712 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r270; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r173; call (%value_in),__lshift,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r705,[%value_in]; } mov.u64 %r270,%r705; $L113: set.u32.gt.s32 %r707,%r343,2; neg.s32 %r708,%r707; cvt.u32.u32 %r706,%r708; cvt.u32.u8 %r329,%r706; .loc 1 713 6 setp.eq.u32 %r709,%r170,0; @ %r709 bra $L114; .loc 1 715 11 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r176; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r270; call (%value_in),__mcmp,(%out_arg1,%out_arg2); ld.param.u32 %r712,[%value_in]; } .loc 1 715 10 setp.ge.s32 %r713,%r712,0; @ %r713 bra $L114; .loc 1 717 5 add.u32 %r223,%r328,-1; .loc 1 718 8 mov.u32 %r717,0; mov.u32 %r716,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r176; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r716; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r717; call (%value_in),__multadd,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r718,[%value_in]; } mov.u64 %r176,%r718; set.u32.le.s32 %r720,%r272,0; neg.s32 %r721,%r720; cvt.u16.u32 %r723,%r721; cvt.u16.u32 %r724,%r329; and.b16 %r722,%r723,%r724; cvt.u32.u16 %r725,%r722; cvt.u32.u8 %r311,%r725; .loc 1 719 7 @ %r962 bra $L115; .loc 1 720 12 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r179; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r716; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r717; call (%value_in),__multadd,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r731,[%value_in]; } mov.u64 %r179,%r731; .loc 1 724 6 setp.ne.u32 %r732,%r311,0; @ %r732 bra $L182; mov.u32 %r236,%r272; bra $L117; $L114: .loc 1 724 12 set.u32.le.s32 %r734,%r236,0; neg.s32 %r735,%r734; .loc 1 724 17 cvt.u16.u32 %r737,%r735; cvt.u16.u32 %r738,%r329; and.b16 %r736,%r737,%r738; .loc 1 724 6 cvt.u32.u16 %r739,%r736; cvt.u16.u8 %r740,%r739; setp.eq.u16 %r741,%r740,0; @ %r741 bra $L118; bra $L116; $L182: .loc 1 717 5 mov.u32 %r328,%r223; .loc 1 724 6 mov.u32 %r236,%r272; bra $L116; $L190: .loc 1 717 5 mov.u32 %r328,%r223; .loc 1 724 6 mov.u32 %r236,%r272; $L116: .loc 1 726 10 setp.ne.u32 %r742,%r236,0; @ %r742 bra $L63; .loc 1 726 35 mov.u32 %r745,5; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r270; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r745; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r236; call (%value_in),__multadd,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r747,[%value_in]; } mov.u64 %r270,%r747; .loc 1 726 23 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r176; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r270; call (%value_in),__mcmp,(%out_arg1,%out_arg2); ld.param.u32 %r750,[%value_in]; } .loc 1 726 20 setp.gt.s32 %r751,%r750,0; @ %r751 bra $L62; bra $L63; $L168: .loc 1 484 6 mov.u64 %r270,0; .loc 1 484 12 mov.u64 %r179,%r270; bra $L63; $L170: .loc 1 555 6 mov.u64 %r270,0; .loc 1 555 12 mov.u64 %r179,%r270; bra $L63; $L171: .loc 1 555 6 mov.u64 %r270,0; .loc 1 555 12 mov.u64 %r179,%r270; $L63: .loc 1 730 6 not.b32 %r232,%r344; .loc 1 731 4 mov.u64 %r340,%r56; bra $L119; $L167: .loc 1 484 6 mov.u64 %r270,0; .loc 1 484 12 mov.u64 %r179,%r270; $L62: .loc 1 734 12 mov.u32 %r752,49; st.u8 [%r56],%r752; .loc 1 735 8 add.u32 %r232,%r328,1; .loc 1 736 7 mov.u64 %r340,%r56; .loc 1 734 9 add.u64 %r56,%r56,1; .loc 1 736 7 bra $L119; $L118: add.u32 %r328,%r328,1; .loc 1 738 6 @ %r962 bra $L120; $L117: .loc 1 740 10 setp.le.s32 %r754,%r171,0; @ %r754 bra $L121; .loc 1 741 8 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r179; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r171; call (%value_in),__lshift,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r758,[%value_in]; } mov.u64 %r179,%r758; $L121: .loc 1 748 10 setp.eq.u32 %r759,%r174,0; @ %r759 bra $L183; .loc 1 750 10 ld.u32 %r129,[%r179+8]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r129; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r762,[%value_in]; } .loc 1 751 4 ld.s32 %r766,[%r179+20]; add.u64 %r767,%r766,2; shl.b64 %r768,%r767,2; add.u64 %r769,%r179,16; add.u64 %r770,%r762,16; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r770; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r769; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r768; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r771,[%value_in]; } .loc 1 752 10 mov.u32 %r774,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r762; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r774; call (%value_in),__lshift,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r775,[%value_in]; } mov.u64 %r180,%r775; bra $L122; $L183: mov.u64 %r180,%r179; $L122: mov.u64 %r72,%r56; add.u32 %r776,%r236,-1; cvt.u64.u32 %r777,%r776; add.u64 %r260,%r777,%r56; .loc 1 766 40 cvt.u32.u64 %r965,%r337; and.b32 %r966,%r965,1; $L138: .loc 1 757 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r176; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r270; call (%value_in),quorem,(%out_arg1,%out_arg2); ld.param.u32 %r780,[%value_in]; } .loc 1 757 8 add.u32 %r162,%r780,48; .loc 1 761 8 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r176; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r179; call (%value_in),__mcmp,(%out_arg1,%out_arg2); ld.param.u32 %r783,[%value_in]; } .loc 1 762 12 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r270; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r180; call (%value_in),__mdiff,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r787,[%value_in]; } .loc 1 763 26 ld.u32 %r788,[%r787+16]; setp.ne.u32 %r789,%r788,0; @ %r789 bra $L123; .loc 1 763 28 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r176; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r787; call (%value_in),__mcmp,(%out_arg1,%out_arg2); ld.param.u32 %r792,[%value_in]; } mov.u32 %r227,%r792; .loc 1 764 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r787; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 766 16 or.b32 %r797,%r792,%r343; .loc 1 766 25 or.b32 %r798,%r966,%r797; setp.ne.u32 %r799,%r798,0; @ %r799 bra $L124; add.u64 %r183,%r72,1; .loc 1 768 11 setp.eq.u32 %r800,%r162,57; @ %r800 bra $L125; .loc 1 770 11 setp.le.s32 %r801,%r783,0; @ %r801 bra $L126; .loc 1 771 6 add.u32 %r162,%r780,49; $L126: .loc 1 772 13 st.u8 [%r72],%r162; .loc 1 773 8 mov.u64 %r178,%r179; mov.u64 %r179,%r180; bra $L127; $L124: add.u64 %r183,%r72,1; .loc 1 776 13 setp.lt.s32 %r802,%r783,0; @ %r802 bra $L128; .loc 1 776 35 or.b32 %r805,%r783,%r343; .loc 1 778 8 or.b32 %r806,%r966,%r805; setp.ne.u32 %r807,%r806,0; @ %r807 bra $L129; $L128: .loc 1 782 11 setp.le.s32 %r808,%r227,0; @ %r808 bra $L130; .loc 1 784 9 mov.u32 %r811,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r176; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r811; call (%value_in),__lshift,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r812,[%value_in]; } mov.u64 %r176,%r812; .loc 1 785 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r176; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r270; call (%value_in),__mcmp,(%out_arg1,%out_arg2); ld.param.u32 %r815,[%value_in]; } .loc 1 786 21 setp.gt.s32 %r816,%r815,0; @ %r816 bra $L131; .loc 1 786 32 setp.ne.u32 %r817,%r815,0; @ %r817 bra $L130; .loc 1 786 54 and.b32 %r818,%r162,1; .loc 1 786 46 setp.eq.u32 %r819,%r818,0; @ %r819 bra $L130; $L131: .loc 1 787 9 setp.eq.u32 %r820,%r162,57; @ %r820 bra $L125; .loc 1 787 15 add.u32 %r162,%r780,49; $L130: .loc 1 790 13 st.u8 [%r72],%r162; .loc 1 791 8 mov.u64 %r178,%r179; mov.u64 %r179,%r180; bra $L127; $L129: .loc 1 793 7 setp.le.s32 %r821,%r227,0; @ %r821 bra $L132; .loc 1 795 11 setp.ne.u32 %r822,%r162,57; @ %r822 bra $L133; $L125: .loc 1 798 10 mov.u32 %r823,57; st.u8 [%r72],%r823; .loc 1 799 5 mov.u64 %r178,%r179; mov.u64 %r179,%r180; mov.u32 %r309,57; bra $L134; $L133: .loc 1 801 19 cvt.u16.u32 %r826,%r162; add.u16 %r825,%r826,1; .loc 1 801 13 cvt.u32.u16 %r827,%r825; st.u8 [%r72],%r827; .loc 1 802 8 mov.u64 %r178,%r179; mov.u64 %r179,%r180; bra $L127; $L132: .loc 1 804 9 st.u8 [%r72],%r162; .loc 1 805 7 setp.eq.u64 %r828,%r260,%r72; @ %r828 bra $L184; .loc 1 807 8 mov.u32 %r832,0; mov.u32 %r831,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r176; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r831; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r832; call (%value_in),__multadd,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r833,[%value_in]; } mov.u64 %r176,%r833; .loc 1 808 7 setp.ne.u64 %r834,%r179,%r180; @ %r834 bra $L136; .loc 1 809 18 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r179; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r831; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r832; call (%value_in),__multadd,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r839,[%value_in]; } mov.u64 %r179,%r839; mov.u64 %r180,%r179; bra $L137; $L136: .loc 1 812 14 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r179; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r831; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r832; call (%value_in),__multadd,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r844,[%value_in]; } mov.u64 %r179,%r844; .loc 1 813 14 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r180; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r831; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r832; call (%value_in),__multadd,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r849,[%value_in]; } mov.u64 %r180,%r849; $L137: mov.u64 %r72,%r183; .loc 1 757 8 bra $L138; $L120: .loc 1 724 6 mov.u64 %r259,%r56; .loc 1 821 5 mov.u32 %r854,1; cvt.u32.u64 %r855,%r56; sub.u32 %r853,%r854,%r855; $L139: .loc 1 820 15 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r176; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r270; call (%value_in),quorem,(%out_arg1,%out_arg2); ld.param.u32 %r852,[%value_in]; } .loc 1 820 13 add.u32 %r162,%r852,48; add.u64 %r183,%r259,1; .loc 1 820 7 st.u8 [%r259],%r162; .loc 1 821 5 cvt.u32.u64 %r857,%r259; add.u32 %r856,%r853,%r857; setp.ge.s32 %r858,%r856,%r236; @ %r858 bra $L185; .loc 1 823 6 mov.u32 %r862,0; mov.u32 %r861,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r176; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r861; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r862; call (%value_in),__multadd,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r863,[%value_in]; } mov.u64 %r176,%r863; mov.u64 %r259,%r183; .loc 1 820 7 bra $L139; $L184: mov.u64 %r178,%r179; mov.u64 %r179,%r180; bra $L135; $L185: .loc 1 598 13 mov.u64 %r178,0; $L135: .loc 1 828 7 mov.u32 %r866,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r176; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r866; call (%value_in),__lshift,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r867,[%value_in]; } mov.u64 %r176,%r867; .loc 1 829 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r176; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r270; call (%value_in),__mcmp,(%out_arg1,%out_arg2); ld.param.u32 %r870,[%value_in]; } .loc 1 830 6 setp.gt.s32 %r871,%r870,0; @ %r871 bra $L140; ld.s8 %r309,[%r183+-1]; .loc 1 830 15 setp.ne.u32 %r872,%r870,0; @ %r872 bra $L141; .loc 1 830 36 and.b32 %r873,%r162,1; .loc 1 830 28 setp.ne.u32 %r874,%r873,0; @ %r874 bra $L134; bra $L141; $L144: add.u64 %r278,%r278,-1; .loc 1 834 5 setp.eq.u64 %r875,%r961,%r56; @ %r875 bra $L142; ld.s8 %r309,[%r278]; mov.u64 %r183,%r961; add.u64 %r961,%r961,-1; bra $L143; $L142: .loc 1 837 11 mov.u32 %r876,49; st.u8 [%r56],%r876; add.u32 %r328,%r328,1; .loc 1 838 6 bra $L127; $L140: ld.s8 %r309,[%r183+-1]; $L134: add.u64 %r961,%r183,-1; mov.u64 %r278,%r961; $L143: .loc 1 833 13 cvt.u16.u32 %r877,%r309; setp.eq.u16 %r878,%r877,57; @ %r878 bra $L144; .loc 1 840 7 add.u16 %r880,%r877,1; cvt.u32.u16 %r882,%r880; st.u8 [%r961],%r882; bra $L127; $L141: add.u64 %r275,%r183,-1; $L145: add.u64 %r183,%r275,1; add.u64 %r275,%r275,-1; .loc 1 844 13 cvt.u16.u32 %r883,%r309; setp.ne.u16 %r884,%r883,48; @ %r884 bra $L127; ld.s8 %r309,[%r275]; bra $L145; $L127: .loc 1 848 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r270; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 849 6 setp.eq.u64 %r887,%r179,0; @ %r887 bra $L186; .loc 1 851 11 set.u32.ne.u64 %r889,%r178,0; neg.s32 %r890,%r889; .loc 1 851 22 set.u32.ne.u64 %r892,%r178,%r179; neg.s32 %r893,%r892; .loc 1 851 15 cvt.u16.u32 %r895,%r890; cvt.u16.u32 %r896,%r893; and.b16 %r894,%r895,%r896; .loc 1 851 10 cvt.u32.u16 %r897,%r894; cvt.u16.u8 %r898,%r897; setp.eq.u16 %r899,%r898,0; @ %r899 bra $L187; .loc 1 852 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r178; call _Bfree,(%out_arg1,%out_arg2); } mov.u64 %r340,%r56; mov.u64 %r56,%r183; bra $L146; $L187: mov.u64 %r340,%r56; mov.u64 %r56,%r183; $L146: .loc 1 853 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r179; call _Bfree,(%out_arg1,%out_arg2); } bra $L67; $L172: .loc 1 590 7 mov.u64 %r340,%r56; .loc 1 572 6 mov.u64 %r56,%r234; bra $L67; $L173: mov.u64 %r340,%r56; mov.u64 %r56,%r234; bra $L67; $L174: mov.u64 %r340,%r56; mov.u64 %r56,%r234; bra $L67; $L175: mov.u64 %r340,%r56; mov.u64 %r56,%r105; bra $L67; $L186: .loc 1 855 1 mov.u64 %r340,%r56; mov.u64 %r56,%r183; $L67: .loc 1 856 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r176; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 857 6 mov.u32 %r906,0; st.u8 [%r56],%r906; .loc 1 858 10 st.u32 [%r345],%r328; .loc 1 859 6 setp.eq.u64 %r907,%r347,0; @ %r907 bra $L18; .loc 1 860 10 st.u64 [%r347],%r56; bra $L18; $L157: .loc 1 288 14 cvta.const.u64 %r340,$LC2; bra $L18; $L23: .loc 1 270 10 setp.ne.u64 %r909,%r347,0; @ %r909 bra $L188; .loc 1 267 52 cvta.const.u64 %r340,$LC0; bra $L18; $L263: .loc 1 270 10 setp.ne.u64 %r910,%r347,0; @ %r910 bra $L189; .loc 1 267 52 cvta.const.u64 %r340,$LC1; bra $L18; $L119: .loc 1 848 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r270; call _Bfree,(%out_arg1,%out_arg2); } add.u32 %r328,%r232,1; .loc 1 849 6 setp.ne.u64 %r913,%r179,0; @ %r913 bra $L146; bra $L67; $L115: .loc 1 724 6 setp.ne.u32 %r914,%r311,0; @ %r914 bra $L190; mov.u32 %r236,%r272; bra $L120; $L59: .loc 1 480 20 cvt.rn.f64.s32 %r915,%r165; .loc 1 480 26 fma.rn.f64 %r291,%r915,%r316,0d401c000000000000; .loc 1 480 13 mov.b64 %r339,%r291; .loc 1 481 19 shr.u64 %r917,%r339,32; cvt.u32.u64 %r919,%r917; add.u32 %r918,%r919,-54525952; cvt.u64.u32 %r920,%r918; shl.b64 %r921,%r920,32; and.b64 %r922,%r339,4294967295; or.b64 %r339,%r922,%r921; bra $L148; $L123: .loc 1 764 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r787; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 763 26 mov.u32 %r227,1; bra $L124; $L160: mov.u32 %r343,0; .loc 1 392 10 mov.u32 %r304,%r343; .loc 1 399 13 mov.u32 %r265,1; .loc 1 400 8 mov.u32 %r236,-1; .loc 1 406 15 mov.u32 %r344,%r343; bra $L39; $L162: .loc 1 413 10 mov.u32 %r344,1; mov.u32 %r236,%r344; $L39: .loc 1 427 32 mov.u32 %r926,0; st.u32 [%r341+104],%r926; mov.u32 %r272,%r236; mov.u32 %r53,%r926; bra $L42; $L153: mov.u32 %r927,0; st.u32 [%r341+104],%r927; .loc 1 430 27 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r927; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r930,[%value_in]; } mov.u64 %r56,%r930; .loc 1 430 25 st.u64 [%r341+96],%r56; .loc 1 549 10 ld.u32 %r97,[%frame]; .loc 1 549 15 set.u32.le.s32 %r932,%r328,14; neg.s32 %r933,%r932; .loc 1 549 6 not.b32 %r935,%r97; shr.u32 %r936,%r935,31; .loc 1 549 15 cvt.u16.u32 %r939,%r933; cvt.u16.u32 %r940,%r936; and.b16 %r938,%r939,%r940; cvt.u32.u16 %r941,%r938; cvt.u16.u8 %r942,%r941; setp.ne.u16 %r943,%r942,0; @ %r943 bra $L149; .loc 1 406 15 mov.u32 %r344,%r927; .loc 1 400 8 mov.u32 %r236,-1; .loc 1 400 16 mov.u32 %r272,%r236; setp.eq.u32 %r962,1,0; bra $L271; $L161: mov.u32 %r304,1; $L40: setp.eq.u32 %r944,%r343,3; @ %r944 bra $L191; setp.gt.s32 %r945,%r343,3; @ %r945 bra $L151; setp.eq.u32 %r946,%r343,2; @ %r946 bra $L192; bra $L153; $L151: setp.eq.u32 %r947,%r343,4; @ %r947 bra $L193; setp.eq.u32 %r948,%r343,5; @ %r948 bra $L194; bra $L153; $L264: .loc 1 369 6 setp.ge.s32 %r949,%r173,0; @ %r949 bra $L195; .loc 1 366 15 mov.u32 %r170,0; bra $L155; $L105: .loc 1 667 22 and.b64 %r950,%r337,4503599627370495; .loc 1 667 10 setp.ne.u64 %r951,%r950,0; @ %r951 bra $L196; .loc 1 669 7 shr.u64 %r952,%r337,32; .loc 1 669 17 cvt.u32.u64 %r954,%r952; and.b32 %r953,%r954,2146435072; .loc 1 669 4 setp.ne.u32 %r955,%r953,0; @ %r955 bra $L156; .loc 1 664 13 cvt.u32.u64 %r174,%r950; bra $L106; $L149: .loc 1 552 10 cvta.const.u64 %r956,__mprec_tens; cvt.s64.s32 %r957,%r328; shl.b64 %r958,%r957,3; add.u64 %r959,%r956,%r958; ld.f64 %r210,[%r959]; .loc 1 400 8 mov.u32 %r236,-1; bra $L83; $L18: .loc 1 862 1 mov.u64 %value,%r340; st.param.u64 [%value_out],%value; ret; } /0 1591654539 399 399 100644 2063 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 20 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 21 1 mov.u64 %value,%r38; st.param.u64 [%value_out],%value; ret; } lib_a-ecvtbuf.o/1591654539 399 399 100644 34848 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r26; .reg .u64 %r41; .reg .u64 %r42; .reg .u64 %r43; .reg .u64 %r44; .reg .u64 %r46; .reg .u64 %r47; .reg .u32 %r49; .reg .u32 %r50; .reg .u32 %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .f64 %r68; .reg .u32 %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .u32 %r74; .reg .u64 %r79; .reg .u64 %r80; .reg .u32 %r81; .reg .u64 %r82; .reg .pred %r83; .reg .u64 %r86; .reg .u32 %r87; .reg .u32 %r88; .reg .pred %r89; .reg .u32 %r90; .reg .u16 %r92; .reg .u32 %r93; .reg .u32 %r94; .reg .u32 %r96; .reg .u32 %r97; .reg .u16 %r98; .reg .u16 %r99; .reg .u16 %r100; .reg .u32 %r101; .reg .u16 %r102; .reg .pred %r103; .reg .u32 %r104; .reg .u32 %r106; .reg .u32 %r107; .reg .u16 %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 .u16 %r118; .reg .pred %r119; .reg .pred %r121; .reg .u16 %r122; .reg .pred %r123; .reg .pred %r125; .reg .pred %r126; .reg .u64 %r128; .reg .u64 %r129; .reg .u32 %r130; .reg .pred %r131; .reg .u64 %r133; .reg .u64 %r134; .reg .u32 %r135; .reg .pred %r136; .reg .u32 %r137; .reg .u32 %r138; .reg .u32 %r139; .reg .pred %r140; .reg .u16 %r142; .reg .u16 %r143; .reg .u32 %r144; .reg .u16 %r147; .reg .u16 %r148; .reg .u32 %r149; .reg .u32 %r151; .reg .u32 %r152; .reg .u32 %r153; .reg .u32 %r155; .reg .u16 %r157; .reg .u16 %r158; .reg .u32 %r159; .reg .u32 %r160; .reg .u32 %r161; mov.u64 %r66,%ar0; mov.u64 %r67,%ar1; mov.f64 %r68,%ar2; mov.u32 %r69,%ar3; mov.u32 %r70,%ar4; mov.u32 %r71,%ar5; .loc 1 161 7 add.u64 %r79,%frame,12; add.u64 %r80,%frame,8; add.u32 %r81,%r69,1; mov.u32 %r74,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r66; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r68; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r74; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r81; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r80; .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 %r82,[%value_in]; } .loc 1 163 13 ld.u32 %r23,[%frame+8]; .loc 1 163 6 setp.ne.u32 %r83,%r23,9999; @ %r83 bra $L2; .loc 1 165 7 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r67; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r82; call (%value_in),strcpy,(%out_arg1,%out_arg2); ld.param.u64 %r86,[%value_in]; } bra $L1; $L2: .loc 1 169 14 add.u64 %r46,%r82,1; .loc 1 169 10 ld.u8 %r87,[%r82]; st.u8 [%r67],%r87; .loc 1 170 11 or.b32 %r88,%r69,%r71; .loc 1 170 6 setp.eq.u32 %r89,%r88,0; @ %r89 bra $L4; .loc 1 171 9 add.u64 %r41,%r67,2; .loc 1 171 12 mov.u32 %r90,46; st.u8 [%r67+1],%r90; .loc 1 173 10 ld.s8 %r26,[%r82+1]; .loc 1 173 9 cvt.u16.u32 %r92,%r26; set.u32.ne.u16 %r93,%r92,0; neg.s32 %r94,%r93; .loc 1 173 13 set.u32.gt.s32 %r96,%r69,0; neg.s32 %r97,%r96; cvt.u16.u32 %r99,%r94; cvt.u16.u32 %r100,%r97; and.b16 %r98,%r99,%r100; cvt.u32.u16 %r101,%r98; cvt.u16.u8 %r102,%r101; setp.eq.u16 %r103,%r102,0; @ %r103 bra $L5; mov.u64 %r43,%r41; $L6: .loc 1 175 18 add.u64 %r46,%r46,1; add.u64 %r41,%r41,1; .loc 1 175 14 cvt.u32.u32 %r104,%r26; st.u8 [%r43],%r104; .loc 1 176 13 add.u32 %r69,%r69,-1; .loc 1 173 10 ld.s8 %r26,[%r46]; mov.u64 %r43,%r41; .loc 1 173 13 set.u32.gt.s32 %r106,%r69,0; neg.s32 %r107,%r106; .loc 1 173 9 cvt.u16.u32 %r109,%r26; set.u32.ne.u16 %r110,%r109,0; neg.s32 %r111,%r110; .loc 1 173 13 cvt.u16.u32 %r113,%r107; cvt.u16.u32 %r114,%r111; and.b16 %r112,%r113,%r114; cvt.u32.u16 %r115,%r112; cvt.u16.u8 %r116,%r115; setp.ne.u16 %r117,%r116,0; @ %r117 bra $L6; bra $L5; $L4: .loc 1 169 7 add.u64 %r41,%r67,1; .loc 1 182 6 cvt.u16.u32 %r118,%r70; setp.eq.u16 %r119,%r118,103; @ %r119 bra $L12; .loc 1 184 11 setp.eq.u16 %r121,%r118,71; .loc 1 185 10 selp.u32 %r70,69,%r70,%r121; bra $L7; $L5: .loc 1 182 6 cvt.u16.u32 %r122,%r70; setp.eq.u16 %r123,%r122,103; @ %r123 bra $L14; .loc 1 184 11 setp.eq.u16 %r125,%r122,71; @ %r125 bra $L15; .loc 1 188 13 setp.le.s32 %r126,%r69,0; @ %r126 bra $L7; mov.u64 %r47,%r41; add.u32 %r161,%r69,-1; cvt.u64.u32 %r128,%r161; add.u64 %r129,%r41,1; add.u64 %r44,%r128,%r129; .loc 1 190 11 mov.u32 %r130,48; $L8: st.u8 [%r47],%r130; add.u64 %r47,%r47,1; .loc 1 188 13 setp.ne.u64 %r131,%r44,%r47; @ %r131 bra $L8; cvt.s64.s32 %r133,%r161; add.u64 %r134,%r133,1; add.u64 %r41,%r41,%r134; bra $L7; $L12: .loc 1 183 10 mov.u32 %r70,101; bra $L7; $L14: mov.u32 %r70,101; bra $L7; $L15: .loc 1 185 10 mov.u32 %r70,69; $L7: .loc 1 197 10 cvt.u32.u32 %r135,%r70; st.u8 [%r41],%r135; .loc 1 198 8 add.u32 %r65,%r23,-1; add.u64 %r42,%r41,2; .loc 1 199 6 setp.ge.s32 %r136,%r65,0; @ %r136 bra $L9; .loc 1 201 14 mov.u32 %r137,45; st.u8 [%r41+1],%r137; .loc 1 202 15 mov.u32 %r138,1; sub.u32 %r65,%r138,%r23; bra $L10; $L9: .loc 1 206 14 mov.u32 %r139,43; st.u8 [%r41+1],%r139; $L10: .loc 1 208 6 setp.le.s32 %r140,%r65,99; @ %r140 bra $L11; .loc 1 210 11 div.s32 %r49,%r65,100; .loc 1 211 11 add.u64 %r42,%r41,3; .loc 1 211 20 cvt.u16.u32 %r143,%r49; add.u16 %r142,%r143,48; .loc 1 211 14 cvt.u32.u16 %r144,%r142; st.u8 [%r41+2],%r144; .loc 1 212 13 mad.lo.u32 %r65,%r49,-100,%r65; $L11: .loc 1 214 7 div.s32 %r50,%r65,10; .loc 1 215 16 cvt.u16.u32 %r148,%r50; add.u16 %r147,%r148,48; .loc 1 215 10 cvt.u32.u16 %r149,%r147; st.u8 [%r42],%r149; .loc 1 216 16 shl.b32 %r151,%r50,2; add.u32 %r152,%r151,%r50; add.u32 %r153,%r152,%r152; .loc 1 216 9 sub.u32 %r155,%r65,%r153; .loc 1 217 18 cvt.u16.u32 %r158,%r155; add.u16 %r157,%r158,48; .loc 1 217 10 cvt.u32.u16 %r159,%r157; st.u8 [%r42+1],%r159; .loc 1 219 10 mov.u32 %r160,0; st.u8 [%r42+2],%r160; $L1: .loc 1 220 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 %r30; .reg .u64 %r32; .reg .u64 %r33; .reg .u32 %r34; .reg .u64 %r38; .reg .u64 %r43; .reg .u64 %r44; .reg .u64 %r45; .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 .pred %r66; .reg .pred %r67; .reg .u32 %r70; .reg .u64 %r75; .reg .u32 %r78; .reg .u64 %r83; .reg .u32 %r84; .reg .u64 %r85; .reg .pred %r86; .reg .u32 %r87; .reg .u64 %r88; .reg .pred %r89; .reg .pred %r90; .reg .u32 %r91; .reg .u32 %r92; .reg .u64 %r93; .reg .u32 %r94; .reg .pred %r95; .reg .u64 %r96; .reg .u32 %r97; mov.f64 %r51,%ar0; mov.u32 %r52,%ar1; mov.u64 %r53,%ar2; mov.u64 %r54,%ar3; mov.u64 %r55,%ar4; .loc 1 236 18 ld.global.u64 %r32,[_impure_ptr]; .loc 1 242 6 setp.ne.u64 %r56,%r55,0; @ %r56 bra $L22; ld.u64 %r55,[%r32+136]; .loc 1 244 36 add.u32 %r57,%r52,35; .loc 1 244 10 ld.u32 %r58,[%r32+128]; setp.gt.s32 %r59,%r58,%r57; @ %r59 bra $L22; .loc 1 247 20 add.u32 %r24,%r52,36; .loc 1 246 29 cvt.s64.s32 %r63,%r24; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .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 246 7 setp.eq.u64 %r65,%r55,0; @ %r65 bra $L33; .loc 1 249 19 st.u32 [%r32+128],%r24; .loc 1 250 19 st.u64 [%r32+136],%r55; $L22: .loc 1 258 6 setp.lt.f64 %r66,%r51,0d3ff0000000000000; @ ! %r66 bra $L25; .loc 1 258 21 setp.gt.f64 %r67,%r51,0dbff0000000000000; @ ! %r67 bra $L25; .loc 1 260 11 mov.u32 %r70,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r51; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r70; .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 %r75,[%value_in]; } mov.u64 %r30,%r75; .loc 1 260 9 bra $L28; $L25: .loc 1 264 11 mov.u32 %r78,3; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r51; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r78; .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 %r83,[%value_in]; } mov.u64 %r30,%r83; $L28: .loc 1 269 8 ld.u32 %r84,[%r53]; neg.s32 %r34,%r84; .loc 1 270 9 ld.u64 %r85,[%frame]; setp.ge.u64 %r86,%r30,%r85; @ %r86 bra $L34; mov.u64 %r33,%r55; mov.u64 %r45,%r30; $L30: add.u64 %r38,%r33,1; .loc 1 272 19 ld.u8 %r87,[%r45]; st.u8 [%r33],%r87; .loc 1 273 11 add.u32 %r34,%r34,1; add.u64 %r45,%r45,1; mov.u64 %r33,%r38; .loc 1 270 9 ld.u64 %r88,[%frame]; setp.gt.u64 %r89,%r88,%r45; @ %r89 bra $L30; bra $L29; $L34: mov.u64 %r38,%r55; $L29: .loc 1 276 9 setp.le.s32 %r90,%r52,%r34; @ %r90 bra $L31; mov.u64 %r29,%r38; add.u32 %r91,%r52,-1; sub.u32 %r92,%r91,%r34; cvt.u64.u32 %r43,%r92; add.u64 %r93,%r38,1; add.u64 %r44,%r93,%r43; .loc 1 278 19 mov.u32 %r94,48; $L32: st.u8 [%r29],%r94; add.u64 %r29,%r29,1; .loc 1 276 9 setp.ne.u64 %r95,%r29,%r44; @ %r95 bra $L32; add.u64 %r96,%r43,1; add.u64 %r38,%r38,%r96; $L31: .loc 1 281 15 mov.u32 %r97,0; st.u8 [%r38],%r97; .loc 1 282 10 mov.u64 %r50,%r55; bra $L21; $L33: .loc 1 248 13 mov.u64 %r50,%r64; $L21: .loc 1 283 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 %r31; .reg .u32 %r32; .reg .u64 %r35; .reg .u64 %r41; .reg .u64 %r42; .reg .u64 %r43; .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 293 18 ld.global.u64 %r29,[_impure_ptr]; .loc 1 299 6 setp.ne.u64 %r54,%r53,0; @ %r54 bra $L40; ld.u64 %r53,[%r29+136]; .loc 1 301 10 ld.u32 %r55,[%r29+128]; setp.gt.s32 %r56,%r55,%r50; @ %r56 bra $L40; .loc 1 304 20 add.u32 %r23,%r50,1; .loc 1 303 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 303 7 setp.eq.u64 %r62,%r53,0; @ %r62 bra $L47; .loc 1 306 19 st.u32 [%r29+128],%r23; .loc 1 307 19 st.u64 [%r29+136],%r53; $L40: .loc 1 315 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 319 9 ld.u64 %r71,[%frame]; setp.ge.u64 %r72,%r70,%r71; @ %r72 bra $L48; mov.u64 %r31,%r53; mov.u64 %r43,%r70; .loc 1 297 7 mov.u32 %r32,0; $L44: add.u64 %r35,%r31,1; .loc 1 321 19 ld.u8 %r73,[%r43]; st.u8 [%r31],%r73; .loc 1 322 11 add.u32 %r32,%r32,1; add.u64 %r43,%r43,1; mov.u64 %r31,%r35; .loc 1 319 9 ld.u64 %r74,[%frame]; setp.gt.u64 %r75,%r74,%r43; @ %r75 bra $L44; bra $L43; $L48: mov.u64 %r35,%r53; .loc 1 297 7 mov.u32 %r32,0; $L43: .loc 1 325 9 setp.le.s32 %r76,%r50,%r32; @ %r76 bra $L45; mov.u64 %r27,%r35; add.u32 %r77,%r50,-1; sub.u32 %r78,%r77,%r32; cvt.u64.u32 %r41,%r78; add.u64 %r79,%r35,1; add.u64 %r42,%r79,%r41; .loc 1 327 19 mov.u32 %r80,48; $L46: st.u8 [%r27],%r80; add.u64 %r27,%r27,1; .loc 1 325 9 setp.ne.u64 %r81,%r27,%r42; @ %r81 bra $L46; add.u64 %r82,%r41,1; add.u64 %r35,%r35,%r82; $L45: .loc 1 330 15 mov.u32 %r83,0; st.u8 [%r35],%r83; .loc 1 331 10 mov.u64 %r48,%r53; bra $L39; $L47: .loc 1 305 13 mov.u64 %r48,%r61; $L39: .loc 1 332 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 %r24; .reg .u32 %r26; .reg .u32 %r28; .reg .u32 %r29; .reg .u64 %r30; .reg .u32 %r33; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u64 %r43; .reg .u64 %r46; .reg .u64 %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .u32 %r54; .reg .u32 %r63; .reg .u64 %r68; .reg .u64 %r70; .reg .u32 %r73; .reg .u64 %r75; .reg .u64 %r85; .reg .f64 %r86; .reg .u32 %r87; .reg .u64 %r88; .reg .u32 %r89; .reg .u32 %r90; .reg .pred %r91; .reg .pred %r92; .reg .u32 %r93; .reg .u32 %r94; .reg .pred %r95; .reg .u32 %r102; .reg .f64 %r104; .reg .pred %r105; .reg .pred %r106; .reg .u32 %r109; .reg .u64 %r114; .reg .u64 %r115; .reg .u64 %r116; .reg .u32 %r119; .reg .u64 %r124; .reg .u64 %r125; .reg .u64 %r126; .reg .pred %r127; .reg .pred %r128; .reg .pred %r129; .reg .u64 %r132; .reg .u32 %r133; .reg .u32 %r134; .reg .pred %r135; .reg .u32 %r137; .reg .u32 %r138; .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 .pred %r148; .reg .u32 %r149; .reg .u32 %r151; .reg .u32 %r152; .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 .u16 %r163; .reg .u32 %r164; .reg .pred %r165; .reg .pred %r166; .reg .u32 %r167; .reg .u32 %r168; .reg .u32 %r169; .reg .u32 %r170; .reg .u32 %r171; .reg .u32 %r173; .reg .u16 %r175; .reg .u16 %r176; .reg .u16 %r177; .reg .u32 %r178; .reg .u16 %r179; .reg .pred %r180; .reg .u32 %r181; .reg .u32 %r182; .reg .u32 %r183; .reg .u32 %r184; .reg .u32 %r186; .reg .u16 %r188; .reg .u16 %r189; .reg .u16 %r190; .reg .u32 %r191; .reg .u16 %r192; .reg .pred %r193; .reg .u16 %r195; .reg .u32 %r196; .reg .u32 %r197; .reg .u16 %r198; .reg .u16 %r199; .reg .u16 %r200; .reg .u32 %r201; .reg .u16 %r202; .reg .pred %r203; .reg .u32 %r204; .reg .u16 %r206; .reg .u32 %r207; .reg .u32 %r208; .reg .u32 %r210; .reg .u32 %r211; .reg .u16 %r212; .reg .u16 %r213; .reg .u16 %r214; .reg .u32 %r215; .reg .u16 %r216; .reg .pred %r217; .reg .pred %r218; .reg .pred %r219; .reg .u64 %r221; .reg .u64 %r222; .reg .u32 %r223; .reg .pred %r224; .reg .u64 %r226; .reg .u64 %r227; .reg .u32 %r228; .reg .u32 %r230; mov.u64 %r85,%ar0; mov.f64 %r86,%ar1; mov.u32 %r87,%ar2; mov.u64 %r88,%ar3; mov.u32 %r89,%ar4; mov.u32 %r90,%ar5; .loc 1 347 6 setp.lt.f64 %r91,%r86,0d0000000000000000; @ ! %r91 bra $L52; .loc 1 349 15 neg.f64 %r86,%r86; $L52: .loc 1 352 6 setp.neu.f64 %r92,%r86,0d0000000000000000; @ %r92 bra $L54; .loc 1 354 14 mov.u32 %r93,48; st.u8 [%r88],%r93; .loc 1 355 12 mov.u32 %r94,0; st.u8 [%r88+1],%r94; bra $L55; $L54: .loc 1 363 6 setp.le.f64 %r95,%r86,0d3f1a36e2eb1c432d; @ ! %r95 bra $L97; $L58: .loc 1 372 7 add.u32 %r102,%r87,-1; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r85; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r88; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r86; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r102; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r89; .param .u32 %out_arg6; st.param.u32 [%out_arg6],%r90; call print_e,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); } bra $L55; $L97: .loc 1 363 39 { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r87; call (%value_in),_mprec_log10,(%out_arg1); ld.param.f64 %r104,[%value_in]; } .loc 1 363 25 setp.le.f64 %r105,%r104,%r86; @ %r105 bra $L58; .loc 1 381 10 setp.lt.f64 %r106,%r86,0d3ff0000000000000; @ ! %r106 bra $L98; .loc 1 384 8 add.u64 %r114,%frame,8; add.u64 %r115,%frame,12; mov.u32 %r109,3; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r85; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r86; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r109; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r87; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r115; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r114; .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 %r48,%r116; bra $L61; $L98: .loc 1 388 8 add.u64 %r124,%frame,8; add.u64 %r125,%frame,12; mov.u32 %r119,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r85; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r86; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r119; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r87; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r125; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r124; .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 %r48,%r126; $L61: .loc 1 391 17 ld.u32 %r24,[%frame+12]; .loc 1 391 10 setp.eq.u32 %r127,%r24,9999; @ %r127 bra $L62; .loc 1 396 14 ld.s8 %r29,[%r48]; .loc 1 396 13 setp.eq.u32 %r128,%r29,0; @ %r128 bra $L79; .loc 1 396 17 setp.gt.s32 %r129,%r24,0; @ %r129 bra $L64; mov.u64 %r46,%r88; mov.u32 %r26,%r87; bra $L68; $L62: .loc 1 393 4 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r88; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r48; call (%value_in),strcpy,(%out_arg1,%out_arg2); ld.param.u64 %r132,[%value_in]; } bra $L55; $L64: mov.u64 %r50,%r88; .loc 1 396 17 mov.u32 %r28,%r24; $L69: .loc 1 398 15 add.u64 %r48,%r48,1; add.u64 %r46,%r50,1; .loc 1 398 11 cvt.u32.u32 %r133,%r29; st.u8 [%r50],%r133; .loc 1 399 9 add.u32 %r28,%r28,-1; st.u32 [%frame+12],%r28; sub.u32 %r134,%r28,%r24; add.u32 %r26,%r134,%r87; .loc 1 396 14 ld.s8 %r29,[%r48]; .loc 1 396 13 setp.ne.u32 %r135,%r29,0; @ %r135 bra $L66; bra $L63; $L79: mov.u32 %r28,%r24; mov.u64 %r46,%r88; mov.u32 %r26,%r87; $L63: .loc 1 403 24 set.u32.gt.s32 %r137,%r26,0; neg.s32 %r138,%r137; .loc 1 403 13 set.u32.gt.s32 %r140,%r28,0; neg.s32 %r141,%r140; .loc 1 403 24 cvt.u16.u32 %r143,%r138; cvt.u16.u32 %r144,%r141; and.b16 %r142,%r143,%r144; cvt.u32.u16 %r145,%r142; cvt.u16.u8 %r146,%r145; setp.ne.u16 %r147,%r146,0; @ %r147 bra $L67; bra $L68; $L66: mov.u64 %r50,%r46; .loc 1 396 17 setp.ne.u32 %r148,%r28,0; @ %r148 bra $L69; bra $L68; $L67: add.u32 %r73,%r28,-1; mov.u64 %r75,%r46; .loc 1 405 11 mov.u32 %r149,48; $L70: add.u64 %r46,%r46,1; st.u8 [%r75],%r149; .loc 1 406 9 mov.u32 %r33,%r73; .loc 1 407 10 add.u32 %r26,%r26,-1; add.u32 %r73,%r73,-1; mov.u64 %r75,%r46; .loc 1 403 13 set.u32.gt.s32 %r151,%r33,0; neg.s32 %r152,%r151; .loc 1 403 24 set.u32.gt.s32 %r154,%r26,0; neg.s32 %r155,%r154; cvt.u16.u32 %r157,%r152; cvt.u16.u32 %r158,%r155; and.b16 %r156,%r157,%r158; cvt.u32.u16 %r159,%r156; cvt.u16.u8 %r160,%r159; setp.ne.u16 %r161,%r160,0; @ %r161 bra $L70; st.u32 [%frame+12],%r33; $L68: .loc 1 410 10 setp.ne.u32 %r162,%r90,0; @ %r162 bra $L71; .loc 1 410 15 ld.s8 %r164,[%r48]; cvt.u16.u32 %r163,%r164; setp.eq.u16 %r165,%r163,0; @ %r165 bra $L72; $L71: add.u64 %r68,%r46,1; .loc 1 412 7 setp.ne.u64 %r166,%r88,%r46; @ %r166 bra $L73; .loc 1 413 13 mov.u32 %r167,48; st.u8 [%r88],%r167; .loc 1 413 10 mov.u64 %r46,%r68; .loc 1 413 13 add.u64 %r68,%r88,2; $L73: .loc 1 414 11 mov.u32 %r168,46; st.u8 [%r46],%r168; .loc 1 415 17 ld.u32 %r63,[%frame+12]; .loc 1 415 21 set.u32.gt.s32 %r170,%r26,0; neg.s32 %r171,%r170; cvt.u32.u32 %r169,%r171; cvt.u32.u8 %r54,%r169; .loc 1 415 10 shr.u32 %r173,%r63,31; .loc 1 415 21 cvt.u16.u32 %r176,%r173; cvt.u16.u32 %r177,%r54; and.b16 %r175,%r176,%r177; cvt.u32.u16 %r178,%r175; cvt.u16.u8 %r179,%r178; setp.eq.u16 %r180,%r179,0; @ %r180 bra $L80; add.u32 %r37,%r63,1; mov.u64 %r70,%r68; .loc 1 417 15 mov.u32 %r181,48; $L75: add.u64 %r46,%r70,1; st.u8 [%r70],%r181; .loc 1 418 13 mov.u32 %r36,%r37; .loc 1 419 14 add.u32 %r26,%r26,-1; .loc 1 415 21 set.u32.gt.s32 %r183,%r26,0; neg.s32 %r184,%r183; cvt.u32.u32 %r182,%r184; cvt.u32.u8 %r54,%r182; add.u32 %r37,%r37,1; mov.u64 %r70,%r46; .loc 1 415 10 shr.u32 %r186,%r36,31; .loc 1 415 21 cvt.u16.u32 %r189,%r186; cvt.u16.u32 %r190,%r54; and.b16 %r188,%r189,%r190; cvt.u32.u16 %r191,%r188; cvt.u16.u8 %r192,%r191; setp.ne.u16 %r193,%r192,0; @ %r193 bra $L75; st.u32 [%frame+12],%r36; bra $L74; $L80: .loc 1 414 8 mov.u64 %r46,%r68; $L74: .loc 1 423 11 ld.s8 %r38,[%r48]; .loc 1 423 10 cvt.u16.u32 %r195,%r38; set.u32.ne.u16 %r196,%r195,0; neg.s32 %r197,%r196; .loc 1 423 14 cvt.u16.u32 %r199,%r197; cvt.u16.u32 %r200,%r54; and.b16 %r198,%r199,%r200; cvt.u32.u16 %r201,%r198; cvt.u16.u8 %r202,%r201; setp.eq.u16 %r203,%r202,0; @ %r203 bra $L76; mov.u64 %r49,%r46; $L77: .loc 1 425 19 add.u64 %r48,%r48,1; add.u64 %r46,%r46,1; .loc 1 425 15 cvt.u32.u32 %r204,%r38; st.u8 [%r49],%r204; .loc 1 426 14 add.u32 %r26,%r26,-1; .loc 1 423 11 ld.s8 %r38,[%r48]; mov.u64 %r49,%r46; .loc 1 423 10 cvt.u16.u32 %r206,%r38; set.u32.ne.u16 %r207,%r206,0; neg.s32 %r208,%r207; .loc 1 423 14 set.u32.gt.s32 %r210,%r26,0; neg.s32 %r211,%r210; cvt.u16.u32 %r213,%r208; cvt.u16.u32 %r214,%r211; and.b16 %r212,%r213,%r214; cvt.u32.u16 %r215,%r212; cvt.u16.u8 %r216,%r215; setp.ne.u16 %r217,%r216,0; @ %r217 bra $L77; $L76: .loc 1 429 7 setp.eq.u32 %r218,%r90,0; @ %r218 bra $L72; .loc 1 431 14 setp.le.s32 %r219,%r26,0; @ %r219 bra $L72; mov.u64 %r43,%r46; add.u32 %r230,%r26,-1; cvt.u64.u32 %r221,%r230; add.u64 %r222,%r46,1; add.u64 %r30,%r221,%r222; .loc 1 433 12 mov.u32 %r223,48; $L78: st.u8 [%r43],%r223; add.u64 %r43,%r43,1; .loc 1 431 14 setp.ne.u64 %r224,%r30,%r43; @ %r224 bra $L78; cvt.s64.s32 %r226,%r230; add.u64 %r227,%r226,1; add.u64 %r46,%r46,%r227; $L72: .loc 1 438 14 mov.u32 %r228,0; st.u8 [%r46],%r228; $L55: .loc 1 442 1 mov.u64 %value,%r88; 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 %r23; .reg .u32 %r25; .reg .u32 %r32; .reg .u64 %r35; .reg .u64 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u64 %r43; .reg .u32 %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .u32 %r48; .reg .u64 %r54; .reg .u64 %r60; .reg .u64 %r61; .reg .u32 %r64; .reg .u64 %r68; .reg .u64 %r73; .reg .u64 %r74; .reg .u64 %r78; .reg .u64 %r79; .reg .f64 %r80; .reg .u32 %r81; .reg .u32 %r83; .reg .u32 %r84; .reg .u16 %r86; .reg .u16 %r87; .reg .u32 %r88; .reg .u16 %r89; .reg .pred %r90; .reg .u64 %r91; .reg .u64 %r92; .reg .pred %r93; .reg .u64 %r94; .reg .pred %r95; .reg .u64 %r96; .reg .pred %r97; .reg .pred %r98; .reg .u32 %r101; .reg .u64 %r106; .reg .u64 %r107; .reg .u64 %r108; .reg .pred %r109; .reg .pred %r110; .reg .pred %r111; .reg .u64 %r114; .reg .u32 %r115; .reg .pred %r116; .reg .pred %r117; .reg .pred %r118; .reg .u64 %r119; .reg .u64 %r121; .reg .u32 %r122; .reg .pred %r123; .reg .u64 %r125; .reg .u64 %r126; .reg .u32 %r127; .reg .pred %r128; .reg .u16 %r129; .reg .u32 %r130; .reg .pred %r131; .reg .pred %r132; .reg .u32 %r133; .reg .u32 %r134; .reg .u32 %r136; .reg .u32 %r137; .reg .u32 %r139; .reg .u16 %r141; .reg .u16 %r142; .reg .u16 %r143; .reg .u32 %r144; .reg .u16 %r145; .reg .pred %r146; .reg .u32 %r147; .reg .u32 %r149; .reg .u32 %r151; .reg .u32 %r152; .reg .u16 %r154; .reg .u16 %r155; .reg .u16 %r156; .reg .u32 %r157; .reg .u16 %r158; .reg .pred %r159; .reg .pred %r160; .reg .pred %r161; .reg .u32 %r162; .reg .pred %r163; .reg .pred %r164; .reg .pred %r165; .reg .u64 %r167; .reg .u64 %r168; .reg .u32 %r169; .reg .pred %r170; .reg .u64 %r172; .reg .u64 %r173; .reg .u32 %r174; .reg .pred %r175; .reg .u64 %r182; .reg .u32 %r190; .reg .u32 %r191; mov.u64 %r78,%ar0; mov.u64 %r79,%ar1; mov.f64 %r80,%ar2; mov.u32 %r81,%ar3; mov.u32 %r83,%ar5; mov.u32 %r84,%ar6; cvt.u16.u32 %r87,%r83; add.u16 %r86,%r87,-69; cvt.u32.u16 %r88,%r86; cvt.u32.u8 %r25,%r88; cvt.u16.u32 %r89,%r25; setp.gt.u16 %r90,%r89,34; @ %r90 bra $L100; mov.u64 %r91,1; shl.b64 %r23,%r91,%r25; and.b64 %r92,%r23,4294967297; setp.ne.u64 %r93,%r92,0; @ %r93 bra $L101; and.b64 %r94,%r23,17179869188; setp.ne.u64 %r95,%r94,0; @ %r95 bra $L102; and.b64 %r96,%r23,8589934594; setp.eq.u64 %r97,%r96,0; @ %r97 bra $L100; .loc 1 458 7 setp.eq.u32 %r98,%r81,0; selp.u32 %r84,%r84,1,%r98; .loc 1 91 15 add.u64 %r106,%frame,8; add.u64 %r107,%frame,12; mov.u32 %r101,3; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r78; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r80; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r101; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r81; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r107; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r106; .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 %r108,[%value_in]; } .loc 1 93 13 ld.u32 %r38,[%frame+12]; .loc 1 93 6 setp.eq.u32 %r109,%r38,9999; @ %r109 bra $L104; .loc 1 98 10 ld.s8 %r37,[%r108]; .loc 1 98 9 setp.eq.u32 %r110,%r37,0; @ %r110 bra $L124; .loc 1 98 13 setp.gt.s32 %r111,%r38,0; @ %r111 bra $L106; mov.u64 %r35,%r108; mov.u64 %r60,%r79; bra $L110; $L104: .loc 1 95 7 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r79; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r108; call (%value_in),strcpy,(%out_arg1,%out_arg2); ld.param.u64 %r114,[%value_in]; } bra $L100; $L106: mov.u64 %r73,%r79; .loc 1 98 13 mov.u64 %r35,%r108; $L111: .loc 1 100 18 add.u64 %r35,%r35,1; add.u64 %r60,%r73,1; .loc 1 100 14 cvt.u32.u32 %r115,%r37; st.u8 [%r73],%r115; .loc 1 101 12 add.u32 %r38,%r38,-1; st.u32 [%frame+12],%r38; .loc 1 98 10 ld.s8 %r37,[%r35]; .loc 1 98 9 setp.ne.u32 %r116,%r37,0; @ %r116 bra $L108; bra $L105; $L124: mov.u64 %r35,%r108; mov.u64 %r60,%r79; $L105: .loc 1 104 9 setp.gt.s32 %r117,%r38,0; @ %r117 bra $L109; bra $L110; $L108: mov.u64 %r73,%r60; .loc 1 98 13 setp.ne.u32 %r118,%r38,0; @ %r118 bra $L111; bra $L110; $L109: mov.u64 %r68,%r60; add.u64 %r119,%r60,1; add.u32 %r191,%r38,-1; cvt.u64.u32 %r121,%r191; add.u64 %r74,%r119,%r121; .loc 1 106 14 mov.u32 %r122,48; $L112: st.u8 [%r68],%r122; add.u64 %r68,%r68,1; .loc 1 104 9 setp.ne.u64 %r123,%r68,%r74; @ %r123 bra $L112; cvt.s64.s32 %r125,%r191; add.u64 %r126,%r125,1; add.u64 %r60,%r60,%r126; mov.u32 %r127,0; st.u32 [%frame+12],%r127; $L110: .loc 1 110 6 setp.ne.u32 %r128,%r84,0; @ %r128 bra $L113; .loc 1 110 11 ld.s8 %r130,[%r35]; cvt.u16.u32 %r129,%r130; setp.eq.u16 %r131,%r129,0; @ %r131 bra $L114; $L113: add.u64 %r43,%r60,1; .loc 1 112 10 setp.ne.u64 %r132,%r108,%r35; @ %r132 bra $L115; .loc 1 113 9 mov.u32 %r133,48; st.u8 [%r60],%r133; add.u64 %r46,%r60,2; .loc 1 113 6 mov.u64 %r60,%r43; .loc 1 113 9 mov.u64 %r43,%r46; $L115: .loc 1 114 14 mov.u32 %r134,46; st.u8 [%r60],%r134; .loc 1 115 20 ld.u32 %r32,[%frame+12]; .loc 1 115 24 set.u32.gt.s32 %r136,%r81,0; neg.s32 %r137,%r136; .loc 1 115 13 shr.u32 %r139,%r32,31; .loc 1 115 24 cvt.u16.u32 %r142,%r137; cvt.u16.u32 %r143,%r139; and.b16 %r141,%r142,%r143; cvt.u32.u16 %r144,%r141; cvt.u16.u8 %r145,%r144; setp.eq.u16 %r146,%r145,0; @ %r146 bra $L116; add.u32 %r64,%r32,1; mov.u64 %r36,%r43; .loc 1 117 11 mov.u32 %r147,48; $L117: add.u64 %r43,%r43,1; st.u8 [%r36],%r147; .loc 1 118 9 mov.u32 %r45,%r64; .loc 1 119 10 add.u32 %r81,%r81,-1; add.u32 %r64,%r64,1; mov.u64 %r36,%r43; .loc 1 115 13 shr.u32 %r149,%r45,31; .loc 1 115 24 set.u32.gt.s32 %r151,%r81,0; neg.s32 %r152,%r151; cvt.u16.u32 %r155,%r149; cvt.u16.u32 %r156,%r152; and.b16 %r154,%r155,%r156; cvt.u32.u16 %r157,%r154; cvt.u16.u8 %r158,%r157; setp.ne.u16 %r159,%r158,0; @ %r159 bra $L117; st.u32 [%frame+12],%r45; $L116: .loc 1 123 14 ld.s8 %r48,[%r35]; .loc 1 123 13 setp.eq.u32 %r160,%r48,0; @ %r160 bra $L125; .loc 1 123 17 setp.le.s32 %r161,%r81,0; @ %r161 bra $L126; mov.u64 %r54,%r43; $L121: .loc 1 125 15 add.u64 %r35,%r35,1; add.u64 %r60,%r54,1; .loc 1 125 11 cvt.u32.u32 %r162,%r48; st.u8 [%r54],%r162; .loc 1 126 10 add.u32 %r81,%r81,-1; .loc 1 123 14 ld.s8 %r48,[%r35]; .loc 1 123 13 setp.ne.u32 %r163,%r48,0; @ %r163 bra $L119; bra $L118; $L125: mov.u64 %r60,%r43; $L118: .loc 1 129 13 setp.gt.s32 %r164,%r81,0; @ %r164 bra $L120; bra $L114; $L119: mov.u64 %r54,%r60; .loc 1 123 17 setp.ne.u32 %r165,%r81,0; @ %r165 bra $L121; bra $L114; $L120: mov.u64 %r47,%r60; add.u32 %r190,%r81,-1; cvt.u64.u32 %r167,%r190; add.u64 %r168,%r60,1; add.u64 %r61,%r167,%r168; .loc 1 131 11 mov.u32 %r169,48; $L122: st.u8 [%r47],%r169; add.u64 %r47,%r47,1; .loc 1 129 13 setp.ne.u64 %r170,%r47,%r61; @ %r170 bra $L122; cvt.s64.s32 %r172,%r190; add.u64 %r173,%r172,1; add.u64 %r60,%r60,%r173; bra $L114; $L126: .loc 1 123 17 mov.u64 %r60,%r43; $L114: .loc 1 135 10 mov.u32 %r174,0; st.u8 [%r60],%r174; bra $L100; $L102: .loc 1 462 10 setp.ne.u32 %r175,%r81,0; .loc 1 463 12 selp.u32 %r81,%r81,1,%r175; .loc 1 464 7 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r78; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r80; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r81; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r79; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r83; .param .u32 %out_arg6; st.param.u32 [%out_arg6],%r84; call (%value_in),_gcvt,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); ld.param.u64 %r182,[%value_in]; } .loc 1 465 7 bra $L100; $L101: .loc 1 468 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r78; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r79; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r80; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r81; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r83; .param .u32 %out_arg6; st.param.u32 [%out_arg6],%r84; call print_e,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); } $L100: .loc 1 471 1 mov.u64 %value,%r79; st.param.u64 [%value_out],%value; ret; } lib_a-efgcvt.o/ 1591654539 399 399 100644 8357 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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: 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 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 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: 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 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 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 147 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 148 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 157 10 cvt.f64.f32 %r33,%r24; .loc 1 147 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 158 1 mov.u64 %value,%r34; 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 179 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 180 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 189 10 cvt.f64.f32 %r33,%r24; .loc 1 179 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 190 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 200 6 setp.lt.f64 %r29,%r26,0d0000000000000000; @ ! %r29 bra $L11; .loc 1 201 10 mov.u32 %r30,45; st.u8 [%r28],%r30; .loc 1 202 8 add.u64 %r24,%r28,1; .loc 1 203 11 add.u32 %r27,%r27,-1; bra $L6; $L11: mov.u64 %r24,%r28; $L6: .loc 1 205 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 205 57 setp.ne.u64 %r39,%r38,0; selp.u64 %value,%r28,0,%r39; .loc 1 206 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 .f32 %r24; .reg .u32 %r25; .reg .u64 %r26; .reg .f64 %r30; .reg .u64 %r31; mov.f32 %r24,%ar0; mov.u32 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 167 10 cvt.f64.f32 %r30,%r24; .loc 1 168 10 { .param .u64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r30; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; call (%value_in),gcvt,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r31,[%value_in]; } .loc 1 169 1 mov.u64 %value,%r31; st.param.u64 [%value_out],%value; ret; } lib_a-erand48.o/1591654539 399 399 100644 2962 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 21 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 22 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 23 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 22 40 add.f64 %r28,%r41,%r46; .loc 1 24 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 23 35 add.f64 %value,%r28,%r51; .loc 1 25 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 32 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 33 1 mov.f64 %value,%r28; st.param.f64 [%value_out],%value; ret; } lib_a-errno.o/ 1591654539 399 399 100644 509 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654539 399 399 100644 745 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } lib_a-ffs.o/ 1591654539 399 399 100644 915 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r26; .reg .pred %r27; .reg .u32 %r28; .reg .pred %r29; mov.u32 %r26,%ar0; .loc 1 37 6 setp.eq.u32 %r27,%r26,0; @ %r27 bra $L4; .loc 1 40 5 mov.u32 %r24,0; $L3: .loc 1 43 19 add.u32 %r25,%r24,1; .loc 1 43 31 shr.s32 %r28,%r26,%r24; and.b32 %r23,%r28,1; .loc 1 43 19 mov.u32 %r24,%r25; .loc 1 43 10 setp.eq.u32 %r29,%r23,0; @ %r29 bra $L3; bra $L1; $L4: .loc 1 38 12 mov.u32 %r25,%r26; $L1: .loc 1 46 1 mov.u32 %value,%r25; st.param.u32 [%value_out],%value; ret; } /18 1591654539 399 399 100644 3880 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __fix_locale_grouping_str .visible .func (.param .u64 %value_out) __fix_locale_grouping_str (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/locale/fix_grouping.c" // BEGIN GLOBAL VAR DECL: __ctype_ptr__ .extern .global .align 8 .u64 __ctype_ptr__[1]; // BEGIN VAR DEF: nogrouping .const .align 1 .u8 nogrouping[2] = {127,0 }; // BEGIN GLOBAL FUNCTION DEF: __fix_locale_grouping_str .visible .func (.param .u64 %value_out) __fix_locale_grouping_str (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r23; .reg .u32 %r24; .reg .u32 %r31; .reg .u32 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u32 %r41; .reg .u64 %r45; .reg .u64 %r47; .reg .u64 %r48; .reg .pred %r49; .reg .pred %r50; .reg .u16 %r51; .reg .pred %r52; .reg .pred %r54; .reg .u16 %r55; .reg .u32 %r56; .reg .pred %r57; .reg .u32 %r59; .reg .u64 %r60; .reg .u64 %r62; .reg .u16 %r65; .reg .u16 %r66; .reg .u32 %r67; .reg .u16 %r68; .reg .u32 %r69; .reg .pred %r70; .reg .u16 %r71; .reg .u16 %r72; .reg .u32 %r73; .reg .u64 %r74; .reg .u32 %r75; .reg .u64 %r76; .reg .u16 %r79; .reg .u16 %r80; .reg .u32 %r81; .reg .u16 %r82; .reg .u32 %r83; .reg .pred %r84; .reg .u32 %r88; .reg .u32 %r89; .reg .u16 %r90; .reg .u16 %r91; .reg .u16 %r94; .reg .u16 %r97; .reg .u16 %r98; .reg .u16 %r101; .reg .u32 %r104; .reg .u32 %r105; .reg .pred %r106; .reg .pred %r107; .reg .pred %r108; .reg .u32 %r109; .reg .u32 %r111; .reg .u16 %r112; .reg .u32 %r113; mov.u64 %r48,%ar0; .loc 1 45 5 setp.ne.u64 %r49,%r48,0; @ %r49 bra $L2; $L4: .loc 1 46 10 cvta.const.u64 %r47,nogrouping; bra $L1; $L2: .loc 1 45 21 ld.s8 %r38,[%r48]; .loc 1 45 18 setp.eq.u32 %r50,%r38,0; @ %r50 bra $L4; mov.u64 %r40,%r48; mov.u64 %r45,%r48; .loc 1 56 11 mov.u32 %r111,127; $L10: .loc 1 52 6 cvt.u16.u32 %r51,%r38; setp.eq.u16 %r52,%r51,59; @ %r52 bra $L11; .loc 1 55 6 setp.ne.u16 %r54,%r51,45; @ %r54 bra $L6; .loc 1 55 19 ld.s8 %r56,[%r45+1]; cvt.u16.u32 %r55,%r56; setp.ne.u16 %r57,%r55,49; @ %r57 bra $L6; .loc 1 56 11 st.u8 [%r40],%r111; .loc 1 57 7 add.u64 %r39,%r45,1; .loc 1 56 8 add.u64 %r40,%r40,1; .loc 1 58 4 bra $L5; $L6: .loc 1 61 8 ld.global.u64 %r23,[__ctype_ptr__]; cvt.u32.u32 %r59,%r38; cvt.u32.u8 %r24,%r59; cvt.u64.u8 %r60,%r59; add.u64 %r62,%r23,%r60; .loc 1 61 6 ld.u8 %r112,[%r62+1]; mov.u16 %r66,%r112; and.b16 %r65,%r66,4; cvt.u32.u16 %r67,%r65; cvt.s32.s8 %r69,%r67; cvt.u16.u32 %r68,%r69; setp.eq.u16 %r70,%r68,0; @ %r70 bra $L4; .loc 1 67 12 cvt.u16.u32 %r72,%r24; add.u16 %r71,%r72,-48; cvt.u32.u16 %r73,%r71; .loc 1 68 7 ld.u8 %r31,[%r45+1]; cvt.u32.u32 %r75,%r31; cvt.u64.u8 %r74,%r75; add.u64 %r76,%r23,%r74; .loc 1 68 6 ld.u8 %r112,[%r76+1]; mov.u16 %r80,%r112; and.b16 %r79,%r80,4; cvt.u32.u16 %r81,%r79; cvt.s32.s8 %r83,%r81; cvt.u16.u32 %r82,%r83; setp.ne.u16 %r84,%r82,0; @ %r84 bra $L7; .loc 1 67 5 cvt.s32.s8 %r41,%r73; mov.u64 %r39,%r45; bra $L8; $L7: .loc 1 69 7 add.u64 %r39,%r45,1; .loc 1 70 6 cvt.u32.u8 %r113,%r73; mov.u32 %r89,%r113; shl.b32 %r88,%r89,2; cvt.u16.u32 %r91,%r88; add.u16 %r90,%r91,%r71; add.u16 %r94,%r90,%r90; .loc 1 71 6 cvt.u16.u32 %r98,%r31; add.u16 %r97,%r98,-48; add.u16 %r101,%r94,%r97; cvt.u32.u16 %r104,%r101; cvt.s32.s8 %r41,%r104; $L8: .loc 1 74 8 cvt.u32.u32 %r105,%r41; st.u8 [%r40],%r105; .loc 1 76 6 setp.ne.u32 %r106,%r41,0; @ %r106 bra $L9; .loc 1 77 44 setp.ne.u64 %r107,%r48,%r40; @ %r107 bra $L12; bra $L4; $L9: .loc 1 78 6 add.u64 %r40,%r40,1; bra $L5; $L11: mov.u64 %r39,%r45; $L5: .loc 1 49 60 add.u64 %r45,%r39,1; .loc 1 49 43 ld.s8 %r38,[%r39+1]; .loc 1 49 2 setp.ne.u32 %r108,%r38,0; @ %r108 bra $L10; .loc 1 80 7 cvt.u32.u32 %r109,%r38; st.u8 [%r40],%r109; .loc 1 81 9 mov.u64 %r47,%r48; bra $L1; $L12: mov.u64 %r47,%r48; $L1: .loc 1 82 1 mov.u64 %value,%r47; st.param.u64 [%value_out],%value; ret; } lib_a-free.o/ 1591654539 399 399 100644 712 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 33 6 setp.eq.u64 %r24,%r23,0; @ %r24 bra $L1; .loc 1 34 5 add.u64 %r26,%r23,-8; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; call free,(%out_arg1); } $L1: .loc 1 35 1 ret; } /40 1591654539 399 399 100644 29288 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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); // 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: 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: __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 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 %r41; .reg .u64 %r44; .reg .u32 %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .u32 %r48; .reg .u32 %r49; .reg .u64 %r50; .reg .u32 %r51; .reg .u64 %r52; .reg .u64 %r63; .reg .u64 %r65; .reg .u64 %r69; .reg .u32 %r70; .reg .pred %r71; .reg .u64 %r72; .reg .u64 %r73; .reg .pred %r74; .reg .pred %r75; .reg .u32 %r76; .reg .u32 %r77; .reg .pred %r78; .reg .u32 %r79; .reg .u32 %r80; .reg .u32 %r81; .reg .u32 %r82; .reg .pred %r83; .reg .u64 %r84; .reg .u64 %r85; .reg .u64 %r89; .reg .pred %r90; .reg .pred %r91; .reg .u64 %r92; .reg .u64 %r97; .reg .u64 %r98; .reg .u64 %r100; .reg .pred %r101; .reg .u32 %r102; .reg .u32 %r103; .reg .pred %r104; mov.u64 %r69,%ar0; mov.u32 %r70,%ar1; .loc 1 81 4 shr.s32 %r45,%r70,5; .loc 1 82 11 ld.u32 %r22,[%r69+20]; .loc 1 82 5 setp.le.s32 %r71,%r22,%r45; @ %r71 bra $L2; .loc 1 80 9 add.u64 %r44,%r69,24; .loc 1 83 13 cvt.s64.s32 %r24,%r22; .loc 1 83 10 shl.b64 %r72,%r24,2; .loc 1 83 6 add.u64 %r46,%r44,%r72; .loc 1 84 5 cvt.s64.s32 %r26,%r45; shl.b64 %r73,%r26,2; add.u64 %r47,%r44,%r73; .loc 1 85 9 and.b32 %r48,%r70,31; .loc 1 85 6 setp.ne.u32 %r74,%r48,0; @ %r74 bra $L3; .loc 1 96 9 setp.gt.u64 %r75,%r46,%r47; @ %r75 bra $L4; bra $L2; $L3: .loc 1 86 6 mov.u32 %r76,32; sub.u32 %r49,%r76,%r48; .loc 1 87 10 add.u64 %r50,%r47,4; .loc 1 87 6 ld.u32 %r77,[%r47]; shr.u32 %r51,%r77,%r48; .loc 1 88 9 setp.le.u64 %r78,%r46,%r50; @ %r78 bra $L5; mov.u64 %r23,%r50; mov.u64 %r52,%r44; $L6: .loc 1 89 22 ld.u32 %r80,[%r23]; shl.b32 %r79,%r80,%r49; .loc 1 89 29 or.b32 %r81,%r79,%r51; .loc 1 89 11 st.u32 [%r52],%r81; .loc 1 90 7 ld.u32 %r82,[%r23]; shr.u32 %r51,%r82,%r48; add.u64 %r23,%r23,4; add.u64 %r52,%r52,4; .loc 1 88 9 setp.gt.u64 %r83,%r46,%r23; @ %r83 bra $L6; sub.u64 %r84,%r24,%r26; shl.b64 %r85,%r84,2; add.u64 %r89,%r85,-4; add.u64 %r41,%r44,%r89; .loc 1 92 13 st.u32 [%r41],%r51; .loc 1 92 7 setp.eq.u32 %r90,%r51,0; @ %r90 bra $L7; bra $L11; $L12: .loc 1 80 9 mov.u64 %r41,%r44; $L11: .loc 1 93 7 add.u64 %r41,%r41,4; bra $L7; $L4: mov.u64 %r63,%r44; mov.u64 %r65,%r47; $L8: .loc 1 97 13 ld.u32 %r33,[%r65]; .loc 1 97 11 st.u32 [%r63],%r33; add.u64 %r63,%r63,4; add.u64 %r65,%r65,4; .loc 1 96 9 setp.gt.u64 %r91,%r46,%r65; @ %r91 bra $L8; sub.u64 %r92,%r24,%r26; shl.b64 %r97,%r92,2; add.u64 %r41,%r44,%r97; $L7: .loc 1 99 20 sub.u64 %r98,%r41,%r44; shr.s64 %r100,%r98,2; .loc 1 99 15 cvt.u32.u64 %r36,%r100; st.u32 [%r69+20],%r36; .loc 1 99 5 setp.ne.u32 %r101,%r36,0; @ %r101 bra $L1; $L10: .loc 1 100 12 mov.u32 %r102,0; st.u32 [%r69+24],%r102; .loc 1 101 1 bra $L1; $L2: .loc 1 99 15 mov.u32 %r103,0; st.u32 [%r69+20],%r103; bra $L10; $L5: .loc 1 92 13 st.u32 [%r69+24],%r51; .loc 1 92 7 setp.ne.u32 %r104,%r51,0; @ %r104 bra $L12; bra $L2; $L1: .loc 1 101 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) { .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 %r25; .reg .u32 %r26; .reg .u32 %r30; .reg .u32 %r32; .reg .u32 %r40; .reg .u32 %r42; .reg .u64 %r51; .reg .u32 %r63; .reg .u32 %r65; .reg .u32 %r78; .reg .u32 %r79; .reg .u32 %r91; .reg .u64 %r114; .reg .u64 %r116; .reg .u64 %r117; .reg .u32 %r118; .reg .u32 %r119; .reg .u32 %r120; .reg .u64 %r121; .reg .u32 %r122; .reg .u32 %r123; .reg .u64 %r124; .reg .u64 %r125; .reg .u32 %r127; .reg .u32 %r129; .reg .u64 %r130; .reg .u64 %r131; .reg .u64 %r133; .reg .u32 %r134; .reg .u32 %r135; .reg .u32 %r136; .reg .u32 %r137; .reg .u64 %r138; .reg .u32 %r139; .reg .u32 %r140; .reg .u32 %r142; .reg .u32 %r143; .reg .u32 %r144; .reg .u32 %r145; .reg .u32 %r146; .reg .u32 %r147; .reg .u32 %r148; .reg .u64 %r149; .reg .u64 %r150; .reg .u32 %r151; .reg .u32 %r152; .reg .u64 %r153; .reg .u64 %r155; .reg .u64 %r156; .reg .u32 %r158; .reg .u32 %r160; .reg .u64 %r173; .reg .u64 %r179; .reg .u64 %r183; .reg .u64 %r184; .reg .u32 %r185; .reg .u32 %r192; .reg .u32 %r199; .reg .u32 %r200; .reg .u64 %r201; .reg .u64 %r202; .reg .u64 %r203; .reg .u64 %r204; .reg .u64 %r205; .reg .u32 %r206; .reg .u64 %r208; .reg .u64 %r210; .reg .u64 %r211; .reg .u16 %r213; .reg .pred %r214; .reg .u16 %r215; .reg .pred %r216; .reg .u64 %r218; .reg .u64 %r219; .reg .u16 %r220; .reg .pred %r221; .reg .u32 %r225; .reg .pred %r226; .reg .u64 %r228; .reg .u64 %r229; .reg .pred %r230; .reg .u16 %r231; .reg .pred %r232; .reg .u16 %r233; .reg .pred %r234; .reg .u64 %r236; .reg .u64 %r237; .reg .u16 %r239; .reg .u32 %r240; .reg .u64 %r244; .reg .u64 %r245; .reg .u16 %r246; .reg .pred %r247; .reg .u64 %r250; .reg .u64 %r251; .reg .pred %r252; .reg .u32 %r256; .reg .pred %r257; .reg .pred %r258; .reg .u64 %r259; .reg .u32 %r260; .reg .u32 %r261; .reg .u64 %r263; .reg .u64 %r264; .reg .u16 %r265; .reg .pred %r266; .reg .u64 %r268; .reg .u64 %r269; .reg .u16 %r270; .reg .pred %r271; .reg .u64 %r272; .reg .u32 %r273; .reg .u32 %r274; .reg .pred %r275; .reg .u64 %r276; .reg .u32 %r277; .reg .u32 %r278; .reg .u16 %r279; .reg .pred %r280; .reg .pred %r282; .reg .u16 %r283; .reg .pred %r284; .reg .pred %r286; .reg .u64 %r288; .reg .u64 %r289; .reg .u16 %r290; .reg .u16 %r291; .reg .u16 %r292; .reg .u32 %r293; .reg .pred %r294; .reg .u64 %r297; .reg .u64 %r298; .reg .u16 %r299; .reg .u16 %r300; .reg .u16 %r301; .reg .u32 %r302; .reg .pred %r303; .reg .u32 %r305; .reg .u32 %r306; .reg .u32 %r307; .reg .u64 %r310; .reg .u64 %r311; .reg .u16 %r312; .reg .u16 %r313; .reg .u16 %r314; .reg .u32 %r315; .reg .pred %r316; .reg .pred %r317; .reg .pred %r318; .reg .pred %r319; .reg .u64 %r320; .reg .u32 %r321; .reg .pred %r322; .reg .pred %r323; .reg .u64 %r326; .reg .pred %r327; .reg .u16 %r328; .reg .u16 %r329; .reg .pred %r330; .reg .pred %r331; .reg .u64 %r332; .reg .pred %r334; .reg .u32 %r338; .reg .pred %r339; .reg .u64 %r342; .reg .u64 %r343; .reg .u16 %r345; .reg .u16 %r346; .reg .u32 %r347; .reg .u32 %r348; .reg .u32 %r349; .reg .pred %r350; .reg .u64 %r351; .reg .u64 %r353; .reg .u32 %r355; .reg .pred %r356; .reg .u32 %r359; .reg .pred %r360; .reg .u32 %r361; .reg .u64 %r362; .reg .u64 %r363; .reg .u64 %r364; .reg .u32 %r365; .reg .u32 %r366; .reg .u32 %r367; .reg .u32 %r368; .reg .u32 %r369; .reg .pred %r370; .reg .pred %r371; .reg .u32 %r374; .reg .u32 %r375; .reg .pred %r376; .reg .pred %r379; .reg .u64 %r383; .reg .u32 %r384; .reg .pred %r385; .reg .u64 %r388; .reg .pred %r389; .reg .pred %r390; .reg .pred %r391; .reg .pred %r392; .reg .pred %r393; .reg .pred %r394; .reg .pred %r395; .reg .u32 %r398; .reg .u32 %r399; .reg .pred %r400; .reg .pred %r401; .reg .pred %r402; .reg .u32 %r403; .reg .u64 %r407; .reg .pred %r408; .reg .pred %r409; .reg .u32 %r412; .reg .u32 %r413; .reg .u64 %r414; .reg .u64 %r415; .reg .u64 %r416; .reg .u32 %r417; .reg .u32 %r418; .reg .u32 %r419; .reg .u32 %r420; .reg .u32 %r421; .reg .pred %r422; .reg .pred %r425; .reg .pred %r426; .reg .pred %r427; .reg .pred %r428; .reg .u32 %r429; .reg .pred %r430; .reg .u32 %r431; .reg .u32 %r432; .reg .u32 %r433; .reg .pred %r434; .reg .u32 %r435; .reg .pred %r436; .reg .u64 %r437; .reg .pred %r438; .reg .u32 %r439; .reg .pred %r441; .reg .u32 %r442; .reg .pred %r443; .reg .u32 %r446; .reg .u32 %r447; .reg .u64 %r448; .reg .u64 %r452; .reg .u64 %r453; .reg .u64 %r454; .reg .u64 %r455; .reg .u64 %r456; .reg .u64 %r457; .reg .u32 %r460; .reg .u64 %r461; .reg .u64 %r462; .reg .u64 %r463; .reg .u64 %r464; .reg .u32 %r466; .reg .pred %r467; .reg .u32 %r468; .reg .u32 %r469; .reg .pred %r470; .reg .u32 %r471; .reg .u64 %r472; .reg .u64 %r473; .reg .u64 %r474; .reg .u32 %r475; .reg .u32 %r476; .reg .u32 %r477; .reg .u32 %r478; .reg .u32 %r479; .reg .pred %r480; .reg .u32 %r481; .reg .pred %r482; .reg .u32 %r484; .reg .u32 %r485; .reg .pred %r486; .reg .pred %r487; .reg .u32 %r488; .reg .u64 %r489; .reg .u32 %r491; .reg .u32 %r492; .reg .u32 %r493; .reg .pred %r494; .reg .u16 %r496; .reg .pred %r497; .reg .pred %r499; .reg .u64 %r500; .reg .u32 %r501; .reg .u16 %r502; mov.u64 %r201,%ar0; mov.u64 %r202,%ar1; mov.u64 %r203,%ar2; mov.u64 %r204,%ar3; mov.u64 %r205,%ar4; mov.u32 %r206,%ar5; .loc 1 162 11 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r201; call (%value_in),_localeconv_r,(%out_arg1); ld.param.u64 %r208,[%value_in]; } .loc 1 161 17 ld.u64 %r125,[%r208]; .loc 1 163 20 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r125; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r210,[%value_in]; } .loc 1 164 16 add.u64 %r211,%r125,%r210; ld.u8 %r127,[%r211+-1]; .loc 1 167 7 ld.u64 %r25,[%r202]; .loc 1 168 10 ld.u8 %r26,[%r25+2]; .loc 1 168 7 cvt.u16.u32 %r213,%r26; setp.ne.u16 %r214,%r213,48; @ %r214 bra $L19; add.u64 %r179,%r25,3; .loc 1 166 10 mov.u32 %r151,0; $L20: .loc 1 169 10 add.u32 %r151,%r151,1; .loc 1 168 10 mov.u64 %r150,%r179; add.u64 %r179,%r179,1; ld.u8 %r26,[%r179+-1]; .loc 1 168 7 cvt.u16.u32 %r215,%r26; setp.eq.u16 %r216,%r215,48; @ %r216 bra $L20; bra $L21; $L19: .loc 1 168 10 add.u64 %r150,%r25,2; .loc 1 166 10 mov.u32 %r151,0; $L21: .loc 1 175 7 cvta.const.u64 %r500,__hexdig; cvt.s64.s32 %r218,%r26; add.u64 %r219,%r500,%r218; .loc 1 175 5 ld.u8 %r220,[%r219]; setp.ne.u16 %r221,%r220,0; @ %r221 bra $L22; .loc 1 177 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r150; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r125; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r210; call (%value_in),strncmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r225,[%value_in]; } .loc 1 177 6 setp.ne.u32 %r226,%r225,0; @ %r226 bra $L23; .loc 1 180 14 add.u64 %r116,%r150,%r210; .loc 1 181 8 ld.u8 %r30,[%r116]; cvt.s64.s32 %r228,%r30; add.u64 %r229,%r500,%r228; ld.u8 %r192,[%r229]; .loc 1 181 6 setp.eq.u32 %r230,%r192,0; @ %r230 bra $L24; .loc 1 183 8 cvt.u16.u32 %r231,%r30; setp.ne.u16 %r232,%r231,48; @ %r232 bra $L87; mov.u64 %r150,%r116; $L26: .loc 1 184 5 add.u64 %r150,%r150,1; .loc 1 183 9 ld.u8 %r32,[%r150]; .loc 1 183 8 cvt.u16.u32 %r233,%r32; setp.eq.u16 %r234,%r233,48; @ %r234 bra $L26; cvt.s64.s32 %r236,%r32; add.u64 %r237,%r500,%r236; ld.u8 %r192,[%r237]; bra $L25; $L87: mov.u64 %r150,%r116; $L25: .loc 1 185 6 cvt.u16.u32 %r239,%r192; set.u32.eq.u16 %r240,%r239,0; neg.s32 %r152,%r240; mov.u64 %r149,%r116; .loc 1 187 11 mov.u32 %r151,1; bra $L27; $L88: .loc 1 190 7 mov.u64 %r116,%r150; $L28: .loc 1 191 4 add.u64 %r116,%r116,1; .loc 1 190 8 ld.u8 %r244,[%r116]; add.u64 %r245,%r500,%r244; .loc 1 190 7 ld.u8 %r246,[%r245]; setp.ne.u16 %r247,%r246,0; @ %r247 bra $L28; bra $L29; $L22: ld.u8 %r250,[%r150]; add.u64 %r251,%r500,%r250; ld.u8 %r192,[%r251]; .loc 1 173 7 mov.u32 %r152,0; .loc 1 172 8 mov.u64 %r149,0; $L27: .loc 1 190 7 setp.ne.u32 %r252,%r192,0; @ %r252 bra $L88; mov.u64 %r116,%r150; $L29: .loc 1 192 6 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r116; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r125; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r210; call (%value_in),strncmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r256,[%value_in]; } mov.u32 %r122,%r256; .loc 1 192 5 setp.ne.u32 %r257,%r122,0; @ %r257 bra $L30; .loc 1 194 6 setp.eq.u64 %r258,%r149,0; @ %r258 bra $L31; sub.u64 %r259,%r116,%r149; cvt.u32.u64 %r261,%r259; shl.b32 %r260,%r261,2; neg.s32 %r122,%r260; ld.u8 %r199,[%r116]; bra $L35; $L31: .loc 1 195 14 add.u64 %r131,%r116,%r210; .loc 1 196 9 ld.u8 %r199,[%r131]; cvt.s64.s32 %r263,%r199; add.u64 %r264,%r500,%r263; .loc 1 196 8 ld.u8 %r265,[%r264]; setp.eq.u16 %r266,%r265,0; @ %r266 bra $L89; mov.u64 %r116,%r131; $L34: .loc 1 197 5 add.u64 %r116,%r116,1; .loc 1 196 9 ld.u8 %r199,[%r116]; cvt.s64.s32 %r268,%r199; add.u64 %r269,%r500,%r268; .loc 1 196 8 ld.u8 %r270,[%r269]; setp.ne.u16 %r271,%r270,0; @ %r271 bra $L34; sub.u64 %r272,%r116,%r131; cvt.u32.u64 %r274,%r272; shl.b32 %r273,%r274,2; neg.s32 %r122,%r273; bra $L35; $L30: ld.u8 %r199,[%r116]; .loc 1 199 5 setp.eq.u64 %r275,%r149,0; @ %r275 bra $L90; sub.u64 %r276,%r116,%r149; cvt.u32.u64 %r278,%r276; shl.b32 %r277,%r278,2; neg.s32 %r122,%r277; bra $L35; $L90: .loc 1 174 4 cvt.u32.u64 %r122,%r149; $L35: cvt.u16.u32 %r279,%r199; setp.eq.u16 %r280,%r279,80; @ %r280 bra $L36; setp.ne.u16 %r282,%r279,112; @ %r282 bra $L91; bra $L36; $L106: mov.u32 %r122,0; mov.u32 %r152,1; bra $L36; $L107: mov.u32 %r122,0; mov.u32 %r152,1; $L36: .loc 1 207 10 ld.u8 %r185,[%r116+1]; cvt.u16.u32 %r283,%r185; setp.eq.u16 %r284,%r283,43; @ %r284 bra $L92; setp.eq.u16 %r286,%r283,45; @ %r286 bra $L93; .loc 1 207 3 add.u64 %r117,%r116,1; .loc 1 206 9 mov.u32 %r118,0; bra $L39; $L92: mov.u32 %r118,0; bra $L38; $L93: .loc 1 209 10 mov.u32 %r118,1; $L38: .loc 1 212 5 add.u64 %r117,%r116,2; ld.u8 %r185,[%r116+2]; $L39: .loc 1 214 12 cvt.s64.s32 %r288,%r185; add.u64 %r289,%r500,%r288; ld.u8 %r40,[%r289]; .loc 1 214 6 cvt.u16.u32 %r291,%r40; add.u16 %r290,%r291,-1; .loc 1 214 35 cvt.u32.u16 %r293,%r290; cvt.u16.u8 %r292,%r293; setp.gt.u16 %r294,%r292,24; @ %r294 bra $L94; .loc 1 218 6 add.u32 %r135,%r40,-16; .loc 1 219 8 add.u64 %r133,%r117,1; .loc 1 219 14 ld.u8 %r297,[%r117+1]; add.u64 %r298,%r500,%r297; ld.u8 %r134,[%r298]; .loc 1 219 8 cvt.u16.u32 %r300,%r134; add.u16 %r299,%r300,-1; .loc 1 219 38 cvt.u32.u16 %r302,%r299; cvt.u16.u8 %r301,%r302; setp.gt.u16 %r303,%r301,24; @ %r303 bra $L40; $L41: .loc 1 220 11 shl.b32 %r305,%r135,2; add.u32 %r306,%r305,%r135; add.u32 %r307,%r306,%r306; .loc 1 220 15 add.u32 %r42,%r307,%r134; .loc 1 220 7 add.u32 %r135,%r42,-16; .loc 1 219 8 add.u64 %r133,%r133,1; .loc 1 219 14 ld.u8 %r310,[%r133]; add.u64 %r311,%r500,%r310; ld.u8 %r134,[%r311]; .loc 1 219 8 cvt.u16.u32 %r313,%r134; add.u16 %r312,%r313,-1; .loc 1 219 38 cvt.u32.u16 %r315,%r312; cvt.u16.u8 %r314,%r315; setp.le.u16 %r316,%r314,24; @ %r316 bra $L41; $L40: .loc 1 221 6 setp.eq.u32 %r317,%r118,0; @ %r317 bra $L42; .loc 1 222 7 neg.s32 %r135,%r135; $L42: .loc 1 223 5 add.u32 %r122,%r122,%r135; mov.u64 %r130,%r116; mov.u64 %r116,%r133; bra $L37; $L91: .loc 1 201 2 mov.u64 %r130,%r116; bra $L37; $L94: mov.u64 %r130,%r116; $L37: .loc 1 225 6 st.u64 [%r202],%r116; .loc 1 226 5 setp.eq.u32 %r318,%r152,0; @ %r318 bra $L43; $L85: .loc 1 227 32 setp.ne.u32 %r319,%r151,0; selp.u32 %r200,0,6,%r319; bra $L18; $L43: .loc 1 228 9 sub.u64 %r320,%r130,%r150; .loc 1 228 14 cvt.u32.u64 %r321,%r320; add.u32 %r137,%r321,-1; .loc 1 229 2 setp.le.s32 %r322,%r137,7; @ %r322 bra $L96; .loc 1 229 8 mov.u32 %r136,%r152; $L46: .loc 1 230 4 add.u32 %r136,%r136,1; .loc 1 229 22 shr.s32 %r137,%r137,1; .loc 1 229 2 setp.gt.s32 %r323,%r137,7; @ %r323 bra $L46; bra $L45; $L96: .loc 1 229 8 mov.u32 %r136,%r152; $L45: .loc 1 231 6 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r201; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r136; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r326,[%value_in]; } mov.u64 %r114,%r326; .loc 1 232 4 add.u64 %r121,%r326,24; .loc 1 235 7 setp.ge.u64 %r327,%r150,%r130; @ %r327 bra $L47; .loc 1 232 4 mov.u64 %r173,%r121; .loc 1 233 4 mov.u32 %r129,%r152; .loc 1 234 4 mov.u32 %r123,0; .loc 1 236 6 cvt.u16.u32 %r329,%r127; $L54: add.u64 %r138,%r130,-1; add.u64 %r184,%r173,4; ld.u8 %r328,[%r130+-1]; setp.eq.u16 %r330,%r328,%r329; @ %r330 bra $L48; $L51: .loc 1 242 6 setp.eq.u32 %r331,%r129,32; @ ! %r331 bra $L160; bra $L49; $L48: .loc 1 236 42 sub.u64 %r332,%r138,%r210; add.u64 %r51,%r332,1; .loc 1 236 25 setp.lt.u64 %r334,%r51,%r150; @ %r334 bra $L51; .loc 1 237 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r51; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r125; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r210; call (%value_in),strncmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r338,[%value_in]; } .loc 1 237 7 setp.eq.u32 %r339,%r338,0; @ ! %r339 bra $L51; bra $L97; $L160: .loc 1 242 6 mov.u32 %r119,%r129; add.u32 %r129,%r129,4; bra $L53; $L49: .loc 1 243 9 st.u32 [%r173],%r123; add.u64 %r183,%r173,8; .loc 1 243 6 mov.u64 %r173,%r184; .loc 1 243 9 mov.u64 %r184,%r183; .loc 1 245 6 mov.u32 %r119,%r152; .loc 1 243 9 mov.u32 %r129,4; .loc 1 244 6 mov.u32 %r123,0; $L53: .loc 1 247 9 ld.u8 %r342,[%r130+-1]; add.u64 %r343,%r500,%r342; .loc 1 247 27 ld.u8 %r502,[%r343]; mov.u16 %r346,%r502; and.b16 %r345,%r346,15; cvt.u32.u16 %r348,%r345; cvt.u32.u8 %r347,%r348; .loc 1 247 35 shl.b32 %r349,%r347,%r119; .loc 1 247 5 or.b32 %r123,%r123,%r349; .loc 1 236 6 mov.u64 %r130,%r138; bra $L52; $L97: mov.u64 %r130,%r51; $L52: .loc 1 235 7 setp.gt.u64 %r350,%r130,%r150; @ %r350 bra $L54; bra $L55; $L47: add.u64 %r184,%r326,28; .loc 1 232 4 mov.u64 %r173,%r121; .loc 1 234 4 mov.u32 %r123,0; $L55: .loc 1 250 7 st.u32 [%r173],%r123; .loc 1 251 18 sub.u64 %r351,%r184,%r121; shr.s64 %r353,%r351,2; .loc 1 251 14 cvt.u32.u64 %r139,%r353; .loc 1 251 10 st.u32 [%r326+20],%r139; .loc 1 252 8 shl.b32 %r63,%r139,5; .loc 1 252 13 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r123; call (%value_in),__hi0bits,(%out_arg1); ld.param.u32 %r355,[%value_in]; } .loc 1 252 4 sub.u32 %r140,%r63,%r355; .loc 1 253 8 ld.u32 %r120,[%r203]; .loc 1 256 5 setp.le.s32 %r356,%r140,%r120; @ %r356 bra $L56; .loc 1 257 5 sub.u32 %r142,%r140,%r120; .loc 1 258 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r326; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r142; call (%value_in),__any_on,(%out_arg1,%out_arg2); ld.param.u32 %r359,[%value_in]; } mov.u32 %r65,%r359; .loc 1 258 6 setp.eq.u32 %r360,%r65,0; @ %r360 bra $L57; .loc 1 260 6 add.u32 %r143,%r142,-1; .loc 1 261 11 shr.s32 %r361,%r143,5; cvt.s64.s32 %r362,%r361; .loc 1 261 9 shl.b64 %r363,%r362,2; add.u64 %r364,%r121,%r363; .loc 1 261 31 and.b32 %r365,%r143,31; .loc 1 261 25 mov.u32 %r367,1; shl.b32 %r366,%r367,%r365; .loc 1 261 21 ld.u32 %r369,[%r364]; and.b32 %r368,%r366,%r369; .loc 1 261 7 setp.eq.u32 %r370,%r368,0; @ %r370 bra $L98; .loc 1 263 8 setp.le.s32 %r371,%r143,1; @ %r371 bra $L58; .loc 1 263 18 add.u32 %r374,%r142,-2; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r326; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r374; call (%value_in),__any_on,(%out_arg1,%out_arg2); ld.param.u32 %r375,[%value_in]; } .loc 1 263 15 setp.ne.u32 %r376,%r375,0; @ %r376 bra $L99; $L58: .loc 1 262 14 mov.u32 %r65,2; bra $L57; $L98: .loc 1 259 13 mov.u32 %r65,%r367; bra $L57; $L99: .loc 1 264 15 mov.u32 %r65,3; $L57: .loc 1 267 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r326; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r142; call rshift,(%out_arg1,%out_arg2); } .loc 1 268 5 add.u32 %r122,%r122,%r142; bra $L59; $L56: .loc 1 270 10 setp.ge.s32 %r379,%r140,%r120; @ %r379 bra $L100; .loc 1 271 5 sub.u32 %r144,%r120,%r140; .loc 1 272 7 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r201; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r326; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r144; call (%value_in),__lshift,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r383,[%value_in]; } mov.u64 %r114,%r383; .loc 1 273 5 sub.u32 %r122,%r122,%r144; .loc 1 274 5 add.u64 %r121,%r114,24; .loc 1 254 11 mov.u32 %r65,0; bra $L59; $L100: mov.u32 %r65,0; $L59: .loc 1 276 5 ld.u32 %r384,[%r203+8]; setp.ge.s32 %r385,%r384,%r122; @ %r385 bra $L60; $L61: .loc 1 278 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r201; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r114; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 279 7 mov.u64 %r388,0; st.u64 [%r205],%r388; .loc 1 280 10 mov.u32 %r200,163; bra $L18; $L60: .loc 1 283 13 ld.u32 %r78,[%r203+4]; .loc 1 283 5 setp.le.s32 %r389,%r78,%r122; @ %r389 bra $L101; .loc 1 285 5 sub.u32 %r145,%r78,%r122; .loc 1 286 6 setp.gt.s32 %r390,%r120,%r145; @ %r390 bra $L63; .loc 1 287 15 ld.u32 %r79,[%r203+12]; setp.eq.u32 %r391,%r79,2; @ %r391 bra $L64; setp.eq.u32 %r392,%r79,3; @ %r392 bra $L65; setp.ne.u32 %r393,%r79,1; @ %r393 bra $L66; .loc 1 289 8 setp.eq.u32 %r394,%r120,%r145; @ ! %r394 bra $L66; .loc 1 289 20 setp.eq.u32 %r395,%r120,1; @ %r395 bra $L68; .loc 1 289 33 add.u32 %r398,%r120,-1; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r114; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r398; call (%value_in),__any_on,(%out_arg1,%out_arg2); ld.param.u32 %r399,[%value_in]; } .loc 1 289 30 setp.eq.u32 %r400,%r399,0; @ %r400 bra $L66; ld.u32 %r78,[%r203+4]; bra $L68; $L64: .loc 1 293 8 setp.eq.u32 %r401,%r206,0; @ ! %r401 bra $L66; bra $L68; $L65: .loc 1 297 8 setp.eq.u32 %r402,%r206,0; @ %r402 bra $L66; $L68: .loc 1 299 11 st.u32 [%r204],%r78; .loc 1 300 21 mov.u32 %r403,1; st.u32 [%r114+20],%r403; .loc 1 300 11 st.u32 [%r121],%r403; .loc 1 301 10 st.u64 [%r205],%r114; .loc 1 302 13 mov.u32 %r200,98; bra $L18; $L66: .loc 1 306 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r201; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r114; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 307 8 mov.u64 %r407,0; st.u64 [%r205],%r407; .loc 1 308 11 mov.u32 %r200,80; bra $L18; $L63: .loc 1 310 5 add.u32 %r146,%r145,-1; .loc 1 311 6 setp.ne.u32 %r408,%r65,0; @ %r408 bra $L102; .loc 1 313 11 setp.eq.u32 %r409,%r146,0; @ %r409 bra $L70; .loc 1 314 15 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r114; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r146; call (%value_in),__any_on,(%out_arg1,%out_arg2); ld.param.u32 %r412,[%value_in]; } mov.u32 %r65,%r412; bra $L70; $L102: .loc 1 312 13 mov.u32 %r65,1; $L70: .loc 1 315 10 shr.s32 %r413,%r146,5; cvt.s64.s32 %r414,%r413; .loc 1 315 8 shl.b64 %r415,%r414,2; add.u64 %r416,%r121,%r415; .loc 1 315 30 and.b32 %r417,%r146,31; .loc 1 315 24 mov.u32 %r419,1; shl.b32 %r418,%r419,%r417; .loc 1 315 20 ld.u32 %r421,[%r416]; and.b32 %r420,%r418,%r421; .loc 1 315 6 setp.eq.u32 %r422,%r420,0; @ %r422 bra $L71; .loc 1 316 13 or.b32 %r65,%r65,2; $L71: .loc 1 317 9 sub.u32 %r120,%r120,%r145; .loc 1 318 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r114; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r145; call rshift,(%out_arg1,%out_arg2); } .loc 1 319 5 ld.u32 %r122,[%r203+4]; .loc 1 284 7 mov.u32 %r200,2; bra $L62; $L101: .loc 1 282 6 mov.u32 %r200,1; $L62: .loc 1 321 5 setp.eq.u32 %r425,%r65,0; @ %r425 bra $L72; .loc 1 323 13 ld.u32 %r91,[%r203+12]; setp.eq.u32 %r426,%r91,2; @ %r426 bra $L73; setp.eq.u32 %r427,%r91,3; @ %r427 bra $L74; setp.ne.u32 %r428,%r91,1; @ %r428 bra $L75; .loc 1 327 21 and.b32 %r429,%r65,2; .loc 1 327 10 setp.eq.u32 %r430,%r429,0; @ %r430 bra $L75; .loc 1 328 27 ld.u32 %r432,[%r121]; or.b32 %r431,%r65,%r432; and.b32 %r433,%r431,1; .loc 1 328 8 setp.ne.u32 %r434,%r433,0; @ %r434 bra $L76; bra $L75; $L73: .loc 1 332 7 mov.u32 %r435,1; sub.u32 %r206,%r435,%r206; $L74: .loc 1 337 6 setp.eq.u32 %r436,%r206,0; @ %r436 bra $L75; $L76: .loc 1 338 6 ld.u32 %r147,[%r114+20]; .loc 1 114 4 add.u64 %r153,%r114,24; .loc 1 115 12 cvt.s64.s32 %r437,%r147; .loc 1 115 9 shl.b64 %r155,%r437,2; .loc 1 115 5 add.u64 %r156,%r153,%r155; mov.u64 %r124,%r153; .loc 1 122 8 mov.u32 %r501,0; $L79: .loc 1 118 7 ld.u32 %r158,[%r124]; .loc 1 118 6 setp.eq.u32 %r438,%r158,-1; @ %r438 bra $L77; .loc 1 119 4 add.u32 %r439,%r158,1; st.u32 [%r124],%r439; bra $L78; $L77: .loc 1 122 8 st.u32 [%r124],%r501; add.u64 %r124,%r124,4; .loc 1 123 3 setp.gt.u64 %r441,%r156,%r124; @ %r441 bra $L79; .loc 1 135 8 ld.u32 %r160,[%r114+20]; .loc 1 135 6 ld.u32 %r442,[%r114+12]; setp.lt.s32 %r443,%r160,%r442; @ %r443 bra $L80; .loc 1 136 9 ld.u32 %r447,[%r114+8]; add.u32 %r446,%r447,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r201; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r446; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r448,[%value_in]; } .loc 1 137 4 ld.s32 %r452,[%r114+20]; add.u64 %r453,%r452,2; shl.b64 %r454,%r453,2; add.u64 %r455,%r114,16; add.u64 %r456,%r448,16; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r456; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r455; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r454; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r457,[%value_in]; } .loc 1 138 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r201; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r114; call _Bfree,(%out_arg1,%out_arg2); } ld.u32 %r160,[%r448+20]; add.u64 %r153,%r448,24; mov.u64 %r114,%r448; $L80: .loc 1 141 16 add.u32 %r460,%r160,1; st.u32 [%r114+20],%r460; .loc 1 141 20 cvt.s64.s32 %r461,%r160; add.u64 %r462,%r461,4; shl.b64 %r463,%r462,2; add.u64 %r464,%r114,%r463; mov.u32 %r466,1; st.u32 [%r464+8],%r466; $L78: .loc 1 341 7 setp.ne.u32 %r467,%r200,2; @ %r467 bra $L81; .loc 1 342 29 ld.u32 %r469,[%r203]; add.u32 %r468,%r469,-1; .loc 1 342 8 setp.ne.u32 %r470,%r468,%r120; @ %r470 bra $L103; .loc 1 343 17 shr.s32 %r471,%r120,5; cvt.s64.s32 %r472,%r471; .loc 1 343 10 shl.b64 %r473,%r472,2; add.u64 %r474,%r153,%r473; .loc 1 343 42 and.b32 %r475,%r120,31; .loc 1 343 32 mov.u32 %r477,1; shl.b32 %r476,%r477,%r475; .loc 1 343 28 ld.u32 %r479,[%r474]; and.b32 %r478,%r476,%r479; .loc 1 343 6 setp.eq.u32 %r480,%r478,0; selp.u32 %r200,34,33,%r480; bra $L72; $L81: .loc 1 346 12 ld.u32 %r481,[%r114+20]; setp.le.s32 %r482,%r481,%r147; @ %r482 bra $L83; $L84: .loc 1 349 5 mov.u32 %r484,1; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r114; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r484; call rshift,(%out_arg1,%out_arg2); } .loc 1 350 8 add.u32 %r122,%r122,1; ld.u32 %r485,[%r203+8]; setp.lt.s32 %r486,%r485,%r122; @ %r486 bra $L61; mov.u32 %r200,33; bra $L72; $L83: .loc 1 347 12 and.b32 %r148,%r120,31; .loc 1 347 5 setp.eq.u32 %r487,%r148,0; @ %r487 bra $L105; .loc 1 348 13 add.u64 %r489,%r153,%r155; ld.u32 %r488,[%r489+-4]; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r488; call (%value_in),__hi0bits,(%out_arg1); ld.param.u32 %r491,[%value_in]; } .loc 1 348 33 mov.u32 %r493,32; sub.u32 %r492,%r493,%r148; .loc 1 348 9 setp.lt.s32 %r494,%r491,%r492; @ %r494 bra $L84; mov.u32 %r200,33; bra $L72; $L103: mov.u32 %r200,34; bra $L72; $L105: mov.u32 %r200,33; bra $L72; $L75: .loc 1 356 8 or.b32 %r200,%r200,16; $L72: .loc 1 358 6 st.u64 [%r205],%r114; .loc 1 359 7 st.u32 [%r204],%r122; .loc 1 360 9 bra $L18; $L161: .loc 1 225 6 st.u64 [%r202],%r116; bra $L85; $L23: ld.u8 %r30,[%r150]; .loc 1 177 6 mov.u64 %r116,%r150; $L24: cvt.u16.u32 %r496,%r30; setp.eq.u16 %r497,%r496,80; @ %r497 bra $L106; setp.eq.u16 %r499,%r496,112; @ ! %r499 bra $L161; bra $L107; $L89: .loc 1 196 8 mov.u64 %r116,%r131; bra $L35; $L18: .loc 1 361 1 mov.u32 %value,%r200; st.param.u32 [%value_out],%value; ret; } /62 1591654539 399 399 100644 7699 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __hexnan .visible .func (.param .u32 %value_out) __hexnan (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/stdlib/gdtoa-hexnan.c" // BEGIN GLOBAL VAR DECL: __hexdig .extern .const .align 1 .u8 __hexdig[256]; // 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 %r25; .reg .u32 %r26; .reg .u64 %r39; .reg .u32 %r40; .reg .u64 %r41; .reg .u64 %r45; .reg .u64 %r46; .reg .u32 %r47; .reg .u64 %r48; .reg .u64 %r49; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r52; .reg .u64 %r53; .reg .u64 %r55; .reg .u32 %r56; .reg .u64 %r58; .reg .u32 %r59; .reg .u32 %r60; .reg .u32 %r61; .reg .u64 %r62; .reg .u64 %r63; .reg .u32 %r64; .reg .u32 %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .u32 %r70; .reg .u64 %r71; .reg .u32 %r72; .reg .u32 %r75; .reg .u32 %r76; .reg .u64 %r77; .reg .u64 %r79; .reg .u32 %r84; .reg .u32 %r88; .reg .u64 %r89; .reg .u64 %r90; .reg .u64 %r91; .reg .u32 %r92; .reg .u64 %r93; .reg .u64 %r94; .reg .pred %r95; .reg .u32 %r96; .reg .u64 %r98; .reg .u64 %r99; .reg .pred %r100; .reg .pred %r101; .reg .pred %r102; .reg .u32 %r104; .reg .u32 %r105; .reg .u32 %r107; .reg .u32 %r108; .reg .u16 %r109; .reg .u16 %r110; .reg .u16 %r111; .reg .u32 %r112; .reg .u16 %r113; .reg .pred %r114; .reg .pred %r115; .reg .u32 %r117; .reg .u32 %r118; .reg .u32 %r119; .reg .pred %r120; .reg .pred %r122; .reg .u64 %r123; .reg .pred %r124; .reg .u32 %r125; .reg .pred %r126; .reg .u16 %r128; .reg .u16 %r129; .reg .u32 %r130; .reg .u32 %r131; .reg .u32 %r132; .reg .pred %r133; .reg .pred %r134; .reg .u32 %r136; .reg .u32 %r137; .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 .u32 %r148; .reg .u32 %r149; .reg .u32 %r150; .reg .u32 %r151; .reg .pred %r152; .reg .pred %r153; .reg .u32 %r154; .reg .pred %r155; .reg .pred %r156; .reg .u32 %r157; .reg .u32 %r158; .reg .u32 %r159; .reg .u32 %r160; .reg .pred %r161; .reg .pred %r162; .reg .pred %r163; .reg .u32 %r164; .reg .u32 %r165; .reg .pred %r166; .reg .u64 %r168; .reg .u32 %r169; .reg .u32 %r171; mov.u64 %r89,%ar0; mov.u64 %r90,%ar1; mov.u64 %r91,%ar2; .loc 1 74 8 ld.u32 %r52,[%r90]; .loc 1 75 18 shr.s32 %r92,%r52,5; cvt.s64.s32 %r93,%r92; .loc 1 75 9 shl.b64 %r94,%r93,2; .loc 1 75 4 add.u64 %r53,%r91,%r94; .loc 1 76 12 and.b32 %r25,%r52,31; .loc 1 76 5 setp.ne.u32 %r95,%r25,0; @ %r95 bra $L2; add.u64 %r58,%r53,-4; .loc 1 75 4 mov.u64 %r45,%r53; bra $L3; $L2: .loc 1 77 4 add.u64 %r45,%r53,4; mov.u64 %r58,%r53; $L3: .loc 1 78 7 mov.u32 %r96,0; st.u32 [%r45+-4],%r96; .loc 1 81 4 ld.u64 %r49,[%r89]; .loc 1 82 7 mov.u64 %r48,%r58; mov.u64 %r46,%r58; .loc 1 80 20 mov.u32 %r51,%r96; .loc 1 80 16 mov.u32 %r50,%r96; .loc 1 80 10 mov.u32 %r47,%r96; .loc 1 83 13 cvta.const.u64 %r168,__hexdig; .loc 1 110 9 mov.u32 %r169,%r96; .loc 1 55 4 mov.u32 %r171,8; .loc 1 82 7 bra $L4; $L17: .loc 1 83 13 cvt.u64.u32 %r98,%r56; add.u64 %r99,%r168,%r98; ld.u8 %r26,[%r99]; .loc 1 83 6 setp.ne.u32 %r100,%r26,0; @ %r100 bra $L5; .loc 1 84 7 setp.gt.u32 %r101,%r56,32; @ %r101 bra $L6; .loc 1 85 8 setp.le.s32 %r102,%r47,%r50; @ %r102 bra $L7; .loc 1 86 12 set.u32.lt.u64 %r104,%r46,%r48; neg.s32 %r105,%r104; .loc 1 86 22 set.u32.le.s32 %r107,%r51,7; neg.s32 %r108,%r107; .loc 1 86 17 cvt.u16.u32 %r110,%r105; cvt.u16.u32 %r111,%r108; and.b16 %r109,%r110,%r111; .loc 1 86 9 cvt.u32.u16 %r112,%r109; cvt.u16.u8 %r113,%r112; setp.ne.u16 %r114,%r113,0; @ %r114 bra $L8; $L11: .loc 1 88 9 setp.le.u64 %r115,%r46,%r91; @ %r115 bra $L30; bra $L43; $L8: .loc 1 55 4 sub.u32 %r59,%r171,%r51; .loc 1 56 4 shl.b32 %r60,%r59,2; .loc 1 57 4 mov.u32 %r117,32; sub.u32 %r61,%r117,%r60; ld.u32 %r67,[%r46]; add.u64 %r77,%r46,4; mov.u64 %r62,%r46; $L10: .loc 1 59 10 ld.u32 %r64,[%r77]; .loc 1 59 14 shl.b32 %r118,%r64,%r61; .loc 1 59 6 or.b32 %r119,%r118,%r67; st.u32 [%r62],%r119; .loc 1 60 8 shr.u32 %r67,%r64,%r60; st.u32 [%r77],%r67; .loc 1 61 3 add.u64 %r62,%r62,4; add.u64 %r77,%r77,4; setp.gt.u64 %r120,%r48,%r62; @ %r120 bra $L10; bra $L11; $L43: .loc 1 93 11 add.u64 %r48,%r46,-4; st.u32 [%r46+-4],%r169; mov.u32 %r50,%r47; mov.u64 %r46,%r48; .loc 1 95 8 mov.u32 %r51,0; bra $L7; $L6: .loc 1 99 7 setp.eq.u32 %r122,%r56,41; @ %r122 bra $L12; $L18: .loc 1 103 11 mov.u32 %r88,4; bra $L1; $L12: .loc 1 100 13 add.u64 %r123,%r49,2; .loc 1 100 9 st.u64 [%r89],%r123; .loc 1 101 5 bra $L14; $L5: .loc 1 105 10 add.u32 %r47,%r47,1; .loc 1 106 6 add.u32 %r51,%r51,1; setp.gt.s32 %r124,%r51,8; @ %r124 bra $L15; ld.u32 %r125,[%r46]; shl.b32 %r76,%r125,4; bra $L16; $L15: .loc 1 107 7 setp.le.u64 %r126,%r46,%r91; @ %r126 bra $L7; .loc 1 110 9 st.u32 [%r46+-4],%r169; add.u64 %r46,%r46,-4; mov.u32 %r76,%r96; .loc 1 109 6 mov.u32 %r51,1; $L16: .loc 1 112 24 cvt.u16.u32 %r129,%r26; and.b16 %r128,%r129,15; cvt.u32.u16 %r131,%r128; cvt.u32.u8 %r130,%r131; .loc 1 112 19 or.b32 %r132,%r130,%r76; .loc 1 112 6 st.u32 [%r46],%r132; bra $L7; $L30: .loc 1 89 9 mov.u32 %r51,8; $L7: mov.u64 %r49,%r55; $L4: .loc 1 82 7 add.u64 %r55,%r49,1; .loc 1 82 11 ld.u8 %r56,[%r55]; .loc 1 82 7 setp.ne.u32 %r133,%r56,0; @ %r133 bra $L17; $L14: .loc 1 114 5 setp.eq.u32 %r134,%r47,0; @ %r134 bra $L18; .loc 1 116 8 set.u32.lt.u64 %r136,%r46,%r48; neg.s32 %r137,%r136; .loc 1 116 18 set.u32.le.s32 %r139,%r51,7; neg.s32 %r140,%r139; .loc 1 116 13 cvt.u16.u32 %r142,%r137; cvt.u16.u32 %r143,%r140; and.b16 %r141,%r142,%r143; .loc 1 116 5 cvt.u32.u16 %r144,%r141; cvt.u16.u8 %r145,%r144; setp.ne.u16 %r146,%r145,0; @ %r146 bra $L19; $L23: .loc 1 118 5 setp.gt.u64 %r147,%r46,%r91; @ %r147 bra $L20; bra $L44; $L19: .loc 1 55 4 mov.u32 %r148,8; sub.u32 %r68,%r148,%r51; .loc 1 56 4 shl.b32 %r69,%r68,2; .loc 1 57 4 mov.u32 %r149,32; sub.u32 %r70,%r149,%r69; ld.u32 %r75,[%r46]; add.u64 %r79,%r46,4; mov.u64 %r71,%r46; $L22: .loc 1 59 10 ld.u32 %r72,[%r79]; .loc 1 59 14 shl.b32 %r150,%r72,%r70; .loc 1 59 6 or.b32 %r151,%r150,%r75; st.u32 [%r71],%r151; .loc 1 60 8 shr.u32 %r75,%r72,%r69; st.u32 [%r79],%r75; .loc 1 61 3 add.u64 %r71,%r71,4; add.u64 %r79,%r79,4; setp.gt.u64 %r152,%r48,%r71; @ %r152 bra $L22; bra $L23; $L20: mov.u64 %r63,%r46; mov.u64 %r41,%r91; $L24: add.u64 %r39,%r41,4; .loc 1 120 14 ld.u32 %r40,[%r63]; .loc 1 120 12 st.u32 [%r41],%r40; add.u64 %r63,%r63,4; mov.u64 %r41,%r39; .loc 1 121 4 setp.ge.u64 %r153,%r58,%r63; @ %r153 bra $L24; .loc 1 122 12 mov.u32 %r154,0; $L25: st.u32 [%r39],%r154; add.u64 %r39,%r39,4; .loc 1 123 4 setp.ge.u64 %r155,%r58,%r39; @ %r155 bra $L25; ld.u32 %r84,[%r45+-4]; bra $L26; $L44: ld.u32 %r84,[%r45+-4]; .loc 1 127 6 setp.eq.u32 %r156,%r25,0; @ %r156 bra $L26; .loc 1 128 44 mov.u32 %r158,32; sub.u32 %r157,%r158,%r25; .loc 1 128 33 mov.u32 %r160,-1; shr.u32 %r159,%r160,%r157; .loc 1 128 8 and.b32 %r84,%r84,%r159; st.u32 [%r45+-4],%r84; $L26: .loc 1 131 6 setp.ne.u32 %r161,%r84,0; @ %r161 bra $L31; .loc 1 133 6 setp.eq.u64 %r162,%r91,%r58; @ ! %r162 bra $L28; bra $L27; $L29: setp.ne.u64 %r163,%r91,%r58; @ %r163 bra $L28; $L27: .loc 1 134 8 mov.u32 %r164,1; st.u32 [%r58],%r164; .loc 1 138 9 mov.u32 %r88,5; .loc 1 135 4 bra $L1; $L28: .loc 1 130 16 add.u64 %r58,%r58,-4; .loc 1 131 6 ld.u32 %r165,[%r58]; setp.eq.u32 %r166,%r165,0; @ %r166 bra $L29; .loc 1 138 9 mov.u32 %r88,5; bra $L1; $L31: mov.u32 %r88,5; $L1: .loc 1 139 1 mov.u32 %value,%r88; st.param.u32 [%value_out],%value; ret; } lib_a-impure.o/ 1591654539 399 399 100644 823 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[2] = {67,0 }; // BEGIN VAR DEF: impure_data .global .align 8 .u64 impure_data[233] = {0,0,0,0,0,0,0,0,0,generic($LC0),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 }; // END PREAMBLE // 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/ 1591654539 399 399 100644 1006 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 44 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 45 1 mov.u64 %value,%r27; st.param.u64 [%value_out],%value; ret; } lib_a-isalnum.o/1591654539 399 399 100644 919 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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_ptr__ .extern .global .align 8 .u64 __ctype_ptr__[1]; // 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 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u16 %r36; .reg .u16 %r37; .reg .u32 %r38; .reg .u16 %r39; mov.u32 %r29,%ar0; .loc 1 44 22 cvt.s64.s32 %r31,%r29; ld.global.u64 %r32,[__ctype_ptr__]; add.u64 %r33,%r32,%r31; .loc 1 44 28 ld.u8 %r39,[%r33+1]; mov.u16 %r37,%r39; and.b16 %r36,%r37,7; cvt.u32.u16 %r38,%r36; cvt.s32.s8 %value,%r38; .loc 1 45 1 st.param.u32 [%value_out],%value; ret; } lib_a-isalpha.o/1591654539 399 399 100644 919 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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_ptr__ .extern .global .align 8 .u64 __ctype_ptr__[1]; // 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 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u16 %r36; .reg .u16 %r37; .reg .u32 %r38; .reg .u16 %r39; mov.u32 %r29,%ar0; .loc 1 42 22 cvt.s64.s32 %r31,%r29; ld.global.u64 %r32,[__ctype_ptr__]; add.u64 %r33,%r32,%r31; .loc 1 42 28 ld.u8 %r39,[%r33+1]; mov.u16 %r37,%r39; and.b16 %r36,%r37,3; cvt.u32.u16 %r38,%r36; cvt.s32.s8 %value,%r38; .loc 1 43 1 st.param.u32 [%value_out],%value; ret; } lib_a-iscntrl.o/1591654539 399 399 100644 920 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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_ptr__ .extern .global .align 8 .u64 __ctype_ptr__[1]; // 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 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u16 %r36; .reg .u16 %r37; .reg .u32 %r38; .reg .u16 %r39; mov.u32 %r29,%ar0; .loc 1 45 22 cvt.s64.s32 %r31,%r29; ld.global.u64 %r32,[__ctype_ptr__]; add.u64 %r33,%r32,%r31; .loc 1 45 28 ld.u8 %r39,[%r33+1]; mov.u16 %r37,%r39; and.b16 %r36,%r37,32; cvt.u32.u16 %r38,%r36; cvt.s32.s8 %value,%r38; .loc 1 46 1 st.param.u32 [%value_out],%value; ret; } lib_a-isdigit.o/1591654539 399 399 100644 919 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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_ptr__ .extern .global .align 8 .u64 __ctype_ptr__[1]; // 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 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u16 %r36; .reg .u16 %r37; .reg .u32 %r38; .reg .u16 %r39; mov.u32 %r29,%ar0; .loc 1 42 22 cvt.s64.s32 %r31,%r29; ld.global.u64 %r32,[__ctype_ptr__]; add.u64 %r33,%r32,%r31; .loc 1 42 28 ld.u8 %r39,[%r33+1]; mov.u16 %r37,%r39; and.b16 %r36,%r37,4; cvt.u32.u16 %r38,%r36; cvt.s32.s8 %value,%r38; .loc 1 43 1 st.param.u32 [%value_out],%value; ret; } lib_a-islower.o/1591654539 399 399 100644 1037 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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_ptr__ .extern .global .align 8 .u64 __ctype_ptr__[1]; // 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 %r30; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u16 %r37; .reg .u16 %r38; .reg .u16 %r40; .reg .u32 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .u16 %r45; mov.u32 %r30,%ar0; .loc 1 42 24 cvt.s64.s32 %r32,%r30; ld.global.u64 %r33,[__ctype_ptr__]; add.u64 %r34,%r33,%r32; .loc 1 42 41 ld.u8 %r45,[%r34+1]; mov.u16 %r38,%r45; and.b16 %r37,%r38,3; cvt.u32.u16 %r42,%r37; cvt.s32.s8 %r41,%r42; cvt.u16.u32 %r40,%r41; set.u32.eq.u16 %r43,%r40,2; neg.s32 %value,%r43; .loc 1 43 1 st.param.u32 [%value_out],%value; ret; } lib_a-isprint.o/1591654539 399 399 100644 1510 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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_ptr__ .extern .global .align 8 .u64 __ctype_ptr__[1]; // 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 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u16 %r36; .reg .u16 %r37; .reg .u32 %r38; .reg .u16 %r39; mov.u32 %r29,%ar0; .loc 1 51 22 cvt.s64.s32 %r31,%r29; ld.global.u64 %r32,[__ctype_ptr__]; add.u64 %r33,%r32,%r31; .loc 1 51 28 ld.u8 %r39,[%r33+1]; mov.u16 %r37,%r39; and.b16 %r36,%r37,23; cvt.u32.u16 %r38,%r36; cvt.s32.s8 %value,%r38; .loc 1 52 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 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u32 %r35; mov.u32 %r29,%ar0; .loc 1 59 22 cvt.s64.s32 %r31,%r29; ld.global.u64 %r32,[__ctype_ptr__]; add.u64 %r33,%r32,%r31; ld.s8 %r35,[%r33+1]; .loc 1 59 28 and.b32 %value,%r35,151; .loc 1 60 1 st.param.u32 [%value_out],%value; ret; } lib_a-ispunct.o/1591654539 399 399 100644 920 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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_ptr__ .extern .global .align 8 .u64 __ctype_ptr__[1]; // 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 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u16 %r36; .reg .u16 %r37; .reg .u32 %r38; .reg .u16 %r39; mov.u32 %r29,%ar0; .loc 1 44 22 cvt.s64.s32 %r31,%r29; ld.global.u64 %r32,[__ctype_ptr__]; add.u64 %r33,%r32,%r31; .loc 1 44 28 ld.u8 %r39,[%r33+1]; mov.u16 %r37,%r39; and.b16 %r36,%r37,16; cvt.u32.u16 %r38,%r36; cvt.s32.s8 %value,%r38; .loc 1 45 1 st.param.u32 [%value_out],%value; ret; } lib_a-isspace.o/1591654539 399 399 100644 919 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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_ptr__ .extern .global .align 8 .u64 __ctype_ptr__[1]; // 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 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u16 %r36; .reg .u16 %r37; .reg .u32 %r38; .reg .u16 %r39; mov.u32 %r29,%ar0; .loc 1 42 22 cvt.s64.s32 %r31,%r29; ld.global.u64 %r32,[__ctype_ptr__]; add.u64 %r33,%r32,%r31; .loc 1 42 28 ld.u8 %r39,[%r33+1]; mov.u16 %r37,%r39; and.b16 %r36,%r37,8; cvt.u32.u16 %r38,%r36; cvt.s32.s8 %value,%r38; .loc 1 43 1 st.param.u32 [%value_out],%value; ret; } lib_a-isupper.o/1591654539 399 399 100644 1037 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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_ptr__ .extern .global .align 8 .u64 __ctype_ptr__[1]; // 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 %r30; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u16 %r37; .reg .u16 %r38; .reg .u16 %r40; .reg .u32 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .u16 %r45; mov.u32 %r30,%ar0; .loc 1 41 24 cvt.s64.s32 %r32,%r30; ld.global.u64 %r33,[__ctype_ptr__]; add.u64 %r34,%r33,%r32; .loc 1 41 41 ld.u8 %r45,[%r34+1]; mov.u16 %r38,%r45; and.b16 %r37,%r38,3; cvt.u32.u16 %r42,%r37; cvt.s32.s8 %r41,%r42; cvt.u16.u32 %r40,%r41; set.u32.eq.u16 %r43,%r40,1; neg.s32 %value,%r43; .loc 1 42 1 st.param.u32 [%value_out],%value; ret; } /84 1591654539 399 399 100644 925 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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_ptr__ .extern .global .align 8 .u64 __ctype_ptr__[1]; // 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 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u16 %r36; .reg .u16 %r37; .reg .u32 %r38; .reg .u16 %r39; mov.u32 %r29,%ar0; .loc 1 43 22 cvt.s64.s32 %r31,%r29; ld.global.u64 %r32,[__ctype_ptr__]; add.u64 %r33,%r32,%r31; .loc 1 43 28 ld.u8 %r39,[%r33+1]; mov.u16 %r37,%r39; and.b16 %r36,%r37,68; cvt.u32.u16 %r38,%r36; cvt.s32.s8 %value,%r38; .loc 1 44 1 st.param.u32 [%value_out],%value; ret; } lib_a-jrand48.o/1591654539 399 399 100644 1963 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 21 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 22 11 ld.u16 %r33,[%r29+4]; .loc 1 22 27 shl.b64 %r34,%r33,16; .loc 1 22 36 ld.u16 %r35,[%r29+2]; .loc 1 22 34 add.u64 %value,%r34,%r35; .loc 1 23 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 21 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 22 11 ld.u16 %r34,[%r29+4]; .loc 1 22 27 shl.b64 %r35,%r34,16; .loc 1 22 36 ld.u16 %r36,[%r29+2]; .loc 1 22 34 add.u64 %value,%r35,%r36; .loc 1 31 1 st.param.u64 [%value_out],%value; ret; } lib_a-l64a.o/ 1591654539 399 399 100644 3988 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: l64a .visible .func (.param .u64 %value_out) l64a (.param .u64 %in_ar0); .file 1 "../../../../../newlib/libc/stdlib/l64a.c" // BEGIN GLOBAL FUNCTION DECL: _l64a_r .visible .func (.param .u64 %value_out) _l64a_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN VAR DEF: R64_ARRAY .const .align 1 .u8 R64_ARRAY[65] = {46,47,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,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: l64a .visible .func (.param .u64 %value_out) l64a (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r22; .reg .u64 %r24; .reg .u64 %r29; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .pred %r39; .reg .u32 %r41; .reg .u32 %r42; .reg .u64 %r43; .reg .u64 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r48; .reg .u32 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u32 %r52; .reg .pred %r53; .reg .pred %r54; .reg .u64 %r56; mov.u64 %r38,%ar0; .loc 1 33 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 44 17 and.b64 %r24,%r38,4294967295; .loc 1 47 10 add.u64 %r37,%r22,280; .loc 1 52 10 setp.eq.u64 %r39,%r24,0; @ %r39 bra $L6; .loc 1 59 25 cvta.const.u64 %r56,R64_ARRAY; .loc 1 58 13 cvt.u32.u64 %r42,%r38; and.b32 %r41,%r42,63; .loc 1 59 25 cvt.s64.s32 %r43,%r41; add.u64 %r44,%r56,%r43; .loc 1 59 14 ld.u8 %r45,[%r44]; st.u8 [%r22+280],%r45; .loc 1 60 11 shr.u64 %r29,%r24,6; add.u64 %r34,%r22,281; add.u64 %r36,%r22,286; bra $L3; $L6: .loc 1 48 7 mov.u64 %r35,%r37; $L2: .loc 1 54 9 mov.u32 %r46,0; st.u8 [%r35],%r46; bra $L1; $L10: .loc 1 58 13 cvt.u32.u64 %r49,%r29; and.b32 %r48,%r49,63; .loc 1 59 25 cvt.s64.s32 %r50,%r48; add.u64 %r51,%r56,%r50; .loc 1 59 14 ld.u8 %r52,[%r51]; st.u8 [%r34],%r52; .loc 1 60 11 shr.u64 %r29,%r29,6; add.u64 %r34,%r34,1; .loc 1 50 3 setp.eq.u64 %r53,%r34,%r36; @ %r53 bra $L1; $L3: mov.u64 %r35,%r34; .loc 1 52 10 setp.eq.u64 %r54,%r29,0; @ ! %r54 bra $L10; bra $L2; $L1: .loc 1 34 1 mov.u64 %value,%r37; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _l64a_r .visible .func (.param .u64 %value_out) _l64a_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 %r29; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .pred %r39; .reg .u32 %r41; .reg .u32 %r42; .reg .u64 %r43; .reg .u64 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r48; .reg .u32 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u32 %r52; .reg .pred %r53; .reg .pred %r54; .reg .u64 %r56; mov.u64 %r37,%ar0; mov.u64 %r38,%ar1; .loc 1 44 17 and.b64 %r27,%r38,4294967295; .loc 1 47 10 add.u64 %r36,%r37,280; .loc 1 52 10 setp.eq.u64 %r39,%r27,0; @ %r39 bra $L16; .loc 1 59 25 cvta.const.u64 %r56,R64_ARRAY; .loc 1 58 13 cvt.u32.u64 %r42,%r38; and.b32 %r41,%r42,63; .loc 1 59 25 cvt.s64.s32 %r43,%r41; add.u64 %r44,%r56,%r43; .loc 1 59 14 ld.u8 %r45,[%r44]; st.u8 [%r37+280],%r45; .loc 1 60 11 shr.u64 %r29,%r27,6; add.u64 %r33,%r37,281; add.u64 %r35,%r37,286; bra $L13; $L16: .loc 1 48 7 mov.u64 %r34,%r36; $L12: .loc 1 54 9 mov.u32 %r46,0; st.u8 [%r34],%r46; .loc 1 55 4 bra $L11; $L20: .loc 1 58 13 cvt.u32.u64 %r49,%r29; and.b32 %r48,%r49,63; .loc 1 59 25 cvt.s64.s32 %r50,%r48; add.u64 %r51,%r56,%r50; .loc 1 59 14 ld.u8 %r52,[%r51]; st.u8 [%r33],%r52; .loc 1 60 11 shr.u64 %r29,%r29,6; add.u64 %r33,%r33,1; .loc 1 50 3 setp.eq.u64 %r53,%r33,%r35; @ %r53 bra $L11; $L13: mov.u64 %r34,%r33; .loc 1 52 10 setp.eq.u64 %r54,%r29,0; @ ! %r54 bra $L20; bra $L12; $L11: .loc 1 64 1 mov.u64 %value,%r36; st.param.u64 [%value_out],%value; ret; } lib_a-labs.o/ 1591654539 399 399 100644 522 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 48 10 abs.s64 %value,%r23; .loc 1 49 1 st.param.u64 [%value_out],%value; ret; } lib_a-lcong48.o/1591654539 399 399 100644 2000 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 22 20 ld.u16 %r31,[%r30]; st.u16 [%r29+240],%r31; .loc 1 23 20 ld.u16 %r32,[%r30+2]; st.u16 [%r29+242],%r32; .loc 1 24 20 ld.u16 %r33,[%r30+4]; st.u16 [%r29+244],%r33; .loc 1 25 20 ld.u16 %r34,[%r30+6]; st.u16 [%r29+246],%r34; .loc 1 26 20 ld.u16 %r35,[%r30+8]; st.u16 [%r29+248],%r35; .loc 1 27 20 ld.u16 %r36,[%r30+10]; st.u16 [%r29+250],%r36; .loc 1 28 16 ld.u16 %r37,[%r30+12]; st.u16 [%r29+252],%r37; .loc 1 29 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 36 3 ld.global.u64 %r22,[_impure_ptr]; .loc 1 22 20 ld.u16 %r31,[%r30]; st.u16 [%r22+240],%r31; .loc 1 23 20 ld.u16 %r32,[%r30+2]; st.u16 [%r22+242],%r32; .loc 1 24 20 ld.u16 %r33,[%r30+4]; st.u16 [%r22+244],%r33; .loc 1 25 20 ld.u16 %r34,[%r30+6]; st.u16 [%r22+246],%r34; .loc 1 26 20 ld.u16 %r35,[%r30+8]; st.u16 [%r22+248],%r35; .loc 1 27 20 ld.u16 %r36,[%r30+10]; st.u16 [%r22+250],%r36; .loc 1 28 16 ld.u16 %r37,[%r30+12]; st.u16 [%r22+252],%r37; .loc 1 37 1 ret; } lib_a-lctype.o/ 1591654539 399 399 100644 3371 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: __ctype_load_locale .visible .func (.param .u32 %value_out) __ctype_load_locale (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); .file 1 "../../../../../newlib/libc/locale/lctype.c" // BEGIN GLOBAL FUNCTION DECL: __get_current_ctype_locale .visible .func (.param .u64 %value_out) __get_current_ctype_locale; // BEGIN GLOBAL FUNCTION DECL: strcmp .extern .func (.param .u32 %value_out) strcmp (.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); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[2] = {67,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[6] = {65,83,67,73,73,0 }; // BEGIN VAR DEF: _ctype_using_locale .global .align 4 .u32 _ctype_using_locale[1]; // BEGIN VAR DEF: _ctype_locale .global .align 8 .u64 _ctype_locale[2]; // BEGIN VAR DEF: numone .global .align 1 .u8 numone[2] = {1,0 }; // BEGIN VAR DEF: _C_ctype_locale .const .align 8 .u64 _C_ctype_locale[2] = {generic($LC1),generic(numone) }; // BEGIN VAR DEF: _ctype_locale_buf .global .align 1 .u8 _ctype_locale_buf[34]; // BEGIN GLOBAL FUNCTION DEF: __ctype_load_locale .visible .func (.param .u32 %value_out) __ctype_load_locale (.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 %r26; .reg .u64 %r28; .reg .u32 %r29; .reg .u64 %r31; .reg .u32 %r32; .reg .pred %r33; .reg .u64 %r35; .reg .u64 %r37; .reg .u64 %r38; .reg .u32 %r41; .reg .u64 %r43; .reg .u32 %r44; mov.u64 %r26,%ar0; mov.u64 %r28,%ar2; mov.u32 %r29,%ar3; .loc 1 81 7 cvta.const.u64 %r31,$LC0; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .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 81 5 setp.ne.u32 %r33,%r32,0; @ %r33 bra $L2; .loc 1 82 24 st.global.u32 [_ctype_using_locale],%r32; bra $L3; $L2: .loc 1 85 30 cvta.global.u64 %r35,_ctype_locale_buf; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r35; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r28; call (%value_in),strcpy,(%out_arg1,%out_arg2); ld.param.u64 %r37,[%value_in]; } .loc 1 85 28 cvta.global.u64 %r38,_ctype_locale; st.u64 [%r38],%r37; .loc 1 87 13 st.u8 [%r35+32],%r29; .loc 1 88 13 mov.u32 %r41,0; st.u8 [%r35+33],%r41; .loc 1 89 31 add.u64 %r43,%r35,32; st.u64 [%r38+8],%r43; .loc 1 90 26 mov.u32 %r44,1; st.global.u32 [_ctype_using_locale],%r44; $L3: .loc 1 102 9 mov.u32 %value,0; .loc 1 103 1 st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __get_current_ctype_locale .visible .func (.param .u64 %value_out) __get_current_ctype_locale { .reg .u64 %value; .reg .u64 %r23; .reg .u32 %r24; .reg .pred %r25; .loc 1 110 3 ld.global.u32 %r24,[_ctype_using_locale]; setp.ne.u32 %r25,%r24,0; @ %r25 bra $L6; cvta.const.u64 %r23,_C_ctype_locale; bra $L4; $L6: cvta.global.u64 %r23,_ctype_locale; $L4: .loc 1 111 1 mov.u64 %value,%r23; st.param.u64 [%value_out],%value; ret; } lib_a-ldiv.o/ 1591654539 399 399 100644 1169 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 98 15 div.s64 %r22,%r25,%r26; .loc 1 99 14 rem.s64 %r23,%r25,%r26; .loc 1 100 5 setp.lt.s64 %r27,%r25,0; @ %r27 bra $L2; .loc 1 100 15 setp.ge.s64 %r28,%r23,0; @ %r28 bra $L3; .loc 1 101 3 add.u64 %r22,%r22,1; .loc 1 102 9 sub.u64 %r23,%r23,%r26; bra $L3; $L2: .loc 1 104 19 setp.le.s64 %r29,%r23,0; @ %r29 bra $L3; .loc 1 105 3 add.u64 %r22,%r22,-1; .loc 1 106 9 add.u64 %r23,%r23,%r26; $L3: .loc 1 108 9 st.u64 [%r24],%r22; st.u64 [%r24+8],%r23; .loc 1 109 1 ret; } lib_a-ldpart.o/ 1591654539 399 399 100644 13184 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: __part_load_locale .visible .func (.param .u32 %value_out) __part_load_locale (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u32 %in_ar4, .param .u32 %in_ar5, .param .u64 %in_ar6); .file 1 "../../../../../newlib/libc/locale/ldpart.c" // BEGIN GLOBAL VAR DECL: _PathLocale .extern .global .align 8 .u64 _PathLocale[1]; // 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: 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: open .extern .func (.param .u32 %value_out) open (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: fstat .extern .func (.param .u32 %value_out) fstat (.param .u32 %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_realloc .extern .func (.param .u64 %value_out) __nvptx_realloc (.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: read .extern .func (.param .u32 %value_out) read (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: close .extern .func (.param .u32 %value_out) close (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: strchr .extern .func (.param .u64 %value_out) strchr (.param .u64 %in_ar0, .param .u32 %in_ar1); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[2] = {67,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[6] = {80,79,83,73,88,0 }; // BEGIN VAR DEF: locale_buf_C$2179 .global .align 1 .u8 locale_buf_C$2179[2] = {67,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[2] = {47,0 }; // BEGIN VAR DEF: num_lines$2180 .global .align 4 .u32 num_lines$2180[1]; // BEGIN GLOBAL FUNCTION DEF: __part_load_locale .visible .func (.param .u32 %value_out) __part_load_locale (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u32 %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 .u32 %ar4; ld.param.u32 %ar4,[%in_ar4]; .reg .u32 %ar5; ld.param.u32 %ar5,[%in_ar5]; .reg .u64 %ar6; ld.param.u64 %ar6,[%in_ar6]; .reg .u64 %stack; mov.u64 %stack,0; .local .align 16 .b8 %frame_ar[1136]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r25; .reg .u64 %r27; .reg .u64 %r29; .reg .u64 %r33; .reg .u32 %r44; .reg .u64 %r47; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r55; .reg .u32 %r56; .reg .u64 %r59; .reg .u64 %r62; .reg .u64 %r64; .reg .u32 %r70; .reg .u64 %r71; .reg .u64 %r72; .reg .u64 %r73; .reg .u64 %r74; .reg .u32 %r75; .reg .u32 %r76; .reg .u64 %r77; .reg .u32 %r78; .reg .pred %r79; .reg .u64 %r81; .reg .u32 %r82; .reg .pred %r83; .reg .u64 %r85; .reg .u32 %r86; .reg .pred %r87; .reg .pred %r88; .reg .u32 %r91; .reg .pred %r92; .reg .pred %r93; .reg .u32 %r94; .reg .u32 %r95; .reg .u64 %r96; .reg .u64 %r97; .reg .u64 %r98; .reg .u64 %r100; .reg .u64 %r101; .reg .pred %r102; .reg .u64 %r104; .reg .pred %r105; .reg .u64 %r108; .reg .u64 %r110; .reg .u64 %r111; .reg .u64 %r114; .reg .u64 %r117; .reg .u64 %r120; .reg .u32 %r122; .reg .u32 %r123; .reg .pred %r125; .reg .u64 %r128; .reg .u32 %r129; .reg .pred %r130; .reg .pred %r131; .reg .u64 %r132; .reg .u32 %r134; .reg .u32 %r135; .reg .u64 %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 %r147; .reg .pred %r148; .reg .u64 %r151; .reg .pred %r152; .reg .u64 %r156; .reg .u32 %r160; .reg .u64 %r161; .reg .u64 %r162; .reg .pred %r163; .reg .u32 %r165; .reg .pred %r166; .reg .u64 %r167; .reg .u64 %r168; .reg .u32 %r169; .reg .u16 %r170; .reg .u32 %r171; .reg .pred %r172; .reg .pred %r173; .reg .u32 %r175; .reg .u64 %r176; .reg .u32 %r177; .reg .pred %r178; .reg .pred %r179; .reg .pred %r180; .reg .pred %r181; .reg .u32 %r182; .reg .u64 %r183; .reg .u64 %r184; .reg .u64 %r185; .reg .u64 %r187; .reg .u64 %r188; .reg .pred %r189; .reg .u32 %r192; mov.u64 %r71,%ar0; mov.u64 %r72,%ar1; mov.u64 %r73,%ar2; mov.u64 %r74,%ar3; mov.u32 %r75,%ar4; mov.u32 %r76,%ar5; mov.u64 %r77,%ar6; .loc 1 70 20 ld.u32 %r44,[%r72]; .loc 1 71 16 mov.u32 %r78,0; st.u32 [%r72],%r78; .loc 1 73 5 setp.eq.u64 %r79,%r71,0; @ %r79 bra $L2; .loc 1 76 7 cvta.const.u64 %r81,$LC0; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r71; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r81; call (%value_in),strcmp,(%out_arg1,%out_arg2); ld.param.u32 %r82,[%value_in]; } .loc 1 76 5 setp.ne.u32 %r83,%r82,0; @ %r83 bra $L3; $L5: .loc 1 77 10 mov.u32 %r70,0; bra $L1; $L3: .loc 1 76 29 cvta.const.u64 %r85,$LC1; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r71; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r85; call (%value_in),strcmp,(%out_arg1,%out_arg2); ld.param.u32 %r86,[%value_in]; } .loc 1 76 25 setp.eq.u32 %r87,%r86,0; @ %r87 bra $L5; .loc 1 83 5 setp.eq.u64 %r88,%r73,0; @ %r88 bra $L6; .loc 1 83 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r71; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r73; call (%value_in),strcmp,(%out_arg1,%out_arg2); ld.param.u32 %r91,[%value_in]; } .loc 1 83 19 setp.ne.u32 %r92,%r91,0; @ %r92 bra $L6; .loc 1 84 3 ld.global.u32 %r25,[num_lines$2180]; .loc 1 189 2 setp.gt.s32 %r93,%r25,0; @ %r93 bra $L7; $L9: .loc 1 85 17 mov.u32 %r94,1; st.u32 [%r72],%r94; .loc 1 86 10 mov.u32 %r70,0; bra $L1; $L7: add.u32 %r95,%r25,-1; cvt.u64.u32 %r96,%r95; add.u64 %r97,%r96,1; shl.b64 %r98,%r97,3; add.u64 %r64,%r77,%r98; $L8: .loc 1 190 14 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r73; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r100,[%value_in]; } .loc 1 190 24 add.u64 %r101,%r100,1; .loc 1 190 11 add.u64 %r73,%r73,%r101; .loc 1 190 7 st.u64 [%r77],%r73; .loc 1 189 49 add.u64 %r77,%r77,8; .loc 1 189 2 setp.ne.u64 %r102,%r77,%r64; @ %r102 bra $L8; bra $L9; $L6: .loc 1 92 13 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r71; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r104,[%value_in]; } .loc 1 92 11 add.u64 %r47,%r104,1; .loc 1 94 6 ld.global.u64 %r27,[_PathLocale]; .loc 1 94 5 setp.eq.u64 %r105,%r27,0; @ %r105 bra $L2; .loc 1 97 2 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; call (%value_in),strcpy,(%out_arg1,%out_arg2); ld.param.u64 %r108,[%value_in]; } .loc 1 98 2 cvta.const.u64 %r110,$LC2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r110; call (%value_in),strcat,(%out_arg1,%out_arg2); ld.param.u64 %r111,[%value_in]; } .loc 1 99 2 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r71; call (%value_in),strcat,(%out_arg1,%out_arg2); ld.param.u64 %r114,[%value_in]; } .loc 1 100 2 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r110; call (%value_in),strcat,(%out_arg1,%out_arg2); ld.param.u64 %r117,[%value_in]; } .loc 1 101 2 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r74; call (%value_in),strcat,(%out_arg1,%out_arg2); ld.param.u64 %r120,[%value_in]; } .loc 1 102 7 mov.u32 %r122,0; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r122; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),open,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r123,[%value_in]; } .loc 1 103 5 setp.lt.s32 %r125,%r123,0; @ %r125 bra $L2; .loc 1 108 6 add.u64 %r128,%frame,1024; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r123; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r128; call (%value_in),fstat,(%out_arg1,%out_arg2); ld.param.u32 %r129,[%value_in]; } .loc 1 108 5 setp.ne.u32 %r130,%r129,0; @ %r130 bra $L10; .loc 1 111 8 ld.u64 %r29,[%frame+1040]; .loc 1 111 5 setp.le.s64 %r131,%r29,0; @ %r131 bra $L10; .loc 1 113 10 add.u64 %r132,%r29,1; add.u64 %r49,%r132,%r47; .loc 1 116 12 set.u32.eq.u64 %r134,%r73,0; neg.s32 %r135,%r134; .loc 1 116 26 cvta.global.u64 %r137,locale_buf_C$2179; set.u32.eq.u64 %r138,%r73,%r137; neg.s32 %r139,%r138; cvt.u16.u32 %r141,%r135; cvt.u16.u32 %r142,%r139; or.b16 %r140,%r141,%r142; cvt.u32.u16 %r143,%r140; cvt.u16.u8 %r144,%r143; setp.eq.u16 %r145,%r144,0; @ %r145 bra $L11; .loc 1 118 20 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r49; call (%value_in),__nvptx_malloc,(%out_arg1); ld.param.u64 %r147,[%value_in]; } mov.u64 %r59,%r147; .loc 1 128 5 setp.eq.u64 %r148,%r59,0; @ ! %r148 bra $L12; bra $L10; $L11: .loc 1 122 20 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r73; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r49; call (%value_in),__nvptx_realloc,(%out_arg1,%out_arg2); ld.param.u64 %r151,[%value_in]; } mov.u64 %r59,%r151; .loc 1 123 16 setp.ne.u64 %r152,%r151,0; @ %r152 bra $L12; .loc 1 124 15 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r73; call __nvptx_free,(%out_arg1); } bra $L10; $L12: .loc 1 130 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r59; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r71; call (%value_in),strcpy,(%out_arg1,%out_arg2); ld.param.u64 %r156,[%value_in]; } .loc 1 131 4 add.u64 %r55,%r59,%r47; .loc 1 132 15 ld.u64 %r33,[%frame+1040]; .loc 1 132 7 add.u64 %r50,%r55,%r33; .loc 1 133 6 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r123; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r55; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r33; call (%value_in),read,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r160,[%value_in]; } cvt.s64.s32 %r161,%r160; .loc 1 133 5 ld.u64 %r162,[%frame+1040]; setp.ne.u64 %r163,%r161,%r162; @ %r163 bra $L13; .loc 1 135 6 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r123; call (%value_in),close,(%out_arg1); ld.param.u32 %r165,[%value_in]; } .loc 1 135 5 setp.ne.u32 %r166,%r165,0; @ %r166 bra $L13; .loc 1 140 16 ld.u64 %r167,[%frame+1040]; add.u64 %r168,%r55,%r167; cvt.u32.u32 %r169,%r165; st.u8 [%r168],%r169; .loc 1 141 5 ld.s8 %r171,[%r50+-1]; cvt.u16.u32 %r170,%r171; setp.ne.u16 %r172,%r170,10; @ %r172 bra $L13; .loc 1 176 2 setp.ge.u64 %r173,%r55,%r50; @ %r173 bra $L20; .loc 1 176 9 mov.u32 %r56,%r165; $L15: .loc 1 177 7 mov.u32 %r175,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r55; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r175; call (%value_in),strchr,(%out_arg1,%out_arg2); ld.param.u64 %r176,[%value_in]; } .loc 1 178 5 add.u64 %r55,%r176,1; .loc 1 178 8 mov.u32 %r177,0; st.u8 [%r176],%r177; .loc 1 176 25 add.u32 %r56,%r56,1; .loc 1 176 2 setp.gt.u64 %r178,%r50,%r55; @ %r178 bra $L15; bra $L14; $L20: .loc 1 176 9 mov.u32 %r56,%r165; $L14: .loc 1 144 5 setp.lt.s32 %r179,%r56,%r75; @ %r179 bra $L16; .loc 1 145 13 st.global.u32 [num_lines$2180],%r75; bra $L17; $L16: .loc 1 146 10 setp.ge.s32 %r180,%r56,%r76; @ %r180 bra $L18; .loc 1 143 12 st.global.u32 [num_lines$2180],%r56; .loc 1 161 20 mov.u32 %r44,%r165; bra $L13; $L18: .loc 1 147 13 st.global.u32 [num_lines$2180],%r76; mov.u32 %r75,%r76; $L17: .loc 1 189 2 setp.le.s32 %r181,%r75,0; @ %r181 bra $L9; add.u32 %r182,%r75,-1; cvt.u64.u32 %r183,%r182; add.u64 %r184,%r183,1; shl.b64 %r185,%r184,3; add.u64 %r62,%r77,%r185; $L19: .loc 1 190 14 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r59; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r187,[%value_in]; } .loc 1 190 24 add.u64 %r188,%r187,1; .loc 1 190 11 add.u64 %r59,%r59,%r188; .loc 1 190 7 st.u64 [%r77],%r59; .loc 1 189 49 add.u64 %r77,%r77,8; .loc 1 189 2 setp.ne.u64 %r189,%r77,%r62; @ %r189 bra $L19; bra $L9; $L13: .loc 1 163 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r59; call __nvptx_free,(%out_arg1); } $L10: .loc 1 165 8 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r123; call (%value_in),close,(%out_arg1); ld.param.u32 %r192,[%value_in]; } $L2: .loc 1 167 16 st.u32 [%r72],%r44; .loc 1 168 9 mov.u32 %r70,-1; $L1: .loc 1 169 1 mov.u32 %value,%r70; st.param.u32 [%value_out],%value; ret; } lib_a-ldtoa.o/ 1591654539 399 399 100644 181279 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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: edivm .func (.param .u32 %value_out) edivm (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN FUNCTION DECL: emulm .func (.param .u32 %value_out) emulm (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN FUNCTION DECL: eisnan$part$0 .func (.param .u32 %value_out) eisnan$part$0 (.param .u64 %in_ar0); // BEGIN FUNCTION DECL: eneg .func eneg (.param .u64 %in_ar0); // BEGIN FUNCTION DECL: eisneg .func (.param .u32 %value_out) eisneg (.param .u64 %in_ar0); // 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: eisinf$part$1 .func (.param .u32 %value_out) eisinf$part$1 (.param .u64 %in_ar0); // BEGIN FUNCTION DECL: eshift$part$4 .func (.param .u32 %value_out) eshift$part$4 (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN FUNCTION DECL: enormlz .func (.param .u32 %value_out) enormlz (.param .u64 %in_ar0); // 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: emovo$isra$7 .func emovo$isra$7 (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN FUNCTION DECL: e53toe$isra$9 .func e53toe$isra$9 (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN FUNCTION DECL: emul .func emul (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN FUNCTION DECL: ediv .func ediv (.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: _strtold .visible .func (.param .f64 %value_out) _strtold (.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: 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: strcpy .extern .func (.param .u64 %value_out) strcpy (.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: calloc .extern .func (.param .u64 %value_out) calloc (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __nvptx_free .extern .func __nvptx_free (.param .u64 %in_ar0); // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[6] = {32,78,97,78,32,0 }; // 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: nan53 .const .align 2 .u16 nan53[4] = {0,0,0,32760 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[12] = {32,45,73,110,102,105,110,105,116,121,32,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[11] = {32,73,110,102,105,110,105,116,121,32,0 }; // BEGIN VAR DEF: $LC3 .const .align 1 .u8 $LC3[4] = {78,97,78,0 }; // BEGIN VAR DEF: $LC4 .const .align 1 .u8 $LC4[4] = {69,37,100,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 .u32 %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 778 3 add.u64 %r29,%r30,4; add.u64 %r25,%r30,26; .loc 1 780 6 mov.u32 %r28,0; $L5: .loc 1 783 6 ld.u16 %r22,[%r29]; .loc 1 783 4 cvt.u16.u32 %r32,%r22; and.b16 %r31,%r32,1; setp.eq.u16 %r33,%r31,0; @ %r33 bra $L2; .loc 1 784 8 cvt.u16.u32 %r35,%r28; or.b16 %r34,%r35,1; cvt.u32.u16 %r28,%r34; $L2: .loc 1 785 5 shr.u32 %r36,%r22,1; cvt.u16.u32 %r37,%r36; .loc 1 786 4 cvt.u16.u32 %r39,%r28; and.b16 %r38,%r39,2; setp.ne.u16 %r40,%r38,0; @ %r40 bra $L3; .loc 1 785 5 st.u16 [%r29],%r37; bra $L4; $L3: .loc 1 787 6 or.b16 %r42,%r37,-32768; st.u16 [%r29],%r42; $L4: .loc 1 788 7 cvt.u16.u32 %r44,%r28; add.u16 %r45,%r44,%r44; cvt.u32.u16 %r28,%r45; .loc 1 789 2 add.u64 %r29,%r29,2; .loc 1 781 1 setp.ne.u64 %r46,%r25,%r29; @ %r46 bra $L5; .loc 1 791 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 804 3 add.u64 %r29,%r30,24; add.u64 %r26,%r30,2; .loc 1 805 6 mov.u32 %r28,0; $L14: .loc 1 809 6 ld.u16 %r22,[%r29]; .loc 1 809 4 cvt.u16.u32 %r31,%r22; setp.ge.s16 %r32,%r31,0; @ %r32 bra $L11; .loc 1 810 8 cvt.u16.u32 %r34,%r28; or.b16 %r33,%r34,1; cvt.u32.u16 %r28,%r33; $L11: .loc 1 811 5 cvt.u16.u32 %r35,%r22; add.u16 %r36,%r35,%r35; .loc 1 812 4 cvt.u16.u32 %r38,%r28; and.b16 %r37,%r38,2; setp.ne.u16 %r39,%r37,0; @ %r39 bra $L12; .loc 1 811 5 st.u16 [%r29],%r36; bra $L13; $L12: .loc 1 813 6 or.b16 %r41,%r36,1; st.u16 [%r29],%r41; $L13: .loc 1 814 7 cvt.u16.u32 %r43,%r28; add.u16 %r44,%r43,%r43; cvt.u32.u16 %r28,%r44; .loc 1 815 2 add.u64 %r29,%r29,-2; .loc 1 807 1 setp.ne.u64 %r45,%r26,%r29; @ %r45 bra $L14; .loc 1 817 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 %r28; .reg .u64 %r37; .reg .u64 %r38; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .u64 %r43; .reg .u64 %r44; .reg .u64 %r47; .reg .u64 %r49; .reg .u32 %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .u16 %r53; .reg .u16 %r54; .reg .pred %r56; .reg .u64 %r58; .reg .u16 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u64 %r62; .reg .u64 %r63; .reg .u64 %r64; .reg .u64 %r65; .reg .pred %r67; .reg .u16 %r68; .reg .pred %r69; .reg .u64 %r70; .reg .u16 %r71; mov.u32 %r50,%ar0; mov.u64 %r51,%ar1; mov.u64 %r52,%ar2; .loc 1 970 4 cvt.u16.u32 %r53,%r50; cvt.u64.u16 %r40,%r53; .loc 1 972 7 mov.u16 %r54,0; st.u16 [%frame+22],%r54; .loc 1 973 5 st.u16 [%frame+24],%r54; .loc 1 974 4 add.u64 %r47,%r51,24; .loc 1 972 4 add.u64 %r49,%frame,24; add.u64 %r70,%frame,4; .loc 1 982 11 mov.u16 %r71,%r54; $L19: .loc 1 978 6 ld.u16 %r22,[%r47]; add.u64 %r47,%r47,-2; add.u64 %r49,%r49,-2; .loc 1 978 4 setp.ne.u32 %r56,%r22,0; @ %r56 bra $L17; .loc 1 982 11 st.u16 [%r49+-2],%r71; bra $L18; $L17: .loc 1 986 28 cvt.u16.u32 %r59,%r22; cvt.u64.u16 %r58,%r59; .loc 1 986 5 mul.lo.u64 %r42,%r58,%r40; .loc 1 987 14 and.b64 %r60,%r42,65535; .loc 1 987 26 ld.u16 %r61,[%r49+2]; .loc 1 987 9 add.u64 %r43,%r60,%r61; .loc 1 988 11 st.u16 [%r49+2],%r43; .loc 1 989 18 shr.u64 %r28,%r43,16; .loc 1 989 30 shr.u64 %r62,%r42,16; .loc 1 989 39 ld.u16 %r63,[%r49]; .loc 1 989 9 add.u64 %r64,%r62,%r63; add.u64 %r44,%r64,%r28; .loc 1 990 9 st.u16 [%r49],%r44; .loc 1 991 19 shr.u64 %r65,%r44,16; .loc 1 991 11 st.u16 [%r49+-2],%r65; $L18: .loc 1 976 1 setp.ne.u64 %r67,%r49,%r70; @ %r67 bra $L19; mov.u64 %r37,%r49; add.u64 %r41,%r52,4; add.u64 %r38,%frame,26; $L20: .loc 1 995 7 ld.u16 %r68,[%r37]; st.u16 [%r41],%r68; add.u64 %r37,%r37,2; add.u64 %r41,%r41,2; .loc 1 994 1 setp.ne.u64 %r69,%r37,%r38; @ %r69 bra $L20; .loc 1 996 1 ret; } // BEGIN FUNCTION DEF: edivm .func (.param .u32 %value_out) edivm (.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[32]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r29; .reg .u64 %r30; .reg .u32 %r33; .reg .u64 %r35; .reg .u32 %r41; .reg .u32 %r43; .reg .u32 %r44; .reg .u64 %r46; .reg .u32 %r47; .reg .u64 %r48; .reg .u32 %r50; .reg .u64 %r53; .reg .u64 %r63; .reg .u64 %r66; .reg .u64 %r67; .reg .u64 %r68; .reg .u64 %r74; .reg .u64 %r77; .reg .u64 %r78; .reg .u64 %r79; .reg .u64 %r80; .reg .u64 %r87; .reg .u64 %r89; .reg .u64 %r92; .reg .u64 %r93; .reg .u64 %r94; .reg .u64 %r96; .reg .u64 %r98; .reg .u64 %r101; .reg .u64 %r102; .reg .u64 %r103; .reg .u64 %r108; .reg .u64 %r110; .reg .u32 %r113; .reg .u64 %r115; .reg .u64 %r116; .reg .u64 %r117; .reg .u16 %r118; .reg .u16 %r119; .reg .u16 %r120; .reg .pred %r121; .reg .u64 %r124; .reg .u64 %r126; .reg .u64 %r127; .reg .u64 %r128; .reg .pred %r129; .reg .u64 %r131; .reg .u16 %r134; .reg .u16 %r138; .reg .u16 %r139; .reg .pred %r140; .reg .pred %r143; .reg .pred %r144; .reg .u16 %r145; .reg .u16 %r146; .reg .u64 %r147; .reg .u64 %r148; .reg .u64 %r149; .reg .u64 %r150; .reg .u64 %r151; .reg .u32 %r153; .reg .pred %r155; .reg .u16 %r156; .reg .u16 %r157; .reg .pred %r158; .reg .pred %r161; .reg .pred %r162; .reg .u16 %r163; .reg .u16 %r164; .reg .u64 %r165; .reg .u64 %r166; .reg .u64 %r167; .reg .u64 %r168; .reg .u64 %r169; .reg .u32 %r171; .reg .pred %r173; .reg .u64 %r174; .reg .u64 %r175; .reg .u64 %r176; .reg .u64 %r177; .reg .u64 %r178; .reg .u32 %r180; .reg .pred %r182; .reg .u16 %r183; .reg .u16 %r184; .reg .pred %r185; .reg .u16 %r186; .reg .pred %r187; .reg .u16 %r188; .reg .u16 %r189; .reg .u16 %r190; .reg .pred %r191; .reg .u32 %r192; .reg .u16 %r193; .reg .u32 %r194; .reg .u32 %r195; .reg .u16 %r196; .reg .pred %r197; .reg .u64 %r199; .reg .u64 %r200; .reg .u64 %r201; .reg .u64 %r202; .reg .u32 %r203; mov.u64 %r115,%ar0; mov.u64 %r116,%ar1; mov.u64 %r117,%ar2; .loc 1 1013 6 ld.u16 %r118,[%r116]; st.u16 [%r117+52],%r118; .loc 1 1014 6 ld.u16 %r119,[%r116+2]; st.u16 [%r117+54],%r119; add.u64 %r35,%r117,56; add.u64 %r98,%r117,78; mov.u64 %r101,%r35; .loc 1 1018 7 mov.u16 %r120,0; $L24: st.u16 [%r101],%r120; add.u64 %r101,%r101,2; .loc 1 1016 1 setp.ne.u64 %r121,%r98,%r101; @ %r121 bra $L24; .loc 1 1020 1 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r116; call eshdn1,(%out_arg1); } .loc 1 1028 20 ld.u16 %r29,[%r115+6]; shl.b64 %r124,%r29,16; sub.u64 %r30,%r124,%r29; add.u64 %r103,%r116,4; add.u64 %r102,%r116,24; add.u64 %r200,%frame,4; add.u64 %r202,%frame,26; add.u64 %r201,%frame,24; add.u64 %r199,%frame,2; .loc 1 940 7 mov.u32 %r203,0; $L37: .loc 1 1025 11 ld.u16 %r126,[%r116+4]; .loc 1 1025 35 shl.b64 %r127,%r126,16; .loc 1 1025 47 ld.u16 %r128,[%r116+6]; .loc 1 1025 7 add.u64 %r46,%r127,%r128; .loc 1 1028 11 setp.lt.u64 %r129,%r30,%r46; @ %r129 bra $L40; .loc 1 1031 16 div.u64 %r131,%r46,%r29; .loc 1 1031 9 cvt.u16.u64 %r134,%r131; cvt.u32.u16 %r41,%r134; bra $L25; $L40: .loc 1 1029 9 mov.u32 %r41,65535; $L25: .loc 1 1040 2 { .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r41; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r115; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call m16m,(%out_arg1,%out_arg2,%out_arg3); } mov.u64 %r79,%r200; mov.u64 %r96,%r103; mov.u64 %r48,%r103; mov.u64 %r53,%r200; $L29: .loc 1 756 4 ld.u16 %r138,[%r53]; ld.u16 %r139,[%r48]; setp.eq.u16 %r140,%r138,%r139; @ %r140 bra $L26; .loc 1 762 3 setp.gt.u16 %r143,%r138,%r139; @ %r143 bra $L27; bra $L28; $L26: add.u64 %r53,%r53,2; add.u64 %r48,%r48,2; .loc 1 754 1 setp.ne.u64 %r144,%r202,%r53; @ %r144 bra $L29; bra $L28; $L27: .loc 1 1044 9 cvt.u16.u32 %r146,%r41; add.u16 %r145,%r146,-1; cvt.u32.u16 %r47,%r145; .loc 1 938 3 add.u64 %r77,%r115,24; mov.u64 %r66,%r77; .loc 1 940 7 mov.u32 %r113,%r203; .loc 1 939 3 mov.u64 %r67,%r201; $L30: .loc 1 943 6 ld.u16 %r147,[%r67]; .loc 1 943 50 cvt.u64.u32 %r148,%r113; .loc 1 943 4 sub.u64 %r149,%r147,%r148; .loc 1 943 29 ld.u16 %r150,[%r66]; .loc 1 943 4 sub.u64 %r63,%r149,%r150; .loc 1 948 7 st.u16 [%r67],%r63; .loc 1 949 2 add.u64 %r66,%r66,-2; .loc 1 950 2 add.u64 %r67,%r67,-2; .loc 1 944 4 shr.u64 %r151,%r63,16; cvt.u32.u64 %r153,%r151; and.b32 %r113,%r153,1; .loc 1 941 1 setp.ne.u64 %r155,%r67,%r199; @ %r155 bra $L30; mov.u64 %r68,%r103; $L33: .loc 1 756 4 ld.u16 %r156,[%r79]; ld.u16 %r157,[%r68]; setp.eq.u16 %r158,%r156,%r157; @ %r158 bra $L31; .loc 1 762 3 setp.gt.u16 %r161,%r156,%r157; @ %r161 bra $L32; .loc 1 1044 9 mov.u32 %r41,%r47; bra $L28; $L31: add.u64 %r79,%r79,2; add.u64 %r68,%r68,2; .loc 1 754 1 setp.ne.u64 %r162,%r202,%r79; @ %r162 bra $L33; .loc 1 1044 9 mov.u32 %r41,%r47; bra $L28; $L32: .loc 1 1048 10 cvt.u16.u32 %r164,%r41; add.u16 %r163,%r164,-2; cvt.u32.u16 %r41,%r163; .loc 1 940 7 mov.u32 %r43,%r203; .loc 1 939 3 mov.u64 %r78,%r201; $L34: .loc 1 943 6 ld.u16 %r165,[%r78]; .loc 1 943 50 cvt.u64.u32 %r166,%r43; .loc 1 943 4 sub.u64 %r167,%r165,%r166; .loc 1 943 29 ld.u16 %r168,[%r77]; .loc 1 943 4 sub.u64 %r74,%r167,%r168; .loc 1 948 7 st.u16 [%r78],%r74; .loc 1 949 2 add.u64 %r77,%r77,-2; .loc 1 950 2 add.u64 %r78,%r78,-2; .loc 1 944 4 shr.u64 %r169,%r74,16; cvt.u32.u64 %r171,%r169; and.b32 %r43,%r171,1; .loc 1 941 1 setp.ne.u64 %r173,%r78,%r199; @ %r173 bra $L34; $L28: .loc 1 939 3 mov.u64 %r93,%r102; .loc 1 940 7 mov.u32 %r44,%r203; .loc 1 938 3 mov.u64 %r92,%r201; $L35: .loc 1 943 6 ld.u16 %r174,[%r93]; .loc 1 943 50 cvt.u64.u32 %r175,%r44; .loc 1 943 4 sub.u64 %r176,%r174,%r175; .loc 1 943 29 ld.u16 %r177,[%r92]; .loc 1 943 4 sub.u64 %r89,%r176,%r177; .loc 1 948 7 st.u16 [%r93],%r89; .loc 1 949 2 add.u64 %r92,%r92,-2; .loc 1 950 2 add.u64 %r93,%r93,-2; .loc 1 944 4 shr.u64 %r178,%r89,16; cvt.u32.u64 %r180,%r178; and.b32 %r44,%r180,1; .loc 1 941 1 setp.ne.u64 %r182,%r92,%r199; @ %r182 bra $L35; .loc 1 1071 11 cvt.u16.u32 %r183,%r41; st.u16 [%r35],%r183; mov.u64 %r87,%r103; .loc 1 873 3 mov.u64 %r80,%r103; $L36: .loc 1 877 4 add.u64 %r80,%r80,2; .loc 1 877 7 ld.u16 %r184,[%r80]; st.u16 [%r87],%r184; add.u64 %r87,%r87,2; .loc 1 876 1 setp.ne.u64 %r185,%r80,%r102; @ %r185 bra $L36; .loc 1 879 4 mov.u16 %r186,0; st.u16 [%r116+24],%r186; add.u64 %r35,%r35,2; .loc 1 1022 1 setp.ne.u64 %r187,%r35,%r98; @ %r187 bra $L37; mov.u64 %r108,%r116; add.u64 %r94,%r108,26; .loc 1 1076 3 mov.u32 %r50,0; $L38: .loc 1 1079 4 ld.u16 %r189,[%r96]; cvt.u16.u32 %r190,%r50; or.b16 %r188,%r189,%r190; cvt.u32.u16 %r50,%r188; add.u64 %r96,%r96,2; .loc 1 1077 1 setp.ne.u64 %r191,%r94,%r96; @ %r191 bra $L38; .loc 1 1081 3 cvt.u16.u32 %r193,%r50; set.u32.ne.u16 %r194,%r193,0; neg.s32 %r195,%r194; cvt.u32.u32 %r192,%r195; cvt.u32.u8 %r33,%r192; add.u64 %r110,%r117,52; $L39: .loc 1 1085 9 ld.u16 %r196,[%r110]; st.u16 [%r108],%r196; add.u64 %r110,%r110,2; add.u64 %r108,%r108,2; .loc 1 1084 1 setp.ne.u64 %r197,%r98,%r110; @ %r197 bra $L39; .loc 1 1088 1 mov.u32 %value,%r33; st.param.u32 [%value_out],%value; ret; } // BEGIN FUNCTION DEF: emulm .func (.param .u32 %value_out) emulm (.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[32]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r24; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u32 %r31; .reg .u32 %r32; .reg .u64 %r41; .reg .u64 %r44; .reg .u64 %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .u64 %r49; .reg .u64 %r54; .reg .u64 %r56; .reg .u64 %r57; .reg .u64 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u16 %r62; .reg .u16 %r63; .reg .u16 %r64; .reg .pred %r65; .reg .pred %r66; .reg .u16 %r67; .reg .u16 %r68; .reg .u16 %r69; .reg .u64 %r73; .reg .u64 %r74; .reg .u64 %r75; .reg .u64 %r76; .reg .u64 %r77; .reg .u32 %r79; .reg .pred %r81; .reg .u16 %r82; .reg .pred %r83; .reg .u16 %r84; .reg .pred %r85; .reg .u16 %r86; .reg .pred %r87; .reg .u64 %r89; .reg .u64 %r91; mov.u64 %r59,%ar0; mov.u64 %r60,%ar1; mov.u64 %r61,%ar2; .loc 1 1101 10 ld.u16 %r62,[%r60]; st.u16 [%r61+52],%r62; .loc 1 1102 10 ld.u16 %r63,[%r60+2]; st.u16 [%r61+54],%r63; add.u64 %r56,%r61,56; mov.u64 %r28,%r56; add.u64 %r89,%r61,78; .loc 1 1104 11 mov.u16 %r64,0; $L52: st.u16 [%r28],%r64; add.u64 %r28,%r28,2; .loc 1 1103 1 setp.ne.u64 %r65,%r89,%r28; @ %r65 bra $L52; .loc 1 1107 3 add.u64 %r57,%r59,24; add.u64 %r30,%r61,76; add.u64 %r29,%r59,4; .loc 1 1106 3 mov.u32 %r32,0; add.u64 %r91,%frame,2; $L57: .loc 1 1111 6 ld.u16 %r24,[%r57]; add.u64 %r57,%r57,-2; .loc 1 1111 4 setp.ne.u32 %r66,%r24,0; @ %r66 bra $L53; $L56: .loc 1 1120 4 ld.u16 %r68,[%r61+76]; cvt.u16.u32 %r69,%r32; or.b16 %r67,%r68,%r69; cvt.u32.u16 %r32,%r67; .loc 1 892 3 mov.u64 %r49,%r89; .loc 1 891 3 mov.u64 %r47,%r30; bra $L54; $L53: .loc 1 1117 3 { .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r60; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call m16m,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 912 3 mov.u64 %r45,%r30; .loc 1 913 7 mov.u32 %r31,0; .loc 1 911 3 add.u64 %r44,%frame,24; $L55: .loc 1 916 6 ld.u16 %r73,[%r44]; .loc 1 916 29 ld.u16 %r74,[%r45]; .loc 1 916 27 add.u64 %r75,%r73,%r74; .loc 1 916 50 cvt.u64.u32 %r76,%r31; .loc 1 916 4 add.u64 %r41,%r75,%r76; .loc 1 921 7 st.u16 [%r45],%r41; .loc 1 922 2 add.u64 %r44,%r44,-2; .loc 1 923 2 add.u64 %r45,%r45,-2; .loc 1 917 4 shr.u64 %r77,%r41,16; cvt.u32.u64 %r79,%r77; and.b32 %r31,%r79,1; .loc 1 914 1 setp.ne.u64 %r81,%r44,%r91; @ %r81 bra $L55; bra $L56; $L54: .loc 1 895 9 add.u64 %r47,%r47,-2; add.u64 %r49,%r49,-2; ld.u16 %r82,[%r47]; st.u16 [%r49],%r82; .loc 1 894 1 setp.ne.u64 %r83,%r47,%r56; @ %r83 bra $L54; .loc 1 897 8 mov.u16 %r84,0; st.u16 [%r61+56],%r84; .loc 1 1109 1 setp.ne.u64 %r85,%r29,%r57; @ %r85 bra $L57; add.u64 %r54,%r61,52; mov.u64 %r46,%r60; $L58: .loc 1 1125 7 ld.u16 %r86,[%r54]; st.u16 [%r46],%r86; add.u64 %r54,%r54,2; add.u64 %r46,%r46,2; .loc 1 1124 1 setp.ne.u64 %r87,%r89,%r54; @ %r87 bra $L58; .loc 1 1129 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } // BEGIN FUNCTION DEF: eisnan$part$0 .func (.param .u32 %value_out) eisnan$part$0 (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r22; .reg .u64 %r25; .reg .u32 %r26; .reg .u16 %r28; .reg .pred %r29; .reg .pred %r30; mov.u64 %r22,%ar0; add.u64 %r25,%r22,18; $L66: .loc 1 526 4 ld.u16 %r28,[%r22]; setp.ne.u16 %r29,%r28,0; @ %r29 bra $L67; add.u64 %r22,%r22,2; .loc 1 524 1 setp.ne.u64 %r30,%r22,%r25; @ %r30 bra $L66; .loc 1 530 8 mov.u32 %r26,0; bra $L64; $L67: .loc 1 527 10 mov.u32 %r26,1; $L64: .loc 1 531 1 mov.u32 %value,%r26; st.param.u32 [%value_out],%value; ret; } // BEGIN FUNCTION DEF: eneg .func eneg (.param .u64 %in_ar0) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .u64 %r26; .reg .u16 %r27; .reg .u16 %r28; .reg .pred %r29; .reg .u32 %r31; .reg .pred %r32; .reg .u16 %r33; .reg .u16 %r34; mov.u64 %r26,%ar0; .loc 1 521 7 ld.u16 %r23,[%r26+18]; .loc 1 521 3 cvt.u16.u32 %r28,%r23; and.b16 %r27,%r28,32767; setp.ne.u16 %r29,%r27,32767; @ %r29 bra $L70; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; call (%value_in),eisnan$part$0,(%out_arg1); ld.param.u32 %r31,[%value_in]; } .loc 1 470 3 setp.ne.u32 %r32,%r31,0; @ %r32 bra $L69; $L70: .loc 1 473 9 cvt.u16.u32 %r34,%r23; add.u16 %r33,%r34,-32768; st.u16 [%r26+18],%r33; $L69: .loc 1 474 1 ret; } // BEGIN FUNCTION DEF: eisneg .func (.param .u32 %value_out) eisneg (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .u32 %r27; .reg .u64 %r28; .reg .u16 %r29; .reg .u16 %r30; .reg .pred %r31; .reg .u32 %r33; .reg .pred %r34; .reg .u32 %r36; .reg .u16 %r37; mov.u64 %r28,%ar0; .loc 1 521 7 ld.u16 %r23,[%r28+18]; .loc 1 521 3 cvt.u16.u32 %r30,%r23; and.b16 %r29,%r30,32767; setp.ne.u16 %r31,%r29,32767; @ %r31 bra $L73; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; call (%value_in),eisnan$part$0,(%out_arg1); ld.param.u32 %r33,[%value_in]; } .loc 1 485 3 setp.ne.u32 %r34,%r33,0; @ %r34 bra $L75; $L73: .loc 1 488 3 cvt.u16.u32 %r37,%r23; cvt.s32.s16 %r36,%r37; shr.u32 %r27,%r36,31; bra $L72; $L75: .loc 1 486 8 mov.u32 %r27,0; $L72: .loc 1 492 1 mov.u32 %value,%r27; st.param.u32 [%value_out],%value; 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 %r24; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r38; .reg .u64 %r45; .reg .u64 %r47; .reg .u64 %r55; .reg .u64 %r56; .reg .u32 %r58; .reg .u32 %r59; .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 .u32 %r71; .reg .pred %r72; .reg .u16 %r73; .reg .u16 %r74; .reg .pred %r75; .reg .u16 %r76; .reg .pred %r77; .reg .u16 %r78; .reg .u16 %r79; .reg .pred %r80; .reg .u16 %r81; mov.u64 %r55,%ar0; mov.u64 %r56,%ar1; .loc 1 592 3 ld.u16 %r58,[%r55+18]; shr.u32 %r59,%r58,15; cvt.u16.u32 %r61,%r59; neg.s16 %r60,%r61; st.u16 [%r56],%r60; .loc 1 598 6 ld.u16 %r63,[%r55+18]; and.b16 %r62,%r63,32767; st.u16 [%r56+2],%r62; .loc 1 600 3 setp.ne.u16 %r66,%r62,32767; @ %r66 bra $L77; .loc 1 521 3 ld.u16 %r68,[%r55+18]; and.b16 %r67,%r68,32767; setp.ne.u16 %r69,%r67,32767; @ %r69 bra $L78; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r55; call (%value_in),eisnan$part$0,(%out_arg1); ld.param.u32 %r71,[%value_in]; } .loc 1 603 4 setp.eq.u32 %r72,%r71,0; @ %r72 bra $L78; .loc 1 605 8 mov.u16 %r73,0; st.u16 [%r56+4],%r73; add.u64 %r29,%r55,16; add.u64 %r47,%r56,6; add.u64 %r35,%r55,-4; $L79: .loc 1 607 9 ld.u16 %r74,[%r29]; st.u16 [%r47],%r74; add.u64 %r29,%r29,-2; add.u64 %r47,%r47,2; .loc 1 606 3 setp.ne.u64 %r75,%r35,%r29; @ %r75 bra $L79; bra $L76; $L78: add.u64 %r38,%r56,4; add.u64 %r30,%r56,26; .loc 1 612 8 mov.u16 %r76,0; $L81: st.u16 [%r38],%r76; add.u64 %r38,%r38,2; .loc 1 611 2 setp.ne.u64 %r77,%r30,%r38; @ %r77 bra $L81; bra $L76; $L77: .loc 1 617 6 mov.u16 %r78,0; st.u16 [%r56+4],%r78; add.u64 %r24,%r55,16; add.u64 %r45,%r56,6; bra $L83; $L84: mov.u64 %r24,%r34; $L83: .loc 1 620 7 ld.u16 %r79,[%r24]; st.u16 [%r45],%r79; add.u64 %r34,%r24,-2; add.u64 %r45,%r45,2; .loc 1 619 1 setp.ne.u64 %r80,%r55,%r24; @ %r80 bra $L84; .loc 1 622 4 mov.u16 %r81,0; st.u16 [%r56+24],%r81; $L76: .loc 1 623 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 .u32 %r22; .reg .u32 %r26; .reg .u32 %r27; .reg .u64 %r28; .reg .u64 %r35; .reg .u64 %r38; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r43; .reg .u32 %r46; .reg .u64 %r47; .reg .u64 %r48; .reg .u16 %r49; .reg .u16 %r50; .reg .pred %r51; .reg .u32 %r53; .reg .pred %r54; .reg .u16 %r55; .reg .u16 %r56; .reg .pred %r57; .reg .u32 %r59; .reg .pred %r60; .reg .u64 %r63; .reg .u16 %r66; .reg .u16 %r67; .reg .pred %r68; .reg .u16 %r71; .reg .pred %r72; .reg .u16 %r73; .reg .pred %r74; .reg .pred %r75; .reg .pred %r76; .reg .pred %r77; .reg .u16 %r79; .reg .u16 %r80; .reg .pred %r81; .reg .pred %r84; .reg .pred %r85; mov.u64 %r47,%ar0; mov.u64 %r48,%ar1; .loc 1 521 3 ld.u16 %r50,[%r47+18]; and.b16 %r49,%r50,32767; setp.ne.u16 %r51,%r49,32767; @ %r51 bra $L91; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r47; call (%value_in),eisnan$part$0,(%out_arg1); ld.param.u32 %r53,[%value_in]; } .loc 1 2356 4 setp.ne.u32 %r54,%r53,0; @ %r54 bra $L101; $L91: .loc 1 521 3 ld.u16 %r56,[%r48+18]; and.b16 %r55,%r56,32767; setp.ne.u16 %r57,%r55,32767; @ %r57 bra $L93; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r48; call (%value_in),eisnan$part$0,(%out_arg1); ld.param.u32 %r59,[%value_in]; } .loc 1 2356 17 setp.ne.u32 %r60,%r59,0; @ %r60 bra $L102; $L93: .loc 1 2359 1 add.u64 %r63,%frame,26; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r47; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r63; call emovi,(%out_arg1,%out_arg2); } .loc 1 2361 1 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r48; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; call emovi,(%out_arg1,%out_arg2); } .loc 1 2364 5 ld.u16 %r22,[%frame+26]; .loc 1 2364 3 ld.u16 %r66,[%frame]; cvt.u16.u32 %r67,%r22; setp.eq.u16 %r68,%r66,%r67; @ %r68 bra $L94; add.u64 %r28,%frame,28; add.u64 %r35,%frame,2; add.u64 %r38,%frame,50; $L96: .loc 1 2369 5 ld.u16 %r71,[%r28]; setp.ne.u16 %r72,%r71,0; @ %r72 bra $L95; .loc 1 2371 5 ld.u16 %r73,[%r35]; setp.ne.u16 %r74,%r73,0; @ %r74 bra $L95; add.u64 %r28,%r28,2; add.u64 %r35,%r35,2; .loc 1 2367 2 setp.ne.u64 %r75,%r28,%r38; @ %r75 bra $L96; .loc 1 2374 8 mov.u32 %r46,0; bra $L90; $L95: .loc 1 2376 4 setp.eq.u32 %r76,%r22,0; .loc 1 2379 9 selp.u32 %r46,1,-1,%r76; bra $L90; $L94: .loc 1 2382 3 setp.eq.u32 %r77,%r22,0; .loc 1 2385 8 selp.u32 %r46,1,-1,%r77; add.u64 %r40,%frame,2; add.u64 %r41,%frame,28; add.u64 %r43,%frame,24; bra $L98; $L100: .loc 1 2389 6 ld.u16 %r26,[%r41]; .loc 1 2389 14 ld.u16 %r27,[%r40]; add.u64 %r40,%r40,2; add.u64 %r41,%r41,2; .loc 1 2389 4 cvt.u16.u32 %r79,%r26; cvt.u16.u32 %r80,%r27; setp.eq.u16 %r81,%r79,%r80; @ %r81 bra $L98; .loc 1 2402 3 setp.gt.u16 %r84,%r79,%r80; @ %r84 bra $L90; bra $L107; $L98: .loc 1 2394 1 setp.ne.u64 %r85,%r40,%r43; @ %r85 bra $L100; .loc 1 2374 8 mov.u32 %r46,0; bra $L90; $L107: .loc 1 2405 10 neg.s32 %r46,%r46; bra $L90; $L101: .loc 1 2357 8 mov.u32 %r46,-2; bra $L90; $L102: mov.u32 %r46,-2; $L90: .loc 1 2406 1 mov.u32 %value,%r46; st.param.u32 [%value_out],%value; ret; } // BEGIN FUNCTION DEF: eisinf$part$1 .func (.param .u32 %value_out) eisinf$part$1 (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r25; .reg .u32 %r27; .reg .u32 %r30; mov.u64 %r25,%ar0; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; call (%value_in),eisnan$part$0,(%out_arg1); ld.param.u32 %r27,[%value_in]; } .loc 1 504 4 set.u32.eq.u32 %r30,%r27,0; neg.s32 %value,%r30; .loc 1 511 1 st.param.u32 [%value_out],%value; ret; } // BEGIN FUNCTION DEF: eshift$part$4 .func (.param .u32 %value_out) eshift$part$4 (.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 .u32 %r24; .reg .u64 %r25; .reg .u32 %r31; .reg .u32 %r32; .reg .u64 %r36; .reg .u32 %r37; .reg .u64 %r43; .reg .u32 %r45; .reg .u64 %r49; .reg .u32 %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .u32 %r65; .reg .u32 %r67; .reg .u64 %r68; .reg .u32 %r69; .reg .u64 %r70; .reg .u32 %r71; .reg .pred %r72; .reg .pred %r73; .reg .pred %r74; .reg .u16 %r75; .reg .u16 %r76; .reg .u16 %r77; .reg .u16 %r78; .reg .pred %r79; .reg .u16 %r80; .reg .pred %r81; .reg .pred %r82; .reg .u16 %r83; .reg .u16 %r84; .reg .u16 %r86; .reg .u16 %r87; .reg .u32 %r88; .reg .u16 %r89; .reg .u16 %r90; .reg .u16 %r91; .reg .u32 %r92; .reg .u16 %r93; .reg .pred %r94; .reg .pred %r95; .reg .u16 %r96; .reg .u16 %r97; .reg .u16 %r98; .reg .u16 %r99; .reg .pred %r102; .reg .u16 %r103; .reg .pred %r104; .reg .u16 %r105; .reg .pred %r106; .reg .pred %r111; .reg .u32 %r112; .reg .u16 %r113; .reg .u16 %r114; .reg .u16 %r115; .reg .u32 %r116; .reg .u16 %r117; .reg .pred %r118; .reg .pred %r119; .reg .pred %r121; .reg .u16 %r123; .reg .u32 %r124; .reg .pred %r127; .reg .u64 %r128; .reg .u64 %r129; .reg .u64 %r130; mov.u64 %r70,%ar0; mov.u32 %r71,%ar1; .loc 1 2426 3 setp.lt.s32 %r72,%r71,0; @ %r72 bra $L110; .loc 1 2452 7 setp.gt.s32 %r73,%r71,15; @ %r73 bra $L111; bra $L112; $L110: .loc 1 2428 5 neg.s32 %r31,%r71; .loc 1 2429 7 setp.ge.s32 %r74,%r71,-15; @ %r74 bra $L113; add.u64 %r129,%r70,26; add.u64 %r54,%r70,24; .loc 1 2423 6 mov.u32 %r37,0; add.u64 %r130,%r70,4; .loc 1 897 8 cvt.u16.u32 %r80,%r37; $L115: .loc 1 2431 8 ld.u16 %r76,[%r70+24]; cvt.u16.u32 %r77,%r37; or.b16 %r75,%r76,%r77; cvt.u32.u16 %r37,%r75; .loc 1 892 3 mov.u64 %r25,%r129; .loc 1 891 3 mov.u64 %r23,%r54; $L114: .loc 1 895 9 add.u64 %r23,%r23,-2; add.u64 %r25,%r25,-2; ld.u16 %r78,[%r23]; st.u16 [%r25],%r78; .loc 1 894 1 setp.ne.u64 %r79,%r23,%r130; @ %r79 bra $L114; .loc 1 897 8 st.u16 [%r70+4],%r80; .loc 1 2433 6 add.u32 %r31,%r31,-16; .loc 1 2429 7 setp.gt.s32 %r81,%r31,15; @ %r81 bra $L115; .loc 1 2436 7 setp.le.s32 %r82,%r31,7; @ %r82 bra $L116; cvt.u16.u32 %r83,%r37; cvt.s32.s16 %r67,%r83; bra $L127; $L129: mov.u32 %r67,0; add.u64 %r129,%r70,26; add.u64 %r130,%r70,4; $L127: .loc 1 2438 14 ld.u8 %r84,[%r70+24]; .loc 1 2438 8 cvt.u16.u32 %r87,%r67; or.b16 %r86,%r84,%r87; cvt.u32.u16 %r37,%r86; .loc 1 830 3 mov.u64 %r36,%r130; .loc 1 831 8 mov.u32 %r52,0; $L117: .loc 1 834 11 ld.u16 %r32,[%r36]; .loc 1 835 5 shr.u32 %r88,%r32,8; .loc 1 836 5 cvt.u16.u32 %r90,%r88; cvt.u16.u32 %r91,%r52; or.b16 %r89,%r90,%r91; st.u16 [%r36],%r89; .loc 1 838 2 add.u64 %r36,%r36,2; .loc 1 834 9 shl.b32 %r92,%r32,8; .loc 1 837 9 cvt.u16.u32 %r93,%r92; cvt.u32.u16 %r52,%r93; .loc 1 832 1 setp.ne.u64 %r94,%r36,%r129; @ %r94 bra $L117; .loc 1 2440 6 add.u32 %r31,%r31,-8; $L116: .loc 1 2443 7 setp.eq.u32 %r95,%r31,0; @ %r95 bra $L118; $L119: .loc 1 2445 14 ld.u16 %r97,[%r70+24]; and.b16 %r96,%r97,1; .loc 1 2445 8 cvt.u16.u32 %r99,%r37; or.b16 %r98,%r96,%r99; cvt.u32.u16 %r37,%r98; .loc 1 2446 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r70; call eshdn1,(%out_arg1); } .loc 1 2447 6 add.u32 %r31,%r31,-1; .loc 1 2443 7 setp.ne.u32 %r102,%r31,0; @ %r102 bra $L119; bra $L118; $L111: add.u64 %r68,%r70,4; .loc 1 2452 7 mov.u32 %r24,%r71; add.u64 %r128,%r70,24; .loc 1 879 4 mov.u16 %r105,0; $L121: mov.u64 %r53,%r68; .loc 1 873 3 mov.u64 %r43,%r68; $L120: .loc 1 877 4 add.u64 %r43,%r43,2; .loc 1 877 7 ld.u16 %r103,[%r43]; st.u16 [%r53],%r103; add.u64 %r53,%r53,2; .loc 1 876 1 setp.ne.u64 %r104,%r43,%r128; @ %r104 bra $L120; .loc 1 879 4 st.u16 [%r70+24],%r105; .loc 1 2455 6 add.u32 %r24,%r24,-16; .loc 1 2452 7 setp.gt.s32 %r106,%r24,15; @ %r106 bra $L121; and.b32 %r71,%r71,15; $L112: .loc 1 2458 7 setp.le.s32 %r111,%r71,7; @ %r111 bra $L122; .loc 1 851 3 add.u64 %r49,%r70,24; add.u64 %r55,%r70,2; .loc 1 852 8 mov.u32 %r65,0; $L123: .loc 1 856 11 ld.u16 %r45,[%r49]; .loc 1 857 5 shl.b32 %r112,%r45,8; .loc 1 858 5 cvt.u16.u32 %r114,%r112; cvt.u16.u32 %r115,%r65; or.b16 %r113,%r114,%r115; st.u16 [%r49],%r113; .loc 1 860 2 add.u64 %r49,%r49,-2; .loc 1 856 9 shr.u32 %r116,%r45,8; .loc 1 859 9 cvt.u16.u32 %r117,%r116; cvt.u32.u16 %r65,%r117; .loc 1 854 1 setp.ne.u64 %r118,%r49,%r55; @ %r118 bra $L123; .loc 1 2461 6 add.u32 %r71,%r71,-8; $L122: .loc 1 2464 7 setp.ne.u32 %r119,%r71,0; @ %r119 bra $L124; $L126: .loc 1 852 8 mov.u32 %r69,0; bra $L109; $L124: .loc 1 2466 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r70; call eshup1,(%out_arg1); } .loc 1 2467 6 add.u32 %r71,%r71,-1; .loc 1 2464 7 setp.ne.u32 %r121,%r71,0; @ %r121 bra $L124; bra $L126; $L118: .loc 1 2470 3 cvt.u16.u32 %r123,%r37; set.u32.ne.u16 %r124,%r123,0; neg.s32 %r69,%r124; bra $L109; $L113: .loc 1 2436 7 setp.lt.s32 %r127,%r71,-7; @ %r127 bra $L129; .loc 1 2423 6 mov.u32 %r37,0; bra $L119; $L109: .loc 1 2473 1 mov.u32 %value,%r69; st.param.u32 [%value_out],%value; 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 %r25; .reg .u32 %r26; .reg .u64 %r29; .reg .u32 %r30; .reg .u32 %r31; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u32 %r36; .reg .u64 %r40; .reg .u32 %r45; .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 .u32 %r64; .reg .u16 %r65; .reg .u16 %r66; .reg .u16 %r67; .reg .u32 %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 .u32 %r78; .reg .u16 %r79; .reg .u32 %r80; .reg .u16 %r81; .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 2490 5 ld.u16 %r23,[%r49+4]; .loc 1 2490 3 setp.eq.u32 %r50,%r23,0; @ %r50 bra $L143; .loc 1 2528 3 cvt.u16.u32 %r52,%r23; and.b16 %r51,%r52,-256; setp.ne.u16 %r53,%r51,0; @ %r53 bra $L144; .loc 1 2488 4 mov.u32 %r48,0; bra $L158; $L143: .loc 1 2493 5 ld.u16 %r31,[%r49+6]; .loc 1 2493 3 cvt.u16.u32 %r54,%r31; setp.lt.s16 %r55,%r54,0; @ %r55 bra $L160; .loc 1 2488 4 mov.u32 %r48,%r23; add.u64 %r91,%r49,26; .loc 1 879 4 cvt.u16.u32 %r92,%r48; bra $L147; $L150: .loc 1 874 3 add.u64 %r34,%r49,6; .loc 1 873 3 add.u64 %r25,%r49,4; $L149: .loc 1 877 11 add.u64 %r34,%r34,2; .loc 1 877 7 cvt.u16.u32 %r56,%r31; st.u16 [%r25],%r56; add.u64 %r25,%r25,2; .loc 1 876 1 setp.eq.u64 %r57,%r34,%r91; @ %r57 bra $L148; ld.u16 %r31,[%r34]; bra $L149; $L148: .loc 1 879 4 st.u16 [%r49+24],%r92; .loc 1 2498 5 add.u32 %r48,%r48,16; .loc 1 2502 4 setp.eq.u32 %r59,%r48,160; @ %r59 bra $L142; ld.u16 %r31,[%r49+6]; $L147: .loc 1 2495 6 setp.eq.u32 %r60,%r31,0; @ %r60 bra $L150; cvt.u16.u32 %r62,%r31; and.b16 %r61,%r62,-256; cvt.u32.u16 %r30,%r61; .loc 1 2506 6 setp.ne.u32 %r63,%r30,0; @ %r63 bra $L154; add.u64 %r33,%r49,24; add.u64 %r89,%r49,2; $L153: .loc 1 852 8 mov.u32 %r47,%r30; .loc 1 851 3 mov.u64 %r40,%r33; $L152: .loc 1 856 11 ld.u16 %r36,[%r40]; .loc 1 857 5 shl.b32 %r64,%r36,8; .loc 1 858 5 cvt.u16.u32 %r66,%r64; cvt.u16.u32 %r67,%r47; or.b16 %r65,%r66,%r67; st.u16 [%r40],%r65; .loc 1 860 2 add.u64 %r40,%r40,-2; .loc 1 856 9 shr.u32 %r68,%r36,8; .loc 1 859 9 cvt.u16.u32 %r69,%r68; cvt.u32.u16 %r47,%r69; .loc 1 854 1 setp.ne.u64 %r70,%r40,%r89; @ %r70 bra $L152; .loc 1 2509 5 add.u32 %r48,%r48,8; .loc 1 2506 9 ld.u16 %r31,[%r49+6]; .loc 1 2506 6 cvt.u16.u32 %r72,%r31; and.b16 %r71,%r72,-256; setp.eq.u16 %r73,%r71,0; @ %r73 bra $L153; bra $L154; $L155: .loc 1 2514 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r49; call eshup1,(%out_arg1); } .loc 1 2515 5 add.u32 %r48,%r48,1; .loc 1 2516 4 setp.gt.s32 %r75,%r48,160; @ %r75 bra $L142; ld.u16 %r31,[%r49+6]; $L154: .loc 1 2512 6 cvt.u16.u32 %r76,%r31; setp.ge.s16 %r77,%r76,0; @ %r77 bra $L155; bra $L142; $L144: .loc 1 830 3 add.u64 %r29,%r49,4; add.u64 %r35,%r49,26; .loc 1 831 8 mov.u32 %r45,0; $L157: .loc 1 834 9 shl.b32 %r78,%r23,8; cvt.u16.u32 %r79,%r78; cvt.u32.u16 %r26,%r79; .loc 1 835 5 shr.u32 %r80,%r23,8; .loc 1 836 5 cvt.u16.u32 %r82,%r80; cvt.u16.u32 %r83,%r45; or.b16 %r81,%r82,%r83; st.u16 [%r29],%r81; .loc 1 838 2 add.u64 %r29,%r29,2; .loc 1 832 1 setp.ne.u64 %r84,%r29,%r35; @ %r84 bra $L156; ld.u16 %r23,[%r49+4]; .loc 1 2531 5 mov.u32 %r48,-8; bra $L158; $L156: ld.u16 %r23,[%r29]; .loc 1 837 9 mov.u32 %r45,%r26; bra $L157; $L159: .loc 1 2535 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r49; call eshdn1,(%out_arg1); } .loc 1 2536 5 add.u32 %r48,%r48,-1; .loc 1 2538 4 setp.eq.u32 %r86,%r48,-145; @ %r86 bra $L142; ld.u16 %r23,[%r49+4]; $L158: .loc 1 2533 6 setp.ne.u32 %r87,%r23,0; @ %r87 bra $L159; bra $L142; $L160: .loc 1 2494 8 mov.u32 %r48,%r23; $L142: .loc 1 2545 1 mov.u32 %value,%r48; 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 %r30; .reg .u64 %r31; .reg .u64 %r33; .reg .u32 %r34; .reg .u32 %r35; .reg .u64 %r53; .reg .u32 %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .u32 %r61; .reg .u32 %r67; .reg .u64 %r77; .reg .u64 %r80; .reg .u64 %r81; .reg .u64 %r84; .reg .u64 %r85; .reg .u64 %r95; .reg .u64 %r96; .reg .u64 %r97; .reg .u64 %r101; .reg .u64 %r102; .reg .u64 %r105; .reg .u32 %r111; .reg .u32 %r112; .reg .u64 %r113; .reg .u64 %r115; .reg .u32 %r116; .reg .u32 %r117; .reg .u64 %r118; .reg .u32 %r119; .reg .u64 %r120; .reg .u32 %r122; .reg .u64 %r123; .reg .u32 %r125; .reg .u32 %r126; .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 .u16 %r136; .reg .pred %r137; .reg .pred %r139; .reg .u32 %r141; .reg .u32 %r142; .reg .pred %r143; .reg .u16 %r144; .reg .pred %r145; .reg .pred %r146; .reg .u32 %r147; .reg .pred %r148; .reg .u16 %r149; .reg .pred %r150; .reg .pred %r151; .reg .pred %r152; .reg .pred %r153; .reg .pred %r154; .reg .pred %r155; .reg .pred %r156; .reg .u32 %r157; .reg .u32 %r158; .reg .u16 %r159; .reg .u32 %r160; .reg .u32 %r161; .reg .u32 %r162; .reg .u16 %r163; .reg .u32 %r165; .reg .u32 %r166; .reg .u16 %r167; .reg .u32 %r168; .reg .u32 %r169; .reg .u32 %r170; .reg .u16 %r171; .reg .u32 %r173; .reg .u32 %r174; .reg .u16 %r175; .reg .u32 %r177; .reg .u32 %r178; .reg .u16 %r179; .reg .u64 %r181; .reg .u64 %r182; .reg .u64 %r183; .reg .u64 %r184; .reg .u16 %r186; .reg .pred %r187; .reg .pred %r188; .reg .u16 %r189; .reg .u16 %r190; .reg .u32 %r191; .reg .u64 %r193; .reg .u16 %r194; .reg .u16 %r195; .reg .u16 %r196; .reg .pred %r197; .reg .pred %r198; .reg .u64 %r199; .reg .u32 %r200; .reg .u32 %r201; .reg .u64 %r202; .reg .u64 %r203; .reg .u64 %r204; .reg .u64 %r205; .reg .u16 %r206; .reg .pred %r207; .reg .u16 %r208; .reg .u16 %r209; .reg .u16 %r210; .reg .pred %r211; .reg .u16 %r212; .reg .u16 %r213; .reg .u16 %r214; .reg .u16 %r215; .reg .u16 %r216; .reg .u16 %r217; .reg .u16 %r218; .reg .pred %r219; .reg .u32 %r221; .reg .u32 %r222; .reg .u32 %r224; .reg .u32 %r225; .reg .u16 %r226; .reg .u16 %r227; .reg .u16 %r228; .reg .u32 %r229; .reg .u16 %r230; .reg .pred %r231; .reg .pred %r234; .reg .pred %r235; .reg .u64 %r236; .reg .u64 %r237; .reg .u64 %r238; .reg .u16 %r239; .reg .u16 %r240; .reg .u16 %r241; .reg .pred %r242; .reg .pred %r243; .reg .u64 %r244; .reg .u64 %r245; .reg .u64 %r246; .reg .u64 %r247; .reg .u64 %r248; .reg .u32 %r250; .reg .pred %r251; .reg .u16 %r253; .reg .pred %r254; .reg .u16 %r256; .reg .pred %r257; .reg .u16 %r258; .reg .pred %r259; .reg .u16 %r260; .reg .u16 %r261; .reg .pred %r262; .reg .u16 %r264; .reg .u64 %r266; .reg .u64 %r267; .reg .u16 %r268; .reg .u16 %r269; .reg .u16 %r270; .reg .pred %r272; .reg .pred %r274; .reg .u32 %r275; .reg .pred %r276; .reg .pred %r277; mov.u64 %r115,%ar0; mov.u32 %r116,%ar1; mov.u32 %r117,%ar2; mov.u64 %r118,%ar3; mov.u32 %r119,%ar4; mov.u64 %r120,%ar5; .loc 1 1172 5 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r115; call (%value_in),enormlz,(%out_arg1); ld.param.u32 %r122,[%value_in]; } .loc 1 1182 5 cvt.s64.s32 %r123,%r122; sub.u64 %r53,%r118,%r123; .loc 1 1187 8 set.u32.gt.s32 %r125,%r122,144; neg.s32 %r126,%r125; .loc 1 1187 25 set.u32.le.s64 %r128,%r53,32766; neg.s32 %r129,%r128; .loc 1 1187 17 cvt.u16.u32 %r131,%r126; cvt.u16.u32 %r132,%r129; and.b16 %r130,%r131,%r132; .loc 1 1187 3 cvt.u32.u16 %r133,%r130; cvt.u16.u8 %r134,%r133; setp.eq.u16 %r135,%r134,0; @ %r135 bra $L171; .loc 1 681 1 add.u64 %r105,%r115,2; add.u64 %r102,%r115,26; .loc 1 683 8 mov.u16 %r136,0; $L172: st.u16 [%r105],%r136; add.u64 %r105,%r105,2; .loc 1 682 1 setp.ne.u64 %r137,%r102,%r105; @ %r137 bra $L172; bra $L170; $L171: .loc 1 1193 3 setp.ge.s64 %r277,%r53,0; @ %r277 bra $L174; .loc 1 1195 4 setp.lt.s64 %r139,%r53,-144; @ %r139 bra $L175; cvt.u32.u64 %r141,%r53; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r115; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r141; call (%value_in),eshift$part$4,(%out_arg1,%out_arg2); ld.param.u32 %r142,[%value_in]; } .loc 1 1199 5 setp.eq.u32 %r143,%r142,0; .loc 1 1200 9 selp.u32 %r116,%r116,1,%r143; .loc 1 1209 3 setp.eq.u32 %r272,%r119,0; @ ! %r272 bra $L229; bra $L209; $L175: .loc 1 681 1 add.u64 %r56,%r115,2; add.u64 %r113,%r115,26; .loc 1 683 8 mov.u16 %r144,%r134; $L177: st.u16 [%r56],%r144; add.u64 %r56,%r56,2; .loc 1 682 1 setp.ne.u64 %r145,%r56,%r113; @ %r145 bra $L177; bra $L170; $L174: .loc 1 1209 3 setp.eq.u32 %r146,%r119,0; @ %r146 bra $L179; .loc 1 1212 8 ld.u32 %r67,[%r120+4]; .loc 1 1212 3 ld.u32 %r147,[%r120]; setp.eq.u32 %r148,%r67,%r147; @ %r148 bra $L180; $L212: add.u64 %r84,%r120,26; add.u64 %r57,%r120,52; .loc 1 672 8 mov.u16 %r149,0; $L181: st.u16 [%r84],%r149; add.u64 %r84,%r84,2; .loc 1 671 1 setp.ne.u64 %r150,%r57,%r84; @ %r150 bra $L181; setp.eq.u32 %r151,%r67,56; @ %r151 bra $L182; setp.gt.s32 %r152,%r67,56; @ %r152 bra $L183; setp.eq.u32 %r153,%r67,24; @ %r153 bra $L184; setp.eq.u32 %r154,%r67,53; @ %r154 bra $L185; bra $L186; $L183: setp.eq.u32 %r155,%r67,64; @ %r155 bra $L187; setp.eq.u32 %r156,%r67,113; @ %r156 bra $L188; $L186: .loc 1 1219 12 mov.u32 %r157,12; st.u32 [%r120+8],%r157; .loc 1 1220 14 mov.u32 %r158,-2147418113; st.u32 [%r120+20],%r158; .loc 1 1222 15 mov.u16 %r159,1; st.u16 [%r120+24],%r159; .loc 1 1223 12 mov.u32 %r160,11; st.u32 [%r120+12],%r160; .loc 1 1224 4 mov.u32 %r112,1; mov.u32 %r111,%r160; bra $L189; $L188: .loc 1 1226 12 mov.u32 %r161,10; st.u32 [%r120+8],%r161; .loc 1 1227 14 mov.u32 %r162,1073774591; st.u32 [%r120+20],%r162; .loc 1 1229 15 mov.u16 %r163,-32768; st.u16 [%r120+24],%r163; .loc 1 1230 12 st.u32 [%r120+12],%r161; .loc 1 1231 4 mov.u32 %r112,32768; mov.u32 %r111,%r161; bra $L189; $L187: .loc 1 1233 12 mov.u32 %r165,7; st.u32 [%r120+8],%r165; .loc 1 1234 14 mov.u32 %r166,-2147418113; st.u32 [%r120+20],%r166; .loc 1 1236 15 mov.u16 %r167,1; st.u16 [%r120+24],%r167; .loc 1 1237 12 mov.u32 %r168,6; st.u32 [%r120+12],%r168; .loc 1 1238 4 mov.u32 %r112,1; mov.u32 %r111,%r168; bra $L189; $L182: .loc 1 1241 12 mov.u32 %r169,6; st.u32 [%r120+8],%r169; .loc 1 1242 14 mov.u32 %r170,8388863; st.u32 [%r120+20],%r170; .loc 1 1244 15 mov.u16 %r171,256; st.u16 [%r120+24],%r171; .loc 1 1245 12 st.u32 [%r120+12],%r169; .loc 1 1246 4 mov.u32 %r112,256; mov.u32 %r111,%r169; bra $L189; $L185: .loc 1 1248 12 mov.u32 %r173,6; st.u32 [%r120+8],%r173; .loc 1 1249 14 mov.u32 %r174,67110911; st.u32 [%r120+20],%r174; .loc 1 1251 15 mov.u16 %r175,2048; st.u16 [%r120+24],%r175; .loc 1 1252 12 st.u32 [%r120+12],%r173; .loc 1 1253 4 mov.u32 %r112,2048; mov.u32 %r111,%r173; bra $L189; $L184: .loc 1 1255 12 mov.u32 %r177,4; st.u32 [%r120+8],%r177; .loc 1 1256 14 mov.u32 %r178,8388863; st.u32 [%r120+20],%r178; .loc 1 1258 15 mov.u16 %r179,256; st.u16 [%r120+24],%r179; .loc 1 1259 12 st.u32 [%r120+12],%r177; .loc 1 1260 4 mov.u32 %r112,256; mov.u32 %r111,%r177; $L189: .loc 1 1262 21 cvt.s64.s32 %r181,%r111; add.u64 %r182,%r181,8; add.u64 %r183,%r182,%r182; add.u64 %r184,%r120,%r183; cvt.u16.u32 %r186,%r112; st.u16 [%r184+10],%r186; .loc 1 1263 13 st.u32 [%r120],%r67; $L180: .loc 1 1272 3 setp.gt.s64 %r187,%r53,0; @ %r187 bra $L190; $L213: .loc 1 1272 16 setp.eq.u32 %r188,%r67,144; @ %r188 bra $L191; .loc 1 1277 18 ld.u16 %r190,[%r115+24]; and.b16 %r189,%r190,1; cvt.u32.u16 %r191,%r189; .loc 1 1277 7 or.b32 %r116,%r116,%r191; .loc 1 1278 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r115; call eshdn1,(%out_arg1); } ld.u32 %r67,[%r120+4]; $L190: .loc 1 1283 10 ld.u32 %r30,[%r120+8]; cvt.s64.s32 %r31,%r30; .loc 1 1283 6 add.u64 %r193,%r31,%r31; add.u64 %r33,%r115,%r193; ld.u16 %r34,[%r33]; .loc 1 1283 21 ld.u16 %r35,[%r120+20]; .loc 1 1283 3 cvt.u16.u32 %r195,%r34; cvt.u16.u32 %r196,%r35; and.b16 %r194,%r195,%r196; cvt.u32.u16 %r55,%r194; .loc 1 1284 3 setp.gt.s32 %r197,%r67,143; @ %r197 bra $L192; .loc 1 1287 7 setp.gt.s32 %r198,%r30,11; @ %r198 bra $L192; add.u64 %r199,%r193,2; add.u64 %r95,%r115,%r199; mov.u32 %r201,11; sub.u32 %r200,%r201,%r30; cvt.u64.u32 %r202,%r200; add.u64 %r203,%r202,%r31; add.u64 %r204,%r203,%r203; add.u64 %r205,%r115,4; add.u64 %r85,%r204,%r205; .loc 1 1291 8 mov.u16 %r210,0; $L194: .loc 1 1289 5 ld.u16 %r206,[%r95]; setp.eq.u16 %r207,%r206,0; @ %r207 bra $L193; .loc 1 1290 6 cvt.u16.u32 %r209,%r55; or.b16 %r208,%r209,1; cvt.u32.u16 %r55,%r208; $L193: .loc 1 1291 8 st.u16 [%r95],%r210; add.u64 %r95,%r95,2; .loc 1 1287 7 setp.ne.u64 %r211,%r85,%r95; @ %r211 bra $L194; ld.u16 %r34,[%r33]; ld.u16 %r35,[%r120+20]; $L192: .loc 1 1295 12 cvt.u16.u32 %r213,%r35; not.b16 %r212,%r213; cvt.u16.u32 %r215,%r34; and.b16 %r214,%r212,%r215; st.u16 [%r33],%r214; .loc 1 1296 22 ld.u16 %r217,[%r120+22]; cvt.u16.u32 %r218,%r55; and.b16 %r216,%r217,%r218; .loc 1 1296 3 setp.ne.u16 %r219,%r216,0; @ %r219 bra $L195; $L200: .loc 1 1315 16 set.u32.ne.u32 %r221,%r67,144; neg.s32 %r222,%r221; .loc 1 1315 3 set.u32.le.s64 %r224,%r53,0; neg.s32 %r225,%r224; .loc 1 1315 16 cvt.u16.u32 %r227,%r222; cvt.u16.u32 %r228,%r225; and.b16 %r226,%r227,%r228; cvt.u32.u16 %r229,%r226; cvt.u16.u8 %r230,%r229; setp.ne.u16 %r231,%r230,0; @ ! %r231 bra $L230; bra $L196; $L195: .loc 1 1298 4 setp.ne.u16 %r234,%r217,%r218; @ %r234 bra $L198; .loc 1 1300 5 setp.ne.u32 %r235,%r116,0; @ %r235 bra $L199; .loc 1 1302 14 ld.s32 %r236,[%r120+12]; .loc 1 1302 10 add.u64 %r237,%r236,%r236; add.u64 %r238,%r115,%r237; .loc 1 1302 34 ld.u16 %r240,[%r238]; ld.u16 %r241,[%r120+24]; and.b16 %r239,%r240,%r241; .loc 1 1302 6 setp.eq.u16 %r242,%r239,0; @ ! %r242 bra $L198; bra $L200; $L199: .loc 1 1307 6 setp.ne.u32 %r243,%r117,0; @ %r243 bra $L200; $L198: .loc 1 911 3 add.u64 %r80,%r120,50; .loc 1 912 3 add.u64 %r81,%r115,24; add.u64 %r96,%r120,28; .loc 1 913 7 mov.u32 %r61,0; $L201: .loc 1 916 6 ld.u16 %r244,[%r80]; .loc 1 916 29 ld.u16 %r245,[%r81]; .loc 1 916 27 add.u64 %r246,%r244,%r245; .loc 1 916 50 cvt.u64.u32 %r247,%r61; .loc 1 916 4 add.u64 %r77,%r246,%r247; .loc 1 921 7 st.u16 [%r81],%r77; .loc 1 922 2 add.u64 %r80,%r80,-2; .loc 1 923 2 add.u64 %r81,%r81,-2; .loc 1 917 4 shr.u64 %r248,%r77,16; cvt.u32.u64 %r250,%r248; and.b32 %r61,%r250,1; .loc 1 914 1 setp.ne.u64 %r251,%r80,%r96; @ %r251 bra $L201; bra $L200; $L196: .loc 1 1320 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r115; call eshup1,(%out_arg1); } .loc 1 1322 3 ld.u16 %r253,[%r115+4]; setp.eq.u16 %r254,%r253,0; @ %r254 bra $L202; $L204: .loc 1 1324 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r115; call eshdn1,(%out_arg1); } .loc 1 1325 6 add.u64 %r53,%r53,1; bra $L203; $L230: .loc 1 1322 3 ld.u16 %r256,[%r115+4]; setp.ne.u16 %r257,%r256,0; @ %r257 bra $L204; $L203: .loc 1 1328 9 mov.u16 %r258,0; st.u16 [%r115+24],%r258; .loc 1 1329 3 setp.le.s64 %r259,%r53,32766; @ ! %r259 bra $L211; setp.ge.s64 %r277,%r53,0; bra $L205; $L211: .loc 1 1335 7 mov.u16 %r260,32767; st.u16 [%r115+2],%r260; add.u64 %r101,%r115,4; add.u64 %r97,%r115,24; .loc 1 1337 8 mov.u16 %r261,0; $L206: st.u16 [%r101],%r261; add.u64 %r101,%r101,2; .loc 1 1336 2 setp.ne.u64 %r262,%r97,%r101; @ %r262 bra $L206; bra $L170; $L205: .loc 1 1356 3 @ %r277 bra $L207; $L208: .loc 1 1357 7 mov.u16 %r264,0; st.u16 [%r115+2],%r264; bra $L170; $L207: .loc 1 1359 9 st.u16 [%r115+2],%r53; bra $L170; $L202: .loc 1 1328 9 st.u16 [%r115+24],%r253; bra $L205; $L191: .loc 1 1283 10 ld.s32 %r266,[%r120+8]; .loc 1 1283 6 add.u64 %r267,%r266,%r266; add.u64 %r33,%r115,%r267; ld.u16 %r34,[%r33]; .loc 1 1283 21 ld.u16 %r35,[%r120+20]; .loc 1 1283 3 cvt.u16.u32 %r269,%r34; cvt.u16.u32 %r270,%r35; and.b16 %r268,%r269,%r270; cvt.u32.u16 %r55,%r268; bra $L192; $L209: .loc 1 1328 9 st.u16 [%r115+24],%r134; bra $L208; $L179: st.u16 [%r115+24],%r134; .loc 1 1329 3 setp.gt.s64 %r274,%r53,32766; @ ! %r274 bra $L207; bra $L211; $L229: .loc 1 1212 8 ld.u32 %r67,[%r120+4]; .loc 1 1212 3 ld.u32 %r275,[%r120]; setp.ne.u32 %r276,%r275,%r67; @ %r276 bra $L212; bra $L213; $L170: .loc 1 1360 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 %r26; .reg .u32 %r30; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r48; .reg .u64 %r51; .reg .u64 %r52; .reg .u64 %r57; .reg .u64 %r65; .reg .u32 %r66; .reg .u64 %r67; .reg .u64 %r68; .reg .u64 %r69; .reg .u64 %r70; .reg .u64 %r71; .reg .u32 %r73; .reg .u64 %r74; .reg .u32 %r76; .reg .u64 %r77; .reg .u16 %r78; .reg .pred %r79; .reg .pred %r80; .reg .u16 %r81; .reg .u16 %r82; .reg .pred %r83; .reg .pred %r86; .reg .pred %r87; .reg .u64 %r88; .reg .u64 %r89; .reg .u64 %r90; .reg .u64 %r91; .reg .u64 %r92; .reg .u32 %r94; .reg .pred %r95; .reg .u16 %r97; .reg .u16 %r98; .reg .u16 %r99; .reg .pred %r101; .reg .u32 %r106; .reg .u64 %r108; .reg .u64 %r109; .reg .u64 %r110; mov.u64 %r69,%ar0; mov.u64 %r70,%ar1; mov.u64 %r71,%ar2; .loc 1 3653 18 add.u64 %r32,%r71,52; .loc 1 3655 4 ld.u16 %r33,[%r69+2]; .loc 1 3656 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r69; call (%value_in),enormlz,(%out_arg1); ld.param.u32 %r73,[%value_in]; } cvt.s64.s32 %r74,%r73; .loc 1 3656 4 sub.u64 %r35,%r33,%r74; .loc 1 3657 4 ld.u16 %r36,[%r70+2]; .loc 1 3658 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r70; call (%value_in),enormlz,(%out_arg1); ld.param.u32 %r76,[%value_in]; } cvt.s64.s32 %r77,%r76; .loc 1 3658 4 sub.u64 %r38,%r36,%r77; mov.u64 %r57,%r32; add.u64 %r68,%r71,78; .loc 1 672 8 mov.u16 %r78,0; $L232: st.u16 [%r57],%r78; add.u64 %r57,%r57,2; .loc 1 671 1 setp.ne.u64 %r79,%r57,%r68; @ %r79 bra $L232; .loc 1 3660 6 setp.gt.s64 %r80,%r35,%r38; @ %r80 bra $L233; add.u64 %r67,%r69,4; add.u64 %r65,%r70,4; add.u64 %r108,%r35,-1; add.u64 %r109,%r69,26; add.u64 %r110,%r70,2; $L239: mov.u64 %r26,%r67; mov.u64 %r39,%r65; $L237: .loc 1 756 4 ld.u16 %r81,[%r26]; ld.u16 %r82,[%r39]; setp.eq.u16 %r83,%r81,%r82; @ %r83 bra $L234; .loc 1 762 3 setp.gt.u16 %r86,%r81,%r82; @ %r86 bra $L240; bra $L236; $L234: add.u64 %r26,%r26,2; add.u64 %r39,%r39,2; .loc 1 754 1 setp.ne.u64 %r87,%r109,%r26; @ %r87 bra $L237; $L236: .loc 1 938 3 add.u64 %r51,%r69,24; .loc 1 939 3 add.u64 %r52,%r70,24; .loc 1 940 7 mov.u32 %r66,0; $L238: .loc 1 943 6 ld.u16 %r88,[%r52]; .loc 1 943 50 cvt.u64.u32 %r89,%r66; .loc 1 943 4 sub.u64 %r90,%r88,%r89; .loc 1 943 29 ld.u16 %r91,[%r51]; .loc 1 943 4 sub.u64 %r48,%r90,%r91; .loc 1 948 7 st.u16 [%r52],%r48; .loc 1 949 2 add.u64 %r51,%r51,-2; .loc 1 950 2 add.u64 %r52,%r52,-2; .loc 1 944 4 shr.u64 %r92,%r48,16; cvt.u32.u64 %r94,%r92; and.b32 %r66,%r94,1; .loc 1 941 1 setp.ne.u64 %r95,%r110,%r52; @ %r95 bra $L238; .loc 1 3665 5 mov.u32 %r30,1; bra $L235; $L240: .loc 1 3669 5 mov.u32 %r30,0; $L235: .loc 1 3671 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; call eshup1,(%out_arg1); } .loc 1 3672 14 ld.u16 %r98,[%r71+76]; cvt.u16.u32 %r99,%r30; or.b16 %r97,%r98,%r99; st.u16 [%r71+76],%r97; .loc 1 3673 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r70; call eshup1,(%out_arg1); } .loc 1 3674 5 add.u64 %r38,%r38,-1; .loc 1 3660 6 setp.ne.u64 %r101,%r38,%r108; @ %r101 bra $L239; $L233: .loc 1 3676 1 mov.u32 %r106,0; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r70; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r106; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r106; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r38; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r106; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r71; call emdnorm,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); } .loc 1 3677 1 ret; } // BEGIN FUNCTION DEF: emovo$isra$7 .func emovo$isra$7 (.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 %r25; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u32 %r33; .reg .u64 %r40; .reg .u64 %r42; .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 .u16 %r64; .reg .pred %r65; .reg .u16 %r66; .reg .u16 %r67; .reg .u16 %r68; .reg .pred %r69; mov.u64 %r48,%ar0; mov.u64 %r49,%ar1; ld.u16 %r33,[%r48+2]; .loc 1 638 3 ld.u16 %r50,[%r48]; setp.eq.u16 %r51,%r50,0; @ %r51 bra $L246; .loc 1 639 7 cvt.u16.u32 %r53,%r33; or.b16 %r52,%r53,-32768; cvt.u32.u16 %r33,%r52; $L246: cvt.u16.u32 %r54,%r33; st.u16 [%r49+18],%r54; .loc 1 643 3 ld.u16 %r55,[%r48+2]; setp.ne.u16 %r56,%r55,32767; @ %r56 bra $L247; add.u64 %r40,%r48,6; add.u64 %r29,%r48,26; $L249: .loc 1 712 5 ld.u16 %r57,[%r40]; setp.ne.u16 %r58,%r57,0; @ %r58 bra $L248; add.u64 %r40,%r40,2; .loc 1 710 2 setp.ne.u64 %r59,%r29,%r40; @ %r59 bra $L249; bra $L262; $L248: mov.u64 %r25,%r49; add.u64 %r23,%r49,16; .loc 1 3750 10 mov.u16 %r60,0; $L251: st.u16 [%r25],%r60; add.u64 %r25,%r25,2; .loc 1 3749 2 setp.ne.u64 %r61,%r23,%r25; @ %r61 bra $L251; .loc 1 3751 9 mov.u16 %r62,-16384; st.u16 [%r49+16],%r62; .loc 1 3757 9 mov.u16 %r63,32767; st.u16 [%r49+18],%r63; bra $L245; $L262: mov.u64 %r24,%r49; add.u64 %r28,%r49,18; .loc 1 548 7 mov.u16 %r64,%r57; $L253: st.u16 [%r24],%r64; add.u64 %r24,%r24,2; .loc 1 547 1 setp.ne.u64 %r65,%r24,%r28; @ %r65 bra $L253; .loc 1 549 4 ld.u16 %r67,[%r49+18]; or.b16 %r66,%r67,32767; st.u16 [%r49+18],%r66; bra $L245; $L247: add.u64 %r30,%r48,6; add.u64 %r42,%r49,16; add.u64 %r47,%r48,24; $L254: .loc 1 660 7 ld.u16 %r68,[%r30]; st.u16 [%r42],%r68; add.u64 %r30,%r30,2; add.u64 %r42,%r42,-2; .loc 1 659 1 setp.ne.u64 %r69,%r30,%r47; @ %r69 bra $L254; $L245: .loc 1 661 1 ret; } // BEGIN FUNCTION DEF: e53toe$isra$9 .func e53toe$isra$9 (.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 %r23; .reg .u32 %r24; .reg .u32 %r29; .reg .u64 %r34; .reg .u64 %r35; .reg .u32 %r40; .reg .u32 %r47; .reg .u64 %r48; .reg .u64 %r49; .reg .u64 %r52; .reg .u64 %r54; .reg .u32 %r55; .reg .u32 %r56; .reg .u64 %r57; .reg .u64 %r60; .reg .u64 %r61; .reg .u16 %r62; .reg .pred %r63; .reg .u16 %r64; .reg .pred %r66; .reg .u16 %r68; .reg .u16 %r69; .reg .u16 %r71; .reg .u16 %r73; .reg .u16 %r74; .reg .pred %r76; .reg .u16 %r77; .reg .pred %r79; .reg .u16 %r80; .reg .pred %r81; .reg .u16 %r82; .reg .pred %r83; .reg .u16 %r84; .reg .pred %r85; .reg .u16 %r86; .reg .pred %r87; .reg .u16 %r88; .reg .u16 %r89; .reg .u16 %r90; .reg .pred %r91; .reg .u16 %r92; .reg .pred %r93; .reg .u16 %r94; .reg .u16 %r95; .reg .u16 %r96; .reg .pred %r97; .reg .u32 %r99; .reg .u16 %r100; .reg .pred %r101; .reg .u16 %r102; .reg .u16 %r104; .reg .u16 %r105; .reg .u16 %r106; .reg .u16 %r107; .reg .u32 %r109; .reg .u32 %r110; .reg .u32 %r112; .reg .pred %r113; .reg .u16 %r114; .reg .pred %r115; .reg .u16 %r116; .reg .u16 %r117; .reg .u16 %r118; .reg .u16 %r119; .reg .u16 %r122; .reg .u16 %r124; .reg .u16 %r125; .reg .u16 %r126; .reg .u32 %r128; .reg .u32 %r129; mov.u64 %r60,%ar0; mov.u64 %r61,%ar1; mov.u64 %r48,%frame; add.u64 %r49,%frame,26; .loc 1 672 8 mov.u16 %r62,0; $L264: st.u16 [%r48],%r62; add.u64 %r48,%r48,2; .loc 1 671 1 setp.ne.u64 %r63,%r48,%r49; @ %r63 bra $L264; .loc 1 2006 3 ld.u16 %r24,[%r60+6]; .loc 1 2008 5 cvt.u16.u32 %r64,%r24; .loc 1 2008 3 setp.lt.s16 %r66,%r64,0; @ %r66 bra $L265; .loc 1 2007 7 st.u16 [%frame],%r62; bra $L266; $L265: .loc 1 2009 8 mov.u16 %r68,-1; st.u16 [%frame],%r68; $L266: .loc 1 2010 12 and.b16 %r69,%r64,15; .loc 1 2010 20 or.b16 %r71,%r69,16; .loc 1 2010 7 st.u16 [%frame+4],%r71; .loc 1 2011 3 cvt.u16.u32 %r74,%r24; and.b16 %r73,%r74,32752; cvt.u32.u16 %r29,%r73; .loc 1 2013 3 setp.ne.u16 %r76,%r73,32752; @ %r76 bra $L267; .loc 1 2017 4 and.b16 %r77,%r74,15; setp.ne.u16 %r79,%r77,0; @ %r79 bra $L268; .loc 1 2017 27 ld.u16 %r80,[%r60+4]; setp.ne.u16 %r81,%r80,0; @ %r81 bra $L268; .loc 1 2018 3 ld.u16 %r82,[%r60+2]; setp.ne.u16 %r83,%r82,0; @ %r83 bra $L268; .loc 1 2018 19 ld.u16 %r84,[%r60]; setp.eq.u16 %r85,%r84,0; @ %r85 bra $L269; $L268: mov.u64 %r52,%r61; add.u64 %r35,%r61,16; .loc 1 3750 10 mov.u16 %r86,0; $L270: st.u16 [%r52],%r86; add.u64 %r52,%r52,2; .loc 1 3749 2 setp.ne.u64 %r87,%r35,%r52; @ %r87 bra $L270; .loc 1 3751 9 mov.u16 %r88,-16384; st.u16 [%r61+16],%r88; .loc 1 3757 9 mov.u16 %r89,32767; st.u16 [%r61+18],%r89; bra $L263; $L269: mov.u64 %r34,%r61; add.u64 %r57,%r61,20; .loc 1 2018 19 mov.u64 %r22,%r61; .loc 1 440 7 mov.u16 %r90,%r84; $L272: st.u16 [%r22],%r90; add.u64 %r22,%r22,2; .loc 1 439 1 setp.ne.u64 %r91,%r57,%r22; @ %r91 bra $L272; add.u64 %r23,%r61,18; .loc 1 548 7 mov.u16 %r92,0; $L273: st.u16 [%r34],%r92; add.u64 %r34,%r34,2; .loc 1 547 1 setp.ne.u64 %r93,%r23,%r34; @ %r93 bra $L273; .loc 1 549 4 ld.u16 %r95,[%r61+18]; or.b16 %r94,%r95,32767; st.u16 [%r61+18],%r94; .loc 1 2034 4 ld.u16 %r96,[%frame]; setp.eq.u16 %r97,%r96,0; @ %r97 bra $L263; .loc 1 2035 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r61; call eneg,(%out_arg1); } bra $L263; $L267: .loc 1 2039 3 shr.u32 %r99,%r29,4; cvt.u16.u32 %r100,%r99; cvt.u32.u16 %r40,%r100; ld.u16 %r55,[%r60+4]; ld.u16 %r56,[%r60+2]; ld.u16 %r47,[%r60]; .loc 1 2042 3 setp.ne.u32 %r101,%r40,0; @ %r101 bra $L274; .loc 1 2045 8 and.b16 %r102,%r71,-17; st.u16 [%frame+4],%r102; .loc 1 2048 7 mov.u16 %r104,15360; st.u16 [%frame+2],%r104; .loc 1 2051 6 cvt.u16.u32 %r105,%r55; st.u16 [%frame+6],%r105; .loc 1 2052 6 cvt.u16.u32 %r106,%r56; st.u16 [%frame+8],%r106; .loc 1 2053 6 cvt.u16.u32 %r107,%r47; st.u16 [%frame+10],%r107; mov.u32 %r109,-5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r109; call (%value_in),eshift$part$4,(%out_arg1,%out_arg2); ld.param.u32 %r110,[%value_in]; } .loc 1 2063 11 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),enormlz,(%out_arg1); ld.param.u32 %r112,[%value_in]; } .loc 1 2063 4 setp.le.s32 %r113,%r112,144; @ %r113 bra $L275; add.u64 %r54,%frame,2; .loc 1 683 8 cvt.u16.u32 %r114,%r40; $L276: st.u16 [%r54],%r114; add.u64 %r54,%r54,2; .loc 1 682 1 setp.ne.u64 %r115,%r49,%r54; @ %r115 bra $L276; bra $L277; $L275: .loc 1 2066 9 ld.u16 %r117,[%frame+2]; add.u16 %r116,%r117,1; cvt.u16.u32 %r119,%r112; sub.u16 %r118,%r116,%r119; st.u16 [%frame+2],%r118; $L277: .loc 1 2068 1 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r61; call emovo$isra$7,(%out_arg1,%out_arg2); } bra $L263; $L274: .loc 1 2047 3 add.u16 %r122,%r100,15360; .loc 1 2048 7 st.u16 [%frame+2],%r122; .loc 1 2051 6 cvt.u16.u32 %r124,%r55; st.u16 [%frame+6],%r124; .loc 1 2052 6 cvt.u16.u32 %r125,%r56; st.u16 [%frame+8],%r125; .loc 1 2053 6 cvt.u16.u32 %r126,%r47; st.u16 [%frame+10],%r126; mov.u32 %r128,-5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r128; call (%value_in),eshift$part$4,(%out_arg1,%out_arg2); ld.param.u32 %r129,[%value_in]; } bra $L277; $L263: .loc 1 2070 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[64]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r28; .reg .u32 %r29; .reg .u64 %r32; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u32 %r48; .reg .u64 %r51; .reg .u64 %r56; .reg .u64 %r64; .reg .u32 %r72; .reg .u64 %r74; .reg .u64 %r75; .reg .u64 %r76; .reg .u64 %r77; .reg .u64 %r78; .reg .u64 %r79; .reg .u64 %r82; .reg .u64 %r96; .reg .u64 %r97; .reg .u64 %r99; .reg .u64 %r100; .reg .u64 %r101; .reg .u64 %r104; .reg .u64 %r105; .reg .u64 %r106; .reg .u64 %r107; .reg .u64 %r108; .reg .u16 %r109; .reg .pred %r111; .reg .u32 %r113; .reg .pred %r114; .reg .u16 %r115; .reg .pred %r116; .reg .u16 %r117; .reg .pred %r118; .reg .u16 %r119; .reg .pred %r121; .reg .u32 %r123; .reg .pred %r124; .reg .u64 %r126; .reg .u32 %r127; .reg .pred %r128; .reg .u16 %r129; .reg .pred %r131; .reg .u32 %r133; .reg .pred %r134; .reg .u64 %r136; .reg .u32 %r137; .reg .pred %r138; .reg .u16 %r139; .reg .pred %r140; .reg .u16 %r141; .reg .u16 %r142; .reg .u16 %r143; .reg .u16 %r144; .reg .pred %r145; .reg .u16 %r146; .reg .u16 %r147; .reg .pred %r148; .reg .u32 %r150; .reg .pred %r151; .reg .u32 %r153; .reg .u32 %r155; .reg .pred %r156; .reg .u32 %r158; .reg .pred %r159; .reg .u16 %r160; .reg .u16 %r161; .reg .pred %r162; .reg .u16 %r163; .reg .u16 %r164; .reg .pred %r170; .reg .u16 %r171; .reg .pred %r172; .reg .u32 %r175; .reg .u64 %r176; .reg .pred %r179; .reg .u16 %r180; .reg .pred %r181; .reg .u16 %r182; .reg .u16 %r183; .reg .pred %r184; .reg .u16 %r185; .reg .pred %r186; .reg .u32 %r188; .reg .u64 %r189; .reg .pred %r190; .reg .u16 %r191; .reg .pred %r192; .reg .u32 %r197; .reg .u32 %r200; .reg .u32 %r202; .reg .u64 %r204; .reg .u64 %r205; .reg .u16 %r206; .reg .u16 %r207; .reg .u16 %r208; .reg .u32 %r209; .reg .u32 %r210; .reg .u16 %r211; .reg .u16 %r214; .reg .pred %r216; .reg .u16 %r217; .reg .pred %r219; .reg .u16 %r220; .reg .u16 %r221; .reg .pred %r222; .reg .u32 %r224; .reg .pred %r225; .reg .u32 %r227; .reg .pred %r228; .reg .u32 %r230; .reg .pred %r231; .reg .u32 %r233; .reg .pred %r234; .reg .u64 %r235; .reg .u16 %r236; .reg .u16 %r237; mov.u64 %r105,%ar0; mov.u64 %r106,%ar1; mov.u64 %r107,%ar2; mov.u64 %r108,%ar3; .loc 1 521 3 ld.u16 %r236,[%r105+18]; and.b16 %r109,%r236,32767; setp.ne.u16 %r111,%r109,32767; @ %r111 bra $L288; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r105; call (%value_in),eisnan$part$0,(%out_arg1); ld.param.u32 %r113,[%value_in]; } .loc 1 1622 3 setp.eq.u32 %r114,%r113,0; @ %r114 bra $L289; mov.u64 %r100,%r105; mov.u64 %r101,%r107; add.u64 %r104,%r100,20; $L290: .loc 1 455 7 ld.u16 %r115,[%r100]; st.u16 [%r101],%r115; add.u64 %r100,%r100,2; add.u64 %r101,%r101,2; .loc 1 454 1 setp.ne.u64 %r116,%r100,%r104; @ %r116 bra $L290; bra $L287; $L325: mov.u64 %r78,%r106; mov.u64 %r77,%r107; add.u64 %r96,%r78,20; $L292: .loc 1 455 7 ld.u16 %r117,[%r78]; st.u16 [%r77],%r117; add.u64 %r78,%r78,2; add.u64 %r77,%r77,2; .loc 1 454 1 setp.ne.u64 %r118,%r78,%r96; @ %r118 bra $L292; bra $L287; $L295: .loc 1 501 3 and.b16 %r119,%r237,32767; setp.eq.u16 %r121,%r119,32767; @ %r121 bra $L293; ld.u16 %r236,[%r105+18]; bra $L294; $L361: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r105; call (%value_in),eisinf$part$1,(%out_arg1); ld.param.u32 %r123,[%value_in]; } .loc 1 1633 3 setp.eq.u32 %r124,%r123,0; @ %r124 bra $L295; $L324: .loc 1 1633 20 cvta.const.u64 %r126,ezero; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r106; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r126; call (%value_in),ecmp,(%out_arg1,%out_arg2); ld.param.u32 %r127,[%value_in]; } .loc 1 1633 16 setp.ne.u32 %r128,%r127,0; @ ! %r128 bra $L300; ld.u16 %r237,[%r106+18]; bra $L295; $L300: mov.u64 %r97,%r107; add.u64 %r99,%r107,16; .loc 1 3750 10 mov.u16 %r139,0; bra $L296; $L294: .loc 1 501 3 and.b16 %r129,%r236,32767; setp.eq.u16 %r131,%r129,32767; @ %r131 bra $L297; bra $L298; $L293: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r106; call (%value_in),eisinf$part$1,(%out_arg1); ld.param.u32 %r133,[%value_in]; } .loc 1 1634 2 setp.eq.u32 %r134,%r133,0; @ %r134 bra $L299; .loc 1 1634 20 cvta.const.u64 %r136,ezero; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r105; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r136; call (%value_in),ecmp,(%out_arg1,%out_arg2); ld.param.u32 %r137,[%value_in]; } .loc 1 1634 16 setp.eq.u32 %r138,%r137,0; @ ! %r138 bra $L357; bra $L300; $L296: .loc 1 3750 10 st.u16 [%r97],%r139; add.u64 %r97,%r97,2; .loc 1 3749 2 setp.ne.u64 %r140,%r97,%r99; @ %r140 bra $L296; .loc 1 3751 9 mov.u16 %r141,-16384; st.u16 [%r107+16],%r141; .loc 1 3757 9 mov.u16 %r142,32767; st.u16 [%r107+18],%r142; .loc 1 1638 2 bra $L287; $L357: .loc 1 501 3 ld.u16 %r144,[%r105+18]; and.b16 %r143,%r144,32767; setp.eq.u16 %r145,%r143,32767; @ %r145 bra $L297; $L304: ld.u16 %r147,[%r106+18]; and.b16 %r146,%r147,32767; setp.eq.u16 %r148,%r146,32767; @ ! %r148 bra $L298; bra $L303; $L297: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r105; call (%value_in),eisinf$part$1,(%out_arg1); ld.param.u32 %r150,[%value_in]; } .loc 1 1643 3 setp.eq.u32 %r151,%r150,0; @ %r151 bra $L304; $L307: .loc 1 1645 6 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r105; call (%value_in),eisneg,(%out_arg1); ld.param.u32 %r153,[%value_in]; } .loc 1 1645 18 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r106; call (%value_in),eisneg,(%out_arg1); ld.param.u32 %r155,[%value_in]; } .loc 1 1645 4 setp.ne.u32 %r156,%r153,%r155; .loc 1 1648 15 selp.u32 %r72,32768,0,%r156; cvt.u16.u32 %r160,%r72; st.u16 [%r107+18],%r160; mov.u64 %r64,%r107; add.u64 %r51,%r107,18; .loc 1 548 7 mov.u16 %r161,0; bra $L308; $L303: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r106; call (%value_in),eisinf$part$1,(%out_arg1); ld.param.u32 %r158,[%value_in]; } .loc 1 1643 15 setp.ne.u32 %r159,%r158,0; @ %r159 bra $L307; bra $L298; $L308: .loc 1 548 7 st.u16 [%r64],%r161; add.u64 %r64,%r64,2; .loc 1 547 1 setp.ne.u64 %r162,%r51,%r64; @ %r162 bra $L308; .loc 1 549 4 ld.u16 %r164,[%r107+18]; or.b16 %r163,%r164,32767; st.u16 [%r107+18],%r163; .loc 1 1650 2 bra $L287; $L298: .loc 1 1653 1 add.u64 %r235,%frame,26; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r105; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r235; call emovi,(%out_arg1,%out_arg2); } .loc 1 1654 1 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r106; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; call emovi,(%out_arg1,%out_arg2); } .loc 1 1655 9 ld.u16 %r28,[%frame+28]; .loc 1 1656 9 ld.u16 %r29,[%frame+2]; .loc 1 1657 3 setp.eq.u32 %r170,%r28,0; @ %r170 bra $L309; .loc 1 1670 1 bra $L358; $L313: add.u64 %r76,%r76,2; .loc 1 1661 5 ld.u16 %r171,[%r76+-2]; setp.eq.u16 %r172,%r171,0; @ %r172 bra $L311; .loc 1 1663 11 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r235; call (%value_in),enormlz,(%out_arg1); ld.param.u32 %r175,[%value_in]; } cvt.s64.s32 %r176,%r175; .loc 1 1663 8 neg.s64 %r38,%r176; ld.u16 %r48,[%frame+2]; .loc 1 1664 4 bra $L312; $L309: add.u64 %r76,%frame,30; add.u64 %r82,%frame,50; $L311: .loc 1 1659 2 setp.ne.u64 %r179,%r76,%r82; @ %r179 bra $L313; mov.u64 %r75,%r107; add.u64 %r79,%r75,20; .loc 1 440 7 mov.u16 %r180,0; $L314: st.u16 [%r75],%r180; add.u64 %r75,%r75,2; .loc 1 439 1 setp.ne.u64 %r181,%r75,%r79; @ %r181 bra $L314; bra $L287; $L358: .loc 1 1655 5 cvt.u16.u32 %r182,%r28; cvt.u64.u16 %r38,%r182; mov.u32 %r48,%r29; $L312: .loc 1 1656 5 cvt.u16.u32 %r183,%r29; cvt.u64.u16 %r39,%r183; .loc 1 1672 3 setp.eq.u32 %r184,%r48,0; @ %r184 bra $L315; .loc 1 1685 1 bra $L316; $L318: add.u64 %r74,%r74,2; .loc 1 1676 5 ld.u16 %r185,[%r74+-2]; setp.eq.u16 %r186,%r185,0; @ %r186 bra $L317; .loc 1 1678 11 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),enormlz,(%out_arg1); ld.param.u32 %r188,[%value_in]; } cvt.s64.s32 %r189,%r188; .loc 1 1678 8 sub.u64 %r39,%r39,%r189; .loc 1 1679 4 bra $L316; $L315: add.u64 %r74,%frame,4; add.u64 %r56,%frame,24; $L317: .loc 1 1674 2 setp.ne.u64 %r190,%r56,%r74; @ %r190 bra $L318; mov.u64 %r40,%r107; add.u64 %r32,%r40,20; .loc 1 440 7 mov.u16 %r191,0; $L319: st.u16 [%r40],%r191; add.u64 %r40,%r40,2; .loc 1 439 1 setp.ne.u64 %r192,%r32,%r40; @ %r192 bra $L319; bra $L287; $L316: .loc 1 1688 5 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r235; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r108; call (%value_in),emulm,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r197,[%value_in]; } .loc 1 1690 10 add.u64 %r204,%r38,%r39; .loc 1 1690 4 add.u64 %r205,%r204,-16382; .loc 1 1691 1 mov.u32 %r202,64; mov.u32 %r200,0; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r197; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r200; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r205; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r202; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r108; call emdnorm,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); } .loc 1 1693 3 ld.u16 %r207,[%frame+26]; ld.u16 %r208,[%frame]; set.u32.ne.u16 %r209,%r207,%r208; neg.s32 %r210,%r209; cvt.u16.u32 %r206,%r210; neg.s16 %r211,%r206; st.u16 [%frame],%r211; .loc 1 1697 1 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r107; call emovo$isra$7,(%out_arg1,%out_arg2); } bra $L287; $L289: .loc 1 521 3 ld.u16 %r237,[%r106+18]; and.b16 %r214,%r237,32767; setp.ne.u16 %r216,%r214,32767; @ %r216 bra $L321; bra $L359; $L288: ld.u16 %r237,[%r106+18]; and.b16 %r217,%r237,32767; setp.ne.u16 %r219,%r217,32767; @ %r219 bra $L298; bra $L360; $L299: .loc 1 501 3 ld.u16 %r221,[%r105+18]; and.b16 %r220,%r221,32767; setp.ne.u16 %r222,%r220,32767; @ %r222 bra $L298; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r105; call (%value_in),eisinf$part$1,(%out_arg1); ld.param.u32 %r224,[%value_in]; } .loc 1 1643 3 setp.ne.u32 %r225,%r224,0; @ ! %r225 bra $L303; bra $L307; $L321: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r105; call (%value_in),eisinf$part$1,(%out_arg1); ld.param.u32 %r227,[%value_in]; } .loc 1 1633 3 setp.ne.u32 %r228,%r227,0; @ %r228 bra $L324; bra $L294; $L360: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r106; call (%value_in),eisnan$part$0,(%out_arg1); ld.param.u32 %r230,[%value_in]; } .loc 1 1627 3 setp.ne.u32 %r231,%r230,0; @ %r231 bra $L325; bra $L295; $L359: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r106; call (%value_in),eisnan$part$0,(%out_arg1); ld.param.u32 %r233,[%value_in]; } setp.ne.u32 %r234,%r233,0; @ ! %r234 bra $L361; bra $L325; $L287: .loc 1 1698 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[64]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r26; .reg .u32 %r27; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u64 %r54; .reg .u64 %r56; .reg .u64 %r60; .reg .u64 %r62; .reg .u64 %r63; .reg .u64 %r64; .reg .u32 %r68; .reg .u64 %r72; .reg .u64 %r74; .reg .u64 %r79; .reg .u64 %r81; .reg .u64 %r82; .reg .u64 %r83; .reg .u64 %r85; .reg .u64 %r86; .reg .u64 %r88; .reg .u64 %r90; .reg .u64 %r91; .reg .u32 %r93; .reg .u64 %r95; .reg .u64 %r99; .reg .u64 %r101; .reg .u64 %r102; .reg .u64 %r103; .reg .u64 %r104; .reg .u16 %r105; .reg .u16 %r106; .reg .pred %r107; .reg .u32 %r109; .reg .pred %r110; .reg .u16 %r111; .reg .pred %r112; .reg .u16 %r113; .reg .u16 %r114; .reg .pred %r115; .reg .u32 %r117; .reg .pred %r118; .reg .u16 %r119; .reg .pred %r120; .reg .u64 %r122; .reg .u32 %r123; .reg .pred %r124; .reg .u16 %r125; .reg .u16 %r126; .reg .u16 %r127; .reg .u16 %r128; .reg .pred %r129; .reg .u32 %r132; .reg .pred %r133; .reg .u32 %r135; .reg .pred %r136; .reg .pred %r138; .reg .u32 %r140; .reg .pred %r141; .reg .u16 %r142; .reg .pred %r143; .reg .u16 %r144; .reg .u16 %r145; .reg .u32 %r147; .reg .u32 %r149; .reg .pred %r150; .reg .u16 %r151; .reg .u16 %r152; .reg .pred %r153; .reg .u16 %r154; .reg .u16 %r155; .reg .u16 %r156; .reg .pred %r157; .reg .pred %r163; .reg .u16 %r164; .reg .pred %r165; .reg .u32 %r167; .reg .u64 %r168; .reg .pred %r169; .reg .u16 %r170; .reg .pred %r171; .reg .u16 %r172; .reg .u16 %r173; .reg .pred %r174; .reg .u16 %r175; .reg .pred %r176; .reg .u32 %r179; .reg .u64 %r180; .reg .pred %r183; .reg .u16 %r184; .reg .u16 %r185; .reg .pred %r186; .reg .u16 %r187; .reg .u16 %r188; .reg .pred %r189; .reg .u16 %r190; .reg .u16 %r191; .reg .u32 %r196; .reg .u32 %r199; .reg .u32 %r201; .reg .u64 %r203; .reg .u64 %r204; .reg .u16 %r205; .reg .u16 %r206; .reg .u16 %r207; .reg .u32 %r208; .reg .u32 %r209; .reg .u16 %r210; .reg .pred %r214; .reg .u32 %r216; .reg .pred %r217; .reg .pred %r219; .reg .u32 %r221; .reg .pred %r222; .reg .u64 %r223; mov.u64 %r101,%ar0; mov.u64 %r102,%ar1; mov.u64 %r103,%ar2; mov.u64 %r104,%ar3; .loc 1 521 3 ld.u16 %r106,[%r101+18]; and.b16 %r105,%r106,32767; setp.ne.u16 %r107,%r105,32767; @ %r107 bra $L363; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r101; call (%value_in),eisnan$part$0,(%out_arg1); ld.param.u32 %r109,[%value_in]; } .loc 1 1518 3 setp.eq.u32 %r110,%r109,0; @ %r110 bra $L363; mov.u64 %r81,%r101; mov.u64 %r85,%r103; add.u64 %r40,%r81,20; $L364: .loc 1 455 7 ld.u16 %r111,[%r81]; st.u16 [%r85],%r111; add.u64 %r81,%r81,2; add.u64 %r85,%r85,2; .loc 1 454 1 setp.ne.u64 %r112,%r40,%r81; @ %r112 bra $L364; bra $L362; $L363: .loc 1 521 3 ld.u16 %r114,[%r102+18]; and.b16 %r113,%r114,32767; setp.ne.u16 %r115,%r113,32767; @ %r115 bra $L366; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r102; call (%value_in),eisnan$part$0,(%out_arg1); ld.param.u32 %r117,[%value_in]; } .loc 1 1523 3 setp.eq.u32 %r118,%r117,0; @ %r118 bra $L366; mov.u64 %r82,%r102; mov.u64 %r83,%r103; add.u64 %r86,%r82,20; $L367: .loc 1 455 7 ld.u16 %r119,[%r82]; st.u16 [%r83],%r119; add.u64 %r82,%r82,2; add.u64 %r83,%r83,2; .loc 1 454 1 setp.ne.u64 %r120,%r86,%r82; @ %r120 bra $L367; bra $L362; $L366: .loc 1 1529 7 cvta.const.u64 %r122,ezero; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r101; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r122; call (%value_in),ecmp,(%out_arg1,%out_arg2); ld.param.u32 %r123,[%value_in]; } .loc 1 1529 3 setp.eq.u32 %r124,%r123,0; @ %r124 bra $L368; $L371: ld.u16 %r126,[%r102+18]; and.b16 %r125,%r126,32767; .loc 1 501 3 ld.u16 %r128,[%r101+18]; and.b16 %r127,%r128,32767; setp.eq.u16 %r129,%r127,32767; @ %r129 bra $L369; bra $L413; $L368: .loc 1 1529 31 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r102; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r122; call (%value_in),ecmp,(%out_arg1,%out_arg2); ld.param.u32 %r132,[%value_in]; } .loc 1 1529 27 setp.ne.u32 %r133,%r132,0; @ %r133 bra $L371; $L375: mov.u64 %r88,%r103; add.u64 %r60,%r103,16; .loc 1 3750 10 mov.u16 %r142,0; bra $L372; $L369: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r101; call (%value_in),eisinf$part$1,(%out_arg1); ld.param.u32 %r135,[%value_in]; } .loc 1 1530 2 setp.eq.u32 %r136,%r135,0; @ %r136 bra $L373; .loc 1 501 3 setp.ne.u16 %r138,%r125,32767; @ %r138 bra $L374; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r102; call (%value_in),eisinf$part$1,(%out_arg1); ld.param.u32 %r140,[%value_in]; } .loc 1 1530 17 setp.ne.u32 %r141,%r140,0; @ ! %r141 bra $L374; bra $L375; $L372: .loc 1 3750 10 st.u16 [%r88],%r142; add.u64 %r88,%r88,2; .loc 1 3749 2 setp.ne.u64 %r143,%r60,%r88; @ %r143 bra $L372; .loc 1 3751 9 mov.u16 %r144,-16384; st.u16 [%r103+16],%r144; .loc 1 3757 9 mov.u16 %r145,32767; st.u16 [%r103+18],%r145; .loc 1 1534 2 bra $L362; $L394: .loc 1 1541 6 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r101; call (%value_in),eisneg,(%out_arg1); ld.param.u32 %r147,[%value_in]; } .loc 1 1541 18 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r102; call (%value_in),eisneg,(%out_arg1); ld.param.u32 %r149,[%value_in]; } .loc 1 1541 4 setp.ne.u32 %r150,%r147,%r149; .loc 1 1544 15 selp.u32 %r93,32768,0,%r150; cvt.u16.u32 %r151,%r93; st.u16 [%r103+18],%r151; mov.u64 %r64,%r103; add.u64 %r91,%r103,18; .loc 1 548 7 mov.u16 %r152,0; $L378: st.u16 [%r64],%r152; add.u64 %r64,%r64,2; .loc 1 547 1 setp.ne.u64 %r153,%r64,%r91; @ %r153 bra $L378; .loc 1 549 4 ld.u16 %r155,[%r103+18]; or.b16 %r154,%r155,32767; st.u16 [%r103+18],%r154; .loc 1 1546 2 bra $L362; $L374: mov.u64 %r62,%r103; add.u64 %r56,%r62,20; .loc 1 440 7 mov.u16 %r156,0; $L379: st.u16 [%r62],%r156; add.u64 %r62,%r62,2; .loc 1 439 1 setp.ne.u64 %r157,%r56,%r62; @ %r157 bra $L379; bra $L362; $L393: .loc 1 1554 1 add.u64 %r223,%frame,26; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r101; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r223; call emovi,(%out_arg1,%out_arg2); } .loc 1 1555 1 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r102; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; call emovi,(%out_arg1,%out_arg2); } .loc 1 1556 9 ld.u16 %r26,[%frame+28]; .loc 1 1557 9 ld.u16 %r27,[%frame+2]; .loc 1 1558 3 setp.eq.u32 %r163,%r27,0; @ %r163 bra $L380; .loc 1 1571 1 bra $L414; $L384: add.u64 %r63,%r63,2; .loc 1 1562 5 ld.u16 %r164,[%r63+-2]; setp.eq.u16 %r165,%r164,0; @ %r165 bra $L382; .loc 1 1564 11 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),enormlz,(%out_arg1); ld.param.u32 %r167,[%value_in]; } cvt.s64.s32 %r168,%r167; .loc 1 1564 8 neg.s64 %r39,%r168; ld.u16 %r68,[%frame+28]; .loc 1 1565 4 bra $L383; $L380: add.u64 %r63,%frame,4; add.u64 %r79,%frame,24; $L382: .loc 1 1560 2 setp.ne.u64 %r169,%r63,%r79; @ %r169 bra $L384; mov.u64 %r74,%r103; add.u64 %r72,%r74,20; .loc 1 440 7 mov.u16 %r170,0; $L385: st.u16 [%r74],%r170; add.u64 %r74,%r74,2; .loc 1 439 1 setp.ne.u64 %r171,%r72,%r74; @ %r171 bra $L385; bra $L362; $L414: .loc 1 1557 5 cvt.u16.u32 %r172,%r27; cvt.u64.u16 %r39,%r172; mov.u32 %r68,%r26; $L383: .loc 1 1556 5 cvt.u16.u32 %r173,%r26; cvt.u64.u16 %r38,%r173; .loc 1 1573 3 setp.eq.u32 %r174,%r68,0; @ %r174 bra $L386; .loc 1 1591 1 bra $L387; $L389: add.u64 %r95,%r95,2; .loc 1 1577 5 ld.u16 %r175,[%r95+-2]; setp.eq.u16 %r176,%r175,0; @ %r176 bra $L388; .loc 1 1579 11 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r223; call (%value_in),enormlz,(%out_arg1); ld.param.u32 %r179,[%value_in]; } cvt.s64.s32 %r180,%r179; .loc 1 1579 8 sub.u64 %r38,%r38,%r180; .loc 1 1580 4 bra $L387; $L386: add.u64 %r95,%frame,30; add.u64 %r90,%frame,50; $L388: .loc 1 1575 2 setp.ne.u64 %r183,%r90,%r95; @ %r183 bra $L389; .loc 1 1583 4 ld.u16 %r184,[%frame+26]; ld.u16 %r185,[%frame]; setp.eq.u16 %r186,%r184,%r185; .loc 1 1586 15 selp.u32 %r68,%r68,32768,%r186; cvt.u16.u32 %r187,%r68; st.u16 [%r103+18],%r187; mov.u64 %r54,%r103; add.u64 %r99,%r103,18; .loc 1 548 7 mov.u16 %r188,0; $L391: st.u16 [%r54],%r188; add.u64 %r54,%r54,2; .loc 1 547 1 setp.ne.u64 %r189,%r54,%r99; @ %r189 bra $L391; .loc 1 549 4 ld.u16 %r191,[%r103+18]; or.b16 %r190,%r191,32767; st.u16 [%r103+18],%r190; .loc 1 1589 2 bra $L362; $L387: .loc 1 1593 5 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r223; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r104; call (%value_in),edivm,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r196,[%value_in]; } .loc 1 1595 10 sub.u64 %r203,%r39,%r38; .loc 1 1595 4 add.u64 %r204,%r203,16383; .loc 1 1596 1 mov.u32 %r201,64; mov.u32 %r199,0; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r196; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r199; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r204; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r201; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r104; call emdnorm,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); } .loc 1 1598 3 ld.u16 %r206,[%frame+26]; ld.u16 %r207,[%frame]; set.u32.ne.u16 %r208,%r206,%r207; neg.s32 %r209,%r208; cvt.u16.u32 %r205,%r209; neg.s16 %r210,%r205; st.u16 [%frame],%r210; .loc 1 1602 1 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r103; call emovo$isra$7,(%out_arg1,%out_arg2); } bra $L362; $L413: .loc 1 501 3 setp.ne.u16 %r214,%r125,32767; @ %r214 bra $L393; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r102; call (%value_in),eisinf$part$1,(%out_arg1); ld.param.u32 %r216,[%value_in]; } .loc 1 1539 3 setp.ne.u32 %r217,%r216,0; @ ! %r217 bra $L393; bra $L394; $L373: .loc 1 501 3 setp.ne.u16 %r219,%r125,32767; @ %r219 bra $L393; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r102; call (%value_in),eisinf$part$1,(%out_arg1); ld.param.u32 %r221,[%value_in]; } .loc 1 1539 3 setp.ne.u32 %r222,%r221,0; @ ! %r222 bra $L393; bra $L394; $L362: .loc 1 1603 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 .u32 %r24; .reg .u32 %r25; .reg .u64 %r27; .reg .u32 %r29; .reg .u32 %r31; .reg .u32 %r32; .reg .u64 %r37; .reg .u32 %r38; .reg .u32 %r41; .reg .u64 %r43; .reg .u32 %r44; .reg .u64 %r50; .reg .u32 %r52; .reg .u32 %r53; .reg .u64 %r54; .reg .u32 %r55; .reg .u64 %r58; .reg .u32 %r62; .reg .u64 %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .u32 %r68; .reg .u64 %r70; .reg .u32 %r72; .reg .u64 %r76; .reg .u64 %r78; .reg .u32 %r80; .reg .u64 %r82; .reg .u64 %r83; .reg .u32 %r86; .reg .u64 %r90; .reg .u64 %r92; .reg .u32 %r98; .reg .u64 %r106; .reg .u64 %r107; .reg .u64 %r109; .reg .u64 %r110; .reg .u32 %r112; .reg .u64 %r129; .reg .u64 %r132; .reg .u64 %r133; .reg .u64 %r134; .reg .u64 %r143; .reg .u64 %r148; .reg .u64 %r150; .reg .u32 %r152; .reg .u64 %r155; .reg .u64 %r158; .reg .u32 %r159; .reg .u32 %r165; .reg .u64 %r166; .reg .u64 %r168; .reg .u32 %r171; .reg .u32 %r176; .reg .u64 %r177; .reg .u32 %r180; .reg .u32 %r185; .reg .u64 %r186; .reg .u64 %r187; .reg .u64 %r193; .reg .u64 %r195; .reg .u64 %r198; .reg .u64 %r199; .reg .u64 %r201; .reg .u64 %r203; .reg .u64 %r204; .reg .u64 %r205; .reg .u64 %r209; .reg .u32 %r211; .reg .u32 %r217; .reg .u64 %r218; .reg .u64 %r219; .reg .u32 %r221; .reg .u32 %r223; .reg .u64 %r225; .reg .u32 %r229; .reg .u64 %r230; .reg .u32 %r232; .reg .u32 %r238; .reg .u64 %r239; .reg .u32 %r245; .reg .u64 %r247; .reg .u64 %r250; .reg .u64 %r251; .reg .u64 %r252; .reg .u32 %r253; .reg .u64 %r257; .reg .u32 %r261; .reg .u32 %r269; .reg .u32 %r273; .reg .u32 %r274; .reg .u32 %r276; .reg .u64 %r278; .reg .u32 %r281; .reg .u32 %r284; .reg .u64 %r292; .reg .u64 %r294; .reg .u64 %r300; .reg .u64 %r308; .reg .u64 %r310; .reg .u64 %r311; .reg .u64 %r313; .reg .u32 %r319; .reg .u32 %r326; .reg .u32 %r331; .reg .u64 %r332; .reg .u64 %r346; .reg .u64 %r349; .reg .u64 %r350; .reg .u64 %r356; .reg .u64 %r359; .reg .u64 %r360; .reg .u32 %r361; .reg .u64 %r362; .reg .u64 %r363; .reg .u32 %r365; .reg .u32 %r366; .reg .u64 %r369; .reg .u64 %r370; .reg .u64 %r372; .reg .u32 %r373; .reg .u64 %r376; .reg .u32 %r377; .reg .u64 %r378; .reg .u64 %r381; .reg .u64 %r383; .reg .u64 %r386; .reg .u64 %r387; .reg .u64 %r391; .reg .u64 %r392; .reg .u64 %r393; .reg .u64 %r396; .reg .u64 %r397; .reg .u64 %r398; .reg .u64 %r401; .reg .u64 %r405; .reg .u64 %r406; .reg .u64 %r407; .reg .u64 %r410; .reg .u64 %r411; .reg .u64 %r413; .reg .u64 %r415; .reg .u64 %r419; .reg .u64 %r420; .reg .u64 %r421; .reg .u64 %r423; .reg .u32 %r425; .reg .u64 %r428; .reg .u64 %r431; .reg .u32 %r434; .reg .u64 %r436; .reg .u64 %r437; .reg .u64 %r438; .reg .u64 %r440; .reg .u64 %r441; .reg .u64 %r443; .reg .u32 %r445; .reg .u64 %r446; .reg .u64 %r450; .reg .u32 %r454; .reg .u64 %r455; .reg .u32 %r464; .reg .u64 %r467; .reg .u32 %r471; .reg .u32 %r474; .reg .u32 %r477; .reg .u64 %r478; .reg .u32 %r479; .reg .u64 %r483; .reg .u32 %r486; .reg .u32 %r488; .reg .u64 %r494; .reg .f64 %r495; .reg .u32 %r496; .reg .u32 %r497; .reg .u64 %r498; .reg .u64 %r499; .reg .u64 %r500; .reg .u32 %r525; .reg .u32 %r526; .reg .pred %r527; .reg .u32 %r528; .reg .u32 %r529; .reg .u64 %r532; .reg .u64 %r536; .reg .u32 %r539; .reg .u32 %r541; .reg .u32 %r542; .reg .pred %r543; .reg .pred %r544; .reg .u16 %r545; .reg .u16 %r546; .reg .pred %r547; .reg .u32 %r550; .reg .pred %r551; .reg .u64 %r553; .reg .u32 %r555; .reg .u32 %r557; .reg .u16 %r558; .reg .pred %r559; .reg .u16 %r560; .reg .pred %r561; .reg .u16 %r562; .reg .u16 %r565; .reg .pred %r566; .reg .pred %r567; .reg .u16 %r568; .reg .pred %r569; .reg .pred %r570; .reg .pred %r571; .reg .u64 %r573; .reg .u32 %r575; .reg .u64 %r578; .reg .u32 %r580; .reg .u16 %r582; .reg .pred %r583; .reg .u64 %r585; .reg .u32 %r587; .reg .u32 %r592; .reg .pred %r593; .reg .pred %r594; .reg .u16 %r595; .reg .pred %r596; .reg .u16 %r597; .reg .u16 %r604; .reg .pred %r605; .reg .u16 %r606; .reg .u16 %r607; .reg .u32 %r608; .reg .pred %r609; .reg .u16 %r610; .reg .pred %r611; .reg .u32 %r612; .reg .u16 %r613; .reg .pred %r614; .reg .pred %r615; .reg .pred %r616; .reg .u32 %r617; .reg .u64 %r618; .reg .u16 %r620; .reg .pred %r621; .reg .u64 %r623; .reg .u64 %r624; .reg .u32 %r625; .reg .u32 %r627; .reg .u64 %r629; .reg .u64 %r630; .reg .u64 %r631; .reg .u64 %r632; .reg .u16 %r633; .reg .u16 %r634; .reg .u16 %r635; .reg .u16 %r636; .reg .pred %r637; .reg .u16 %r638; .reg .u16 %r639; .reg .pred %r640; .reg .u16 %r641; .reg .u16 %r642; .reg .pred %r643; .reg .u32 %r646; .reg .pred %r647; .reg .u32 %r650; .reg .pred %r651; .reg .u16 %r659; .reg .u16 %r660; .reg .pred %r662; .reg .u16 %r663; .reg .pred %r664; .reg .u16 %r665; .reg .u16 %r666; .reg .pred %r667; .reg .u16 %r668; .reg .u16 %r669; .reg .pred %r670; .reg .u16 %r671; .reg .pred %r672; .reg .pred %r673; .reg .u32 %r675; .reg .u32 %r677; .reg .u16 %r680; .reg .u16 %r681; .reg .pred %r682; .reg .pred %r685; .reg .pred %r686; .reg .u16 %r687; .reg .u16 %r688; .reg .pred %r689; .reg .u16 %r690; .reg .pred %r691; .reg .pred %r692; .reg .u16 %r693; .reg .pred %r694; .reg .u16 %r695; .reg .pred %r696; .reg .u16 %r697; .reg .u16 %r698; .reg .u16 %r699; .reg .u16 %r700; .reg .u16 %r701; .reg .u16 %r702; .reg .pred %r703; .reg .u16 %r705; .reg .u16 %r707; .reg .u16 %r708; .reg .pred %r711; .reg .pred %r713; .reg .pred %r714; .reg .u16 %r715; .reg .pred %r716; .reg .u16 %r717; .reg .u16 %r718; .reg .pred %r719; .reg .u16 %r720; .reg .u16 %r721; .reg .pred %r722; .reg .u16 %r723; .reg .u16 %r724; .reg .u16 %r725; .reg .pred %r726; .reg .u64 %r727; .reg .u64 %r728; .reg .u64 %r729; .reg .u64 %r730; .reg .u64 %r731; .reg .u32 %r733; .reg .pred %r736; .reg .u64 %r737; .reg .u64 %r738; .reg .u64 %r739; .reg .u64 %r740; .reg .u64 %r741; .reg .u32 %r743; .reg .pred %r746; .reg .u32 %r751; .reg .pred %r758; .reg .u16 %r759; .reg .u16 %r760; .reg .pred %r761; .reg .pred %r762; .reg .u16 %r763; .reg .pred %r764; .reg .u32 %r765; .reg .u16 %r766; .reg .pred %r768; .reg .u16 %r769; .reg .u16 %r770; .reg .u16 %r771; .reg .u16 %r772; .reg .u16 %r773; .reg .pred %r774; .reg .u16 %r775; .reg .pred %r776; .reg .u32 %r780; .reg .pred %r781; .reg .u32 %r794; .reg .u16 %r795; .reg .pred %r797; .reg .u32 %r802; .reg .pred %r803; .reg .u16 %r804; .reg .pred %r805; .reg .u16 %r806; .reg .pred %r807; .reg .u16 %r815; .reg .pred %r816; .reg .u16 %r821; .reg .u16 %r822; .reg .pred %r823; .reg .u16 %r824; .reg .pred %r825; .reg .u16 %r826; .reg .u64 %r831; .reg .u64 %r832; .reg .u64 %r833; .reg .u64 %r834; .reg .u64 %r835; .reg .u32 %r837; .reg .pred %r840; .reg .u16 %r843; .reg .pred %r844; .reg .u16 %r845; .reg .pred %r846; .reg .u16 %r851; .reg .pred %r852; .reg .pred %r854; .reg .u16 %r855; .reg .pred %r856; .reg .u16 %r857; .reg .pred %r858; .reg .u16 %r863; .reg .pred %r864; .reg .u16 %r865; .reg .pred %r866; .reg .u32 %r870; .reg .pred %r871; .reg .u32 %r885; .reg .u32 %r886; .reg .pred %r888; .reg .u32 %r894; .reg .pred %r895; .reg .u16 %r906; .reg .pred %r907; .reg .u16 %r908; .reg .u16 %r913; .reg .pred %r914; .reg .u16 %r915; .reg .pred %r921; .reg .u16 %r922; .reg .pred %r923; .reg .u16 %r924; .reg .u16 %r925; .reg .u16 %r926; .reg .u16 %r927; .reg .u16 %r928; .reg .u16 %r929; .reg .pred %r930; .reg .u16 %r932; .reg .u16 %r934; .reg .u16 %r935; .reg .pred %r938; .reg .u16 %r939; .reg .pred %r940; .reg .u16 %r941; .reg .u16 %r942; .reg .pred %r943; .reg .u16 %r944; .reg .u16 %r945; .reg .u16 %r946; .reg .u16 %r947; .reg .u16 %r948; .reg .u16 %r949; .reg .pred %r950; .reg .u16 %r952; .reg .u16 %r954; .reg .u16 %r955; .reg .pred %r958; .reg .u16 %r959; .reg .pred %r960; .reg .u16 %r961; .reg .u16 %r962; .reg .u16 %r963; .reg .u16 %r964; .reg .u16 %r965; .reg .u16 %r966; .reg .pred %r967; .reg .u16 %r969; .reg .u16 %r971; .reg .u16 %r972; .reg .pred %r975; .reg .u64 %r976; .reg .u64 %r977; .reg .u64 %r978; .reg .u64 %r979; .reg .u64 %r980; .reg .u32 %r982; .reg .pred %r985; .reg .pred %r991; .reg .u32 %r995; .reg .pred %r996; .reg .pred %r997; .reg .u32 %r998; .reg .pred %r999; .reg .pred %r1000; .reg .pred %r1001; .reg .u32 %r1002; .reg .u32 %r1003; .reg .pred %r1004; .reg .u32 %r1005; .reg .u32 %r1006; .reg .pred %r1007; .reg .u32 %r1008; .reg .pred %r1009; .reg .u16 %r1011; .reg .u16 %r1012; .reg .u32 %r1013; .reg .u32 %r1014; .reg .u16 %r1016; .reg .u16 %r1017; .reg .u32 %r1018; .reg .u32 %r1019; .reg .pred %r1020; .reg .u16 %r1021; .reg .pred %r1022; .reg .u16 %r1023; .reg .u16 %r1024; .reg .u16 %r1025; .reg .u16 %r1026; .reg .u16 %r1027; .reg .u16 %r1028; .reg .pred %r1029; .reg .u16 %r1031; .reg .u16 %r1033; .reg .u16 %r1034; .reg .pred %r1037; .reg .u16 %r1038; .reg .pred %r1039; .reg .u16 %r1040; .reg .u16 %r1041; .reg .pred %r1042; .reg .u16 %r1043; .reg .u16 %r1044; .reg .u16 %r1045; .reg .u16 %r1046; .reg .u16 %r1047; .reg .u16 %r1048; .reg .pred %r1049; .reg .u16 %r1051; .reg .u16 %r1053; .reg .u16 %r1054; .reg .pred %r1057; .reg .u16 %r1058; .reg .pred %r1059; .reg .u16 %r1060; .reg .u16 %r1061; .reg .u16 %r1062; .reg .u16 %r1063; .reg .u16 %r1064; .reg .u16 %r1065; .reg .pred %r1066; .reg .u16 %r1068; .reg .u16 %r1070; .reg .u16 %r1071; .reg .pred %r1074; .reg .u64 %r1075; .reg .u64 %r1076; .reg .u64 %r1077; .reg .u64 %r1078; .reg .u64 %r1079; .reg .u32 %r1081; .reg .pred %r1084; .reg .u64 %r1090; .reg .u16 %r1092; .reg .u16 %r1093; .reg .u32 %r1094; .reg .u32 %r1095; .reg .pred %r1096; .reg .u64 %r1097; .reg .u16 %r1098; .reg .pred %r1099; .reg .pred %r1100; .reg .u64 %r1106; .reg .u32 %r1108; .reg .pred %r1109; .reg .pred %r1110; .reg .u64 %r1111; .reg .u16 %r1112; .reg .u32 %r1113; .reg .u64 %r1116; .reg .u16 %r1118; .reg .u16 %r1119; .reg .u32 %r1120; .reg .u16 %r1121; .reg .u32 %r1122; .reg .pred %r1123; .reg .u16 %r1125; .reg .u16 %r1126; .reg .u32 %r1127; .reg .pred %r1128; .reg .u16 %r1129; .reg .pred %r1130; .reg .pred %r1131; .reg .u32 %r1132; .reg .pred %r1133; .reg .u32 %r1134; .reg .pred %r1135; .reg .u32 %r1136; .reg .u16 %r1138; .reg .u16 %r1139; .reg .u32 %r1140; .reg .u16 %r1141; .reg .pred %r1142; .reg .u64 %r1144; .reg .u32 %r1145; .reg .u16 %r1147; .reg .u16 %r1148; .reg .pred %r1149; .reg .u32 %r1152; .reg .pred %r1153; .reg .u32 %r1156; .reg .pred %r1157; .reg .u32 %r1158; .reg .u32 %r1159; .reg .pred %r1160; .reg .u16 %r1161; .reg .pred %r1162; .reg .u16 %r1163; .reg .pred %r1164; .reg .pred %r1165; .reg .u32 %r1166; .reg .pred %r1167; .reg .u16 %r1169; .reg .u32 %r1170; .reg .u32 %r1171; .reg .u32 %r1172; .reg .u32 %r1175; .reg .u32 %r1176; .reg .u16 %r1177; .reg .u16 %r1178; .reg .u16 %r1179; .reg .u32 %r1180; .reg .u16 %r1181; .reg .pred %r1182; .reg .pred %r1184; .reg .u32 %r1185; .reg .u16 %r1187; .reg .u32 %r1188; .reg .u32 %r1189; .reg .u32 %r1192; .reg .u32 %r1193; .reg .u16 %r1194; .reg .u16 %r1195; .reg .u16 %r1196; .reg .u32 %r1197; .reg .u16 %r1198; .reg .pred %r1199; .reg .u16 %r1201; .reg .u32 %r1202; .reg .u32 %r1203; .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 .u32 %r1214; .reg .pred %r1215; .reg .pred %r1216; .reg .u16 %r1217; .reg .pred %r1218; .reg .u32 %r1219; .reg .u16 %r1220; .reg .u32 %r1221; .reg .pred %r1222; .reg .u64 %r1224; .reg .pred %r1225; .reg .u64 %r1227; .reg .pred %r1228; .reg .pred %r1229; .reg .u32 %r1230; .reg .pred %r1231; .reg .u32 %r1232; .reg .u32 %r1233; .reg .u32 %r1234; .reg .pred %r1235; .reg .u64 %r1237; .reg .u64 %r1238; .reg .pred %r1239; .reg .u64 %r1242; .reg .u64 %r1246; .reg .pred %r1247; .reg .u64 %r1249; .reg .u64 %r1250; .reg .u32 %r1252; .reg .u16 %r1253; .reg .pred %r1254; .reg .u16 %r1255; .reg .pred %r1256; .reg .u16 %r1257; .reg .u32 %r1259; .reg .u64 %r1261; .reg .pred %r1262; .reg .u64 %r1263; .reg .u64 %r1264; .reg .u64 %r1265; .reg .u64 %r1266; .reg .u64 %r1267; .reg .u64 %r1268; .reg .u64 %r1269; .reg .u64 %r1275; .reg .u64 %r1277; .reg .u64 %r1278; .reg .u64 %r1279; .reg .u64 %r1280; .reg .u64 %r1281; .reg .u16 %r1282; .reg .u64 %r1283; .reg .u64 %r1284; .reg .u64 %r1285; .reg .u64 %r1286; .reg .u64 %r1287; .reg .u64 %r1288; .reg .u64 %r1289; .reg .u64 %r1290; .reg .u64 %r1291; .reg .u32 %r1308; .reg .u64 %r1309; .reg .u64 %r1310; .reg .u64 %r1311; .reg .u64 %r1312; .reg .u64 %r1313; .reg .u64 %r1314; .reg .u64 %r1315; .reg .u64 %r1316; .reg .u64 %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 .u16 %r1336; mov.u64 %r494,%ar0; mov.f64 %r495,%ar1; mov.u32 %r496,%ar2; mov.u32 %r497,%ar3; mov.u64 %r498,%ar4; mov.u64 %r499,%ar5; mov.u64 %r500,%ar6; .loc 1 2721 6 st.f64 [%frame+344],%r495; .loc 1 2724 11 mov.u32 %r525,-1; st.u32 [%frame],%r525; .loc 1 2725 12 mov.u32 %r526,144; st.u32 [%frame+4],%r526; .loc 1 2730 5 ld.u64 %r22,[%r494+96]; .loc 1 2730 4 setp.eq.u64 %r527,%r22,0; @ %r527 bra $L416; .loc 1 2732 33 ld.u32 %r24,[%r494+104]; .loc 1 2732 31 st.u32 [%r22+8],%r24; .loc 1 2733 40 mov.u32 %r529,1; shl.b32 %r528,%r529,%r24; .loc 1 2733 36 st.u32 [%r22+12],%r528; .loc 1 2734 5 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r494; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r22; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 2735 27 mov.u64 %r532,0; st.u64 [%r494+96],%r532; $L416: .loc 1 2741 1 add.u64 %r1286,%frame,294; add.u64 %r536,%frame,344; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r536; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1286; call e53toe$isra$9,(%out_arg1,%out_arg2); } .loc 1 2748 5 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1286; call (%value_in),eisneg,(%out_arg1); ld.param.u32 %r539,[%value_in]; } .loc 1 2748 3 set.u32.ne.u32 %r541,%r539,0; neg.s32 %r542,%r541; st.u32 [%r499],%r542; .loc 1 2753 3 setp.eq.u32 %r543,%r496,3; @ %r543 bra $L583; .loc 1 2758 3 setp.eq.u32 %r544,%r496,0; @ %r544 bra $L584; .loc 1 2754 17 add.u32 %r62,%r497,-1; bra $L417; $L583: mov.u32 %r62,%r497; $L417: min.s32 %r52,%r62,42; bra $L418; $L584: .loc 1 2759 17 mov.u32 %r52,20; $L418: .loc 1 2910 8 ld.u32 %r72,[%frame+4]; .loc 1 521 3 ld.u16 %r546,[%frame+312]; and.b16 %r545,%r546,32767; setp.ne.u16 %r547,%r545,32767; @ %r547 bra $L419; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1286; call (%value_in),eisnan$part$0,(%out_arg1); ld.param.u32 %r550,[%value_in]; } .loc 1 2912 3 setp.eq.u32 %r551,%r550,0; @ %r551 bra $L419; .loc 1 2914 2 add.u64 %r1268,%frame,80; cvta.const.u64 %r553,$LC0; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1268; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r553; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),sprintf,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r555,[%value_in]; } .loc 1 2915 8 mov.u32 %r29,9999; bra $L420; $L419: .loc 1 2919 13 mov.u32 %r557,144; st.u32 [%frame+4],%r557; mov.u64 %r437,%r1286; add.u64 %r1283,%frame,268; add.u64 %r431,%frame,314; mov.u64 %r436,%r1283; $L421: .loc 1 455 7 ld.u16 %r558,[%r437]; st.u16 [%r436],%r558; add.u64 %r437,%r437,2; add.u64 %r436,%r436,2; .loc 1 454 1 setp.ne.u64 %r559,%r431,%r437; @ %r559 bra $L421; .loc 1 2921 6 ld.u16 %r80,[%frame+286]; .loc 1 2921 3 cvt.u16.u32 %r560,%r80; setp.ge.s16 %r561,%r560,0; @ %r561 bra $L585; .loc 1 2924 10 and.b16 %r562,%r560,32767; cvt.u32.u16 %r80,%r562; st.u16 [%frame+286],%r562; .loc 1 2923 7 mov.u32 %r86,65535; bra $L422; $L585: .loc 1 2928 7 mov.u32 %r86,0; $L422: add.u64 %r1281,%frame,242; mov.u64 %r106,%r1281; add.u64 %r438,%frame,262; mov.u64 %r440,%r1281; mov.u32 %r454,0; cvta.const.u64 %r1264,eone; mov.u64 %r82,%r1264; $L424: .loc 1 455 11 add.u64 %r82,%r82,2; .loc 1 455 7 cvt.u16.u32 %r565,%r454; st.u16 [%r440],%r565; add.u64 %r440,%r440,2; .loc 1 454 1 setp.eq.u64 %r566,%r438,%r440; @ %r566 bra $L423; ld.u16 %r454,[%r82]; bra $L424; $L423: .loc 1 2934 3 setp.ne.u32 %r567,%r80,0; @ %r567 bra $L425; add.u64 %r441,%r1283,18; mov.u64 %r203,%r1283; $L427: .loc 1 2938 5 ld.u16 %r568,[%r203]; setp.ne.u16 %r569,%r568,0; @ %r569 bra $L426; add.u64 %r203,%r203,2; .loc 1 2936 2 setp.ne.u64 %r570,%r203,%r441; @ %r570 bra $L427; $L430: .loc 1 2930 7 mov.u32 %r29,0; add.u64 %r1268,%frame,80; add.u64 %r1275,%frame,190; add.u64 %r1277,%frame,214; bra $L428; $L579: .loc 1 2949 4 setp.eq.u32 %r571,%r86,0; @ %r571 bra $L429; .loc 1 2950 3 add.u64 %r1268,%frame,80; cvta.const.u64 %r573,$LC1; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1268; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r573; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),sprintf,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r575,[%value_in]; } .loc 1 2953 8 mov.u32 %r29,9999; bra $L420; $L429: .loc 1 2952 3 add.u64 %r1268,%frame,80; cvta.const.u64 %r578,$LC2; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1268; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r578; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),sprintf,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r580,[%value_in]; } .loc 1 2953 8 mov.u32 %r29,9999; bra $L420; $L687: .loc 1 2960 20 ld.u16 %r582,[%frame+284]; setp.lt.s16 %r583,%r582,0; @ %r583 bra $L426; .loc 1 2963 2 add.u64 %r1268,%frame,80; cvta.const.u64 %r585,$LC3; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1268; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r585; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),sprintf,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r587,[%value_in]; } .loc 1 2964 8 mov.u32 %r29,9999; bra $L420; $L426: .loc 1 2969 5 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1264; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1283; call (%value_in),ecmp,(%out_arg1,%out_arg2); ld.param.u32 %r592,[%value_in]; } .loc 1 2970 3 setp.eq.u32 %r593,%r592,0; @ %r593 bra $L430; .loc 1 2973 3 setp.ge.s32 %r594,%r592,0; @ %r594 bra $L431; add.u64 %r1278,%frame,216; mov.u64 %r78,%r1278; add.u64 %r405,%r1283,20; mov.u64 %r410,%r1278; mov.u64 %r411,%r1283; $L432: .loc 1 455 7 ld.u16 %r595,[%r411]; st.u16 [%r410],%r595; add.u64 %r411,%r411,2; add.u64 %r410,%r410,2; .loc 1 454 1 setp.ne.u64 %r596,%r405,%r411; @ %r596 bra $L432; .loc 1 2977 10 mov.u16 %r597,16526; st.u16 [%frame+234],%r597; .loc 1 2980 4 mov.u32 %r98,16; .loc 1 2930 7 mov.u32 %r29,0; .loc 1 2979 4 cvta.const.u64 %r92,etens+160; add.u64 %r1268,%frame,80; add.u64 %r1288,%frame,320; add.u64 %r1275,%frame,190; add.u64 %r1269,%r1281,18; add.u64 %r1289,%r92,100; add.u64 %r1314,%frame,338; .loc 1 1421 1 add.u64 %r1315,%frame,164; .loc 1 1422 1 add.u64 %r1316,%frame,138; add.u64 %r1317,%frame,140; add.u64 %r1318,%frame,166; add.u64 %r1319,%frame,162; add.u64 %r1320,%frame,210; add.u64 %r1321,%frame,188; add.u64 %r1322,%frame,104; add.u64 %r1323,%frame,340; mov.u64 %r1324,%r1320; $L478: .loc 1 2983 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r92; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1278; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1281; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%frame; call ediv,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); } mov.u64 %r292,%r1288; mov.u64 %r413,%r1288; mov.u64 %r415,%r1281; $L433: .loc 1 455 7 ld.u16 %r604,[%r415]; st.u16 [%r413],%r604; add.u64 %r415,%r415,2; add.u64 %r413,%r413,2; .loc 1 454 1 setp.ne.u64 %r605,%r415,%r438; @ %r605 bra $L433; .loc 1 3610 16 ld.u16 %r281,[%frame+338]; .loc 1 3611 12 cvt.u16.u32 %r607,%r281; and.b16 %r606,%r607,32767; cvt.u32.u16 %r608,%r606; .loc 1 3611 3 add.u32 %r284,%r608,-16382; .loc 1 3612 3 setp.gt.s32 %r609,%r284,0; @ %r609 bra $L434; mov.u64 %r294,%r1275; .loc 1 440 7 mov.u16 %r610,0; $L435: st.u16 [%r294],%r610; add.u64 %r294,%r294,2; .loc 1 439 1 setp.ne.u64 %r611,%r294,%r1324; @ %r611 bra $L435; bra $L436; $L434: .loc 1 3618 3 mov.u32 %r612,144; sub.u32 %r445,%r612,%r284; mov.u64 %r428,%r1275; mov.u64 %r419,%r1275; mov.u64 %r420,%r1288; $L437: .loc 1 455 7 ld.u16 %r613,[%r420]; st.u16 [%r419],%r613; add.u64 %r420,%r420,2; add.u64 %r419,%r419,2; .loc 1 454 1 setp.ne.u64 %r614,%r1323,%r420; @ %r614 bra $L437; .loc 1 3620 3 setp.le.s32 %r615,%r445,0; @ %r615 bra $L438; .loc 1 3624 6 setp.gt.s32 %r616,%r445,15; @ %r616 bra $L439; .loc 1 3623 3 mov.u64 %r446,%r1275; bra $L440; $L438: mov.u64 %r450,%r1275; .loc 1 3621 2 mov.u64 %r467,%r1281; bra $L441; $L439: add.u32 %r617,%r445,-16; shr.u32 %r425,%r617,4; cvt.u64.u32 %r423,%r425; add.u64 %r618,%r423,%r423; add.u64 %r1290,%r1275,2; add.u64 %r421,%r618,%r1290; .loc 1 3626 7 mov.u16 %r620,0; $L442: st.u16 [%r428],%r620; mov.u64 %r428,%r1290; .loc 1 3624 6 setp.ne.u64 %r621,%r421,%r1290; @ ! %r621 bra $L682; add.u64 %r1290,%r1290,2; bra $L442; $L682: add.u64 %r623,%r423,1; add.u64 %r624,%r623,%r623; add.u64 %r446,%r1275,%r624; mov.u32 %r625,128; sub.u32 %r464,%r625,%r284; shl.b32 %r627,%r425,4; sub.u32 %r445,%r464,%r627; $L440: .loc 1 3630 12 cvta.const.u64 %r629,bmask; cvt.s64.s32 %r630,%r445; add.u64 %r631,%r630,%r630; add.u64 %r632,%r629,%r631; .loc 1 3630 4 ld.u16 %r634,[%r446]; ld.u16 %r635,[%r632]; and.b16 %r633,%r634,%r635; st.u16 [%r446],%r633; $L436: .loc 1 3634 3 cvt.u16.u32 %r636,%r281; setp.ge.s16 %r637,%r636,0; @ %r637 bra $L438; mov.u64 %r363,%r1275; mov.u64 %r300,%r1275; $L475: .loc 1 3638 5 ld.u16 %r638,[%r292]; ld.u16 %r639,[%r300]; setp.eq.u16 %r640,%r638,%r639; @ %r640 bra $L443; .loc 1 521 3 ld.u16 %r642,[%frame+208]; and.b16 %r641,%r642,32767; setp.ne.u16 %r643,%r641,32767; @ %r643 bra $L444; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1275; call (%value_in),eisnan$part$0,(%out_arg1); ld.param.u32 %r646,[%value_in]; } .loc 1 1381 3 setp.ne.u32 %r647,%r646,0; @ %r647 bra $L438; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1275; call (%value_in),eisinf$part$1,(%out_arg1); ld.param.u32 %r650,[%value_in]; } .loc 1 1415 3 setp.ne.u32 %r651,%r650,0; @ %r651 bra $L438; $L444: .loc 1 1421 1 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1264; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1315; call emovi,(%out_arg1,%out_arg2); } .loc 1 1422 1 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1275; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1316; call emovi,(%out_arg1,%out_arg2); } .loc 1 1424 8 ld.u16 %r660,[%frame+164]; not.b16 %r659,%r660; cvt.u32.u16 %r373,%r659; st.u16 [%frame+164],%r659; .loc 1 1427 5 ld.u16 %r308,[%frame+166]; .loc 1 1428 5 ld.u16 %r310,[%frame+140]; .loc 1 1429 4 sub.u64 %r311,%r308,%r310; .loc 1 1430 3 setp.le.s64 %r662,%r311,0; @ %r662 bra $L446; mov.u64 %r37,%r1316; mov.u64 %r205,%r1268; mov.u64 %r381,%r1268; mov.u64 %r43,%r1316; $L447: .loc 1 696 7 ld.u16 %r663,[%r43]; st.u16 [%r381],%r663; add.u64 %r43,%r43,2; add.u64 %r381,%r381,2; .loc 1 695 1 setp.ne.u64 %r664,%r1319,%r43; @ %r664 bra $L447; .loc 1 698 4 mov.u16 %r665,0; st.u16 [%frame+104],%r665; mov.u64 %r313,%r1315; $L449: .loc 1 696 11 add.u64 %r313,%r313,2; .loc 1 696 7 cvt.u16.u32 %r666,%r373; st.u16 [%r37],%r666; add.u64 %r37,%r37,2; .loc 1 695 1 setp.eq.u64 %r667,%r1319,%r37; @ %r667 bra $L448; ld.u16 %r373,[%r313]; bra $L449; $L448: .loc 1 698 4 mov.u16 %r668,0; st.u16 [%frame+162],%r668; mov.u64 %r209,%r1315; $L450: .loc 1 696 7 ld.u16 %r669,[%r205]; st.u16 [%r209],%r669; add.u64 %r205,%r205,2; add.u64 %r209,%r209,2; .loc 1 695 1 setp.ne.u64 %r670,%r205,%r1322; @ %r670 bra $L450; .loc 1 698 4 mov.u16 %r671,0; st.u16 [%frame+188],%r671; .loc 1 1436 5 sub.u64 %r311,%r310,%r308; .loc 1 1435 6 ld.u16 %r310,[%frame+140]; $L446: .loc 1 1439 3 setp.eq.u64 %r672,%r311,0; @ %r672 bra $L451; .loc 1 1441 4 setp.ge.s64 %r673,%r311,-145; @ ! %r673 bra $L453; cvt.u32.u64 %r675,%r311; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1315; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r675; call (%value_in),eshift$part$4,(%out_arg1,%out_arg2); ld.param.u32 %r677,[%value_in]; } mov.u32 %r319,%r677; bra $L454; $L451: add.u64 %r455,%frame,168; add.u64 %r83,%frame,142; mov.u64 %r383,%r1315; .loc 1 1439 3 mov.u64 %r478,%r83; $L457: .loc 1 756 4 ld.u16 %r680,[%r455]; ld.u16 %r681,[%r478]; setp.eq.u16 %r682,%r680,%r681; @ %r682 bra $L455; .loc 1 762 3 setp.gt.u16 %r685,%r680,%r681; @ %r685 bra $L456; .loc 1 1438 6 mov.u32 %r319,0; bra $L454; $L455: add.u64 %r455,%r455,2; add.u64 %r478,%r478,2; .loc 1 754 1 setp.ne.u64 %r686,%r1275,%r455; @ %r686 bra $L457; .loc 1 1453 5 ld.u16 %r687,[%frame+164]; ld.u16 %r688,[%frame+138]; setp.eq.u16 %r689,%r687,%r688; @ %r689 bra $L458; .loc 1 440 7 mov.u16 %r690,0; $L459: st.u16 [%r363],%r690; add.u64 %r363,%r363,2; .loc 1 439 1 setp.ne.u64 %r691,%r1320,%r363; @ %r691 bra $L459; bra $L438; $L458: .loc 1 1460 10 ld.u16 %r331,[%frame+140]; .loc 1 1460 5 setp.ne.u32 %r692,%r331,0; @ %r692 bra $L468; .loc 1 1460 20 ld.u16 %r693,[%frame+144]; setp.lt.s16 %r694,%r693,0; @ %r694 bra $L468; .loc 1 804 3 add.u64 %r332,%frame,162; $L464: .loc 1 809 6 ld.u16 %r326,[%r332]; .loc 1 809 4 cvt.u16.u32 %r695,%r326; setp.ge.s16 %r696,%r695,0; @ %r696 bra $L461; .loc 1 810 8 cvt.u16.u32 %r698,%r331; or.b16 %r697,%r698,1; cvt.u32.u16 %r331,%r697; $L461: .loc 1 811 5 cvt.u16.u32 %r699,%r326; add.u16 %r700,%r699,%r699; .loc 1 812 4 cvt.u16.u32 %r702,%r331; and.b16 %r701,%r702,2; setp.ne.u16 %r703,%r701,0; @ %r703 bra $L462; .loc 1 811 5 st.u16 [%r332],%r700; bra $L463; $L462: .loc 1 813 6 or.b16 %r705,%r700,1; st.u16 [%r332],%r705; $L463: .loc 1 814 7 cvt.u16.u32 %r707,%r331; add.u16 %r708,%r707,%r707; cvt.u32.u16 %r331,%r708; .loc 1 815 2 add.u64 %r332,%r332,-2; .loc 1 807 1 setp.ne.u64 %r711,%r332,%r1317; @ %r711 bra $L464; bra $L453; $L468: .loc 1 1468 6 setp.eq.u32 %r713,%r331,0; @ %r713 bra $L466; .loc 1 1471 9 add.u64 %r310,%r310,1; bra $L467; $L466: .loc 1 1466 3 setp.eq.u64 %r714,%r1319,%r83; @ %r714 bra $L467; ld.u16 %r331,[%r83]; add.u64 %r83,%r83,2; bra $L468; $L467: .loc 1 1475 11 st.u16 [%frame+140],%r310; bra $L453; $L456: mov.u64 %r376,%r1316; mov.u64 %r443,%r1268; .loc 1 762 3 mov.u64 %r369,%r1268; mov.u64 %r370,%r1316; $L469: .loc 1 696 7 ld.u16 %r715,[%r370]; st.u16 [%r369],%r715; add.u64 %r370,%r370,2; add.u64 %r369,%r369,2; .loc 1 695 1 setp.ne.u64 %r716,%r1319,%r370; @ %r716 bra $L469; .loc 1 698 4 mov.u16 %r717,0; st.u16 [%frame+104],%r717; mov.u64 %r378,%r1315; $L470: .loc 1 696 7 ld.u16 %r718,[%r378]; st.u16 [%r376],%r718; add.u64 %r378,%r378,2; add.u64 %r376,%r376,2; .loc 1 695 1 setp.ne.u64 %r719,%r1321,%r378; @ %r719 bra $L470; .loc 1 698 4 mov.u16 %r720,0; st.u16 [%frame+162],%r720; $L471: .loc 1 696 7 ld.u16 %r721,[%r443]; st.u16 [%r383],%r721; add.u64 %r443,%r443,2; add.u64 %r383,%r383,2; .loc 1 695 1 setp.ne.u64 %r722,%r1322,%r443; @ %r722 bra $L471; .loc 1 698 4 mov.u16 %r723,0; st.u16 [%frame+188],%r723; .loc 1 1438 6 mov.u32 %r319,0; $L454: .loc 1 1485 3 ld.u16 %r724,[%frame+164]; ld.u16 %r725,[%frame+138]; setp.ne.u16 %r726,%r724,%r725; @ %r726 bra $L586; .loc 1 913 7 mov.u32 %r486,0; .loc 1 912 3 mov.u64 %r350,%r1319; .loc 1 911 3 add.u64 %r349,%frame,188; $L473: .loc 1 916 6 ld.u16 %r727,[%r349]; .loc 1 916 29 ld.u16 %r728,[%r350]; .loc 1 916 27 add.u64 %r729,%r727,%r728; .loc 1 916 50 cvt.u64.u32 %r730,%r486; .loc 1 916 4 add.u64 %r346,%r729,%r730; .loc 1 921 7 st.u16 [%r350],%r346; .loc 1 922 2 add.u64 %r349,%r349,-2; .loc 1 923 2 add.u64 %r350,%r350,-2; .loc 1 917 4 shr.u64 %r731,%r346,16; cvt.u32.u64 %r733,%r731; and.b32 %r486,%r733,1; .loc 1 914 1 setp.ne.u64 %r736,%r349,%r1318; @ %r736 bra $L473; .loc 1 1488 9 mov.u32 %r361,0; bra $L474; $L586: .loc 1 940 7 mov.u32 %r474,0; .loc 1 938 3 add.u64 %r359,%frame,188; .loc 1 939 3 mov.u64 %r360,%r1319; $L472: .loc 1 943 6 ld.u16 %r737,[%r360]; .loc 1 943 50 cvt.u64.u32 %r738,%r474; .loc 1 943 4 sub.u64 %r739,%r737,%r738; .loc 1 943 29 ld.u16 %r740,[%r359]; .loc 1 943 4 sub.u64 %r356,%r739,%r740; .loc 1 948 7 st.u16 [%r360],%r356; .loc 1 949 2 add.u64 %r359,%r359,-2; .loc 1 950 2 add.u64 %r360,%r360,-2; .loc 1 944 4 shr.u64 %r741,%r356,16; cvt.u32.u64 %r743,%r741; and.b32 %r474,%r743,1; .loc 1 941 1 setp.ne.u64 %r746,%r360,%r1317; @ %r746 bra $L472; .loc 1 1493 9 mov.u32 %r361,1; $L474: .loc 1 1495 1 mov.u32 %r751,64; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1316; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r319; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r361; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r310; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r751; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%frame; call emdnorm,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); } $L453: .loc 1 1498 1 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1316; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1275; call emovo$isra$7,(%out_arg1,%out_arg2); } bra $L438; $L443: add.u64 %r292,%r292,2; add.u64 %r300,%r300,2; .loc 1 3636 2 setp.ne.u64 %r758,%r292,%r1314; @ %r758 bra $L475; bra $L438; $L441: .loc 1 2987 5 ld.u16 %r759,[%r467]; ld.u16 %r760,[%r450]; setp.ne.u16 %r761,%r759,%r760; @ %r761 bra $L476; add.u64 %r467,%r467,2; add.u64 %r450,%r450,2; .loc 1 2985 2 setp.ne.u64 %r762,%r1269,%r467; @ %r762 bra $L441; mov.u64 %r372,%r1278; mov.u64 %r50,%r1281; $L477: .loc 1 455 7 ld.u16 %r763,[%r50]; st.u16 [%r372],%r763; add.u64 %r50,%r50,2; add.u64 %r372,%r372,2; .loc 1 454 1 setp.ne.u64 %r764,%r50,%r438; @ %r764 bra $L477; .loc 1 2991 8 add.u32 %r29,%r29,%r98; $L476: .loc 1 2993 4 add.u64 %r92,%r92,20; .loc 1 2994 4 shr.u32 %r765,%r98,1; cvt.u16.u32 %r766,%r765; cvt.u32.u16 %r98,%r766; .loc 1 2996 1 setp.ne.u64 %r768,%r92,%r1289; @ %r768 bra $L478; .loc 1 2999 10 ld.u16 %r770,[%frame+234]; ld.u16 %r771,[%frame+286]; add.u16 %r769,%r770,%r771; add.u16 %r772,%r769,-16526; st.u16 [%frame+234],%r772; add.u64 %r54,%r1278,20; mov.u64 %r70,%r1283; $L479: .loc 1 455 7 ld.u16 %r773,[%r78]; st.u16 [%r70],%r773; add.u64 %r78,%r78,2; add.u64 %r70,%r70,2; .loc 1 454 1 setp.ne.u64 %r774,%r54,%r78; @ %r774 bra $L479; mov.u64 %r90,%r1281; mov.u32 %r377,0; cvta.const.u64 %r107,eone; $L481: .loc 1 455 11 add.u64 %r107,%r107,2; .loc 1 455 7 cvt.u16.u32 %r775,%r377; st.u16 [%r90],%r775; add.u64 %r90,%r90,2; .loc 1 454 1 setp.eq.u64 %r776,%r90,%r438; @ %r776 bra $L587; ld.u16 %r377,[%r107]; bra $L481; $L483: .loc 1 3007 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r110; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1278; call (%value_in),ecmp,(%out_arg1,%out_arg2); ld.param.u32 %r780,[%value_in]; } .loc 1 3007 5 setp.gt.s32 %r781,%r780,0; @ %r781 bra $L482; .loc 1 3009 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r110; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1278; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1278; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%frame; call ediv,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); } .loc 1 3010 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r110; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1281; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1281; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%frame; call emul,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); } .loc 1 3011 10 add.u32 %r29,%r29,%r112; $L482: .loc 1 3013 5 shr.u32 %r794,%r112,1; cvt.u16.u32 %r795,%r794; cvt.u32.u16 %r112,%r795; .loc 1 3014 5 setp.eq.u64 %r797,%r110,%r1287; @ ! %r797 bra $L683; add.u64 %r1277,%frame,214; bra $L428; $L683: .loc 1 3016 5 add.u64 %r110,%r110,20; bra $L480; $L587: .loc 1 3003 4 mov.u32 %r112,4096; .loc 1 3004 4 cvta.const.u64 %r110,etens; add.u64 %r1287,%r110,240; $L480: .loc 1 3005 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1287; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1278; call (%value_in),ecmp,(%out_arg1,%out_arg2); ld.param.u32 %r802,[%value_in]; } .loc 1 3005 7 setp.le.s32 %r803,%r802,0; @ %r803 bra $L483; add.u64 %r1277,%frame,214; bra $L428; $L431: .loc 1 3022 4 ld.u16 %r804,[%frame+286]; setp.ne.u16 %r805,%r804,0; @ %r805 bra $L484; .loc 1 3024 8 ld.u16 %r806,[%frame+284]; setp.lt.s16 %r807,%r806,0; @ %r807 bra $L588; .loc 1 2930 7 mov.u32 %r29,0; cvta.const.u64 %r1287,etens+240; $L486: .loc 1 3026 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1287; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1283; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1283; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%frame; call emul,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); } .loc 1 3027 10 add.u32 %r29,%r29,-1; .loc 1 3024 8 ld.u16 %r815,[%frame+284]; setp.ge.s16 %r816,%r815,0; @ %r816 bra $L486; add.u64 %r1275,%frame,190; add.u64 %r1277,%frame,214; bra $L485; $L484: .loc 1 3032 3 add.u64 %r1275,%frame,190; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1283; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1275; call emovi,(%out_arg1,%out_arg2); } .loc 1 2930 7 mov.u32 %r29,0; add.u64 %r1277,%frame,214; add.u64 %r1325,%frame,216; add.u64 %r1326,%frame,192; add.u64 %r1327,%frame,240; $L494: .loc 1 3035 6 ld.u16 %r822,[%frame+214]; and.b16 %r821,%r822,7; setp.ne.u16 %r823,%r821,0; @ %r823 bra $L487; mov.u64 %r391,%r1275; mov.u64 %r392,%r1325; mov.u64 %r27,%r1325; mov.u64 %r387,%r1275; $L488: .loc 1 696 7 ld.u16 %r824,[%r387]; st.u16 [%r27],%r824; add.u64 %r387,%r387,2; add.u64 %r27,%r27,2; .loc 1 695 1 setp.ne.u64 %r825,%r1277,%r387; @ %r825 bra $L488; .loc 1 698 4 mov.u16 %r826,0; st.u16 [%frame+240],%r826; .loc 1 3039 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1325; call eshdn1,(%out_arg1); } .loc 1 3040 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1325; call eshdn1,(%out_arg1); } .loc 1 913 7 mov.u32 %r434,0; .loc 1 912 3 add.u64 %r133,%frame,240; .loc 1 911 3 mov.u64 %r132,%r1277; $L489: .loc 1 916 6 ld.u16 %r831,[%r132]; .loc 1 916 29 ld.u16 %r832,[%r133]; .loc 1 916 27 add.u64 %r833,%r831,%r832; .loc 1 916 50 cvt.u64.u32 %r834,%r434; .loc 1 916 4 add.u64 %r129,%r833,%r834; .loc 1 921 7 st.u16 [%r133],%r129; .loc 1 922 2 add.u64 %r132,%r132,-2; .loc 1 923 2 add.u64 %r133,%r133,-2; .loc 1 917 4 shr.u64 %r835,%r129,16; cvt.u32.u64 %r837,%r835; and.b32 %r434,%r837,1; .loc 1 914 1 setp.ne.u64 %r840,%r132,%r1326; @ %r840 bra $L489; .loc 1 3042 9 ld.u16 %r1282,[%frame+218]; add.u16 %r1282,%r1282,3; st.u16 [%frame+218],%r1282; .loc 1 3043 9 ld.u16 %r843,[%frame+220]; setp.ne.u16 %r844,%r843,0; @ %r844 bra $L490; $L492: .loc 1 3048 6 ld.u16 %r845,[%frame+240]; setp.ne.u16 %r846,%r845,0; @ ! %r846 bra $L684; bra $L487; $L490: .loc 1 3045 5 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1325; call eshdn1,(%out_arg1); } .loc 1 3046 10 ld.u16 %r1282,[%frame+218]; add.u16 %r1282,%r1282,1; st.u16 [%frame+218],%r1282; .loc 1 3043 9 ld.u16 %r851,[%frame+220]; setp.ne.u16 %r852,%r851,0; @ %r852 bra $L490; bra $L492; $L684: .loc 1 3050 6 setp.gt.u16 %r854,%r1282,16382; @ %r854 bra $L487; $L493: .loc 1 696 7 ld.u16 %r855,[%r392]; st.u16 [%r391],%r855; add.u64 %r392,%r392,2; add.u64 %r391,%r391,2; .loc 1 695 1 setp.ne.u64 %r856,%r1327,%r392; @ %r856 bra $L493; .loc 1 698 4 mov.u16 %r857,0; st.u16 [%frame+214],%r857; .loc 1 3053 10 add.u32 %r29,%r29,-1; .loc 1 3033 3 setp.ne.u32 %r858,%r29,-43; @ %r858 bra $L494; $L487: .loc 1 3055 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1275; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1283; call emovo$isra$7,(%out_arg1,%out_arg2); } bra $L485; $L588: .loc 1 2930 7 mov.u32 %r29,0; add.u64 %r1275,%frame,190; add.u64 %r1277,%frame,214; $L485: mov.u64 %r396,%r1275; add.u64 %r393,%r1283,20; mov.u64 %r397,%r1283; $L495: .loc 1 455 7 ld.u16 %r863,[%r397]; st.u16 [%r396],%r863; add.u64 %r397,%r397,2; add.u64 %r396,%r396,2; .loc 1 454 1 setp.ne.u64 %r864,%r393,%r397; @ %r864 bra $L495; mov.u64 %r398,%r1281; mov.u32 %r365,0; cvta.const.u64 %r148,eone; $L497: .loc 1 455 11 add.u64 %r148,%r148,2; .loc 1 455 7 cvt.u16.u32 %r865,%r365; st.u16 [%r398],%r865; add.u64 %r398,%r398,2; .loc 1 454 1 setp.eq.u64 %r866,%r398,%r438; @ %r866 bra $L589; ld.u16 %r365,[%r148]; bra $L497; $L500: .loc 1 3064 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r401; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1275; call (%value_in),ecmp,(%out_arg1,%out_arg2); ld.param.u32 %r870,[%value_in]; } .loc 1 3064 5 setp.lt.s32 %r871,%r870,0; @ %r871 bra $L498; .loc 1 3066 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r407; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1275; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1275; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%frame; call emul,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); } .loc 1 3067 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r407; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1281; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1281; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%frame; call emul,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); } .loc 1 3068 10 add.u32 %r29,%r29,%r152; $L498: .loc 1 3070 5 shr.u32 %r885,%r152,31; add.u32 %r886,%r885,%r152; shr.s32 %r152,%r886,1; add.u64 %r406,%r406,20; .loc 1 3071 5 setp.eq.u64 %r888,%r406,260; @ ! %r888 bra $L496; bra $L499; $L589: .loc 1 454 1 mov.u64 %r406,0; .loc 1 3057 4 mov.u32 %r152,-4096; cvta.const.u64 %r1266,etens; cvta.const.u64 %r1263,emtens; $L496: add.u64 %r401,%r1263,%r406; add.u64 %r407,%r1266,%r406; .loc 1 3062 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1264; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1275; call (%value_in),ecmp,(%out_arg1,%out_arg2); ld.param.u32 %r894,[%value_in]; } .loc 1 3062 7 setp.gt.s32 %r895,%r894,0; @ %r895 bra $L500; $L499: .loc 1 3076 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1281; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1264; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1281; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%frame; call ediv,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); } add.u64 %r1268,%frame,80; $L428: .loc 1 3080 1 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1281; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1275; call emovi,(%out_arg1,%out_arg2); } mov.u64 %r143,%r1275; mov.u64 %r109,%r1275; $L501: .loc 1 696 7 ld.u16 %r906,[%r109]; st.u16 [%r106],%r906; add.u64 %r109,%r109,2; add.u64 %r106,%r106,2; .loc 1 695 1 setp.ne.u64 %r907,%r1277,%r109; @ %r907 bra $L501; .loc 1 698 4 mov.u16 %r908,0; st.u16 [%frame+266],%r908; .loc 1 3082 1 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1283; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1275; call emovi,(%out_arg1,%out_arg2); } mov.u64 %r134,%r1283; $L502: .loc 1 696 7 ld.u16 %r913,[%r143]; st.u16 [%r134],%r913; add.u64 %r143,%r143,2; add.u64 %r134,%r134,2; .loc 1 695 1 setp.ne.u64 %r914,%r1277,%r143; @ %r914 bra $L502; .loc 1 698 4 mov.u16 %r915,0; st.u16 [%frame+292],%r915; .loc 1 3084 1 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1281; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1283; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call eiremain,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 3085 7 ld.u16 %r158,[%frame+76]; .loc 1 3086 6 setp.eq.u64 %r921,%r158,0; @ ! %r921 bra $L504; cvta.const.u64 %r1265,ezero; .loc 1 804 3 add.u64 %r1309,%frame,292; add.u64 %r1310,%frame,270; add.u64 %r1311,%r1283,24; add.u64 %r1312,%frame,240; add.u64 %r1313,%frame,218; bra $L503; $L591: .loc 1 805 6 mov.u32 %r165,0; .loc 1 804 3 mov.u64 %r166,%r1309; $L508: .loc 1 809 6 ld.u16 %r159,[%r166]; .loc 1 809 4 cvt.u16.u32 %r922,%r159; setp.ge.s16 %r923,%r922,0; @ %r923 bra $L505; .loc 1 810 8 cvt.u16.u32 %r925,%r165; or.b16 %r924,%r925,1; cvt.u32.u16 %r165,%r924; $L505: .loc 1 811 5 cvt.u16.u32 %r926,%r159; add.u16 %r927,%r926,%r926; .loc 1 812 4 cvt.u16.u32 %r929,%r165; and.b16 %r928,%r929,2; setp.ne.u16 %r930,%r928,0; @ %r930 bra $L506; .loc 1 811 5 st.u16 [%r166],%r927; bra $L507; $L506: .loc 1 813 6 or.b16 %r932,%r927,1; st.u16 [%r166],%r932; $L507: .loc 1 814 7 cvt.u16.u32 %r934,%r165; add.u16 %r935,%r934,%r934; cvt.u32.u16 %r165,%r935; .loc 1 815 2 add.u64 %r166,%r166,-2; .loc 1 807 1 setp.ne.u64 %r938,%r166,%r1310; @ %r938 bra $L508; add.u64 %r150,%frame,216; mov.u64 %r155,%r1283; $L509: .loc 1 696 7 ld.u16 %r939,[%r155]; st.u16 [%r150],%r939; add.u64 %r155,%r155,2; add.u64 %r150,%r150,2; .loc 1 695 1 setp.ne.u64 %r940,%r1311,%r155; @ %r940 bra $L509; .loc 1 698 4 mov.u16 %r941,0; st.u16 [%frame+240],%r941; .loc 1 805 6 mov.u32 %r176,0; .loc 1 804 3 mov.u64 %r177,%r1312; $L513: .loc 1 809 6 ld.u16 %r171,[%r177]; .loc 1 809 4 cvt.u16.u32 %r942,%r171; setp.ge.s16 %r943,%r942,0; @ %r943 bra $L510; .loc 1 810 8 cvt.u16.u32 %r945,%r176; or.b16 %r944,%r945,1; cvt.u32.u16 %r176,%r944; $L510: .loc 1 811 5 cvt.u16.u32 %r946,%r171; add.u16 %r947,%r946,%r946; .loc 1 812 4 cvt.u16.u32 %r949,%r176; and.b16 %r948,%r949,2; setp.ne.u16 %r950,%r948,0; @ %r950 bra $L511; .loc 1 811 5 st.u16 [%r177],%r947; bra $L512; $L511: .loc 1 813 6 or.b16 %r952,%r947,1; st.u16 [%r177],%r952; $L512: .loc 1 814 7 cvt.u16.u32 %r954,%r176; add.u16 %r955,%r954,%r954; cvt.u32.u16 %r176,%r955; .loc 1 815 2 add.u64 %r177,%r177,-2; .loc 1 807 1 setp.ne.u64 %r958,%r177,%r1313; @ %r958 bra $L513; .loc 1 805 6 mov.u32 %r185,0; .loc 1 804 3 mov.u64 %r186,%r1312; $L517: .loc 1 809 6 ld.u16 %r180,[%r186]; .loc 1 809 4 cvt.u16.u32 %r959,%r180; setp.ge.s16 %r960,%r959,0; @ %r960 bra $L514; .loc 1 810 8 cvt.u16.u32 %r962,%r185; or.b16 %r961,%r962,1; cvt.u32.u16 %r185,%r961; $L514: .loc 1 811 5 cvt.u16.u32 %r963,%r180; add.u16 %r964,%r963,%r963; .loc 1 812 4 cvt.u16.u32 %r966,%r185; and.b16 %r965,%r966,2; setp.ne.u16 %r967,%r965,0; @ %r967 bra $L515; .loc 1 811 5 st.u16 [%r186],%r964; bra $L516; $L515: .loc 1 813 6 or.b16 %r969,%r964,1; st.u16 [%r186],%r969; $L516: .loc 1 814 7 cvt.u16.u32 %r971,%r185; add.u16 %r972,%r971,%r971; cvt.u32.u16 %r185,%r972; .loc 1 815 2 add.u64 %r186,%r186,-2; .loc 1 807 1 setp.ne.u64 %r975,%r186,%r1313; @ %r975 bra $L517; .loc 1 913 7 mov.u32 %r221,0; .loc 1 912 3 mov.u64 %r199,%r1309; .loc 1 911 3 mov.u64 %r198,%r1312; $L518: .loc 1 916 6 ld.u16 %r976,[%r198]; .loc 1 916 29 ld.u16 %r977,[%r199]; .loc 1 916 27 add.u64 %r978,%r976,%r977; .loc 1 916 50 cvt.u64.u32 %r979,%r221; .loc 1 916 4 add.u64 %r195,%r978,%r979; .loc 1 921 7 st.u16 [%r199],%r195; .loc 1 922 2 add.u64 %r198,%r198,-2; .loc 1 923 2 add.u64 %r199,%r199,-2; .loc 1 917 4 shr.u64 %r980,%r195,16; cvt.u32.u64 %r982,%r980; and.b32 %r221,%r982,1; .loc 1 914 1 setp.ne.u64 %r985,%r198,%r1313; @ %r985 bra $L518; .loc 1 3093 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1281; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1283; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call eiremain,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 3094 8 ld.u16 %r201,[%frame+76]; .loc 1 3095 8 add.u32 %r29,%r29,-1; .loc 1 3086 6 setp.ne.u64 %r991,%r201,0; @ %r991 bra $L590; $L503: .loc 1 3086 25 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1283; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1265; call (%value_in),ecmp,(%out_arg1,%out_arg2); ld.param.u32 %r995,[%value_in]; } .loc 1 3086 21 setp.ne.u32 %r996,%r995,0; @ %r996 bra $L591; bra $L504; $L590: .loc 1 3086 6 mov.u64 %r158,%r201; $L504: .loc 1 3098 3 setp.ne.u32 %r997,%r86,0; .loc 1 3101 7 selp.u32 %r245,45,32,%r997; cvt.u32.u32 %r998,%r245; st.u8 [%frame+80],%r998; .loc 1 3103 3 setp.ne.u32 %r999,%r496,3; @ %r999 bra $L593; .loc 1 3104 15 add.u32 %r53,%r52,%r29; .loc 1 3109 3 setp.le.s32 %r1000,%r53,42; @ %r1000 bra $L520; .loc 1 3111 3 setp.ne.u64 %r1001,%r158,10; @ %r1001 bra $L521; .loc 1 3113 7 mov.u32 %r1002,49; st.u8 [%frame+81],%r1002; .loc 1 3114 7 mov.u32 %r1003,46; st.u8 [%frame+82],%r1003; add.u32 %r29,%r29,1; mov.u32 %r53,41; bra $L522; $L593: .loc 1 3103 3 mov.u32 %r53,%r52; $L520: .loc 1 3111 3 setp.ne.u64 %r1004,%r158,10; @ %r1004 bra $L523; .loc 1 3113 7 mov.u32 %r1005,49; st.u8 [%frame+81],%r1005; .loc 1 3114 7 mov.u32 %r1006,46; st.u8 [%frame+82],%r1006; add.u32 %r29,%r29,1; .loc 1 3115 4 setp.le.s32 %r1007,%r53,0; @ %r1007 bra $L524; add.u32 %r53,%r53,-1; $L522: .loc 1 3117 8 mov.u32 %r1008,48; st.u8 [%frame+83],%r1008; .loc 1 3117 5 add.u64 %r58,%frame,84; bra $L527; $L524: .loc 1 3121 4 setp.ne.u32 %r1009,%r53,0; @ %r1009 bra $L594; .loc 1 3114 4 add.u64 %r58,%frame,83; bra $L527; $L521: .loc 1 3129 22 cvt.u16.u64 %r1012,%r158; add.u16 %r1011,%r1012,48; .loc 1 3129 7 cvt.u32.u16 %r1013,%r1011; st.u8 [%frame+81],%r1013; .loc 1 3130 7 mov.u32 %r1014,46; st.u8 [%frame+82],%r1014; .loc 1 3110 8 mov.u32 %r53,42; .loc 1 3130 4 add.u64 %r58,%frame,83; bra $L527; $L523: .loc 1 3129 22 cvt.u16.u64 %r1017,%r158; add.u16 %r1016,%r1017,48; .loc 1 3129 7 cvt.u32.u16 %r1018,%r1016; st.u8 [%frame+81],%r1018; .loc 1 3130 7 mov.u32 %r1019,46; st.u8 [%frame+82],%r1019; .loc 1 3133 1 setp.lt.s32 %r1020,%r53,0; @ %r1020 bra $L528; .loc 1 3130 4 add.u64 %r58,%frame,83; $L527: mov.u64 %r168,0; add.u64 %r1278,%frame,216; add.u64 %r1280,%frame,240; add.u64 %r1285,%frame,292; add.u64 %r1284,%frame,270; add.u64 %r1291,%r1283,24; add.u64 %r1279,%frame,218; .loc 1 805 6 cvt.u32.u64 %r1308,%r168; $L543: mov.u32 %r217,%r1308; .loc 1 804 3 mov.u64 %r218,%r1285; $L532: .loc 1 809 6 ld.u16 %r211,[%r218]; .loc 1 809 4 cvt.u16.u32 %r1021,%r211; setp.ge.s16 %r1022,%r1021,0; @ %r1022 bra $L529; .loc 1 810 8 cvt.u16.u32 %r1024,%r217; or.b16 %r1023,%r1024,1; cvt.u32.u16 %r217,%r1023; $L529: .loc 1 811 5 cvt.u16.u32 %r1025,%r211; add.u16 %r1026,%r1025,%r1025; .loc 1 812 4 cvt.u16.u32 %r1028,%r217; and.b16 %r1027,%r1028,2; setp.ne.u16 %r1029,%r1027,0; @ %r1029 bra $L530; .loc 1 811 5 st.u16 [%r218],%r1026; bra $L531; $L530: .loc 1 813 6 or.b16 %r1031,%r1026,1; st.u16 [%r218],%r1031; $L531: .loc 1 814 7 cvt.u16.u32 %r1033,%r217; add.u16 %r1034,%r1033,%r1033; cvt.u32.u16 %r217,%r1034; .loc 1 815 2 add.u64 %r218,%r218,-2; .loc 1 807 1 setp.ne.u64 %r1037,%r218,%r1284; @ %r1037 bra $L532; mov.u64 %r187,%r1278; mov.u64 %r193,%r1283; $L533: .loc 1 696 7 ld.u16 %r1038,[%r193]; st.u16 [%r187],%r1038; add.u64 %r193,%r193,2; add.u64 %r187,%r187,2; .loc 1 695 1 setp.ne.u64 %r1039,%r1291,%r193; @ %r1039 bra $L533; .loc 1 698 4 mov.u16 %r1040,0; st.u16 [%frame+240],%r1040; .loc 1 805 6 mov.u32 %r229,%r1308; .loc 1 804 3 mov.u64 %r230,%r1280; $L537: .loc 1 809 6 ld.u16 %r223,[%r230]; .loc 1 809 4 cvt.u16.u32 %r1041,%r223; setp.ge.s16 %r1042,%r1041,0; @ %r1042 bra $L534; .loc 1 810 8 cvt.u16.u32 %r1044,%r229; or.b16 %r1043,%r1044,1; cvt.u32.u16 %r229,%r1043; $L534: .loc 1 811 5 cvt.u16.u32 %r1045,%r223; add.u16 %r1046,%r1045,%r1045; .loc 1 812 4 cvt.u16.u32 %r1048,%r229; and.b16 %r1047,%r1048,2; setp.ne.u16 %r1049,%r1047,0; @ %r1049 bra $L535; .loc 1 811 5 st.u16 [%r230],%r1046; bra $L536; $L535: .loc 1 813 6 or.b16 %r1051,%r1046,1; st.u16 [%r230],%r1051; $L536: .loc 1 814 7 cvt.u16.u32 %r1053,%r229; add.u16 %r1054,%r1053,%r1053; cvt.u32.u16 %r229,%r1054; .loc 1 815 2 add.u64 %r230,%r230,-2; .loc 1 807 1 setp.ne.u64 %r1057,%r230,%r1279; @ %r1057 bra $L537; .loc 1 805 6 mov.u32 %r238,%r1308; .loc 1 804 3 mov.u64 %r239,%r1280; $L541: .loc 1 809 6 ld.u16 %r232,[%r239]; .loc 1 809 4 cvt.u16.u32 %r1058,%r232; setp.ge.s16 %r1059,%r1058,0; @ %r1059 bra $L538; .loc 1 810 8 cvt.u16.u32 %r1061,%r238; or.b16 %r1060,%r1061,1; cvt.u32.u16 %r238,%r1060; $L538: .loc 1 811 5 cvt.u16.u32 %r1062,%r232; add.u16 %r1063,%r1062,%r1062; .loc 1 812 4 cvt.u16.u32 %r1065,%r238; and.b16 %r1064,%r1065,2; setp.ne.u16 %r1066,%r1064,0; @ %r1066 bra $L539; .loc 1 811 5 st.u16 [%r239],%r1063; bra $L540; $L539: .loc 1 813 6 or.b16 %r1068,%r1063,1; st.u16 [%r239],%r1068; $L540: .loc 1 814 7 cvt.u16.u32 %r1070,%r238; add.u16 %r1071,%r1070,%r1070; cvt.u32.u16 %r238,%r1071; .loc 1 815 2 add.u64 %r239,%r239,-2; .loc 1 807 1 setp.ne.u64 %r1074,%r239,%r1279; @ %r1074 bra $L541; .loc 1 913 7 mov.u32 %r471,%r1308; .loc 1 912 3 mov.u64 %r251,%r1285; .loc 1 911 3 mov.u64 %r250,%r1280; $L542: .loc 1 916 6 ld.u16 %r1075,[%r250]; .loc 1 916 29 ld.u16 %r1076,[%r251]; .loc 1 916 27 add.u64 %r1077,%r1075,%r1076; .loc 1 916 50 cvt.u64.u32 %r1078,%r471; .loc 1 916 4 add.u64 %r247,%r1077,%r1078; .loc 1 921 7 st.u16 [%r251],%r247; .loc 1 922 2 add.u64 %r250,%r250,-2; .loc 1 923 2 add.u64 %r251,%r251,-2; .loc 1 917 4 shr.u64 %r1079,%r247,16; cvt.u32.u64 %r1081,%r1079; and.b32 %r471,%r1081,1; .loc 1 914 1 setp.ne.u64 %r1084,%r250,%r1279; @ %r1084 bra $L542; .loc 1 3141 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1281; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1283; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call eiremain,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 3142 21 ld.u16 %r253,[%frame+76]; .loc 1 3142 7 add.u64 %r1090,%r58,%r168; .loc 1 3142 28 cvt.u16.u32 %r1093,%r253; add.u16 %r1092,%r1093,48; .loc 1 3142 7 cvt.u32.u16 %r1094,%r1092; st.u8 [%r1090],%r1094; add.u64 %r168,%r168,1; .loc 1 3133 1 cvt.u32.u64 %r1095,%r168; setp.ge.s32 %r1096,%r53,%r1095; @ %r1096 bra $L543; cvt.s64.s32 %r483,%r53; add.u64 %r1097,%r483,1; add.u64 %r204,%r58,%r1097; add.u64 %r278,%r58,%r483; bra $L544; $L528: ld.u16 %r253,[%frame+76]; add.u64 %r278,%frame,82; .loc 1 3130 4 add.u64 %r204,%frame,83; $L544: .loc 1 3144 7 cvt.u16.u32 %r1098,%r253; cvt.u64.u16 %r257,%r1098; .loc 1 3148 3 setp.le.s64 %r1099,%r257,4; @ %r1099 bra $L526; .loc 1 3151 4 setp.ne.u64 %r1100,%r257,5; @ %r1100 bra $L545; .loc 1 3153 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1283; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1281; call emovo$isra$7,(%out_arg1,%out_arg2); } .loc 1 3154 7 cvta.const.u64 %r1106,ezero; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1281; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1106; call (%value_in),ecmp,(%out_arg1,%out_arg2); ld.param.u32 %r1108,[%value_in]; } .loc 1 3154 5 setp.ne.u32 %r1109,%r1108,0; @ %r1109 bra $L545; .loc 1 3156 5 setp.lt.s32 %r1110,%r53,0; @ %r1110 bra $L526; .loc 1 3156 28 ld.s8 %r261,[%r204+-2]; .loc 1 3156 34 cvt.u16.u32 %r1112,%r261; set.u32.eq.u16 %r1113,%r1112,46; cvt.s64.s32 %r1111,%r1113; .loc 1 3156 21 add.u64 %r1116,%r278,%r1111; .loc 1 3156 17 ld.u8 %r1336,[%r1116+-1]; mov.u16 %r1119,%r1336; and.b16 %r1118,%r1119,1; cvt.u32.u16 %r1120,%r1118; cvt.s32.s8 %r1122,%r1120; cvt.u16.u32 %r1121,%r1122; setp.eq.u16 %r1123,%r1121,0; @ ! %r1123 bra $L685; bra $L526; $L545: .loc 1 3161 2 add.u64 %r386,%r204,-2; ld.u8 %r1336,[%r204+-2]; mov.u16 %r1126,%r1336; and.b16 %r1125,%r1126,127; cvt.u32.u16 %r1127,%r1125; cvt.s32.s8 %r38,%r1127; .loc 1 3164 4 setp.lt.s32 %r1128,%r53,0; @ %r1128 bra $L547; $L582: .loc 1 3171 9 cvt.u16.u32 %r1129,%r38; setp.eq.u16 %r1130,%r1129,46; @ %r1130 bra $L548; .loc 1 3186 4 add.u32 %r41,%r38,1; .loc 1 3187 7 st.u8 [%r386],%r41; .loc 1 3188 4 setp.gt.s32 %r1131,%r41,57; @ ! %r1131 bra $L526; .loc 1 3190 6 mov.u32 %r1136,48; bra $L549; $L547: .loc 1 3167 6 mov.u32 %r1132,49; st.u8 [%r204+-2],%r1132; .loc 1 3168 9 add.u32 %r29,%r29,1; bra $L526; $L548: .loc 1 3174 5 ld.s8 %r273,[%r386+-1]; .loc 1 3175 5 add.u32 %r274,%r273,1; .loc 1 3178 5 setp.gt.s32 %r1133,%r274,57; @ %r1133 bra $L550; .loc 1 3176 8 st.u8 [%r386+-1],%r274; bra $L526; $L550: .loc 1 3180 10 add.u32 %r29,%r29,1; .loc 1 3181 7 mov.u32 %r1134,49; st.u8 [%r386+-1],%r1134; bra $L526; $L686: .loc 1 3186 4 add.u32 %r276,%r269,1; .loc 1 3187 7 st.u8 [%r386],%r276; .loc 1 3188 4 setp.le.s32 %r1135,%r276,57; @ %r1135 bra $L526; $L549: .loc 1 3190 6 st.u8 [%r386],%r1136; .loc 1 3161 2 add.u64 %r386,%r386,-1; ld.u8 %r1336,[%r386]; mov.u16 %r1139,%r1336; and.b16 %r1138,%r1139,127; cvt.u32.u16 %r1140,%r1138; cvt.s32.s8 %r269,%r1140; .loc 1 3171 9 cvt.u16.u32 %r1141,%r269; setp.eq.u16 %r1142,%r1141,46; @ ! %r1142 bra $L686; bra $L548; $L594: .loc 1 3114 4 add.u64 %r278,%frame,83; $L526: .loc 1 3201 2 st.u32 [%stack],%r29; cvta.const.u64 %r1144,$LC4; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r278; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1144; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),sprintf,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1145,[%value_in]; } $L420: .loc 1 3204 13 st.u32 [%frame+4],%r72; .loc 1 3205 15 st.u32 [%frame+16],%r29; .loc 1 501 3 ld.u16 %r1148,[%frame+312]; and.b16 %r1147,%r1148,32767; setp.ne.u16 %r1149,%r1147,32767; @ %r1149 bra $L552; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1286; call (%value_in),eisinf$part$1,(%out_arg1); ld.param.u32 %r1152,[%value_in]; } .loc 1 2768 3 setp.ne.u32 %r1153,%r1152,0; @ %r1153 bra $L553; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1286; call (%value_in),eisnan$part$0,(%out_arg1); ld.param.u32 %r1156,[%value_in]; } .loc 1 2768 15 setp.eq.u32 %r1157,%r1156,0; @ %r1157 bra $L552; $L553: .loc 1 2770 16 mov.u32 %r1158,9999; st.u32 [%r498],%r1158; .loc 1 2771 9 bra $L554; $L552: .loc 1 2773 24 add.u32 %r1159,%r29,1; .loc 1 2773 8 st.u32 [%r498],%r1159; .loc 1 2779 8 ld.s8 %r25,[%frame+80]; .loc 1 2779 6 setp.eq.u32 %r1160,%r25,0; @ %r1160 bra $L595; .loc 1 2781 11 cvt.u16.u32 %r1161,%r25; setp.eq.u16 %r1162,%r1161,46; @ %r1162 bra $L596; .loc 1 2778 3 mov.u64 %r65,%r1268; bra $L557; $L558: .loc 1 2781 11 cvt.u16.u32 %r1163,%r31; setp.eq.u16 %r1164,%r1163,46; @ %r1164 bra $L556; $L557: .loc 1 2783 9 add.u64 %r65,%r65,1; .loc 1 2779 8 ld.s8 %r31,[%r65]; .loc 1 2779 6 setp.ne.u32 %r1165,%r31,0; @ %r1165 bra $L558; bra $L559; $L560: .loc 1 2792 12 ld.s8 %r32,[%r219]; cvt.u32.u32 %r1166,%r32; st.u8 [%r65],%r1166; .loc 1 2793 9 mov.u64 %r65,%r1267; add.u64 %r219,%r219,1; .loc 1 2790 6 setp.ne.u32 %r1167,%r32,0; @ ! %r1167 bra $L559; add.u64 %r1267,%r1267,1; bra $L560; $L561: .loc 1 2800 9 add.u64 %r65,%r65,-1; .loc 1 2799 6 ld.s8 %r1170,[%r65]; cvt.u16.u32 %r1169,%r1170; set.u32.ne.u16 %r1171,%r1169,69; neg.s32 %r1172,%r1171; .loc 1 2799 18 set.u32.gt.u64 %r1175,%r65,%r1268; neg.s32 %r1176,%r1175; cvt.u16.u32 %r1178,%r1172; cvt.u16.u32 %r1179,%r1176; and.b16 %r1177,%r1178,%r1179; cvt.u32.u16 %r1180,%r1177; cvt.u16.u8 %r1181,%r1180; setp.ne.u16 %r1182,%r1181,0; @ %r1182 bra $L561; bra $L555; $L559: setp.gt.u64 %r1184,%r65,%r1268; @ %r1184 bra $L561; bra $L555; $L595: .loc 1 2778 3 mov.u64 %r65,%r1268; $L555: .loc 1 2801 4 mov.u32 %r1185,0; st.u8 [%r65],%r1185; $L554: .loc 1 2807 8 ld.s8 %r479,[%frame+80]; .loc 1 2807 18 cvt.u16.u32 %r1187,%r479; set.u32.eq.u16 %r1188,%r1187,45; neg.s32 %r1189,%r1188; set.u32.eq.u16 %r1192,%r1187,32; neg.s32 %r1193,%r1192; cvt.u16.u32 %r1195,%r1189; cvt.u16.u32 %r1196,%r1193; or.b16 %r1194,%r1195,%r1196; .loc 1 2807 6 cvt.u32.u16 %r1197,%r1194; cvt.u16.u8 %r1198,%r1197; setp.eq.u16 %r1199,%r1198,0; @ %r1199 bra $L597; .loc 1 2806 3 mov.u64 %r66,%r1268; $L563: .loc 1 2808 9 add.u64 %r66,%r66,1; .loc 1 2807 8 ld.s8 %r479,[%r66]; .loc 1 2807 18 cvt.u16.u32 %r1201,%r479; set.u32.eq.u16 %r1202,%r1201,32; neg.s32 %r1203,%r1202; set.u32.eq.u16 %r1206,%r1201,45; neg.s32 %r1207,%r1206; cvt.u16.u32 %r1209,%r1203; cvt.u16.u32 %r1210,%r1207; or.b16 %r1208,%r1209,%r1210; .loc 1 2807 6 cvt.u32.u16 %r1211,%r1208; cvt.u16.u8 %r1212,%r1211; setp.ne.u16 %r1213,%r1212,0; @ %r1213 bra $L563; bra $L562; $L597: .loc 1 2806 3 mov.u64 %r66,%r1268; $L562: mov.u64 %r225,%r1268; $L565: mov.u64 %r67,%r225; .loc 1 2812 18 add.u64 %r66,%r66,1; .loc 1 2812 14 cvt.u32.u32 %r1214,%r479; st.u8 [%r225],%r1214; add.u64 %r225,%r225,1; .loc 1 2812 6 setp.eq.u32 %r1215,%r479,0; @ %r1215 bra $L564; ld.s8 %r479,[%r66]; bra $L565; $L564: ld.s8 %r477,[%r67+-1]; .loc 1 2817 3 setp.eq.u32 %r1216,%r496,2; @ %r1216 bra $L566; max.s32 %r488,%r52,%r29; .loc 1 2824 6 cvt.u16.u32 %r1217,%r477; setp.eq.u16 %r1218,%r1217,48; @ %r1218 bra $L567; bra $L568; $L599: .loc 1 2824 22 mov.u64 %r76,1; $L570: add.u64 %r252,%r67,-2; .loc 1 2825 16 mov.u32 %r1219,0; $L571: add.u64 %r67,%r67,-1; st.u8 [%r67],%r1219; .loc 1 2824 6 ld.s8 %r1221,[%r252]; cvt.u16.u32 %r1220,%r1221; setp.eq.u16 %r1222,%r1220,48; @ %r1222 bra $L569; bra $L568; $L567: cvt.s64.s32 %r76,%r488; .loc 1 2824 29 sub.u64 %r1224,%r67,%r1268; .loc 1 2824 22 setp.gt.s64 %r1225,%r1224,%r76; @ %r1225 bra $L570; bra $L568; $L569: add.u64 %r252,%r252,-1; .loc 1 2824 29 sub.u64 %r1227,%r67,%r1268; .loc 1 2824 22 setp.gt.s64 %r1228,%r1227,%r76; @ %r1228 bra $L571; $L568: .loc 1 2829 3 setp.ne.u32 %r1229,%r496,3; @ %r1229 bra $L572; .loc 1 2829 28 add.u32 %r1230,%r52,%r29; .loc 1 2829 15 setp.ge.s32 %r1231,%r1230,0; @ %r1231 bra $L573; .loc 1 2832 12 mov.u32 %r1232,0; st.u8 [%frame+80],%r1232; .loc 1 2833 16 mov.u32 %r1233,0; st.u32 [%r498],%r1233; .loc 1 2831 11 mov.u64 %r67,%r1268; bra $L574; $L578: .loc 1 2845 30 mov.u32 %r1234,0; st.u32 [%r494+104],%r1234; .loc 1 2845 75 cvt.s64.s32 %r362,%r55; .loc 1 2845 1 setp.le.u64 %r1235,%r362,31; @ %r1235 bra $L598; mov.u32 %r366,1; .loc 1 2844 3 mov.u32 %r68,4; $L576: .loc 1 2846 26 mov.u32 %r44,%r366; .loc 1 2845 83 add.u32 %r68,%r68,%r68; add.u32 %r366,%r44,1; .loc 1 2845 71 cvt.s64.s32 %r1237,%r68; add.u64 %r1238,%r1237,28; .loc 1 2845 1 setp.le.u64 %r1239,%r1238,%r362; @ %r1239 bra $L576; st.u32 [%r494+104],%r44; bra $L575; $L598: mov.u32 %r44,%r1234; $L575: .loc 1 2847 25 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r494; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r44; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r1242,[%value_in]; } .loc 1 2847 23 st.u64 [%r494+96],%r1242; .loc 1 2851 1 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1242; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1268; call (%value_in),strcpy,(%out_arg1,%out_arg2); ld.param.u64 %r1246,[%value_in]; } .loc 1 2853 3 setp.eq.u64 %r1247,%r500,0; @ %r1247 bra $L415; .loc 1 2854 28 sub.u64 %r1249,%r67,%r1268; .loc 1 2854 23 add.u64 %r1250,%r1242,%r1249; .loc 1 2854 14 st.u64 [%r500],%r1250; .loc 1 2856 8 bra $L415; $L573: ld.u32 %r1252,[%r498]; add.u32 %r497,%r497,%r1252; $L574: .loc 1 2840 5 add.u32 %r55,%r497,3; bra $L578; $L572: .loc 1 2842 5 add.u32 %r55,%r497,9; bra $L578; $L425: .loc 1 2947 3 cvt.u16.u32 %r1253,%r80; setp.eq.u16 %r1254,%r1253,32767; @ ! %r1254 bra $L687; bra $L579; $L566: .loc 1 2824 6 cvt.u16.u32 %r1255,%r477; setp.eq.u16 %r1256,%r1255,48; @ %r1256 bra $L581; bra $L572; $L596: .loc 1 2778 3 mov.u64 %r65,%r1268; $L556: add.u64 %r1267,%r65,1; mov.u64 %r219,%r1267; bra $L560; $L685: .loc 1 3161 2 add.u64 %r386,%r204,-2; and.b16 %r1257,%r1112,127; cvt.u32.u16 %r1259,%r1257; cvt.s32.s8 %r38,%r1259; bra $L582; $L581: .loc 1 2824 29 sub.u64 %r1261,%r67,%r1268; .loc 1 2824 22 setp.gt.s64 %r1262,%r1261,1; @ %r1262 bra $L599; bra $L572; $L415: .loc 1 2857 1 mov.u64 %value,%r1242; 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 .u32 %r26; .reg .u64 %r27; .reg .f64 %r28; .reg .u64 %r31; .reg .u16 %r32; .reg .u16 %r33; .reg .pred %r34; .reg .u32 %r36; .reg .pred %r37; mov.u64 %r27,%ar0; .loc 1 2875 6 ld.f64 %r28,[%r27]; st.f64 [%frame+32],%r28; .loc 1 2879 1 add.u64 %r31,%frame,32; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; call e53toe$isra$9,(%out_arg1,%out_arg2); } .loc 1 2886 3 ld.u16 %r33,[%frame+18]; and.b16 %r32,%r33,32767; setp.ne.u16 %r34,%r32,32767; @ %r34 bra $L690; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),eisnan$part$0,(%out_arg1); ld.param.u32 %r36,[%value_in]; } .loc 1 2889 4 setp.ne.u32 %r37,%r36,0; .loc 1 2892 8 selp.u32 %r26,1,2,%r37; bra $L688; $L690: .loc 1 2895 8 mov.u32 %r26,0; $L688: .loc 1 2896 1 mov.u32 %value,%r26; st.param.u32 [%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]; .local .align 16 .b8 %frame_ar[368]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r29; .reg .u64 %r31; .reg .u32 %r32; .reg .u32 %r34; .reg .u32 %r35; .reg .u64 %r36; .reg .u32 %r37; .reg .u64 %r38; .reg .u32 %r40; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r45; .reg .u32 %r46; .reg .u64 %r50; .reg .u32 %r51; .reg .u32 %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .u64 %r60; .reg .u64 %r62; .reg .u32 %r65; .reg .u32 %r66; .reg .u32 %r71; .reg .u64 %r72; .reg .u64 %r73; .reg .u32 %r79; .reg .u32 %r85; .reg .u64 %r86; .reg .u64 %r87; .reg .u32 %r88; .reg .u32 %r93; .reg .u64 %r94; .reg .u64 %r96; .reg .u64 %r103; .reg .u64 %r106; .reg .u64 %r107; .reg .u64 %r117; .reg .u64 %r120; .reg .u64 %r121; .reg .u64 %r122; .reg .u32 %r123; .reg .u32 %r125; .reg .u32 %r128; .reg .u32 %r132; .reg .u64 %r135; .reg .u64 %r137; .reg .u32 %r140; .reg .u32 %r146; .reg .u64 %r147; .reg .u32 %r148; .reg .u32 %r153; .reg .u64 %r154; .reg .u64 %r164; .reg .u64 %r167; .reg .u64 %r168; .reg .u64 %r169; .reg .u32 %r170; .reg .u32 %r175; .reg .u64 %r176; .reg .u32 %r178; .reg .u64 %r179; .reg .u32 %r186; .reg .u64 %r189; .reg .u64 %r190; .reg .u32 %r191; .reg .u64 %r193; .reg .u32 %r194; .reg .u64 %r197; .reg .u64 %r200; .reg .u64 %r201; .reg .u64 %r204; .reg .u32 %r212; .reg .u32 %r214; .reg .u64 %r218; .reg .u32 %r219; .reg .u64 %r220; .reg .u64 %r233; .reg .u64 %r234; .reg .u64 %r236; .reg .u64 %r238; .reg .u64 %r240; .reg .u32 %r241; .reg .u32 %r242; .reg .u32 %r243; .reg .u32 %r244; .reg .u32 %r245; .reg .u32 %r246; .reg .u32 %r247; .reg .u32 %r248; .reg .u32 %r249; .reg .u32 %r250; .reg .u32 %r253; .reg .u32 %r255; .reg .u32 %r256; .reg .u64 %r258; .reg .u64 %r259; .reg .u64 %r268; .reg .u64 %r272; .reg .f64 %r274; .reg .u64 %r275; .reg .u64 %r276; .reg .u32 %r289; .reg .u32 %r290; .reg .u64 %r292; .reg .u32 %r293; .reg .pred %r294; .reg .u64 %r296; .reg .u64 %r297; .reg .u64 %r298; .reg .u16 %r299; .reg .pred %r300; .reg .u16 %r301; .reg .u32 %r302; .reg .pred %r303; .reg .u16 %r304; .reg .u32 %r305; .reg .pred %r306; .reg .pred %r307; .reg .u32 %r308; .reg .pred %r309; .reg .u32 %r310; .reg .pred %r311; .reg .pred %r312; .reg .u32 %r313; .reg .u32 %r314; .reg .u16 %r315; .reg .pred %r316; .reg .pred %r317; .reg .u32 %r318; .reg .pred %r319; .reg .u32 %r321; .reg .u32 %r322; .reg .u16 %r325; .reg .u16 %r327; .reg .u16 %r328; .reg .u32 %r330; .reg .u16 %r331; .reg .pred %r332; .reg .u16 %r334; .reg .u16 %r335; .reg .u16 %r336; .reg .u32 %r337; .reg .pred %r338; .reg .u16 %r340; .reg .u16 %r341; .reg .u16 %r342; .reg .u32 %r343; .reg .pred %r344; .reg .u16 %r345; .reg .u16 %r346; .reg .u32 %r347; .reg .u16 %r348; .reg .u16 %r350; .reg .u32 %r351; .reg .u32 %r352; .reg .pred %r353; .reg .u16 %r355; .reg .pred %r356; .reg .u64 %r357; .reg .u64 %r358; .reg .u64 %r359; .reg .u16 %r361; .reg .u16 %r362; .reg .u32 %r363; .reg .u16 %r364; .reg .pred %r365; .reg .u16 %r366; .reg .u32 %r367; .reg .pred %r368; .reg .u32 %r369; .reg .u16 %r370; .reg .u32 %r371; .reg .pred %r372; .reg .u16 %r373; .reg .pred %r374; .reg .u16 %r375; .reg .pred %r376; .reg .pred %r377; .reg .u16 %r378; .reg .pred %r379; .reg .u16 %r380; .reg .u16 %r381; .reg .u16 %r382; .reg .u16 %r383; .reg .u16 %r384; .reg .u16 %r385; .reg .pred %r386; .reg .u16 %r388; .reg .u16 %r390; .reg .u16 %r391; .reg .pred %r394; .reg .u16 %r395; .reg .pred %r396; .reg .u16 %r397; .reg .u16 %r398; .reg .pred %r399; .reg .u16 %r400; .reg .u16 %r401; .reg .u16 %r402; .reg .u16 %r403; .reg .u16 %r404; .reg .u16 %r405; .reg .pred %r406; .reg .u16 %r408; .reg .u16 %r410; .reg .u16 %r411; .reg .pred %r414; .reg .u16 %r415; .reg .pred %r416; .reg .u16 %r417; .reg .u16 %r418; .reg .u16 %r419; .reg .u16 %r420; .reg .u16 %r421; .reg .u16 %r422; .reg .pred %r423; .reg .u16 %r425; .reg .u16 %r427; .reg .u16 %r428; .reg .pred %r431; .reg .u64 %r432; .reg .u64 %r433; .reg .u64 %r434; .reg .u64 %r435; .reg .u64 %r436; .reg .u32 %r438; .reg .pred %r441; .reg .u16 %r442; .reg .pred %r443; .reg .u64 %r444; .reg .u64 %r445; .reg .u64 %r446; .reg .u64 %r447; .reg .u64 %r448; .reg .u32 %r450; .reg .pred %r453; .reg .pred %r454; .reg .u16 %r455; .reg .pred %r456; .reg .pred %r458; .reg .pred %r460; .reg .pred %r462; .reg .pred %r463; .reg .pred %r465; .reg .pred %r467; .reg .pred %r469; .reg .pred %r471; .reg .pred %r473; .reg .pred %r475; .reg .pred %r477; .reg .pred %r479; .reg .pred %r481; .reg .pred %r483; .reg .pred %r485; .reg .u16 %r486; .reg .pred %r487; .reg .pred %r488; .reg .pred %r489; .reg .pred %r490; .reg .u16 %r491; .reg .u16 %r492; .reg .u16 %r493; .reg .u16 %r495; .reg .pred %r496; .reg .u16 %r498; .reg .u16 %r499; .reg .u16 %r500; .reg .pred %r501; .reg .u32 %r503; .reg .u32 %r504; .reg .u32 %r505; .reg .u32 %r506; .reg .pred %r507; .reg .pred %r508; .reg .u16 %r510; .reg .u16 %r511; .reg .u16 %r512; .reg .u32 %r513; .reg .pred %r514; .reg .pred %r515; .reg .pred %r516; .reg .u16 %r517; .reg .pred %r518; .reg .u16 %r519; .reg .u16 %r520; .reg .u16 %r521; .reg .pred %r522; .reg .u16 %r523; .reg .u16 %r524; .reg .pred %r525; .reg .pred %r526; .reg .u16 %r527; .reg .pred %r528; .reg .u16 %r529; .reg .u16 %r530; .reg .pred %r531; .reg .u16 %r532; .reg .u16 %r533; .reg .u16 %r534; .reg .u16 %r535; .reg .u16 %r536; .reg .u16 %r537; .reg .pred %r538; .reg .u16 %r540; .reg .u16 %r542; .reg .u16 %r543; .reg .pred %r546; .reg .u16 %r547; .reg .pred %r548; .reg .u16 %r549; .reg .u16 %r550; .reg .u16 %r551; .reg .u16 %r552; .reg .u16 %r553; .reg .u16 %r554; .reg .pred %r555; .reg .u16 %r557; .reg .u16 %r559; .reg .u16 %r560; .reg .pred %r563; .reg .u64 %r564; .reg .u64 %r565; .reg .u64 %r566; .reg .u64 %r567; .reg .u64 %r568; .reg .u32 %r570; .reg .pred %r573; .reg .u16 %r574; .reg .pred %r575; .reg .u16 %r576; .reg .u16 %r577; .reg .u16 %r578; .reg .u16 %r579; .reg .u16 %r580; .reg .u16 %r581; .reg .pred %r582; .reg .u16 %r584; .reg .u16 %r586; .reg .u16 %r587; .reg .pred %r590; .reg .u16 %r591; .reg .pred %r592; .reg .u16 %r593; .reg .pred %r594; .reg .pred %r596; .reg .u16 %r597; .reg .pred %r598; .reg .u32 %r601; .reg .pred %r602; .reg .u16 %r603; .reg .pred %r604; .reg .u16 %r605; .reg .u16 %r606; .reg .u32 %r609; .reg .u32 %r611; .reg .u32 %r614; .reg .u32 %r615; .reg .u64 %r616; .reg .pred %r618; .reg .pred %r619; .reg .pred %r620; .reg .u64 %r621; .reg .u64 %r624; .reg .u32 %r631; .reg .u32 %r632; .reg .u16 %r633; .reg .pred %r634; .reg .u32 %r635; .reg .pred %r636; .reg .pred %r646; .reg .pred %r651; .reg .u64 %r652; .reg .u32 %r659; .reg .u64 %r660; .reg .u32 %r667; .reg .u32 %r668; .reg .u32 %r671; .reg .u32 %r673; .reg .u64 %r676; .reg .u16 %r678; .reg .u16 %r679; .reg .u16 %r680; .reg .u16 %r681; .reg .pred %r682; .reg .u16 %r684; .reg .pred %r685; .reg .pred %r686; .reg .u16 %r687; .reg .pred %r688; .reg .u16 %r689; .reg .pred %r690; .reg .u16 %r691; .reg .u16 %r692; .reg .pred %r693; .reg .u16 %r694; .reg .u16 %r695; .reg .u16 %r696; .reg .u32 %r697; .reg .u16 %r698; .reg .pred %r699; .reg .u32 %r701; .reg .u32 %r703; .reg .u32 %r705; .reg .u32 %r707; .reg .u32 %r708; .reg .u16 %r709; .reg .u16 %r710; .reg .u16 %r711; .reg .u16 %r712; .reg .u16 %r713; .reg .u16 %r714; .reg .u16 %r715; .reg .u16 %r716; .reg .u16 %r717; .reg .u16 %r718; .reg .pred %r719; .reg .pred %r721; .reg .u64 %r722; .reg .u32 %r723; .reg .u32 %r724; .reg .u64 %r725; .reg .u64 %r726; .reg .u16 %r728; .reg .pred %r729; .reg .pred %r730; .reg .pred %r732; .reg .u32 %r735; .reg .u32 %r737; .reg .u32 %r740; .reg .u32 %r741; .reg .u64 %r742; .reg .u32 %r746; .reg .pred %r747; .reg .u32 %r752; .reg .u32 %r755; .reg .u32 %r756; .reg .u64 %r757; .reg .u32 %r761; .reg .pred %r762; .reg .u32 %r765; .reg .u32 %r767; .reg .u32 %r770; .reg .u32 %r771; .reg .u64 %r772; .reg .u32 %r776; .reg .pred %r777; .reg .u64 %r778; .reg .u64 %r779; .reg .u64 %r780; .reg .u64 %r781; .reg .u64 %r782; .reg .u64 %r783; .reg .u64 %r784; .reg .u64 %r785; .reg .u64 %r786; .reg .u64 %r787; .reg .u32 %r796; .reg .u64 %r797; .reg .u64 %r798; .reg .u64 %r799; .reg .u64 %r800; .reg .u64 %r801; .reg .u64 %r802; .reg .u64 %r803; .reg .u64 %r804; mov.u64 %r275,%ar0; mov.u64 %r276,%ar1; .loc 1 3237 13 mov.u32 %r289,-1; st.u32 [%frame+200],%r289; .loc 1 3238 14 mov.u32 %r290,144; st.u32 [%frame+204],%r290; .loc 1 3263 5 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r275; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r292,[%value_in]; } .loc 1 3263 17 cvt.u32.u64 %r293,%r292; add.u32 %r29,%r293,2; .loc 1 3264 4 setp.le.s32 %r294,%r29,200; @ %r294 bra $L693; .loc 1 3268 21 cvt.s64.s32 %r297,%r29; mov.u64 %r296,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r297; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r296; call (%value_in),calloc,(%out_arg1,%out_arg2); ld.param.u64 %r298,[%value_in]; } mov.u64 %r135,%r298; .loc 1 3273 8 ld.s8 %r245,[%r275]; .loc 1 3273 6 cvt.u16.u32 %r299,%r245; setp.eq.u16 %r300,%r299,32; @ %r300 bra $L803; mov.u64 %r31,%r275; mov.u32 %r244,0; .loc 1 3269 11 cvt.u32.u64 %r186,%r296; bra $L695; $L693: .loc 1 3273 6 ld.s8 %r302,[%r275]; cvt.u16.u32 %r301,%r302; setp.ne.u16 %r303,%r301,32; @ %r303 bra $L804; .loc 1 3259 5 mov.u32 %r186,0; .loc 1 3265 8 mov.u64 %r135,%frame; bra $L694; $L803: .loc 1 3269 11 cvt.u32.u64 %r186,%r296; $L694: .loc 1 3265 8 mov.u64 %r31,%r275; mov.u32 %r32,0; $L697: .loc 1 3275 5 add.u64 %r31,%r31,1; .loc 1 3276 5 add.u32 %r32,%r32,1; .loc 1 3273 6 ld.s8 %r305,[%r31]; cvt.u16.u32 %r304,%r305; setp.eq.u16 %r306,%r304,32; @ %r306 bra $L697; mov.u32 %r244,%r32; bra $L696; $L804: mov.u64 %r31,%r275; mov.u32 %r244,0; .loc 1 3259 5 mov.u32 %r186,%r244; .loc 1 3265 8 mov.u64 %r135,%frame; $L696: .loc 1 3279 1 setp.le.s32 %r307,%r29,0; @ %r307 bra $L805; ld.s8 %r245,[%r31]; $L695: .loc 1 3281 17 add.u64 %r268,%r31,1; .loc 1 3281 10 add.u64 %r36,%r135,1; .loc 1 3281 13 cvt.u32.u32 %r308,%r245; st.u8 [%r135],%r308; .loc 1 3281 4 setp.eq.u32 %r309,%r245,0; @ %r309 bra $L698; mov.u64 %r56,%r268; mov.u64 %r38,%r36; .loc 1 3279 7 mov.u32 %r35,0; bra $L699; $L700: add.u64 %r38,%r36,1; .loc 1 3281 15 ld.s8 %r34,[%r56]; .loc 1 3281 13 cvt.u32.u32 %r310,%r34; st.u8 [%r36],%r310; add.u64 %r56,%r56,1; .loc 1 3281 4 setp.eq.u32 %r311,%r34,0; @ %r311 bra $L806; $L699: mov.u64 %r36,%r38; .loc 1 3279 17 add.u32 %r35,%r35,1; .loc 1 3279 1 setp.gt.s32 %r312,%r29,%r35; @ %r312 bra $L700; bra $L698; $L805: mov.u64 %r36,%r135; bra $L698; $L806: .loc 1 3281 10 mov.u64 %r36,%r38; $L698: .loc 1 3284 5 mov.u32 %r313,0; st.u8 [%r36],%r313; .loc 1 3287 8 ld.u32 %r37,[%frame+204]; .loc 1 3288 13 mov.u32 %r314,144; st.u32 [%frame+204],%r314; add.u64 %r785,%frame,332; mov.u64 %r137,%r785; add.u64 %r57,%frame,358; mov.u64 %r60,%r785; .loc 1 672 8 mov.u16 %r315,0; $L701: st.u16 [%r60],%r315; add.u64 %r60,%r60,2; .loc 1 671 1 setp.ne.u64 %r316,%r57,%r60; @ %r316 bra $L701; mov.u64 %r204,%r135; .loc 1 3290 7 mov.u32 %r212,0; .loc 1 3297 7 mov.u32 %r46,%r212; .loc 1 3289 6 mov.u32 %r123,%r212; .loc 1 3295 6 mov.u32 %r43,%r212; .loc 1 3293 6 mov.u32 %r65,%r212; .loc 1 3292 8 mov.u32 %r125,%r212; .loc 1 3291 8 mov.u32 %r42,%r212; .loc 1 804 3 add.u64 %r798,%frame,356; add.u64 %r799,%frame,334; add.u64 %r800,%frame,306; add.u64 %r801,%r785,24; add.u64 %r802,%frame,330; add.u64 %r803,%frame,308; add.u64 %r804,%frame,332; $L702: .loc 1 3300 5 ld.s8 %r246,[%r204]; .loc 1 3300 3 add.u32 %r40,%r246,-48; .loc 1 3301 3 setp.gt.u32 %r317,%r40,9; @ %r317 bra $L703; .loc 1 3304 35 or.b32 %r318,%r42,%r43; or.b32 %r45,%r318,%r40; .loc 1 3304 4 setp.eq.u32 %r319,%r45,0; @ %r319 bra $L807; .loc 1 3307 13 set.u32.eq.u32 %r321,%r46,0; neg.s32 %r322,%r321; .loc 1 3307 30 cvt.u16.u32 %r325,%r42; .loc 1 3307 19 cvt.u16.u32 %r328,%r322; and.b16 %r327,%r328,%r325; .loc 1 3307 4 cvt.u32.u16 %r330,%r327; cvt.u16.u8 %r331,%r330; setp.eq.u16 %r332,%r331,0; @ %r332 bra $L705; .loc 1 3310 23 cvt.u16.u32 %r335,%r246; add.u16 %r334,%r335,-48; .loc 1 3310 8 cvt.u32.u16 %r337,%r334; cvt.u16.u8 %r336,%r337; setp.gt.u16 %r338,%r336,9; @ %r338 bra $L808; mov.u64 %r50,%r204; $L707: .loc 1 3311 4 add.u64 %r50,%r50,1; .loc 1 3310 11 ld.s8 %r51,[%r50]; .loc 1 3310 23 cvt.u16.u32 %r341,%r51; add.u16 %r340,%r341,-48; .loc 1 3310 8 cvt.u32.u16 %r343,%r340; cvt.u16.u8 %r342,%r343; setp.le.u16 %r344,%r342,9; @ %r344 bra $L707; bra $L706; $L808: mov.u32 %r51,%r246; mov.u64 %r50,%r204; $L706: cvt.u16.u32 %r346,%r51; and.b16 %r345,%r346,127; cvt.u32.u16 %r347,%r345; cvt.s32.s8 %r55,%r347; .loc 1 3314 24 and.b16 %r348,%r346,95; .loc 1 3314 5 cvt.u32.u16 %r352,%r348; cvt.s32.s8 %r351,%r352; cvt.u16.u32 %r350,%r351; setp.eq.u16 %r353,%r350,69; @ %r353 bra $L708; .loc 1 3314 38 cvt.u32.u8 %r219,%r347; cvt.u16.u32 %r355,%r55; setp.gt.s16 %r356,%r355,44; @ %r356 bra $L709; mov.u64 %r358,17596481020929; shr.u64 %r357,%r358,%r219; not.b64 %r359,%r357; cvt.u16.u64 %r362,%r359; and.b16 %r361,%r362,1; .loc 1 3315 4 cvt.u32.u16 %r363,%r361; cvt.u16.u8 %r364,%r363; setp.ne.u16 %r365,%r364,0; @ %r365 bra $L709; $L708: .loc 1 3318 3 add.u64 %r62,%r50,-1; .loc 1 3319 8 ld.s8 %r367,[%r50+-1]; cvt.u16.u32 %r366,%r367; setp.ne.u16 %r368,%r366,48; @ %r368 bra $L710; mov.u64 %r73,%r62; .loc 1 3320 10 mov.u32 %r369,122; $L711: .loc 1 3320 7 add.u64 %r62,%r62,-1; .loc 1 3320 10 st.u8 [%r73],%r369; add.u64 %r73,%r73,-1; .loc 1 3319 8 ld.s8 %r371,[%r62]; cvt.u16.u32 %r370,%r371; setp.eq.u16 %r372,%r370,48; @ %r372 bra $L711; ld.s8 %r246,[%r204]; $L710: .loc 1 3322 5 cvt.u16.u32 %r373,%r246; setp.eq.u16 %r374,%r373,122; @ ! %r374 bra $L886; bra $L809; $L705: .loc 1 3330 4 ld.u16 %r375,[%frame+336]; setp.ne.u16 %r376,%r375,0; @ %r376 bra $L713; .loc 1 3332 5 setp.eq.u32 %r377,%r42,0; @ %r377 bra $L714; bra $L795; $L819: .loc 1 3321 9 mov.u32 %r46,1; $L795: .loc 1 3333 9 add.u32 %r65,%r65,1; $L714: .loc 1 805 6 mov.u32 %r71,0; .loc 1 804 3 mov.u64 %r72,%r798; $L718: .loc 1 809 6 ld.u16 %r66,[%r72]; .loc 1 809 4 cvt.u16.u32 %r378,%r66; setp.ge.s16 %r379,%r378,0; @ %r379 bra $L715; .loc 1 810 8 cvt.u16.u32 %r381,%r71; or.b16 %r380,%r381,1; cvt.u32.u16 %r71,%r380; $L715: .loc 1 811 5 cvt.u16.u32 %r382,%r66; add.u16 %r383,%r382,%r382; .loc 1 812 4 cvt.u16.u32 %r385,%r71; and.b16 %r384,%r385,2; setp.ne.u16 %r386,%r384,0; @ %r386 bra $L716; .loc 1 811 5 st.u16 [%r72],%r383; bra $L717; $L716: .loc 1 813 6 or.b16 %r388,%r383,1; st.u16 [%r72],%r388; $L717: .loc 1 814 7 cvt.u16.u32 %r390,%r71; add.u16 %r391,%r390,%r390; cvt.u32.u16 %r71,%r391; .loc 1 815 2 add.u64 %r72,%r72,-2; .loc 1 807 1 setp.ne.u64 %r394,%r72,%r799; @ %r394 bra $L718; mov.u64 %r122,%r800; mov.u64 %r87,%r800; mov.u64 %r96,%r785; $L719: .loc 1 696 7 ld.u16 %r395,[%r96]; st.u16 [%r87],%r395; add.u64 %r96,%r96,2; add.u64 %r87,%r87,2; .loc 1 695 1 setp.ne.u64 %r396,%r801,%r96; @ %r396 bra $L719; .loc 1 698 4 mov.u16 %r397,0; st.u16 [%frame+330],%r397; .loc 1 805 6 mov.u32 %r85,0; .loc 1 804 3 mov.u64 %r86,%r802; $L723: .loc 1 809 6 ld.u16 %r79,[%r86]; .loc 1 809 4 cvt.u16.u32 %r398,%r79; setp.ge.s16 %r399,%r398,0; @ %r399 bra $L720; .loc 1 810 8 cvt.u16.u32 %r401,%r85; or.b16 %r400,%r401,1; cvt.u32.u16 %r85,%r400; $L720: .loc 1 811 5 cvt.u16.u32 %r402,%r79; add.u16 %r403,%r402,%r402; .loc 1 812 4 cvt.u16.u32 %r405,%r85; and.b16 %r404,%r405,2; setp.ne.u16 %r406,%r404,0; @ %r406 bra $L721; .loc 1 811 5 st.u16 [%r86],%r403; bra $L722; $L721: .loc 1 813 6 or.b16 %r408,%r403,1; st.u16 [%r86],%r408; $L722: .loc 1 814 7 cvt.u16.u32 %r410,%r85; add.u16 %r411,%r410,%r410; cvt.u32.u16 %r85,%r411; .loc 1 815 2 add.u64 %r86,%r86,-2; .loc 1 807 1 setp.ne.u64 %r414,%r86,%r803; @ %r414 bra $L723; .loc 1 805 6 mov.u32 %r93,0; .loc 1 804 3 mov.u64 %r94,%r802; $L727: .loc 1 809 6 ld.u16 %r88,[%r94]; .loc 1 809 4 cvt.u16.u32 %r415,%r88; setp.ge.s16 %r416,%r415,0; @ %r416 bra $L724; .loc 1 810 8 cvt.u16.u32 %r418,%r93; or.b16 %r417,%r418,1; cvt.u32.u16 %r93,%r417; $L724: .loc 1 811 5 cvt.u16.u32 %r419,%r88; add.u16 %r420,%r419,%r419; .loc 1 812 4 cvt.u16.u32 %r422,%r93; and.b16 %r421,%r422,2; setp.ne.u16 %r423,%r421,0; @ %r423 bra $L725; .loc 1 811 5 st.u16 [%r94],%r420; bra $L726; $L725: .loc 1 813 6 or.b16 %r425,%r420,1; st.u16 [%r94],%r425; $L726: .loc 1 814 7 cvt.u16.u32 %r427,%r93; add.u16 %r428,%r427,%r427; cvt.u32.u16 %r93,%r428; .loc 1 815 2 add.u64 %r94,%r94,-2; .loc 1 807 1 setp.ne.u64 %r431,%r94,%r803; @ %r431 bra $L727; .loc 1 913 7 mov.u32 %r243,0; .loc 1 912 3 mov.u64 %r107,%r798; .loc 1 911 3 mov.u64 %r106,%r802; $L728: .loc 1 916 6 ld.u16 %r432,[%r106]; .loc 1 916 29 ld.u16 %r433,[%r107]; .loc 1 916 27 add.u64 %r434,%r432,%r433; .loc 1 916 50 cvt.u64.u32 %r435,%r243; .loc 1 916 4 add.u64 %r103,%r434,%r435; .loc 1 921 7 st.u16 [%r107],%r103; .loc 1 922 2 add.u64 %r106,%r106,-2; .loc 1 923 2 add.u64 %r107,%r107,-2; .loc 1 917 4 shr.u64 %r436,%r103,16; cvt.u32.u64 %r438,%r436; and.b32 %r243,%r438,1; .loc 1 914 1 setp.ne.u64 %r441,%r106,%r803; @ %r441 bra $L728; .loc 1 672 8 mov.u16 %r442,0; $L729: st.u16 [%r122],%r442; add.u64 %r122,%r122,2; .loc 1 671 1 setp.ne.u64 %r443,%r804,%r122; @ %r443 bra $L729; .loc 1 3340 14 st.u16 [%frame+328],%r40; .loc 1 913 7 mov.u32 %r241,0; .loc 1 912 3 mov.u64 %r121,%r798; .loc 1 911 3 mov.u64 %r120,%r802; $L730: .loc 1 916 6 ld.u16 %r444,[%r120]; .loc 1 916 29 ld.u16 %r445,[%r121]; .loc 1 916 27 add.u64 %r446,%r444,%r445; .loc 1 916 50 cvt.u64.u32 %r447,%r241; .loc 1 916 4 add.u64 %r117,%r446,%r447; .loc 1 921 7 st.u16 [%r121],%r117; .loc 1 922 2 add.u64 %r120,%r120,-2; .loc 1 923 2 add.u64 %r121,%r121,-2; .loc 1 917 4 shr.u64 %r448,%r117,16; cvt.u32.u64 %r450,%r448; and.b32 %r241,%r450,1; .loc 1 914 1 setp.ne.u64 %r453,%r120,%r803; @ %r453 bra $L730; bra $L731; $L713: .loc 1 3346 8 or.b32 %r123,%r123,%r40; .loc 1 3348 6 setp.ne.u32 %r454,%r42,0; @ %r454 bra $L731; .loc 1 3349 16 add.u32 %r65,%r65,-1; $L731: .loc 1 3351 7 add.u32 %r43,%r43,1; bra $L704; $L703: cvt.u16.u32 %r455,%r246; setp.eq.u16 %r456,%r455,45; @ %r456 bra $L732; setp.gt.s16 %r458,%r455,45; @ %r458 bra $L733; setp.eq.u16 %r460,%r455,13; @ %r460 bra $L810; setp.gt.s16 %r462,%r455,13; @ %r462 bra $L735; setp.eq.u32 %r463,%r246,0; @ %r463 bra $L811; setp.eq.u16 %r465,%r455,10; @ ! %r465 bra $L709; bra $L812; $L735: setp.eq.u16 %r467,%r455,43; @ %r467 bra $L736; setp.gt.s16 %r469,%r455,43; @ %r469 bra $L813; setp.eq.u16 %r471,%r455,32; @ ! %r471 bra $L709; bra $L814; $L733: setp.eq.u16 %r473,%r455,73; @ %r473 bra $L737; setp.gt.s16 %r475,%r455,73; @ %r475 bra $L738; setp.eq.u16 %r477,%r455,46; @ %r477 bra $L739; setp.eq.u16 %r479,%r455,69; @ %r479 bra $L740; bra $L709; $L738: setp.eq.u16 %r481,%r455,105; @ %r481 bra $L737; setp.eq.u16 %r483,%r455,122; @ %r483 bra $L704; setp.ne.u16 %r485,%r455,101; @ %r485 bra $L709; $L740: .loc 1 3408 5 ld.s8 %r247,[%r204+1]; .loc 1 3408 3 cvt.u16.u32 %r486,%r247; setp.eq.u16 %r487,%r486,45; @ %r487 bra $L741; .loc 1 3406 1 add.u64 %r204,%r204,1; .loc 1 3404 7 mov.u32 %r132,1; bra $L742; $L739: .loc 1 3363 5 setp.ne.u32 %r488,%r42,0; @ %r488 bra $L709; .loc 1 3365 3 mov.u32 %r42,1; bra $L704; $L732: .loc 1 3369 5 setp.ne.u32 %r489,%r125,0; @ %r489 bra $L815; .loc 1 3368 9 mov.u32 %r212,65535; .loc 1 3371 3 mov.u32 %r125,1; bra $L704; $L736: .loc 1 3374 5 setp.eq.u32 %r490,%r125,0; @ %r490 bra $L816; bra $L709; $L815: .loc 1 3368 9 mov.u32 %r212,65535; $L709: .loc 1 3762 9 mov.u16 %r491,32767; st.u16 [%frame+334],%r491; .loc 1 3763 9 mov.u16 %r492,0; st.u16 [%frame+336],%r492; .loc 1 3765 9 mov.u16 %r493,-16384; st.u16 [%frame+338],%r493; add.u64 %r240,%frame,340; add.u64 %r238,%r785,24; .loc 1 3767 10 mov.u16 %r495,%r492; $L743: st.u16 [%r240],%r495; add.u64 %r240,%r240,2; .loc 1 3766 2 setp.ne.u64 %r496,%r238,%r240; @ %r496 bra $L743; .loc 1 3773 9 st.u16 [%frame+356],%r495; ld.u16 %r255,[%frame+334]; cvt.u16.u32 %r499,%r255; and.b16 %r498,%r499,32767; cvt.u32.u16 %r256,%r498; bra $L744; $L807: .loc 1 3304 4 mov.u32 %r43,%r45; mov.u32 %r42,%r43; bra $L704; $L809: .loc 1 3321 9 mov.u32 %r42,1; .loc 1 3322 5 mov.u32 %r46,%r42; bra $L704; $L816: .loc 1 3376 3 mov.u32 %r125,1; $L704: .loc 1 3398 1 add.u64 %r204,%r204,1; bra $L702; $L741: ld.s8 %r247,[%r204+2]; .loc 1 3411 2 add.u64 %r204,%r204,2; .loc 1 3410 8 mov.u32 %r132,-1; $L742: .loc 1 3413 3 cvt.u16.u32 %r500,%r247; setp.ne.u16 %r501,%r500,43; @ %r501 bra $L745; ld.s8 %r247,[%r204+1]; .loc 1 3414 2 add.u64 %r204,%r204,1; bra $L745; $L749: .loc 1 3417 6 shl.b32 %r503,%r128,2; add.u32 %r504,%r503,%r128; add.u32 %r505,%r504,%r504; .loc 1 3418 11 add.u64 %r204,%r204,1; .loc 1 3418 14 add.u32 %r506,%r247,-48; .loc 1 3418 6 add.u32 %r128,%r506,%r505; .loc 1 3419 5 setp.gt.s32 %r507,%r128,4977; @ %r507 bra $L746; ld.s8 %r247,[%r204]; bra $L747; $L746: .loc 1 3421 6 setp.eq.u32 %r508,%r132,-1; @ ! %r508 bra $L737; bra $L748; $L745: .loc 1 3414 2 mov.u32 %r128,0; $L747: .loc 1 3415 20 cvt.u16.u32 %r511,%r247; add.u16 %r510,%r511,-48; .loc 1 3415 6 cvt.u32.u16 %r513,%r510; cvt.u16.u8 %r512,%r513; setp.le.u16 %r514,%r512,9; @ %r514 bra $L749; .loc 1 3427 3 setp.ne.u32 %r515,%r132,-1; @ %r515 bra $L750; .loc 1 3436 3 setp.gt.s32 %r516,%r128,4977; @ %r516 bra $L748; .loc 1 3428 6 neg.s32 %r128,%r128; bra $L734; $L737: .loc 1 672 8 mov.u16 %r517,0; $L751: st.u16 [%r137],%r517; add.u64 %r137,%r137,2; .loc 1 671 1 setp.ne.u64 %r518,%r57,%r137; @ %r518 bra $L751; .loc 1 3433 8 mov.u16 %r519,32767; st.u16 [%frame+334],%r519; .loc 1 3536 13 st.u32 [%frame+204],%r37; .loc 1 3537 7 cvt.u16.u32 %r520,%r212; st.u16 [%frame+332],%r520; mov.u32 %r255,32767; bra $L752; $L748: .loc 1 672 8 mov.u16 %r521,0; $L753: st.u16 [%r137],%r521; add.u64 %r137,%r137,2; .loc 1 671 1 setp.ne.u64 %r522,%r57,%r137; @ %r522 bra $L753; ld.u16 %r255,[%frame+334]; cvt.u16.u32 %r524,%r255; and.b16 %r523,%r524,32767; cvt.u32.u16 %r256,%r523; bra $L744; $L810: .loc 1 3294 5 mov.u32 %r128,0; bra $L734; $L811: mov.u32 %r128,%r246; bra $L734; $L812: mov.u32 %r128,0; bra $L734; $L813: mov.u32 %r128,0; bra $L734; $L814: mov.u32 %r128,0; $L734: .loc 1 3444 6 sub.u32 %r178,%r128,%r65; .loc 1 3446 6 setp.le.s32 %r525,%r178,0; @ %r525 bra $L754; .loc 1 3446 25 ld.u16 %r214,[%frame+336]; .loc 1 3446 19 setp.ne.u32 %r526,%r214,0; @ %r526 bra $L755; add.u64 %r787,%frame,356; add.u64 %r786,%frame,334; add.u64 %r782,%frame,306; add.u64 %r778,%r785,24; add.u64 %r784,%frame,330; add.u64 %r783,%frame,308; .loc 1 698 4 cvt.u16.u32 %r529,%r214; .loc 1 913 7 mov.u32 %r796,%r214; add.u64 %r797,%frame,330; $L773: mov.u64 %r233,%r782; .loc 1 3294 5 mov.u64 %r169,%r782; mov.u64 %r179,%r785; $L756: .loc 1 696 7 ld.u16 %r527,[%r179]; st.u16 [%r169],%r527; add.u64 %r179,%r179,2; add.u64 %r169,%r169,2; .loc 1 695 1 setp.ne.u64 %r528,%r778,%r179; @ %r528 bra $L756; .loc 1 698 4 st.u16 [%frame+330],%r529; .loc 1 805 6 mov.u32 %r146,%r214; .loc 1 804 3 mov.u64 %r147,%r784; $L760: .loc 1 809 6 ld.u16 %r140,[%r147]; .loc 1 809 4 cvt.u16.u32 %r530,%r140; setp.ge.s16 %r531,%r530,0; @ %r531 bra $L757; .loc 1 810 8 cvt.u16.u32 %r533,%r146; or.b16 %r532,%r533,1; cvt.u32.u16 %r146,%r532; $L757: .loc 1 811 5 cvt.u16.u32 %r534,%r140; add.u16 %r535,%r534,%r534; .loc 1 812 4 cvt.u16.u32 %r537,%r146; and.b16 %r536,%r537,2; setp.ne.u16 %r538,%r536,0; @ %r538 bra $L758; .loc 1 811 5 st.u16 [%r147],%r535; bra $L759; $L758: .loc 1 813 6 or.b16 %r540,%r535,1; st.u16 [%r147],%r540; $L759: .loc 1 814 7 cvt.u16.u32 %r542,%r146; add.u16 %r543,%r542,%r542; cvt.u32.u16 %r146,%r543; .loc 1 815 2 add.u64 %r147,%r147,-2; .loc 1 807 1 setp.ne.u64 %r546,%r147,%r783; @ %r546 bra $L760; .loc 1 805 6 mov.u32 %r153,%r214; .loc 1 804 3 mov.u64 %r154,%r784; $L764: .loc 1 809 6 ld.u16 %r148,[%r154]; .loc 1 809 4 cvt.u16.u32 %r547,%r148; setp.ge.s16 %r548,%r547,0; @ %r548 bra $L761; .loc 1 810 8 cvt.u16.u32 %r550,%r153; or.b16 %r549,%r550,1; cvt.u32.u16 %r153,%r549; $L761: .loc 1 811 5 cvt.u16.u32 %r551,%r148; add.u16 %r552,%r551,%r551; .loc 1 812 4 cvt.u16.u32 %r554,%r153; and.b16 %r553,%r554,2; setp.ne.u16 %r555,%r553,0; @ %r555 bra $L762; .loc 1 811 5 st.u16 [%r154],%r552; bra $L763; $L762: .loc 1 813 6 or.b16 %r557,%r552,1; st.u16 [%r154],%r557; $L763: .loc 1 814 7 cvt.u16.u32 %r559,%r153; add.u16 %r560,%r559,%r559; cvt.u32.u16 %r153,%r560; .loc 1 815 2 add.u64 %r154,%r154,-2; .loc 1 807 1 setp.ne.u64 %r563,%r154,%r783; @ %r563 bra $L764; .loc 1 913 7 mov.u32 %r242,%r796; .loc 1 912 3 mov.u64 %r168,%r784; .loc 1 911 3 mov.u64 %r167,%r787; $L765: .loc 1 916 6 ld.u16 %r564,[%r167]; .loc 1 916 29 ld.u16 %r565,[%r168]; .loc 1 916 27 add.u64 %r566,%r564,%r565; .loc 1 916 50 cvt.u64.u32 %r567,%r242; .loc 1 916 4 add.u64 %r164,%r566,%r567; .loc 1 921 7 st.u16 [%r168],%r164; .loc 1 922 2 add.u64 %r167,%r167,-2; .loc 1 923 2 add.u64 %r168,%r168,-2; .loc 1 917 4 shr.u64 %r568,%r164,16; cvt.u32.u64 %r570,%r568; and.b32 %r242,%r570,1; .loc 1 914 1 setp.ne.u64 %r573,%r167,%r786; @ %r573 bra $L765; .loc 1 805 6 mov.u32 %r175,%r214; .loc 1 804 3 mov.u64 %r176,%r784; $L769: .loc 1 809 6 ld.u16 %r170,[%r176]; .loc 1 809 4 cvt.u16.u32 %r574,%r170; setp.ge.s16 %r575,%r574,0; @ %r575 bra $L766; .loc 1 810 8 cvt.u16.u32 %r577,%r175; or.b16 %r576,%r577,1; cvt.u32.u16 %r175,%r576; $L766: .loc 1 811 5 cvt.u16.u32 %r578,%r170; add.u16 %r579,%r578,%r578; .loc 1 812 4 cvt.u16.u32 %r581,%r175; and.b16 %r580,%r581,2; setp.ne.u16 %r582,%r580,0; @ %r582 bra $L767; .loc 1 811 5 st.u16 [%r176],%r579; bra $L768; $L767: .loc 1 813 6 or.b16 %r584,%r579,1; st.u16 [%r176],%r584; $L768: .loc 1 814 7 cvt.u16.u32 %r586,%r175; add.u16 %r587,%r586,%r586; cvt.u32.u16 %r175,%r587; .loc 1 815 2 add.u64 %r176,%r176,-2; .loc 1 807 1 setp.ne.u64 %r590,%r176,%r783; @ %r590 bra $L769; .loc 1 3453 4 ld.u16 %r591,[%frame+310]; setp.ne.u16 %r592,%r591,0; @ %r592 bra $L770; .loc 1 3455 7 add.u32 %r178,%r178,-1; mov.u64 %r218,%r785; $L771: .loc 1 696 7 ld.u16 %r593,[%r233]; st.u16 [%r218],%r593; add.u64 %r233,%r233,2; add.u64 %r218,%r218,2; .loc 1 695 1 setp.ne.u64 %r594,%r797,%r233; @ %r594 bra $L771; .loc 1 698 4 st.u16 [%frame+356],%r529; .loc 1 3446 6 setp.eq.u32 %r596,%r178,0; @ %r596 bra $L772; .loc 1 3446 19 ld.u16 %r597,[%frame+336]; setp.eq.u16 %r598,%r597,0; @ %r598 bra $L773; bra $L755; $L754: .loc 1 3458 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r785; call (%value_in),enormlz,(%out_arg1); ld.param.u32 %r601,[%value_in]; } .loc 1 3458 3 setp.le.s32 %r602,%r601,144; @ %r602 bra $L774; $L798: .loc 1 672 8 mov.u16 %r603,0; $L775: st.u16 [%r137],%r603; add.u64 %r137,%r137,2; .loc 1 671 1 setp.ne.u64 %r604,%r57,%r137; @ %r604 bra $L775; ld.u16 %r255,[%frame+334]; cvt.u16.u32 %r606,%r255; and.b16 %r605,%r606,32767; cvt.u32.u16 %r256,%r605; bra $L744; $L774: .loc 1 3464 1 add.u64 %r779,%frame,200; .loc 1 3463 28 mov.u32 %r615,16526; sub.u32 %r614,%r615,%r601; .loc 1 3463 6 cvt.s64.s32 %r616,%r614; .loc 1 3464 1 mov.u32 %r611,64; mov.u32 %r609,0; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r785; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r123; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r609; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r616; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r611; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r779; call emdnorm,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); } .loc 1 3474 6 ld.u16 %r201,[%frame+334]; .loc 1 3475 3 setp.eq.u32 %r618,%r178,0; @ %r618 bra $L776; add.u64 %r782,%frame,306; $L801: .loc 1 3481 3 setp.ge.s32 %r619,%r178,0; @ %r619 bra $L817; .loc 1 3485 4 setp.lt.s32 %r620,%r178,-4096; @ %r620 bra $L778; .loc 1 3483 7 neg.s32 %r178,%r178; .loc 1 3484 8 mov.u32 %r194,-1; add.u64 %r781,%frame,280; bra $L777; $L778: .loc 1 3487 3 add.u64 %r781,%frame,280; cvta.const.u64 %r621,etens; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r621; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r781; call emovi,(%out_arg1,%out_arg2); } .loc 1 3488 13 ld.u16 %r624,[%frame+282]; .loc 1 3488 8 sub.u64 %r189,%r201,%r624; .loc 1 3489 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r781; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r785; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r779; call (%value_in),edivm,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r631,[%value_in]; } .loc 1 3490 8 add.u64 %r201,%r189,16383; mov.u32 %r632,-4096; sub.u32 %r178,%r632,%r178; .loc 1 3484 8 mov.u32 %r194,-1; bra $L777; $L817: .loc 1 3480 7 mov.u32 %r194,1; add.u64 %r781,%frame,280; $L777: mov.u64 %r236,%r782; add.u64 %r234,%frame,326; mov.u32 %r248,0; cvta.const.u64 %r190,eone; $L780: .loc 1 455 11 add.u64 %r190,%r190,2; .loc 1 455 7 cvt.u16.u32 %r633,%r248; st.u16 [%r236],%r633; add.u64 %r236,%r236,2; .loc 1 454 1 setp.eq.u64 %r634,%r234,%r236; @ %r634 bra $L818; ld.u16 %r248,[%r190]; bra $L780; $L818: .loc 1 3494 3 cvta.const.u64 %r193,etens+240; .loc 1 3496 5 mov.u32 %r191,1; add.u64 %r780,%r193,-260; $L779: .loc 1 3499 10 and.b32 %r635,%r178,%r191; .loc 1 3499 4 setp.eq.u32 %r636,%r635,0; @ %r636 bra $L781; .loc 1 3500 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r193; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r782; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r782; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r779; call emul,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); } $L781: .loc 1 3501 4 add.u64 %r193,%r193,-20; .loc 1 3502 6 add.u32 %r191,%r191,%r191; .loc 1 3504 1 setp.ne.u64 %r646,%r193,%r780; @ %r646 bra $L779; .loc 1 3506 1 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r782; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r781; call emovi,(%out_arg1,%out_arg2); } .loc 1 3507 3 setp.ne.u32 %r651,%r194,-1; @ %r651 bra $L782; .loc 1 3509 12 ld.u16 %r652,[%frame+282]; .loc 1 3509 7 sub.u64 %r197,%r201,%r652; .loc 1 3510 6 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r781; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r785; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r779; call (%value_in),edivm,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r659,[%value_in]; } mov.u32 %r178,%r659; .loc 1 3511 7 add.u64 %r201,%r197,16383; bra $L776; $L782: .loc 1 3515 12 ld.u16 %r660,[%frame+282]; .loc 1 3515 7 add.u64 %r200,%r660,%r201; .loc 1 3516 6 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r781; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r785; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r779; call (%value_in),emulm,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r667,[%value_in]; } mov.u32 %r178,%r667; .loc 1 3517 7 add.u64 %r201,%r200,-16382; $L776: .loc 1 3531 13 mov.u32 %r668,53; st.u32 [%frame+204],%r668; .loc 1 3524 7 add.u64 %r676,%r201,-15360; .loc 1 3532 1 mov.u32 %r673,64; mov.u32 %r671,0; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r785; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r178; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r671; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r676; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r673; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r779; call emdnorm,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); } ld.u16 %r255,[%frame+334]; cvt.u16.u32 %r679,%r255; and.b16 %r678,%r679,32767; cvt.u32.u16 %r256,%r678; $L744: .loc 1 3536 13 st.u32 [%frame+204],%r37; .loc 1 3537 7 cvt.u16.u32 %r680,%r212; st.u16 [%frame+332],%r680; .loc 1 708 3 cvt.u16.u32 %r681,%r256; setp.ne.u16 %r682,%r681,32767; @ %r682 bra $L783; $L752: add.u64 %r258,%frame,338; $L786: .loc 1 712 5 ld.u16 %r684,[%r258]; setp.eq.u16 %r685,%r684,0; @ %r685 bra $L784; add.u64 %r272,%frame,360; add.u64 %r259,%frame,368; mov.u32 %r253,0; cvta.const.u64 %r220,nan53; bra $L785; $L784: add.u64 %r258,%r258,2; .loc 1 710 2 setp.ne.u64 %r686,%r57,%r258; @ %r686 bra $L786; bra $L887; $L785: .loc 1 3781 13 add.u64 %r220,%r220,2; .loc 1 3781 9 cvt.u16.u32 %r687,%r253; st.u16 [%r272],%r687; add.u64 %r272,%r272,2; .loc 1 3780 1 setp.eq.u64 %r688,%r259,%r272; @ %r688 bra $L788; ld.u16 %r253,[%r220]; bra $L785; $L783: .loc 1 2115 4 mov.u16 %r689,0; st.u16 [%frame+366],%r689; .loc 1 2116 3 setp.eq.u32 %r690,%r212,0; @ %r690 bra $L789; $L796: .loc 1 2117 5 mov.u16 %r691,-32768; st.u16 [%frame+366],%r691; $L789: .loc 1 2120 3 cvt.u16.u32 %r692,%r255; setp.le.u16 %r693,%r692,2046; @ %r693 bra $L790; ld.u16 %r695,[%frame+366]; or.b16 %r694,%r695,32752; cvt.u32.u16 %r250,%r694; $L797: .loc 1 2123 5 cvt.u16.u32 %r696,%r250; st.u16 [%frame+366],%r696; .loc 1 2127 9 mov.u32 %r697,0; st.u32 [%frame+360],%r697; .loc 1 2125 9 cvt.u16.u32 %r698,%r697; st.u16 [%frame+364],%r698; bra $L788; $L790: .loc 1 2149 3 setp.ne.u32 %r699,%r255,0; @ %r699 bra $L791; mov.u32 %r701,4; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r785; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r701; call (%value_in),eshift$part$4,(%out_arg1,%out_arg2); ld.param.u32 %r703,[%value_in]; } mov.u32 %r249,%r255; bra $L792; $L791: mov.u32 %r705,5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r785; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r705; call (%value_in),eshift$part$4,(%out_arg1,%out_arg2); ld.param.u32 %r707,[%value_in]; } .loc 1 2155 4 shl.b32 %r708,%r255,4; cvt.u16.u32 %r709,%r708; cvt.s32.s16 %r249,%r709; $L792: .loc 1 2158 3 ld.u16 %r711,[%frame+336]; and.b16 %r710,%r711,15; cvt.u16.u32 %r713,%r249; or.b16 %r712,%r710,%r713; .loc 1 2159 4 ld.u16 %r715,[%frame+366]; or.b16 %r714,%r715,%r712; st.u16 [%frame+366],%r714; .loc 1 2161 8 ld.u16 %r716,[%frame+338]; st.u16 [%frame+364],%r716; .loc 1 2162 8 ld.u16 %r717,[%frame+340]; st.u16 [%frame+362],%r717; .loc 1 2163 8 ld.u16 %r718,[%frame+342]; st.u16 [%frame+360],%r718; $L788: .loc 1 3568 4 setp.eq.u32 %r719,%r186,0; @ %r719 bra $L793; .loc 1 3569 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r135; call __nvptx_free,(%out_arg1); } $L793: .loc 1 3241 6 setp.eq.u64 %r721,%r276,0; @ %r721 bra $L794; .loc 1 3567 15 sub.u64 %r722,%r204,%r135; .loc 1 3567 10 cvt.u32.u64 %r724,%r722; add.u32 %r723,%r244,%r724; .loc 1 3242 13 cvt.s64.s32 %r725,%r723; add.u64 %r726,%r275,%r725; .loc 1 3242 9 st.u64 [%r276],%r726; $L794: .loc 1 3243 11 ld.f64 %r274,[%frame+360]; bra $L888; $L886: .loc 1 3330 4 ld.u16 %r728,[%frame+336]; setp.eq.u16 %r729,%r728,0; @ %r729 bra $L819; .loc 1 3321 9 mov.u32 %r46,1; bra $L713; $L750: .loc 1 3429 3 setp.gt.s32 %r730,%r128,4932; @ %r730 bra $L737; bra $L734; $L887: .loc 1 2116 3 setp.ne.u32 %r732,%r212,0; @ %r732 bra $L796; mov.u32 %r250,32752; bra $L797; $L889: .loc 1 3464 1 add.u64 %r779,%frame,200; .loc 1 3463 28 mov.u32 %r741,16526; sub.u32 %r740,%r741,%r746; .loc 1 3463 6 cvt.s64.s32 %r742,%r740; .loc 1 3464 1 mov.u32 %r737,64; mov.u32 %r735,0; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r785; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r123; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r735; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r742; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r737; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r779; call emdnorm,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); } .loc 1 3474 6 ld.u16 %r201,[%frame+334]; .loc 1 3480 7 mov.u32 %r194,1; add.u64 %r782,%frame,306; add.u64 %r781,%frame,280; bra $L777; $L755: .loc 1 3458 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r785; call (%value_in),enormlz,(%out_arg1); ld.param.u32 %r746,[%value_in]; } .loc 1 3458 3 setp.gt.s32 %r747,%r746,144; @ %r747 bra $L798; bra $L889; $L890: .loc 1 3464 1 add.u64 %r779,%frame,200; .loc 1 3463 28 mov.u32 %r756,16526; sub.u32 %r755,%r756,%r761; .loc 1 3463 6 cvt.s64.s32 %r757,%r755; .loc 1 3464 1 mov.u32 %r752,64; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r785; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r123; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r178; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r757; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r752; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r779; call emdnorm,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); } .loc 1 3474 6 ld.u16 %r201,[%frame+334]; bra $L776; $L772: .loc 1 3458 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r785; call (%value_in),enormlz,(%out_arg1); ld.param.u32 %r761,[%value_in]; } .loc 1 3458 3 setp.gt.s32 %r762,%r761,144; @ %r762 bra $L798; bra $L890; $L891: .loc 1 3464 1 add.u64 %r779,%frame,200; .loc 1 3463 28 mov.u32 %r771,16526; sub.u32 %r770,%r771,%r776; .loc 1 3463 6 cvt.s64.s32 %r772,%r770; .loc 1 3464 1 mov.u32 %r767,64; mov.u32 %r765,0; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r785; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r123; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r765; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r772; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r767; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r779; call emdnorm,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); } .loc 1 3474 6 ld.u16 %r201,[%frame+334]; bra $L801; $L770: .loc 1 3458 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r785; call (%value_in),enormlz,(%out_arg1); ld.param.u32 %r776,[%value_in]; } .loc 1 3458 3 setp.gt.s32 %r777,%r776,144; @ %r777 bra $L798; bra $L891; $L888: .loc 1 3244 1 mov.f64 %value,%r274; st.param.f64 [%value_out],%value; ret; } lib_a-llabs.o/ 1591654539 399 399 100644 527 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 65 21 abs.s64 %value,%r23; .loc 1 66 1 st.param.u64 [%value_out],%value; ret; } lib_a-lldiv.o/ 1591654539 399 399 100644 1282 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r31; .reg .u64 %r33; .reg .u64 %r34; .reg .u16 %r37; .reg .u16 %r38; .reg .u16 %r39; .reg .u32 %r40; .reg .u16 %r41; .reg .pred %r42; mov.u64 %r27,%ar0; mov.u64 %r28,%ar1; mov.u64 %r29,%ar2; .loc 1 107 22 div.s64 %r22,%r28,%r29; .loc 1 108 21 rem.s64 %r23,%r28,%r29; .loc 1 109 17 shr.u64 %r31,%r23,63; .loc 1 109 5 not.b64 %r33,%r28; shr.u64 %r34,%r33,63; .loc 1 109 17 cvt.u16.u64 %r38,%r31; cvt.u16.u64 %r39,%r34; and.b16 %r37,%r38,%r39; cvt.u32.u16 %r40,%r37; cvt.u16.u8 %r41,%r40; setp.eq.u16 %r42,%r41,0; @ %r42 bra $L2; .loc 1 110 14 add.u64 %r22,%r22,1; .loc 1 111 14 sub.u64 %r23,%r23,%r29; $L2: .loc 1 113 9 st.u64 [%r27],%r22; st.u64 [%r27+8],%r23; .loc 1 114 1 ret; } /102 1591654539 399 399 100644 3309 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: __messages_load_locale .visible .func (.param .u32 %value_out) __messages_load_locale (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/locale/lmessages.c" // BEGIN GLOBAL FUNCTION DECL: __get_current_messages_locale .visible .func (.param .u64 %value_out) __get_current_messages_locale; // BEGIN GLOBAL FUNCTION DECL: __part_load_locale .extern .func (.param .u32 %value_out) __part_load_locale (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u32 %in_ar4, .param .u32 %in_ar5, .param .u64 %in_ar6); // BEGIN VAR DEF: empty .global .align 1 .u8 empty[1]; // BEGIN VAR DEF: _messages_using_locale .global .align 4 .u32 _messages_using_locale[1]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[12] = {76,67,95,77,69,83,83,65,71,69,83,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[6] = {94,91,121,89,93,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[6] = {94,91,110,78,93,0 }; // BEGIN VAR DEF: $LC3 .const .align 1 .u8 $LC3[4] = {121,101,115,0 }; // BEGIN VAR DEF: $LC4 .const .align 1 .u8 $LC4[3] = {110,111,0 }; // BEGIN VAR DEF: _C_messages_locale .const .align 8 .u64 _C_messages_locale[4] = {generic($LC1),generic($LC2),generic($LC3),generic($LC4) }; // BEGIN VAR DEF: _messages_locale .global .align 8 .u64 _messages_locale[4]; // BEGIN GLOBAL FUNCTION DEF: __messages_load_locale .visible .func (.param .u32 %value_out) __messages_load_locale (.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 %r26; .reg .u64 %r27; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u32 %r34; .reg .u32 %r35; .reg .u32 %r37; mov.u64 %r23,%ar0; .loc 1 91 26 cvta.global.u64 %r26,_messages_locale; cvta.global.u64 %r27,empty; st.u64 [%r26+16],%r27; .loc 1 92 25 st.u64 [%r26+24],%r27; .loc 1 94 9 mov.u32 %r35,2; mov.u32 %r34,4; cvta.const.u64 %r33,$LC0; mov.u64 %r32,0; cvta.global.u64 %r31,_messages_using_locale; { .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],%r32; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r33; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r34; .param .u32 %out_arg6; st.param.u32 [%out_arg6],%r35; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r26; call (%value_in),__part_load_locale,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u32 %r37,[%value_in]; } .loc 1 99 1 mov.u32 %value,%r37; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __get_current_messages_locale .visible .func (.param .u64 %value_out) __get_current_messages_locale { .reg .u64 %value; .reg .u64 %r23; .reg .u32 %r24; .reg .pred %r25; .loc 1 106 3 ld.global.u32 %r24,[_messages_using_locale]; setp.ne.u32 %r25,%r24,0; @ %r25 bra $L4; cvta.const.u64 %r23,_C_messages_locale; bra $L2; $L4: cvta.global.u64 %r23,_messages_locale; $L2: .loc 1 107 1 mov.u64 %value,%r23; st.param.u64 [%value_out],%value; ret; } /121 1591654539 399 399 100644 8438 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: __monetary_load_locale .visible .func (.param .u32 %value_out) __monetary_load_locale (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/locale/lmonetary.c" // BEGIN GLOBAL FUNCTION DECL: __get_current_monetary_locale .visible .func (.param .u64 %value_out) __get_current_monetary_locale; // BEGIN GLOBAL VAR DECL: __mlocale_changed .extern .global .align 4 .u32 __mlocale_changed[1]; // BEGIN GLOBAL FUNCTION DECL: __part_load_locale .extern .func (.param .u32 %value_out) __part_load_locale (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u32 %in_ar4, .param .u32 %in_ar5, .param .u64 %in_ar6); // BEGIN GLOBAL FUNCTION DECL: __fix_locale_grouping_str .extern .func (.param .u64 %value_out) __fix_locale_grouping_str (.param .u64 %in_ar0); // 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 VAR DEF: empty .global .align 1 .u8 empty[1]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[12] = {76,67,95,77,79,78,69,84,65,82,89,0 }; // BEGIN VAR DEF: numempty .global .align 1 .u8 numempty[2] = {127,0 }; // BEGIN VAR DEF: _C_monetary_locale .const .align 8 .u64 _C_monetary_locale[15] = {generic(empty),generic(empty),generic(empty),generic(empty),generic(numempty),generic(empty),generic(empty),generic(numempty),generic(numempty),generic(numempty),generic(numempty),generic(numempty),generic(numempty),generic(numempty),generic(numempty) }; // BEGIN VAR DEF: _monetary_locale .global .align 8 .u64 _monetary_locale[15]; // BEGIN VAR DEF: _monetary_using_locale .global .align 4 .u32 _monetary_using_locale[1]; // BEGIN GLOBAL FUNCTION DEF: __monetary_load_locale .visible .func (.param .u32 %value_out) __monetary_load_locale (.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 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r35; .reg .u64 %r37; .reg .u64 %r39; .reg .u64 %r41; .reg .u64 %r43; .reg .u64 %r45; .reg .u64 %r47; .reg .u64 %r58; .reg .u32 %r61; .reg .u64 %r63; .reg .u64 %r64; .reg .u64 %r65; .reg .u32 %r67; .reg .u32 %r69; .reg .pred %r70; .reg .u32 %r71; .reg .pred %r72; .reg .u64 %r75; .reg .u64 %r76; .reg .u32 %r81; .reg .u64 %r82; .reg .u32 %r83; .reg .pred %r84; .reg .u64 %r89; .reg .u32 %r90; .reg .pred %r91; .reg .u64 %r96; .reg .u32 %r97; .reg .pred %r98; .reg .u64 %r103; .reg .u32 %r104; .reg .pred %r105; .reg .u64 %r110; .reg .u32 %r111; .reg .pred %r112; .reg .u64 %r117; .reg .u32 %r118; .reg .pred %r119; .reg .u64 %r124; .reg .u32 %r125; .reg .pred %r126; .reg .u64 %r131; .reg .u32 %r132; .reg .pred %r133; .reg .u64 %r135; mov.u64 %r58,%ar0; .loc 1 118 20 mov.u32 %r61,1; st.global.u32 [__mlocale_changed],%r61; .loc 1 119 8 cvta.global.u64 %r135,_monetary_locale; mov.u32 %r67,15; cvta.const.u64 %r65,$LC0; mov.u64 %r64,0; cvta.global.u64 %r63,_monetary_using_locale; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r58; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r63; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r64; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r65; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r67; .param .u32 %out_arg6; st.param.u32 [%out_arg6],%r67; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r135; call (%value_in),__part_load_locale,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u32 %r69,[%value_in]; } .loc 1 123 5 setp.ne.u32 %r70,%r69,0; @ %r70 bra $L1; .loc 1 123 15 ld.global.u32 %r71,[_monetary_using_locale]; setp.eq.u32 %r72,%r71,0; @ %r72 bra $L1; .loc 1 125 8 ld.u64 %r75,[%r135+32]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r75; call (%value_in),__fix_locale_grouping_str,(%out_arg1); ld.param.u64 %r76,[%value_in]; } .loc 1 124 33 st.u64 [%r135+32],%r76; .loc 1 130 3 ld.u64 %r25,[%r135+56]; .loc 1 85 10 mov.u32 %r81,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r64; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r81; call (%value_in),strtol,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r82,[%value_in]; } .loc 1 86 5 cvt.u32.u64 %r83,%r82; setp.ne.u32 %r84,%r83,-1; selp.u64 %r47,%r82,127,%r84; .loc 1 130 3 st.u8 [%r25],%r47; .loc 1 131 3 ld.u64 %r26,[%r135+64]; .loc 1 85 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r64; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r81; call (%value_in),strtol,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r89,[%value_in]; } .loc 1 86 5 cvt.u32.u64 %r90,%r89; setp.ne.u32 %r91,%r90,-1; selp.u64 %r45,%r89,127,%r91; .loc 1 131 3 st.u8 [%r26],%r45; .loc 1 132 3 ld.u64 %r27,[%r135+72]; .loc 1 85 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r64; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r81; call (%value_in),strtol,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r96,[%value_in]; } .loc 1 86 5 cvt.u32.u64 %r97,%r96; setp.ne.u32 %r98,%r97,-1; selp.u64 %r43,%r96,127,%r98; .loc 1 132 3 st.u8 [%r27],%r43; .loc 1 133 3 ld.u64 %r28,[%r135+80]; .loc 1 85 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r64; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r81; call (%value_in),strtol,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r103,[%value_in]; } .loc 1 86 5 cvt.u32.u64 %r104,%r103; setp.ne.u32 %r105,%r104,-1; selp.u64 %r41,%r103,127,%r105; .loc 1 133 3 st.u8 [%r28],%r41; .loc 1 134 3 ld.u64 %r29,[%r135+88]; .loc 1 85 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r64; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r81; call (%value_in),strtol,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r110,[%value_in]; } .loc 1 86 5 cvt.u32.u64 %r111,%r110; setp.ne.u32 %r112,%r111,-1; selp.u64 %r39,%r110,127,%r112; .loc 1 134 3 st.u8 [%r29],%r39; .loc 1 135 3 ld.u64 %r30,[%r135+96]; .loc 1 85 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r64; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r81; call (%value_in),strtol,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r117,[%value_in]; } .loc 1 86 5 cvt.u32.u64 %r118,%r117; setp.ne.u32 %r119,%r118,-1; selp.u64 %r37,%r117,127,%r119; .loc 1 135 3 st.u8 [%r30],%r37; .loc 1 136 3 ld.u64 %r31,[%r135+104]; .loc 1 85 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r64; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r81; call (%value_in),strtol,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r124,[%value_in]; } .loc 1 86 5 cvt.u32.u64 %r125,%r124; setp.ne.u32 %r126,%r125,-1; selp.u64 %r35,%r124,127,%r126; .loc 1 136 3 st.u8 [%r31],%r35; .loc 1 137 3 ld.u64 %r32,[%r135+112]; .loc 1 85 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r64; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r81; call (%value_in),strtol,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r131,[%value_in]; } .loc 1 86 5 cvt.u32.u64 %r132,%r131; setp.ne.u32 %r133,%r132,-1; selp.u64 %r33,%r131,127,%r133; .loc 1 137 3 st.u8 [%r32],%r33; $L1: .loc 1 141 1 mov.u32 %value,%r69; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __get_current_monetary_locale .visible .func (.param .u64 %value_out) __get_current_monetary_locale { .reg .u64 %value; .reg .u64 %r23; .reg .u32 %r24; .reg .pred %r25; .loc 1 148 3 ld.global.u32 %r24,[_monetary_using_locale]; setp.ne.u32 %r25,%r24,0; @ %r25 bra $L16; cvta.const.u64 %r23,_C_monetary_locale; bra $L14; $L16: cvta.global.u64 %r23,_monetary_locale; $L14: .loc 1 149 1 mov.u64 %value,%r23; st.param.u64 [%value_out],%value; ret; } /140 1591654539 399 399 100644 3779 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: __numeric_load_locale .visible .func (.param .u32 %value_out) __numeric_load_locale (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/locale/lnumeric.c" // BEGIN GLOBAL FUNCTION DECL: __get_current_numeric_locale .visible .func (.param .u64 %value_out) __get_current_numeric_locale; // BEGIN GLOBAL VAR DECL: __nlocale_changed .extern .global .align 4 .u32 __nlocale_changed[1]; // BEGIN GLOBAL FUNCTION DECL: __part_load_locale .extern .func (.param .u32 %value_out) __part_load_locale (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u32 %in_ar4, .param .u32 %in_ar5, .param .u64 %in_ar6); // BEGIN GLOBAL FUNCTION DECL: __fix_locale_grouping_str .extern .func (.param .u64 %value_out) __fix_locale_grouping_str (.param .u64 %in_ar0); // BEGIN VAR DEF: _numeric_locale .global .align 8 .u64 _numeric_locale[3]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[11] = {76,67,95,78,85,77,69,82,73,67,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[2] = {46,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[1] = {0 }; // BEGIN VAR DEF: _numeric_using_locale .global .align 4 .u32 _numeric_using_locale[1]; // BEGIN VAR DEF: numempty .global .align 1 .u8 numempty[2] = {127,0 }; // BEGIN VAR DEF: _C_numeric_locale .const .align 8 .u64 _C_numeric_locale[3] = {generic($LC1),generic($LC2),generic(numempty) }; // BEGIN GLOBAL FUNCTION DEF: __numeric_load_locale .visible .func (.param .u32 %value_out) __numeric_load_locale (.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 .u32 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u32 %r35; .reg .u64 %r36; .reg .u32 %r37; .reg .pred %r38; .reg .u32 %r39; .reg .pred %r40; .reg .u64 %r43; .reg .u64 %r44; mov.u64 %r26,%ar0; .loc 1 78 20 mov.u32 %r29,1; st.global.u32 [__nlocale_changed],%r29; .loc 1 79 8 cvta.global.u64 %r36,_numeric_locale; mov.u32 %r35,3; cvta.const.u64 %r33,$LC0; mov.u64 %r32,0; cvta.global.u64 %r31,_numeric_using_locale; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r32; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r33; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r35; .param .u32 %out_arg6; st.param.u32 [%out_arg6],%r35; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r36; call (%value_in),__part_load_locale,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u32 %r37,[%value_in]; } .loc 1 83 5 setp.ne.u32 %r38,%r37,0; @ %r38 bra $L1; .loc 1 83 15 ld.global.u32 %r39,[_numeric_using_locale]; setp.eq.u32 %r40,%r39,0; @ %r40 bra $L1; .loc 1 85 4 ld.u64 %r43,[%r36+16]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r43; call (%value_in),__fix_locale_grouping_str,(%out_arg1); ld.param.u64 %r44,[%value_in]; } .loc 1 84 28 st.u64 [%r36+16],%r44; $L1: .loc 1 88 1 mov.u32 %value,%r37; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __get_current_numeric_locale .visible .func (.param .u64 %value_out) __get_current_numeric_locale { .reg .u64 %value; .reg .u64 %r23; .reg .u32 %r24; .reg .pred %r25; .loc 1 95 3 ld.global.u32 %r24,[_numeric_using_locale]; setp.ne.u32 %r25,%r24,0; @ %r25 bra $L8; cvta.const.u64 %r23,_C_numeric_locale; bra $L6; $L8: cvta.global.u64 %r23,_numeric_locale; $L6: .loc 1 96 1 mov.u64 %value,%r23; st.param.u64 [%value_out],%value; ret; } lib_a-locale.o/ 1591654539 399 399 100644 6208 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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_charset .visible .func (.param .u64 %value_out) __locale_charset; // BEGIN GLOBAL FUNCTION DECL: __locale_mb_cur_max .visible .func (.param .u32 %value_out) __locale_mb_cur_max; // BEGIN GLOBAL FUNCTION DECL: __locale_msgcharset .visible .func (.param .u64 %value_out) __locale_msgcharset; // BEGIN GLOBAL FUNCTION DECL: __locale_cjk_lang .visible .func (.param .u32 %value_out) __locale_cjk_lang; // BEGIN GLOBAL FUNCTION DECL: _localeconv_r .visible .func (.param .u64 %value_out) _localeconv_r (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: setlocale .visible .func (.param .u64 %value_out) setlocale (.param .u32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: localeconv .visible .func (.param .u64 %value_out) localeconv; // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: strcmp .extern .func (.param .u32 %value_out) strcmp (.param .u64 %in_ar0, .param .u64 %in_ar1); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[2] = {67,0 }; // BEGIN GLOBAL VAR DEF: _PathLocale .visible .global .align 8 .u64 _PathLocale[1]; // BEGIN GLOBAL VAR DEF: __mb_cur_max .visible .global .align 4 .u32 __mb_cur_max[1] = {1 }; // BEGIN VAR DEF: lc_ctype_charset .global .align 1 .u8 lc_ctype_charset[32] = {65,83,67,73,73,0 }; // BEGIN VAR DEF: $LC3 .const .align 1 .u8 $LC3[2] = {46,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[1] = {0 }; // BEGIN VAR DEF: lconv .global .align 8 .u64 lconv[12] = {generic($LC3),generic($LC2),generic($LC2),generic($LC2),generic($LC2),generic($LC2),generic($LC2),generic($LC2),generic($LC2),generic($LC2),9187201950435737471,140185576636287 }; // BEGIN GLOBAL VAR DEF: __nlocale_changed .visible .global .align 4 .u32 __nlocale_changed[1]; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[6] = {80,79,83,73,88,0 }; // BEGIN VAR DEF: lc_message_charset .global .align 1 .u8 lc_message_charset[32] = {65,83,67,73,73,0 }; // BEGIN GLOBAL VAR DEF: __mlocale_changed .visible .global .align 4 .u32 __mlocale_changed[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 282 6 setp.ne.u64 %r29,%r28,0; @ %r29 bra $L2; $L4: .loc 1 288 10 cvta.const.u64 %r25,$LC0; bra $L1; $L2: .loc 1 284 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 284 10 setp.eq.u32 %r33,%r32,0; @ %r33 bra $L4; .loc 1 284 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 284 36 setp.eq.u32 %r37,%r36,0; @ %r37 bra $L4; .loc 1 285 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 285 4 setp.eq.u32 %r41,%r40,0; @ %r41 bra $L4; .loc 1 286 16 mov.u64 %r25,0; $L1: .loc 1 417 1 mov.u64 %value,%r25; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __locale_charset .visible .func (.param .u64 %value_out) __locale_charset { .reg .u64 %value; .loc 1 940 10 cvta.global.u64 %value,lc_ctype_charset; .loc 1 942 1 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; .loc 1 950 10 ld.global.u32 %value,[__mb_cur_max]; .loc 1 952 1 st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __locale_msgcharset .visible .func (.param .u64 %value_out) __locale_msgcharset { .reg .u64 %value; .loc 1 961 10 cvta.global.u64 %value,lc_message_charset; .loc 1 963 1 st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __locale_cjk_lang .visible .func (.param .u32 %value_out) __locale_cjk_lang { .reg .u32 %value; .loc 1 968 10 mov.u32 %value,0; .loc 1 969 1 st.param.u32 [%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 1020 10 cvta.global.u64 %value,lconv; .loc 1 1021 1 st.param.u64 [%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 .u32 %r24; .reg .u64 %r25; .reg .u64 %r29; .reg .u64 %r30; mov.u32 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 1033 10 ld.global.u64 %r29,[_impure_ptr]; { .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 .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; call (%value_in),_setlocale_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r30,[%value_in]; } .loc 1 1034 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: localeconv .visible .func (.param .u64 %value_out) localeconv { .reg .u64 %value; .loc 1 1040 10 cvta.global.u64 %value,lconv; .loc 1 1041 1 st.param.u64 [%value_out],%value; ret; } lib_a-lrand48.o/1591654539 399 399 100644 2072 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r38; .reg .u32 %r39; .reg .u64 %r40; .reg .u16 %r41; mov.u64 %r31,%ar0; .loc 1 21 17 add.u64 %r34,%r31,240; .loc 1 21 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 22 17 ld.u16 %r36,[%r31+244]; .loc 1 22 50 shl.b64 %r37,%r36,15; .loc 1 23 39 ld.u16 %r38,[%r31+242]; shr.u32 %r39,%r38,1; cvt.u16.u32 %r41,%r39; cvt.u64.u16 %r40,%r41; .loc 1 22 57 add.u64 %value,%r37,%r40; .loc 1 24 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 .u32 %r38; .reg .u32 %r39; .reg .u64 %r40; .reg .u16 %r41; .loc 1 30 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 21 17 add.u64 %r34,%r22,240; .loc 1 21 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 22 17 ld.u16 %r36,[%r22+244]; .loc 1 22 50 shl.b64 %r37,%r36,15; .loc 1 23 39 ld.u16 %r38,[%r22+242]; shr.u32 %r39,%r38,1; cvt.u16.u32 %r41,%r39; cvt.u64.u16 %r40,%r41; .loc 1 22 57 add.u64 %value,%r37,%r40; .loc 1 31 1 st.param.u64 [%value_out],%value; ret; } lib_a-malloc.o/ 1591654539 399 399 100644 1073 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 33 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 34 6 setp.eq.u64 %r29,%r28,0; @ %r29 bra $L3; .loc 1 35 6 add.u64 %r24,%r28,8; .loc 1 35 22 st.u64 [%r28],%r25; bra $L1; $L3: mov.u64 %r24,%r28; $L1: .loc 1 38 1 mov.u64 %value,%r24; st.param.u64 [%value_out],%value; ret; } lib_a-mallocr.o/1591654539 399 399 100644 1489 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } lib_a-memccpy.o/1591654539 399 399 100644 2761 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: memccpy .visible .func (.param .u64 %value_out) memccpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../newlib/libc/string/memccpy.c" // BEGIN GLOBAL FUNCTION DEF: memccpy .visible .func (.param .u64 %value_out) memccpy (.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 .u64 %r26; .reg .u32 %r32; .reg .u64 %r33; .reg .u64 %r36; .reg .u32 %r37; .reg .u64 %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u32 %r42; .reg .u64 %r43; .reg .u64 %r44; .reg .u64 %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .u32 %r48; .reg .u64 %r49; .reg .u32 %r50; .reg .pred %r51; .reg .u64 %r52; .reg .pred %r53; .reg .pred %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .u64 %r58; .reg .u64 %r59; .reg .pred %r60; .reg .pred %r61; .reg .u32 %r62; .reg .u16 %r63; .reg .pred %r65; .reg .pred %r66; .reg .u16 %r68; mov.u64 %r46,%ar0; mov.u64 %r47,%ar1; mov.u32 %r48,%ar2; mov.u64 %r49,%ar3; .loc 1 95 8 cvt.u32.u32 %r50,%r48; cvt.s32.s8 %r37,%r50; .loc 1 99 6 setp.le.u64 %r51,%r49,7; @ %r51 bra $L2; .loc 1 99 28 mov.u64 %r25,%r46; or.b64 %r52,%r47,%r25; and.b64 %r33,%r52,7; .loc 1 99 24 setp.ne.u64 %r53,%r33,0; @ %r53 bra $L2; cvt.s64.s8 %r44,%r50; mov.u32 %r42,8; $L3: .loc 1 114 22 shl.b64 %r24,%r33,8; .loc 1 114 14 add.u64 %r33,%r24,%r44; add.u32 %r42,%r42,-1; .loc 1 113 7 setp.ne.u32 %r55,%r42,0; @ %r55 bra $L3; $L4: mov.u64 %r43,%r25; .loc 1 120 50 ld.u64 %r26,[%r47]; .loc 1 121 18 xor.b64 %r39,%r33,%r26; .loc 1 122 15 add.u64 %r56,%r39,-72340172838076673; not.b64 %r57,%r39; and.b64 %r58,%r56,%r57; and.b64 %r59,%r58,-9187201950435737472; .loc 1 122 14 setp.ne.u64 %r60,%r59,0; @ %r60 bra $L8; .loc 1 124 40 add.u64 %r47,%r47,8; add.u64 %r25,%r25,8; mov.u64 %r46,%r25; .loc 1 124 26 st.u64 [%r43],%r26; .loc 1 125 16 add.u64 %r49,%r49,-8; .loc 1 118 13 setp.gt.u64 %r61,%r49,7; @ %r61 bra $L4; bra $L2; $L7: add.u64 %r45,%r40,1; .loc 1 135 21 ld.s8 %r32,[%r41]; .loc 1 135 19 cvt.u32.u32 %r62,%r32; st.u8 [%r40],%r62; add.u64 %r41,%r41,1; mov.u64 %r40,%r45; .loc 1 135 10 cvt.u16.u32 %r63,%r32; setp.eq.u16 %r65,%r63,%r68; @ ! %r65 bra $L6; bra $L1; $L8: mov.u64 %r46,%r25; $L2: mov.u64 %r40,%r46; mov.u64 %r41,%r47; add.u64 %r36,%r40,%r49; cvt.u16.u32 %r68,%r37; $L6: .loc 1 133 9 setp.ne.u64 %r66,%r36,%r40; @ %r66 bra $L7; .loc 1 90 8 mov.u64 %r45,0; $L1: .loc 1 144 1 mov.u64 %value,%r45; st.param.u64 [%value_out],%value; ret; } lib_a-memchr.o/ 1591654539 399 399 100644 3661 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r26; .reg .u64 %r27; .reg .u64 %r29; .reg .u64 %r37; .reg .u32 %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .u64 %r44; .reg .u64 %r48; .reg .u64 %r49; .reg .u32 %r50; .reg .u64 %r51; .reg .u32 %r52; .reg .u64 %r53; .reg .pred %r54; .reg .pred %r55; .reg .u16 %r56; .reg .u16 %r57; .reg .pred %r58; .reg .pred %r59; .reg .u16 %r60; .reg .pred %r62; .reg .u64 %r63; .reg .pred %r64; .reg .pred %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 .u64 %r74; .reg .u64 %r75; .reg .u64 %r76; .reg .u64 %r77; .reg .u64 %r78; .reg .pred %r79; .reg .pred %r80; .reg .u16 %r81; .reg .pred %r83; .reg .pred %r84; .reg .u16 %r86; .reg .u16 %r87; mov.u64 %r49,%ar0; mov.u32 %r50,%ar1; mov.u64 %r51,%ar2; .loc 1 78 17 cvt.u32.u32 %r52,%r50; cvt.u32.u8 %r39,%r52; .loc 1 85 10 and.b64 %r53,%r49,7; .loc 1 85 9 setp.eq.u64 %r54,%r53,0; @ %r54 bra $L12; .loc 1 87 18 add.u64 %r40,%r51,-1; .loc 1 87 10 setp.eq.u64 %r55,%r51,0; @ %r55 bra $L13; .loc 1 89 10 ld.u8 %r56,[%r49]; cvt.u16.u32 %r57,%r39; setp.eq.u16 %r58,%r56,%r57; @ %r58 bra $L14; cvt.u16.u32 %r87,%r39; bra $L4; $L5: .loc 1 87 18 add.u64 %r40,%r40,-1; .loc 1 87 10 setp.eq.u64 %r59,%r40,-1; @ %r59 bra $L15; .loc 1 89 10 ld.u8 %r60,[%r49]; setp.eq.u16 %r62,%r60,%r87; @ %r62 bra $L16; $L4: .loc 1 91 10 add.u64 %r49,%r49,1; .loc 1 85 10 and.b64 %r63,%r49,7; .loc 1 85 9 setp.ne.u64 %r64,%r63,0; @ %r64 bra $L5; bra $L2; $L12: mov.u64 %r40,%r51; $L2: .loc 1 94 6 setp.gt.u64 %r65,%r40,7; @ %r65 bra $L6; $L10: .loc 1 126 9 setp.eq.u64 %r66,%r40,0; @ %r66 bra $L17; $L8: .loc 1 128 10 ld.u8 %r67,[%r49]; cvt.u16.u32 %r68,%r39; setp.eq.u16 %r69,%r67,%r68; @ %r69 bra $L18; add.u64 %r37,%r49,%r40; cvt.u16.u32 %r86,%r39; bra $L7; $L6: .loc 1 105 16 shl.b32 %r70,%r50,8; and.b32 %r71,%r70,65535; .loc 1 105 21 and.b32 %r72,%r50,255; or.b32 %r73,%r71,%r72; .loc 1 105 12 cvt.s64.s32 %r41,%r73; .loc 1 106 19 shl.b64 %r26,%r41,16; .loc 1 106 12 or.b64 %r42,%r26,%r41; .loc 1 108 22 shl.b64 %r27,%r42,32; .loc 1 108 14 or.b64 %r44,%r27,%r42; $L9: .loc 1 112 15 ld.u64 %r74,[%r49]; xor.b64 %r29,%r44,%r74; add.u64 %r75,%r29,-72340172838076673; not.b64 %r76,%r29; and.b64 %r77,%r75,%r76; and.b64 %r78,%r77,-9187201950435737472; .loc 1 112 14 setp.ne.u64 %r79,%r78,0; @ %r79 bra $L8; .loc 1 114 18 add.u64 %r40,%r40,-8; .loc 1 115 15 add.u64 %r49,%r49,8; .loc 1 110 13 setp.gt.u64 %r80,%r40,7; @ %r80 bra $L9; bra $L10; $L11: .loc 1 128 10 ld.u8 %r81,[%r49]; setp.eq.u16 %r83,%r81,%r86; @ %r83 bra $L19; $L7: .loc 1 130 10 add.u64 %r49,%r49,1; .loc 1 126 9 setp.ne.u64 %r84,%r37,%r49; @ %r84 bra $L11; .loc 1 88 16 mov.u64 %r48,0; bra $L1; $L13: mov.u64 %r48,%r51; bra $L1; $L14: .loc 1 89 10 mov.u64 %r48,%r49; bra $L1; $L15: .loc 1 88 16 mov.u64 %r48,0; bra $L1; $L16: .loc 1 91 10 mov.u64 %r48,%r49; bra $L1; $L17: .loc 1 88 16 mov.u64 %r48,%r40; bra $L1; $L18: .loc 1 128 10 mov.u64 %r48,%r49; bra $L1; $L19: .loc 1 130 10 mov.u64 %r48,%r49; $L1: .loc 1 134 1 mov.u64 %value,%r48; st.param.u64 [%value_out],%value; ret; } lib_a-memcmp.o/ 1591654539 399 399 100644 2455 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r28; .reg .u32 %r29; .reg .u64 %r32; .reg .u64 %r34; .reg .u64 %r37; .reg .u32 %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .pred %r43; .reg .u64 %r44; .reg .u64 %r45; .reg .pred %r46; .reg .pred %r47; .reg .u16 %r48; .reg .u16 %r49; .reg .pred %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .pred %r53; .reg .pred %r54; .reg .u16 %r55; .reg .u16 %r56; .reg .pred %r57; .reg .u64 %r58; .reg .pred %r59; mov.u64 %r40,%ar0; mov.u64 %r41,%ar1; mov.u64 %r42,%ar2; .loc 1 81 6 setp.le.u64 %r43,%r42,7; @ %r43 bra $L2; .loc 1 81 25 or.b64 %r44,%r40,%r41; and.b64 %r45,%r44,7; .loc 1 81 21 setp.eq.u64 %r46,%r45,0; @ %r46 bra $L3; bra $L17; $L2: .loc 1 102 11 add.u64 %r32,%r42,-1; .loc 1 102 9 setp.eq.u64 %r47,%r42,0; @ %r47 bra $L12; $L11: .loc 1 104 11 ld.u8 %r28,[%r40]; .loc 1 104 18 ld.u8 %r29,[%r41]; .loc 1 104 10 cvt.u16.u32 %r48,%r28; cvt.u16.u32 %r49,%r29; setp.ne.u16 %r50,%r48,%r49; @ ! %r50 bra $L18; bra $L6; $L3: .loc 1 89 14 ld.u64 %r51,[%r40]; ld.u64 %r52,[%r41]; setp.ne.u64 %r53,%r51,%r52; @ %r53 bra $L8; .loc 1 91 13 add.u64 %r40,%r40,8; .loc 1 92 13 add.u64 %r41,%r41,8; .loc 1 93 13 add.u64 %r42,%r42,-8; .loc 1 87 13 setp.gt.u64 %r54,%r42,7; @ %r54 bra $L3; bra $L2; $L10: .loc 1 104 11 ld.u8 %r28,[%r34]; .loc 1 104 18 ld.u8 %r29,[%r41]; add.u64 %r34,%r34,1; .loc 1 104 10 cvt.u16.u32 %r55,%r28; cvt.u16.u32 %r56,%r29; setp.eq.u16 %r57,%r55,%r56; @ %r57 bra $L9; $L6: .loc 1 105 13 sub.u32 %r39,%r28,%r29; bra $L1; $L18: add.u64 %r34,%r40,1; add.u64 %r58,%r32,1; add.u64 %r37,%r40,%r58; $L9: .loc 1 107 9 add.u64 %r41,%r41,1; .loc 1 102 9 setp.ne.u64 %r59,%r34,%r37; @ %r59 bra $L10; .loc 1 110 10 mov.u32 %r39,0; bra $L1; $L12: cvt.u32.u64 %r39,%r42; bra $L1; $L17: .loc 1 102 11 add.u64 %r32,%r42,-1; bra $L11; $L8: add.u64 %r32,%r42,-1; bra $L11; $L1: .loc 1 112 1 mov.u32 %value,%r39; st.param.u32 [%value_out],%value; ret; } lib_a-memcpy.o/ 1591654539 399 399 100644 3025 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r33; .reg .u64 %r36; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .u64 %r46; .reg .u64 %r47; .reg .u64 %r48; .reg .u64 %r56; .reg .u64 %r57; .reg .u64 %r63; .reg .u64 %r64; .reg .u64 %r65; .reg .pred %r66; .reg .u64 %r67; .reg .u64 %r68; .reg .pred %r69; .reg .u64 %r70; .reg .u64 %r72; .reg .pred %r73; .reg .u64 %r74; .reg .u64 %r76; .reg .u64 %r77; .reg .u64 %r78; .reg .u64 %r79; .reg .u64 %r80; .reg .pred %r81; .reg .u64 %r82; .reg .pred %r83; .reg .u64 %r84; .reg .u64 %r85; .reg .pred %r86; .reg .u64 %r87; .reg .u32 %r88; .reg .pred %r89; .reg .u64 %r91; mov.u64 %r63,%ar0; mov.u64 %r64,%ar1; mov.u64 %r65,%ar2; .loc 1 79 6 setp.le.u64 %r66,%r65,31; @ %r66 bra $L11; .loc 1 79 28 or.b64 %r67,%r64,%r63; and.b64 %r68,%r67,7; .loc 1 79 24 setp.eq.u64 %r69,%r68,0; @ %r69 bra $L3; bra $L16; $L18: and.b64 %r65,%r65,7; add.u64 %r70,%r40,-8; and.b64 %r72,%r70,-8; add.u64 %r39,%r72,8; add.u64 %r33,%r33,%r39; add.u64 %r64,%r64,%r39; bra $L2; $L11: .loc 1 72 9 mov.u64 %r33,%r63; bra $L2; $L12: .loc 1 95 13 mov.u64 %r65,%r40; $L2: .loc 1 106 14 add.u64 %r36,%r65,-1; .loc 1 106 9 setp.ne.u64 %r73,%r65,0; @ %r73 bra $L5; bra $L17; $L3: add.u64 %r74,%r65,-32; and.b64 %r76,%r74,-32; add.u64 %r56,%r76,32; add.u64 %r57,%r64,%r56; .loc 1 81 19 mov.u64 %r41,%r63; $L7: .loc 1 87 26 ld.u64 %r77,[%r64]; st.u64 [%r41],%r77; .loc 1 88 26 ld.u64 %r78,[%r64+8]; st.u64 [%r41+8],%r78; .loc 1 89 26 ld.u64 %r79,[%r64+16]; st.u64 [%r41+16],%r79; add.u64 %r64,%r64,32; add.u64 %r41,%r41,32; .loc 1 90 26 ld.u64 %r80,[%r64+-8]; st.u64 [%r41+-8],%r80; .loc 1 85 13 setp.ne.u64 %r81,%r57,%r64; @ %r81 bra $L7; add.u64 %r33,%r63,%r56; and.b64 %r40,%r65,31; .loc 1 95 13 and.b64 %r82,%r65,24; setp.eq.u64 %r83,%r82,0; @ %r83 bra $L12; mov.u64 %r48,%r33; mov.u64 %r47,%r64; add.u64 %r91,%r64,%r40; $L8: .loc 1 97 26 ld.u64 %r84,[%r47]; st.u64 [%r48],%r84; add.u64 %r47,%r47,8; add.u64 %r48,%r48,8; .loc 1 95 13 sub.u64 %r85,%r91,%r47; setp.gt.u64 %r86,%r85,7; @ %r86 bra $L8; bra $L18; $L5: mov.u64 %r38,%r33; mov.u64 %r42,%r64; add.u64 %r87,%r36,1; add.u64 %r46,%r38,%r87; $L10: .loc 1 107 12 ld.u8 %r88,[%r42]; st.u8 [%r38],%r88; add.u64 %r38,%r38,1; add.u64 %r42,%r42,1; .loc 1 106 9 setp.ne.u64 %r89,%r38,%r46; @ %r89 bra $L10; bra $L17; $L16: .loc 1 106 14 add.u64 %r36,%r65,-1; .loc 1 72 9 mov.u64 %r33,%r63; bra $L5; $L17: .loc 1 111 1 mov.u64 %value,%r63; st.param.u64 [%value_out],%value; ret; } lib_a-memmem.o/ 1591654539 399 399 100644 21617 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: critical_factorization .func (.param .u64 %value_out) critical_factorization (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/string/str-two-way.h" // 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); // BEGIN GLOBAL FUNCTION DECL: memmem .visible .func (.param .u64 %value_out) memmem (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 2 "../../../../../newlib/libc/string/memmem.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: memchr .extern .func (.param .u64 %value_out) memchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN FUNCTION DEF: critical_factorization .func (.param .u64 %value_out) critical_factorization (.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 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .u64 %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .u64 %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u16 %r52; .reg .u16 %r53; .reg .pred %r54; .reg .pred %r57; .reg .pred %r58; .reg .pred %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u64 %r62; .reg .u16 %r63; .reg .u16 %r64; .reg .pred %r65; .reg .pred %r68; .reg .pred %r69; .reg .pred %r70; .reg .pred %r71; .reg .u64 %r73; .reg .u64 %r74; mov.u64 %r46,%ar0; mov.u64 %r47,%ar1; mov.u64 %r48,%ar2; .loc 1 113 9 mov.u64 %r37,1; .loc 1 113 5 mov.u64 %r35,%r37; .loc 1 112 5 mov.u64 %r28,0; .loc 1 111 14 mov.u64 %r32,-1; .loc 1 140 10 mov.u64 %r74,%r37; .loc 1 114 9 bra $L2; $L7: .loc 1 116 9 add.u64 %r49,%r46,%r27; .loc 1 117 9 add.u64 %r50,%r46,%r32; add.u64 %r51,%r50,%r35; .loc 1 118 10 ld.u8 %r52,[%r49]; ld.u8 %r53,[%r51]; setp.ge.u16 %r54,%r52,%r53; @ %r54 bra $L3; .loc 1 123 6 sub.u64 %r37,%r27,%r32; mov.u64 %r28,%r27; .loc 1 122 6 mov.u64 %r35,1; bra $L2; $L3: .loc 1 125 15 setp.ne.u16 %r57,%r52,%r53; @ %r57 bra $L5; .loc 1 128 7 setp.eq.u64 %r58,%r35,%r37; @ %r58 bra $L6; .loc 1 129 6 add.u64 %r35,%r35,1; bra $L2; $L6: .loc 1 132 10 mov.u64 %r28,%r27; .loc 1 133 10 mov.u64 %r35,1; bra $L2; $L5: .loc 1 139 15 mov.u64 %r32,%r28; .loc 1 139 18 add.u64 %r28,%r28,1; .loc 1 140 10 mov.u64 %r37,%r74; .loc 1 140 6 mov.u64 %r35,1; $L2: .loc 1 114 12 add.u64 %r27,%r28,%r35; .loc 1 114 9 setp.lt.u64 %r59,%r27,%r47; @ %r59 bra $L7; .loc 1 143 11 st.u64 [%r48],%r37; .loc 1 148 9 mov.u64 %r38,1; .loc 1 148 5 mov.u64 %r36,%r38; .loc 1 147 5 mov.u64 %r22,0; .loc 1 146 18 mov.u64 %r26,-1; .loc 1 175 10 mov.u64 %r73,%r38; .loc 1 149 9 bra $L8; $L13: .loc 1 151 9 add.u64 %r60,%r46,%r33; .loc 1 152 9 add.u64 %r61,%r46,%r26; add.u64 %r62,%r61,%r36; .loc 1 153 10 ld.u8 %r63,[%r60]; ld.u8 %r64,[%r62]; setp.le.u16 %r65,%r63,%r64; @ %r65 bra $L9; .loc 1 158 6 sub.u64 %r38,%r33,%r26; mov.u64 %r22,%r33; .loc 1 157 6 mov.u64 %r36,1; bra $L8; $L9: .loc 1 160 15 setp.ne.u16 %r68,%r63,%r64; @ %r68 bra $L11; .loc 1 163 7 setp.eq.u64 %r69,%r36,%r38; @ %r69 bra $L12; .loc 1 164 6 add.u64 %r36,%r36,1; bra $L8; $L12: .loc 1 167 10 mov.u64 %r22,%r33; .loc 1 168 10 mov.u64 %r36,1; bra $L8; $L11: .loc 1 174 19 mov.u64 %r26,%r22; .loc 1 174 22 add.u64 %r22,%r22,1; .loc 1 175 10 mov.u64 %r38,%r73; .loc 1 175 6 mov.u64 %r36,1; $L8: .loc 1 149 12 add.u64 %r33,%r22,%r36; .loc 1 149 9 setp.lt.u64 %r70,%r33,%r47; @ %r70 bra $L13; .loc 1 181 22 add.u64 %r34,%r26,1; .loc 1 181 39 add.u64 %r45,%r32,1; .loc 1 181 6 setp.lt.u64 %r71,%r34,%r45; @ %r71 bra $L1; .loc 1 183 11 st.u64 [%r48],%r38; .loc 1 184 25 mov.u64 %r45,%r34; $L1: .loc 1 185 1 mov.u64 %value,%r45; st.param.u64 [%value_out],%value; ret; } // 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[2064]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r39; .reg .u64 %r41; .reg .u64 %r46; .reg .u64 %r55; .reg .u64 %r58; .reg .u64 %r61; .reg .u64 %r62; .reg .u64 %r63; .reg .u64 %r65; .reg .u64 %r72; .reg .u64 %r73; .reg .u64 %r74; .reg .u64 %r75; .reg .u64 %r77; .reg .u64 %r78; .reg .u64 %r82; .reg .u64 %r89; .reg .u64 %r103; .reg .u64 %r104; .reg .u64 %r108; .reg .u64 %r109; .reg .u64 %r110; .reg .u64 %r111; .reg .u64 %r112; .reg .u64 %r116; .reg .u64 %r117; .reg .pred %r118; .reg .pred %r119; .reg .u64 %r123; .reg .u64 %r124; .reg .u32 %r125; .reg .pred %r126; .reg .u64 %r128; .reg .u64 %r129; .reg .u64 %r130; .reg .u64 %r132; .reg .pred %r133; .reg .u64 %r135; .reg .u64 %r137; .reg .u64 %r138; .reg .u64 %r139; .reg .pred %r140; .reg .pred %r141; .reg .pred %r142; .reg .pred %r143; .reg .u64 %r145; .reg .u64 %r146; .reg .u16 %r147; .reg .u16 %r148; .reg .pred %r149; .reg .pred %r150; .reg .u64 %r151; .reg .u64 %r152; .reg .u64 %r153; .reg .u16 %r154; .reg .u16 %r155; .reg .pred %r156; .reg .pred %r157; .reg .u64 %r158; .reg .u64 %r159; .reg .u64 %r160; .reg .u16 %r161; .reg .u16 %r162; .reg .pred %r163; .reg .u64 %r164; .reg .pred %r165; .reg .u64 %r166; .reg .pred %r167; .reg .u64 %r168; .reg .u64 %r169; .reg .u64 %r171; .reg .u64 %r173; .reg .u64 %r174; .reg .u64 %r175; .reg .pred %r176; .reg .u64 %r179; .reg .u16 %r181; .reg .u16 %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 .pred %r201; .reg .u64 %r204; .reg .u16 %r205; .reg .u16 %r206; .reg .pred %r207; .reg .pred %r212; .reg .u64 %r214; .reg .u64 %r215; .reg .u16 %r216; .reg .u16 %r217; .reg .pred %r218; .reg .u64 %r219; .reg .u64 %r220; .reg .u64 %r221; .reg .u64 %r222; .reg .u64 %r223; .reg .u64 %r224; .reg .u64 %r225; .reg .pred %r226; .reg .u64 %r227; .reg .u64 %r228; .reg .u64 %r229; mov.u64 %r109,%ar0; mov.u64 %r110,%ar1; mov.u64 %r111,%ar2; mov.u64 %r112,%ar3; .loc 1 304 12 add.u64 %r116,%frame,2048; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r111; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r112; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r116; call (%value_in),critical_factorization,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r117,[%value_in]; } mov.u64 %r104,%frame; $L16: .loc 1 311 20 st.u64 [%r104],%r112; add.u64 %r104,%r104,8; .loc 1 310 3 setp.ne.u64 %r118,%r116,%r104; @ %r118 bra $L16; add.u64 %r89,%r112,-1; .loc 1 312 3 setp.ne.u64 %r119,%r112,0; @ %r119 bra $L17; $L21: .loc 1 317 32 ld.u64 %r124,[%frame+2048]; add.u64 %r123,%r111,%r124; .loc 1 317 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r111; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r123; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r117; call (%value_in),memcmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r125,[%value_in]; } .loc 1 317 6 setp.eq.u32 %r126,%r125,0; @ %r126 bra $L18; bra $L64; $L17: add.u64 %r103,%r111,%r112; .loc 1 312 3 mov.u64 %r39,%r111; add.u64 %r221,%r111,%r89; $L20: .loc 1 313 44 ld.u8 %r128,[%r39]; shl.b64 %r129,%r128,3; add.u64 %r130,%frame,%r129; sub.u64 %r132,%r221,%r39; st.u64 [%r130],%r132; add.u64 %r39,%r39,1; .loc 1 312 3 setp.ne.u64 %r133,%r39,%r103; @ %r133 bra $L20; bra $L21; $L18: .loc 1 360 10 ld.u64 %r41,[%frame+2048]; .loc 1 361 15 sub.u64 %r74,%r112,%r41; .loc 1 322 14 mov.u64 %r58,0; .loc 1 324 9 mov.u64 %r62,%r58; .loc 1 352 10 add.u64 %r222,%r117,-1; .loc 1 353 34 add.u64 %r223,%r111,%r222; mov.u64 %r224,1; sub.u64 %r225,%r224,%r117; $L32: .loc 1 329 24 add.u64 %r220,%r109,%r62; add.u64 %r135,%r220,%r89; .loc 1 329 10 ld.u8 %r137,[%r135]; shl.b64 %r138,%r137,3; add.u64 %r139,%frame,%r138; ld.u64 %r65,[%r139]; .loc 1 330 7 setp.eq.u64 %r140,%r65,0; @ %r140 bra $L22; .loc 1 332 11 setp.eq.u64 %r141,%r58,0; @ %r141 bra $L23; .loc 1 332 19 setp.gt.u64 %r142,%r41,%r65; .loc 1 337 11 selp.u64 %r65,%r74,%r65,%r142; $L23: .loc 1 340 10 add.u64 %r62,%r62,%r65; .loc 1 339 15 mov.u64 %r58,0; .loc 1 341 8 bra $L24; $L22: .loc 1 345 6 max.u64 %r72,%r58,%r117; .loc 1 346 10 setp.ge.u64 %r143,%r72,%r89; @ %r143 bra $L25; .loc 1 347 9 add.u64 %r145,%r220,%r72; .loc 1 346 34 add.u64 %r146,%r111,%r72; .loc 1 346 30 ld.u8 %r147,[%r145]; ld.u8 %r148,[%r146]; setp.ne.u16 %r149,%r147,%r148; @ %r149 bra $L26; $L27: .loc 1 348 6 add.u64 %r72,%r72,1; .loc 1 346 10 setp.ge.u64 %r150,%r72,%r89; @ %r150 bra $L25; .loc 1 346 34 add.u64 %r151,%r111,%r72; .loc 1 347 9 add.u64 %r152,%r62,%r72; add.u64 %r153,%r109,%r152; .loc 1 346 30 ld.u8 %r154,[%r151]; ld.u8 %r155,[%r153]; setp.eq.u16 %r156,%r154,%r155; @ %r156 bra $L27; bra $L26; $L43: mov.u64 %r73,%r61; $L29: .loc 1 355 3 add.u64 %r61,%r73,-1; .loc 1 353 14 setp.eq.u64 %r157,%r58,%r73; @ %r157 bra $L28; .loc 1 353 34 add.u64 %r158,%r111,%r61; .loc 1 354 9 add.u64 %r159,%r62,%r61; add.u64 %r160,%r109,%r159; .loc 1 353 30 ld.u8 %r161,[%r158]; ld.u8 %r162,[%r160]; setp.eq.u16 %r163,%r161,%r162; @ %r163 bra $L43; bra $L28; $L45: .loc 1 353 14 mov.u64 %r73,%r117; $L28: .loc 1 356 27 add.u64 %r164,%r58,1; .loc 1 356 11 setp.le.u64 %r165,%r164,%r73; @ %r165 bra $L30; .loc 1 357 10 mov.u64 %r108,%r220; bra $L15; $L30: .loc 1 360 10 add.u64 %r62,%r62,%r41; .loc 1 361 15 mov.u64 %r58,%r74; $L24: .loc 1 325 14 sub.u64 %r166,%r110,%r112; .loc 1 325 13 setp.ge.u64 %r167,%r166,%r62; @ %r167 bra $L32; .loc 1 408 10 mov.u64 %r108,0; bra $L15; $L64: .loc 1 375 16 sub.u64 %r169,%r112,%r117; max.u64 %r168,%r169,%r117; .loc 1 375 50 add.u64 %r46,%r168,1; .loc 1 376 9 mov.u64 %r55,0; .loc 1 390 10 setp.ge.u64 %r226,%r117,%r89; .loc 1 390 34 add.u64 %r227,%r111,%r117; mov.u64 %r228,1; sub.u64 %r229,%r228,%r117; $L41: .loc 1 381 24 add.u64 %r219,%r109,%r55; add.u64 %r171,%r219,%r89; .loc 1 381 10 ld.u8 %r173,[%r171]; shl.b64 %r174,%r173,3; add.u64 %r175,%frame,%r174; ld.u64 %r75,[%r175]; .loc 1 382 7 setp.ne.u64 %r176,%r75,0; @ %r176 bra $L33; .loc 1 390 10 @ %r226 bra $L34; .loc 1 391 9 add.u64 %r179,%r219,%r117; .loc 1 390 30 ld.u8 %r181,[%r179]; ld.u8 %r182,[%r227]; setp.eq.u16 %r183,%r181,%r182; @ %r183 bra $L44; mov.u64 %r77,%r117; bra $L36; $L33: .loc 1 384 10 add.u64 %r55,%r55,%r75; .loc 1 385 8 bra $L37; $L44: .loc 1 390 30 mov.u64 %r77,%r117; $L35: .loc 1 392 6 add.u64 %r77,%r77,1; .loc 1 390 10 setp.ge.u64 %r184,%r77,%r89; @ %r184 bra $L34; .loc 1 390 34 add.u64 %r185,%r111,%r77; .loc 1 391 9 add.u64 %r186,%r77,%r55; add.u64 %r187,%r109,%r186; .loc 1 390 30 ld.u8 %r188,[%r185]; ld.u8 %r189,[%r187]; setp.eq.u16 %r190,%r188,%r189; @ %r190 bra $L35; bra $L36; $L39: .loc 1 399 3 add.u64 %r78,%r78,-1; .loc 1 397 14 setp.eq.u64 %r191,%r78,-1; @ %r191 bra $L38; .loc 1 397 33 add.u64 %r192,%r111,%r78; .loc 1 398 15 add.u64 %r193,%r78,%r55; add.u64 %r194,%r109,%r193; .loc 1 397 29 ld.u8 %r195,[%r192]; ld.u8 %r196,[%r194]; setp.eq.u16 %r197,%r195,%r196; @ %r197 bra $L39; bra $L40; $L37: .loc 1 377 14 sub.u64 %r198,%r110,%r112; .loc 1 377 13 setp.le.u64 %r199,%r55,%r198; @ %r199 bra $L41; .loc 1 408 10 mov.u64 %r108,0; bra $L15; $L25: .loc 1 352 10 mov.u64 %r73,%r222; .loc 1 353 14 setp.ge.u64 %r201,%r58,%r117; @ %r201 bra $L45; .loc 1 354 9 add.u64 %r204,%r220,%r222; .loc 1 353 30 ld.u8 %r205,[%r223]; ld.u8 %r206,[%r204]; setp.eq.u16 %r207,%r205,%r206; @ %r207 bra $L29; mov.u64 %r73,%r117; bra $L28; $L26: add.u64 %r82,%r225,%r62; .loc 1 365 10 add.u64 %r62,%r82,%r72; .loc 1 366 15 mov.u64 %r58,%r65; bra $L24; $L38: .loc 1 401 10 mov.u64 %r108,%r219; bra $L15; $L40: .loc 1 402 10 add.u64 %r55,%r55,%r46; bra $L37; $L36: add.u64 %r63,%r229,%r55; .loc 1 405 8 add.u64 %r55,%r63,%r77; bra $L37; $L34: .loc 1 396 10 add.u64 %r78,%r117,-1; .loc 1 397 14 setp.eq.u64 %r212,%r78,-1; @ %r212 bra $L38; .loc 1 398 15 add.u64 %r214,%r219,%r78; .loc 1 397 33 add.u64 %r215,%r111,%r78; .loc 1 397 29 ld.u8 %r216,[%r214]; ld.u8 %r217,[%r215]; setp.eq.u16 %r218,%r216,%r217; @ %r218 bra $L39; bra $L40; $L15: .loc 1 409 1 mov.u64 %value,%r108; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: memmem .visible .func (.param .u64 %value_out) memmem (.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 .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r36; .reg .u64 %r38; .reg .u64 %r43; .reg .u64 %r45; .reg .u64 %r51; .reg .u64 %r52; .reg .u64 %r56; .reg .u64 %r57; .reg .u32 %r64; .reg .u32 %r65; .reg .u64 %r68; .reg .u64 %r76; .reg .u64 %r89; .reg .u64 %r92; .reg .u64 %r101; .reg .u64 %r102; .reg .u64 %r103; .reg .u64 %r104; .reg .u64 %r105; .reg .pred %r106; .reg .pred %r107; .reg .pred %r108; .reg .u32 %r112; .reg .u64 %r113; .reg .u32 %r115; .reg .u32 %r116; .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 .u64 %r126; .reg .pred %r127; .reg .u64 %r131; .reg .u64 %r135; .reg .u64 %r136; .reg .u32 %r137; .reg .pred %r138; .reg .pred %r139; .reg .u64 %r140; .reg .u64 %r141; .reg .u64 %r142; .reg .u16 %r143; .reg .u16 %r144; .reg .pred %r145; .reg .pred %r146; .reg .u64 %r147; .reg .u64 %r148; .reg .u64 %r149; .reg .u16 %r150; .reg .u16 %r151; .reg .pred %r152; .reg .u64 %r153; .reg .u64 %r154; .reg .u16 %r156; .reg .u16 %r157; .reg .pred %r158; .reg .pred %r159; .reg .u64 %r160; .reg .u64 %r161; .reg .u64 %r162; .reg .u16 %r163; .reg .u16 %r164; .reg .pred %r165; .reg .u64 %r166; .reg .pred %r167; .reg .u64 %r168; .reg .pred %r169; .reg .u64 %r170; .reg .u64 %r171; .reg .pred %r172; .reg .u64 %r173; .reg .u64 %r174; .reg .u64 %r175; .reg .u16 %r176; .reg .u16 %r177; .reg .pred %r178; .reg .u64 %r180; .reg .u64 %r181; .reg .u16 %r182; .reg .u16 %r183; .reg .pred %r184; .reg .u64 %r185; .reg .pred %r186; .reg .u16 %r187; .reg .u16 %r188; .reg .pred %r189; .reg .u64 %r190; .reg .pred %r191; .reg .u64 %r193; .reg .u64 %r194; .reg .u64 %r195; .reg .u16 %r196; .reg .u16 %r197; .reg .pred %r198; .reg .u64 %r203; .reg .pred %r205; .reg .pred %r211; .reg .u64 %r212; .reg .u64 %r213; .reg .u64 %r214; .reg .u64 %r215; .reg .u64 %r216; .reg .pred %r217; .reg .u64 %r218; .reg .u64 %r219; .reg .u64 %r220; .reg .u64 %r221; .reg .u64 %r222; mov.u64 %r102,%ar0; mov.u64 %r103,%ar1; mov.u64 %r104,%ar2; mov.u64 %r105,%ar3; .loc 2 60 6 setp.eq.u64 %r106,%r105,0; @ %r106 bra $L90; .loc 2 83 6 setp.le.u64 %r107,%r105,%r103; @ %r107 bra $L67; $L69: .loc 2 84 12 mov.u64 %r101,0; bra $L65; $L67: .loc 2 90 6 setp.gt.u64 %r108,%r105,31; @ %r108 bra $L68; .loc 2 92 18 ld.u8 %r112,[%r104]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r102; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r112; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r103; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r113,[%value_in]; } mov.u64 %r101,%r113; .loc 2 93 11 set.u32.eq.u64 %r115,%r113,0; neg.s32 %r116,%r115; .loc 2 93 35 set.u32.eq.u64 %r118,%r105,1; neg.s32 %r119,%r118; .loc 2 93 21 cvt.u16.u32 %r121,%r116; cvt.u16.u32 %r122,%r119; or.b16 %r120,%r121,%r122; .loc 2 93 10 cvt.u32.u16 %r123,%r120; cvt.u16.u8 %r124,%r123; setp.ne.u16 %r125,%r124,0; @ %r125 bra $L65; .loc 2 95 32 sub.u64 %r126,%r113,%r102; .loc 2 95 20 sub.u64 %r29,%r103,%r126; .loc 2 96 10 setp.gt.u64 %r127,%r105,%r29; @ %r127 bra $L69; .loc 1 209 12 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r104; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r105; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call (%value_in),critical_factorization,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r131,[%value_in]; } .loc 1 213 32 ld.u64 %r136,[%frame]; add.u64 %r135,%r104,%r136; .loc 1 213 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r104; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r135; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r131; call (%value_in),memcmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r137,[%value_in]; } .loc 1 213 6 setp.ne.u32 %r138,%r137,0; @ %r138 bra $L70; .loc 1 238 10 ld.u64 %r51,[%frame]; .loc 1 239 15 sub.u64 %r52,%r105,%r51; .loc 1 219 9 mov.u64 %r31,0; .loc 1 218 14 mov.u64 %r30,%r31; .loc 1 230 10 add.u64 %r212,%r131,-1; .loc 1 231 34 add.u64 %r213,%r104,%r212; mov.u64 %r214,1; sub.u64 %r215,%r214,%r131; $L78: .loc 1 223 6 max.u64 %r38,%r30,%r131; .loc 1 224 10 setp.le.u64 %r139,%r105,%r38; @ %r139 bra $L71; .loc 1 224 30 add.u64 %r140,%r104,%r38; .loc 1 225 12 add.u64 %r141,%r113,%r31; add.u64 %r142,%r141,%r38; .loc 1 224 26 ld.u8 %r143,[%r140]; ld.u8 %r144,[%r142]; setp.ne.u16 %r145,%r143,%r144; @ %r145 bra $L72; $L73: .loc 1 226 6 add.u64 %r38,%r38,1; .loc 1 224 10 setp.eq.u64 %r146,%r105,%r38; @ %r146 bra $L71; .loc 1 224 30 add.u64 %r147,%r104,%r38; .loc 1 225 12 add.u64 %r148,%r31,%r38; add.u64 %r149,%r113,%r148; .loc 1 224 26 ld.u8 %r150,[%r147]; ld.u8 %r151,[%r149]; setp.eq.u16 %r152,%r150,%r151; @ %r152 bra $L73; bra $L72; $L87: .loc 1 232 9 add.u64 %r153,%r113,%r31; add.u64 %r154,%r153,%r212; .loc 1 231 30 ld.u8 %r156,[%r154]; ld.u8 %r157,[%r213]; setp.ne.u16 %r158,%r156,%r157; @ ! %r158 bra $L75; bra $L91; $L92: mov.u64 %r43,%r45; $L75: .loc 1 233 3 add.u64 %r45,%r43,-1; .loc 1 231 14 setp.eq.u64 %r159,%r30,%r43; @ %r159 bra $L74; .loc 1 231 34 add.u64 %r160,%r104,%r45; .loc 1 232 9 add.u64 %r161,%r31,%r45; add.u64 %r162,%r113,%r161; .loc 1 231 30 ld.u8 %r163,[%r160]; ld.u8 %r164,[%r162]; setp.eq.u16 %r165,%r163,%r164; @ %r165 bra $L92; bra $L74; $L91: mov.u64 %r43,%r131; $L74: .loc 1 234 27 add.u64 %r166,%r30,1; .loc 1 234 11 setp.le.u64 %r167,%r166,%r43; @ %r167 bra $L76; .loc 1 235 10 add.u64 %r101,%r113,%r31; bra $L65; $L76: .loc 1 238 10 add.u64 %r31,%r31,%r51; .loc 1 239 15 mov.u64 %r30,%r52; $L88: .loc 1 220 14 sub.u64 %r168,%r29,%r105; .loc 1 220 13 setp.ge.u64 %r169,%r168,%r31; @ %r169 bra $L78; .loc 1 276 10 mov.u64 %r101,0; bra $L65; $L70: .loc 1 252 16 sub.u64 %r171,%r105,%r131; max.u64 %r170,%r171,%r131; .loc 1 252 50 add.u64 %r56,%r170,1; .loc 1 253 9 mov.u64 %r68,0; setp.le.u64 %r211,%r105,%r131; .loc 1 264 10 add.u64 %r216,%r131,-1; .loc 1 265 14 setp.ne.u64 %r217,%r216,-1; .loc 1 266 15 add.u64 %r218,%r113,%r216; add.u64 %r219,%r131,-2; add.u64 %r220,%r104,-1; mov.u64 %r221,1; sub.u64 %r222,%r221,%r131; bra $L79; $L94: .loc 1 258 26 mov.u64 %r57,%r131; $L81: .loc 1 260 6 add.u64 %r57,%r57,1; .loc 1 258 10 setp.eq.u64 %r172,%r105,%r57; @ %r172 bra $L80; .loc 1 258 30 add.u64 %r173,%r104,%r57; .loc 1 259 12 add.u64 %r174,%r57,%r68; add.u64 %r175,%r113,%r174; .loc 1 258 26 ld.u8 %r176,[%r173]; ld.u8 %r177,[%r175]; setp.eq.u16 %r178,%r176,%r177; @ %r178 bra $L81; bra $L82; $L89: .loc 1 266 15 add.u64 %r180,%r218,%r68; .loc 1 265 33 add.u64 %r181,%r104,%r216; .loc 1 265 29 ld.u8 %r182,[%r180]; ld.u8 %r183,[%r181]; setp.ne.u16 %r184,%r182,%r183; @ %r184 bra $L83; add.u64 %r89,%r104,%r219; add.u64 %r185,%r68,%r219; add.u64 %r92,%r113,%r185; $L85: .loc 1 265 14 setp.eq.u64 %r186,%r89,%r220; @ %r186 bra $L84; .loc 1 265 33 ld.u8 %r64,[%r89]; .loc 1 266 15 ld.u8 %r65,[%r92]; add.u64 %r89,%r89,-1; add.u64 %r92,%r92,-1; .loc 1 265 29 cvt.u16.u32 %r187,%r64; cvt.u16.u32 %r188,%r65; setp.eq.u16 %r189,%r187,%r188; @ %r189 bra $L85; bra $L83; $L86: .loc 1 254 14 sub.u64 %r190,%r29,%r105; .loc 1 254 13 setp.lt.u64 %r191,%r190,%r68; @ %r191 bra $L93; $L79: .loc 1 258 10 @ %r211 bra $L80; .loc 1 259 12 add.u64 %r193,%r113,%r131; add.u64 %r194,%r193,%r68; .loc 1 258 30 add.u64 %r195,%r104,%r131; .loc 1 258 26 ld.u8 %r196,[%r194]; ld.u8 %r197,[%r195]; setp.eq.u16 %r198,%r196,%r197; @ %r198 bra $L94; mov.u64 %r57,%r131; bra $L82; $L93: .loc 1 276 10 mov.u64 %r101,0; .loc 2 98 14 bra $L65; $L68: .loc 2 100 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r102; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r103; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r104; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r105; call (%value_in),two_way_long_needle,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r203,[%value_in]; } mov.u64 %r101,%r203; bra $L65; $L90: .loc 2 63 12 mov.u64 %r101,%r102; bra $L65; $L84: .loc 1 269 10 add.u64 %r101,%r113,%r68; bra $L65; $L83: .loc 1 270 10 add.u64 %r68,%r68,%r56; bra $L86; $L71: .loc 1 230 10 mov.u64 %r43,%r212; .loc 1 231 14 setp.lt.u64 %r205,%r30,%r131; @ %r205 bra $L87; mov.u64 %r43,%r131; bra $L74; $L72: add.u64 %r36,%r215,%r31; .loc 1 243 10 add.u64 %r31,%r36,%r38; .loc 1 244 15 mov.u64 %r30,0; bra $L88; $L82: add.u64 %r76,%r222,%r68; .loc 1 273 8 add.u64 %r68,%r57,%r76; bra $L86; $L80: .loc 1 265 14 @ %r217 bra $L89; bra $L84; $L65: .loc 2 102 1 mov.u64 %value,%r101; st.param.u64 [%value_out],%value; ret; } lib_a-memmove.o/1591654539 399 399 100644 3625 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r23; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r34; .reg .u64 %r36; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r41; .reg .u64 %r42; .reg .u64 %r43; .reg .u64 %r45; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u64 %r59; .reg .u64 %r60; .reg .u64 %r66; .reg .u64 %r67; .reg .u64 %r68; .reg .pred %r69; .reg .pred %r70; .reg .pred %r71; .reg .u32 %r72; .reg .pred %r73; .reg .pred %r74; .reg .u64 %r75; .reg .u64 %r76; .reg .pred %r77; .reg .u64 %r78; .reg .u64 %r80; .reg .pred %r81; .reg .u64 %r82; .reg .u64 %r84; .reg .pred %r85; .reg .u64 %r86; .reg .pred %r87; .reg .u64 %r88; .reg .pred %r89; .reg .u64 %r90; .reg .u32 %r91; .reg .pred %r92; .reg .u64 %r94; mov.u64 %r66,%ar0; mov.u64 %r67,%ar1; mov.u64 %r68,%ar2; .loc 1 94 6 setp.le.u64 %r69,%r66,%r67; @ %r69 bra $L2; .loc 1 94 30 add.u64 %r42,%r67,%r68; .loc 1 94 17 setp.le.u64 %r70,%r42,%r66; @ %r70 bra $L2; .loc 1 98 11 add.u64 %r43,%r66,%r68; .loc 1 99 13 setp.eq.u64 %r71,%r68,0; @ %r71 bra $L16; $L4: .loc 1 101 11 add.u64 %r42,%r42,-1; add.u64 %r43,%r43,-1; ld.u8 %r72,[%r42]; st.u8 [%r43],%r72; .loc 1 99 13 setp.ne.u64 %r73,%r67,%r42; @ %r73 bra $L4; bra $L16; $L2: .loc 1 109 10 setp.le.u64 %r74,%r68,31; @ %r74 bra $L13; .loc 1 109 34 or.b64 %r75,%r67,%r66; and.b64 %r76,%r75,7; .loc 1 109 30 setp.eq.u64 %r77,%r76,0; @ %r77 bra $L6; bra $L23; $L24: and.b64 %r68,%r68,7; add.u64 %r78,%r38,-8; and.b64 %r80,%r78,-8; add.u64 %r36,%r80,8; add.u64 %r23,%r23,%r36; add.u64 %r67,%r67,%r36; bra $L5; $L13: mov.u64 %r23,%r66; bra $L5; $L14: .loc 1 125 17 mov.u64 %r68,%r38; $L5: .loc 1 136 20 add.u64 %r41,%r68,-1; .loc 1 136 13 setp.ne.u64 %r81,%r68,0; @ %r81 bra $L8; bra $L16; $L6: add.u64 %r82,%r68,-32; and.b64 %r84,%r82,-32; add.u64 %r59,%r84,32; add.u64 %r60,%r67,%r59; .loc 1 109 30 mov.u64 %r34,%r66; $L9: .loc 1 117 32 ld.u64 %r28,[%r67]; .loc 1 117 30 st.u64 [%r34],%r28; .loc 1 118 32 ld.u64 %r29,[%r67+8]; .loc 1 118 30 st.u64 [%r34+8],%r29; .loc 1 119 32 ld.u64 %r30,[%r67+16]; .loc 1 119 30 st.u64 [%r34+16],%r30; add.u64 %r67,%r67,32; add.u64 %r34,%r34,32; .loc 1 120 32 ld.u64 %r31,[%r67+-8]; .loc 1 120 30 st.u64 [%r34+-8],%r31; .loc 1 115 17 setp.ne.u64 %r85,%r60,%r67; @ %r85 bra $L9; add.u64 %r23,%r66,%r59; and.b64 %r38,%r68,31; .loc 1 125 17 and.b64 %r86,%r68,24; setp.eq.u64 %r87,%r86,0; @ %r87 bra $L14; mov.u64 %r51,%r23; mov.u64 %r50,%r67; add.u64 %r94,%r67,%r38; $L10: .loc 1 127 32 ld.u64 %r32,[%r50]; .loc 1 127 30 st.u64 [%r51],%r32; add.u64 %r50,%r50,8; add.u64 %r51,%r51,8; .loc 1 125 17 sub.u64 %r88,%r94,%r50; setp.gt.u64 %r89,%r88,7; @ %r89 bra $L10; bra $L24; $L8: mov.u64 %r39,%r23; mov.u64 %r45,%r67; add.u64 %r90,%r41,1; add.u64 %r49,%r39,%r90; $L12: .loc 1 138 18 ld.u8 %r91,[%r45]; st.u8 [%r39],%r91; add.u64 %r39,%r39,1; add.u64 %r45,%r45,1; .loc 1 136 13 setp.ne.u64 %r92,%r39,%r49; @ %r92 bra $L12; bra $L16; $L23: .loc 1 136 20 add.u64 %r41,%r68,-1; mov.u64 %r23,%r66; bra $L8; $L16: .loc 1 144 1 mov.u64 %value,%r66; st.param.u64 [%value_out],%value; ret; } lib_a-mempcpy.o/1591654539 399 399 100644 3053 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: mempcpy .visible .func (.param .u64 %value_out) mempcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/string/mempcpy.c" // BEGIN GLOBAL FUNCTION DEF: mempcpy .visible .func (.param .u64 %value_out) mempcpy (.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 %r29; .reg .u64 %r30; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .u64 %r55; .reg .u64 %r56; .reg .u64 %r61; .reg .u64 %r62; .reg .u64 %r63; .reg .u64 %r64; .reg .pred %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .pred %r68; .reg .pred %r69; .reg .u64 %r70; .reg .u64 %r72; .reg .pred %r73; .reg .u64 %r74; .reg .pred %r75; .reg .u64 %r76; .reg .pred %r77; .reg .u64 %r78; .reg .u64 %r80; .reg .u32 %r81; .reg .pred %r82; .reg .u64 %r84; mov.u64 %r62,%ar0; mov.u64 %r63,%ar1; mov.u64 %r64,%ar2; .loc 1 75 6 setp.le.u64 %r65,%r64,31; @ %r65 bra $L2; .loc 1 75 28 or.b64 %r66,%r63,%r62; and.b64 %r67,%r66,7; .loc 1 75 24 setp.eq.u64 %r68,%r67,0; @ %r68 bra $L3; bra $L14; $L10: .loc 1 91 13 mov.u64 %r64,%r38; $L2: .loc 1 102 14 add.u64 %r35,%r64,-1; .loc 1 102 9 setp.ne.u64 %r69,%r64,0; @ %r69 bra $L5; mov.u64 %r61,%r62; bra $L1; $L3: add.u64 %r70,%r64,-32; and.b64 %r72,%r70,-32; add.u64 %r55,%r72,32; add.u64 %r56,%r63,%r55; .loc 1 77 19 mov.u64 %r39,%r62; $L7: .loc 1 83 28 ld.u64 %r26,[%r63]; .loc 1 83 26 st.u64 [%r39],%r26; .loc 1 84 28 ld.u64 %r27,[%r63+8]; .loc 1 84 26 st.u64 [%r39+8],%r27; .loc 1 85 28 ld.u64 %r28,[%r63+16]; .loc 1 85 26 st.u64 [%r39+16],%r28; add.u64 %r63,%r63,32; add.u64 %r39,%r39,32; .loc 1 86 28 ld.u64 %r29,[%r63+-8]; .loc 1 86 26 st.u64 [%r39+-8],%r29; .loc 1 81 13 setp.ne.u64 %r73,%r56,%r63; @ %r73 bra $L7; add.u64 %r62,%r62,%r55; and.b64 %r38,%r64,31; .loc 1 91 13 and.b64 %r74,%r64,24; setp.eq.u64 %r75,%r74,0; @ %r75 bra $L10; mov.u64 %r47,%r62; mov.u64 %r46,%r63; add.u64 %r84,%r63,%r38; $L8: .loc 1 93 28 ld.u64 %r30,[%r46]; .loc 1 93 26 st.u64 [%r47],%r30; add.u64 %r46,%r46,8; add.u64 %r47,%r47,8; .loc 1 91 13 sub.u64 %r76,%r84,%r46; setp.gt.u64 %r77,%r76,7; @ %r77 bra $L8; add.u64 %r78,%r38,-8; and.b64 %r80,%r78,-8; add.u64 %r37,%r80,8; add.u64 %r63,%r63,%r37; add.u64 %r62,%r62,%r37; and.b64 %r64,%r64,7; bra $L2; $L5: mov.u64 %r40,%r63; mov.u64 %r41,%r62; add.u64 %r36,%r35,1; add.u64 %r45,%r40,%r36; $L9: .loc 1 103 12 ld.u8 %r81,[%r40]; st.u8 [%r41],%r81; add.u64 %r40,%r40,1; add.u64 %r41,%r41,1; .loc 1 102 9 setp.ne.u64 %r82,%r40,%r45; @ %r82 bra $L9; add.u64 %r61,%r62,%r36; .loc 1 105 10 bra $L1; $L14: .loc 1 102 14 add.u64 %r35,%r64,-1; bra $L5; $L1: .loc 1 107 1 mov.u64 %value,%r61; st.param.u64 [%value_out],%value; ret; } lib_a-memrchr.o/1591654539 399 399 100644 3603 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: memrchr .visible .func (.param .u64 %value_out) memrchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/string/memrchr.c" // BEGIN GLOBAL FUNCTION DEF: memrchr .visible .func (.param .u64 %value_out) memrchr (.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 %r28; .reg .u64 %r29; .reg .u64 %r31; .reg .u64 %r37; .reg .u32 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .u64 %r43; .reg .u64 %r45; .reg .u64 %r46; .reg .u64 %r52; .reg .u64 %r53; .reg .u32 %r54; .reg .u64 %r55; .reg .u32 %r56; .reg .u64 %r57; .reg .u64 %r58; .reg .pred %r59; .reg .pred %r60; .reg .u16 %r61; .reg .u16 %r62; .reg .pred %r63; .reg .pred %r64; .reg .u16 %r65; .reg .pred %r67; .reg .u64 %r69; .reg .pred %r70; .reg .pred %r71; .reg .u32 %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .u64 %r76; .reg .u64 %r77; .reg .u64 %r78; .reg .u64 %r79; .reg .u64 %r80; .reg .pred %r81; .reg .pred %r82; .reg .pred %r83; .reg .u16 %r84; .reg .u16 %r85; .reg .pred %r86; .reg .u16 %r87; .reg .pred %r89; .reg .pred %r90; .reg .u16 %r92; .reg .u16 %r93; mov.u64 %r53,%ar0; mov.u32 %r54,%ar1; mov.u64 %r55,%ar2; .loc 1 77 74 add.u64 %r41,%r55,-1; .loc 1 77 25 add.u64 %r52,%r53,%r41; .loc 1 78 17 cvt.u32.u32 %r56,%r54; cvt.u32.u8 %r40,%r56; .loc 1 85 10 add.u64 %r57,%r53,%r55; and.b64 %r58,%r57,7; .loc 1 85 9 setp.eq.u64 %r59,%r58,0; @ %r59 bra $L11; .loc 1 87 10 setp.eq.u64 %r60,%r55,0; @ %r60 bra $L12; .loc 1 89 10 ld.u8 %r61,[%r52]; cvt.u16.u32 %r62,%r40; setp.eq.u16 %r63,%r61,%r62; @ %r63 bra $L1; cvt.u16.u32 %r93,%r40; bra $L4; $L5: .loc 1 87 18 add.u64 %r41,%r41,-1; .loc 1 87 10 setp.eq.u64 %r64,%r41,-1; @ %r64 bra $L13; .loc 1 89 10 ld.u8 %r65,[%r52]; setp.eq.u16 %r67,%r65,%r93; @ %r67 bra $L1; $L4: .loc 1 91 10 add.u64 %r52,%r52,-1; .loc 1 85 10 shl.b64 %r69,%r52,61; .loc 1 85 9 setp.ne.u64 %r70,%r69,-2305843009213693952; @ %r70 bra $L5; bra $L2; $L11: mov.u64 %r41,%r55; $L2: .loc 1 94 6 setp.le.u64 %r71,%r41,7; @ %r71 bra $L6; .loc 1 104 12 add.u64 %r46,%r52,-7; .loc 1 105 16 shl.b32 %r72,%r54,8; and.b32 %r73,%r72,65535; .loc 1 105 21 and.b32 %r74,%r54,255; or.b32 %r75,%r73,%r74; .loc 1 105 12 cvt.s64.s32 %r42,%r75; .loc 1 106 19 shl.b64 %r28,%r42,16; .loc 1 106 12 or.b64 %r43,%r28,%r42; .loc 1 108 22 shl.b64 %r29,%r43,32; .loc 1 108 14 or.b64 %r45,%r29,%r43; $L8: .loc 1 112 15 ld.u64 %r76,[%r46]; xor.b64 %r31,%r45,%r76; add.u64 %r77,%r31,-72340172838076673; not.b64 %r78,%r31; and.b64 %r79,%r77,%r78; and.b64 %r80,%r79,-9187201950435737472; .loc 1 112 14 setp.ne.u64 %r81,%r80,0; @ %r81 bra $L7; .loc 1 114 18 add.u64 %r41,%r41,-8; .loc 1 115 15 add.u64 %r46,%r46,-8; .loc 1 110 13 setp.gt.u64 %r82,%r41,7; @ %r82 bra $L8; $L7: .loc 1 121 11 add.u64 %r52,%r46,7; $L6: .loc 1 126 9 setp.eq.u64 %r83,%r41,0; @ %r83 bra $L14; .loc 1 128 10 ld.u8 %r84,[%r52]; cvt.u16.u32 %r85,%r40; setp.eq.u16 %r86,%r84,%r85; @ %r86 bra $L1; sub.u64 %r37,%r52,%r41; cvt.u16.u32 %r92,%r40; bra $L9; $L10: ld.u8 %r87,[%r52]; setp.eq.u16 %r89,%r87,%r92; @ %r89 bra $L1; $L9: .loc 1 130 10 add.u64 %r52,%r52,-1; .loc 1 126 9 setp.ne.u64 %r90,%r37,%r52; @ %r90 bra $L10; .loc 1 88 16 mov.u64 %r52,0; bra $L1; $L12: mov.u64 %r52,%r55; bra $L1; $L13: mov.u64 %r52,0; bra $L1; $L14: mov.u64 %r52,%r41; $L1: .loc 1 134 1 mov.u64 %value,%r52; st.param.u64 [%value_out],%value; ret; } lib_a-memset.o/ 1591654539 399 399 100644 3555 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r32; .reg .u64 %r38; .reg .u32 %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .u64 %r43; .reg .u64 %r44; .reg .u64 %r49; .reg .u64 %r52; .reg .u64 %r58; .reg .u64 %r62; .reg .u32 %r63; .reg .u64 %r64; .reg .u64 %r65; .reg .pred %r66; .reg .pred %r67; .reg .u32 %r69; .reg .pred %r70; .reg .u32 %r71; .reg .u64 %r72; .reg .pred %r73; .reg .pred %r74; .reg .u32 %r75; .reg .u32 %r76; .reg .pred %r77; .reg .u64 %r78; .reg .u64 %r80; .reg .u64 %r81; .reg .pred %r82; .reg .u64 %r83; .reg .pred %r84; .reg .u64 %r85; .reg .pred %r86; .reg .u64 %r87; .reg .u64 %r89; .reg .u64 %r90; .reg .pred %r91; .reg .u32 %r92; .reg .u32 %r93; .reg .pred %r94; .reg .u64 %r95; mov.u64 %r62,%ar0; mov.u32 %r63,%ar1; mov.u64 %r64,%ar2; .loc 1 59 10 mov.u64 %r58,%r62; and.b64 %r65,%r62,7; .loc 1 59 9 setp.eq.u64 %r66,%r65,0; @ %r66 bra $L12; .loc 1 61 12 add.u64 %r40,%r64,-1; .loc 1 61 10 setp.ne.u64 %r67,%r64,0; @ ! %r67 bra $L17; cvt.u32.u32 %r69,%r63; .loc 1 50 9 mov.u64 %r41,%r62; .loc 1 62 14 mov.u32 %r71,%r69; bra $L4; $L6: .loc 1 61 12 add.u64 %r40,%r40,-1; add.u64 %r58,%r58,1; .loc 1 61 10 setp.eq.u64 %r70,%r40,-1; @ %r70 bra $L17; $L4: .loc 1 62 11 add.u64 %r41,%r41,1; .loc 1 62 14 st.u8 [%r58],%r71; .loc 1 59 10 and.b64 %r72,%r41,7; .loc 1 59 9 setp.ne.u64 %r73,%r72,0; @ %r73 bra $L6; bra $L2; $L12: .loc 1 50 9 mov.u64 %r41,%r62; .loc 1 59 9 mov.u64 %r40,%r64; $L2: .loc 1 67 6 setp.le.u64 %r74,%r40,7; @ %r74 bra $L7; .loc 1 56 16 and.b32 %r39,%r63,255; .loc 1 74 19 shl.b32 %r75,%r39,8; .loc 1 74 25 or.b32 %r76,%r75,%r39; .loc 1 74 14 cvt.u64.u32 %r42,%r76; .loc 1 75 25 shl.b64 %r27,%r42,16; .loc 1 75 14 or.b64 %r43,%r27,%r42; .loc 1 77 26 shl.b64 %r28,%r43,32; .loc 1 77 16 or.b64 %r44,%r28,%r43; .loc 1 80 13 setp.le.u64 %r77,%r40,31; @ %r77 bra $L13; add.u64 %r78,%r40,-32; and.b64 %r80,%r78,-32; add.u64 %r81,%r80,32; add.u64 %r49,%r41,%r81; $L9: .loc 1 82 27 st.u64 [%r41],%r44; .loc 1 83 27 st.u64 [%r41+8],%r44; .loc 1 84 27 st.u64 [%r41+16],%r44; add.u64 %r41,%r41,32; .loc 1 85 27 st.u64 [%r41+-8],%r44; .loc 1 80 13 setp.ne.u64 %r82,%r49,%r41; @ %r82 bra $L9; and.b64 %r52,%r40,31; .loc 1 89 13 and.b64 %r83,%r40,24; setp.eq.u64 %r84,%r83,0; @ ! %r84 bra $L8; bra $L14; $L13: .loc 1 80 13 mov.u64 %r52,%r40; $L8: mov.u64 %r31,%r41; add.u64 %r95,%r41,%r52; $L10: .loc 1 91 27 st.u64 [%r31],%r44; add.u64 %r31,%r31,8; .loc 1 89 13 sub.u64 %r85,%r95,%r31; setp.gt.u64 %r86,%r85,7; @ %r86 bra $L10; add.u64 %r87,%r52,-8; and.b64 %r89,%r87,-8; add.u64 %r90,%r89,8; add.u64 %r41,%r41,%r90; and.b64 %r40,%r52,7; bra $L7; $L14: mov.u64 %r40,%r52; $L7: .loc 1 100 9 setp.eq.u64 %r91,%r40,0; @ %r91 bra $L17; cvt.u32.u32 %r92,%r63; mov.u64 %r32,%r41; add.u64 %r38,%r32,%r40; .loc 1 101 10 mov.u32 %r93,%r92; $L11: st.u8 [%r32],%r93; add.u64 %r32,%r32,1; .loc 1 100 9 setp.ne.u64 %r94,%r32,%r38; @ %r94 bra $L11; $L17: .loc 1 104 1 mov.u64 %value,%r62; st.param.u64 [%value_out],%value; ret; } lib_a-mprec.o/ 1591654539 399 399 100644 53753 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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: 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 GLOBAL VAR DEF: __mprec_tinytens .visible .const .align 8 .u64 __mprec_tinytens[5] = {4367597403136100796,4128101167230658355,3649340653511681853,2691949749288605597,776877706278891331 }; // BEGIN VAR DEF: p05$2626 .const .align 4 .u32 p05$2626[3] = {5,25,125 }; // BEGIN GLOBAL VAR DEF: __mprec_bigtens .visible .const .align 8 .u64 __mprec_bigtens[5] = {4846369599423283200,5085611494797045271,5564284217833028085,6521906365687930162,8436737289693151036 }; // 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 %r25; .reg .u64 %r26; .reg .u32 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u32 %r34; .reg .pred %r35; .reg .u64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .pred %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .pred %r43; .reg .u32 %r44; .reg .u64 %r46; .reg .u32 %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .pred %r53; .reg .u64 %r54; mov.u64 %r33,%ar0; mov.u32 %r34,%ar1; .loc 1 103 7 ld.u64 %r22,[%r33+120]; .loc 1 103 6 setp.ne.u64 %r35,%r22,0; @ %r35 bra $L2; .loc 1 106 53 mov.u64 %r38,65; mov.u64 %r37,8; { .param .u64 %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],%r38; call (%value_in),_calloc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r39,[%value_in]; } mov.u64 %r22,%r39; .loc 1 106 31 st.u64 [%r33+120],%r22; .loc 1 109 10 setp.ne.u64 %r40,%r22,0; @ %r40 bra $L2; $L6: .loc 1 111 11 mov.u64 %r32,0; bra $L1; $L2: .loc 1 115 36 cvt.s64.s32 %r41,%r34; shl.b64 %r42,%r41,3; add.u64 %r25,%r22,%r42; .loc 1 115 11 ld.u64 %r32,[%r25]; .loc 1 115 6 setp.eq.u64 %r43,%r32,0; @ %r43 bra $L4; .loc 1 117 38 ld.u64 %r26,[%r32]; .loc 1 117 34 st.u64 [%r25],%r26; bra $L5; $L4: .loc 1 121 9 mov.u32 %r44,1; shl.b32 %r31,%r44,%r34; .loc 1 126 9 add.u32 %r48,%r31,-1; cvt.s64.s32 %r49,%r48; .loc 1 123 24 add.u64 %r50,%r49,8; shl.b64 %r51,%r50,2; mov.u64 %r46,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r33; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r46; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r51; call (%value_in),_calloc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r52,[%value_in]; } mov.u64 %r32,%r52; .loc 1 127 10 setp.eq.u64 %r53,%r32,0; @ %r53 bra $L6; .loc 1 128 14 st.u32 [%r32+8],%r34; .loc 1 129 19 st.u32 [%r32+12],%r31; $L5: .loc 1 131 13 mov.u64 %r54,0; st.u64 [%r32+16],%r54; $L1: .loc 1 133 1 mov.u64 %value,%r32; 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 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .pred %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; mov.u64 %r28,%ar0; mov.u64 %r29,%ar1; .loc 1 139 6 setp.eq.u64 %r30,%r29,0; @ %r30 bra $L10; .loc 1 141 43 ld.s32 %r31,[%r29+8]; .loc 1 141 41 shl.b64 %r32,%r31,3; ld.u64 %r33,[%r28+120]; add.u64 %r26,%r33,%r32; ld.u64 %r27,[%r26]; .loc 1 141 16 st.u64 [%r29],%r27; .loc 1 142 38 st.u64 [%r26],%r29; $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 %r52; .reg .u64 %r53; .reg .u64 %r56; .reg .u64 %r59; .reg .u64 %r60; .reg .u32 %r61; .reg .u32 %r62; .reg .u32 %r63; .reg .u32 %r65; .reg .u32 %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .u32 %r70; .reg .pred %r71; .reg .pred %r72; .reg .u32 %r73; .reg .pred %r74; .reg .u32 %r77; .reg .u32 %r78; .reg .u64 %r79; .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 %r91; .reg .u64 %r92; .reg .u64 %r93; .reg .u64 %r94; .reg .u64 %r95; .reg .u32 %r97; mov.u64 %r59,%ar0; mov.u64 %r60,%ar1; mov.u32 %r61,%ar2; mov.u32 %r62,%ar3; .loc 1 160 7 ld.u32 %r42,[%r60+20]; add.u64 %r56,%r60,24; .loc 1 162 5 mov.u32 %r41,0; $L16: .loc 1 166 10 ld.u32 %r43,[%r56]; .loc 1 167 15 and.b32 %r63,%r43,65535; .loc 1 167 9 mad.lo.u32 %r44,%r63,%r61,%r62; .loc 1 168 15 shr.u32 %r65,%r43,16; .loc 1 168 31 shr.u32 %r67,%r44,16; .loc 1 168 9 mad.lo.u32 %r45,%r65,%r61,%r67; .loc 1 169 20 shr.u32 %r62,%r45,16; .loc 1 170 17 shl.b32 %r68,%r45,16; .loc 1 170 29 and.b32 %r69,%r44,65535; .loc 1 170 24 add.u32 %r70,%r68,%r69; .loc 1 170 12 st.u32 [%r56],%r70; .loc 1 177 3 add.u32 %r41,%r41,1; add.u64 %r56,%r56,4; setp.gt.s32 %r71,%r42,%r41; @ %r71 bra $L16; .loc 1 178 6 setp.eq.u32 %r72,%r62,0; @ %r72 bra $L15; .loc 1 180 10 ld.u32 %r73,[%r60+12]; setp.gt.s32 %r74,%r73,%r42; @ %r74 bra $L18; .loc 1 182 9 ld.u32 %r78,[%r60+8]; add.u32 %r77,%r78,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r59; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r77; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r79,[%value_in]; } .loc 1 183 4 ld.s32 %r83,[%r60+20]; add.u64 %r84,%r83,2; shl.b64 %r85,%r84,2; add.u64 %r86,%r60,16; add.u64 %r87,%r79,16; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r87; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r86; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r85; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r88,[%value_in]; } .loc 1 141 43 ld.s32 %r89,[%r60+8]; .loc 1 141 41 shl.b64 %r90,%r89,3; ld.u64 %r91,[%r59+120]; add.u64 %r52,%r91,%r90; ld.u64 %r53,[%r52]; .loc 1 141 16 st.u64 [%r60],%r53; .loc 1 142 38 st.u64 [%r52],%r60; .loc 1 185 6 mov.u64 %r60,%r79; $L18: .loc 1 187 20 cvt.s64.s32 %r92,%r42; add.u64 %r93,%r92,4; shl.b64 %r94,%r93,2; add.u64 %r95,%r60,%r94; st.u32 [%r95+8],%r62; .loc 1 187 16 add.u32 %r97,%r42,1; .loc 1 188 15 st.u32 [%r60+20],%r97; $L15: .loc 1 191 1 mov.u64 %value,%r60; 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 .u32 %r32; .reg .u64 %r33; .reg .u32 %r34; .reg .u32 %r35; .reg .u64 %r36; .reg .u64 %r39; .reg .u64 %r43; .reg .u64 %r44; .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 .u32 %r65; .reg .pred %r66; .reg .u32 %r67; .reg .u64 %r68; .reg .u32 %r71; .reg .u32 %r73; .reg .u32 %r74; .reg .u64 %r75; .reg .pred %r76; .reg .u64 %r77; .reg .pred %r78; .reg .u32 %r79; .reg .u32 %r80; .reg .u64 %r81; .reg .u64 %r82; .reg .u32 %r85; .reg .u32 %r87; .reg .u32 %r88; .reg .u64 %r89; .reg .pred %r90; mov.u64 %r53,%ar0; mov.u64 %r54,%ar1; mov.u32 %r55,%ar2; mov.u32 %r56,%ar3; mov.u32 %r57,%ar4; .loc 1 205 11 add.u32 %r58,%r56,8; .loc 1 205 5 div.s32 %r32,%r58,9; .loc 1 206 3 setp.le.s32 %r59,%r56,9; @ %r59 bra $L30; .loc 1 206 17 mov.u32 %r34,1; .loc 1 206 10 mov.u32 %r35,0; $L24: .loc 1 206 31 add.u32 %r34,%r34,%r34; .loc 1 206 39 add.u32 %r35,%r35,1; .loc 1 206 3 setp.gt.s32 %r61,%r32,%r34; @ %r61 bra $L24; bra $L23; $L30: .loc 1 206 10 mov.u32 %r35,0; $L23: .loc 1 208 7 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r53; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r35; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r64,[%value_in]; } mov.u64 %r52,%r64; .loc 1 209 12 st.u32 [%r52+24],%r57; .loc 1 210 11 mov.u32 %r65,1; st.u32 [%r52+20],%r65; .loc 1 218 6 setp.le.s32 %r66,%r55,9; @ %r66 bra $L25; .loc 1 220 9 add.u64 %r36,%r54,9; mov.u64 %r44,%r36; add.u32 %r67,%r55,-10; cvt.u64.u32 %r49,%r67; add.u64 %r68,%r54,10; add.u64 %r51,%r68,%r49; $L26: .loc 1 222 27 ld.s8 %r73,[%r44]; .loc 1 222 6 add.u32 %r74,%r73,-48; mov.u32 %r71,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],%r71; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r74; call (%value_in),__multadd,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r75,[%value_in]; } mov.u64 %r52,%r75; add.u64 %r44,%r44,1; .loc 1 223 7 setp.ne.u64 %r76,%r44,%r51; @ %r76 bra $L26; .loc 1 224 8 add.u64 %r77,%r49,2; add.u64 %r39,%r36,%r77; bra $L27; $L25: .loc 1 227 7 add.u64 %r39,%r54,10; .loc 1 217 5 mov.u32 %r55,9; $L27: .loc 1 228 3 setp.le.s32 %r78,%r56,%r55; @ %r78 bra $L22; mov.u64 %r33,%r39; add.u32 %r79,%r56,-1; sub.u32 %r80,%r79,%r55; cvt.u64.u32 %r81,%r80; add.u64 %r82,%r33,1; add.u64 %r43,%r81,%r82; $L29: .loc 1 229 30 ld.s8 %r87,[%r33]; .loc 1 229 9 add.u32 %r88,%r87,-48; mov.u32 %r85,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],%r85; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r88; call (%value_in),__multadd,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r89,[%value_in]; } mov.u64 %r52,%r89; add.u64 %r33,%r33,1; .loc 1 228 3 setp.ne.u64 %r90,%r33,%r43; @ %r90 bra $L29; $L22: .loc 1 231 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 239 11 and.b32 %r30,%r29,-65536; .loc 1 239 6 setp.ne.u32 %r31,%r30,0; @ %r31 bra $L40; .loc 1 242 9 shl.b32 %r29,%r29,16; .loc 1 241 9 mov.u32 %r28,16; bra $L35; $L40: .loc 1 237 16 mov.u32 %r28,0; $L35: .loc 1 244 11 and.b32 %r32,%r29,-16777216; .loc 1 244 6 setp.ne.u32 %r33,%r32,0; @ %r33 bra $L36; .loc 1 246 9 add.u32 %r28,%r28,8; .loc 1 247 9 shl.b32 %r29,%r29,8; $L36: .loc 1 249 11 and.b32 %r34,%r29,-268435456; .loc 1 249 6 setp.ne.u32 %r35,%r34,0; @ %r35 bra $L37; .loc 1 251 9 add.u32 %r28,%r28,4; .loc 1 252 9 shl.b32 %r29,%r29,4; $L37: .loc 1 254 11 and.b32 %r36,%r29,-1073741824; .loc 1 254 6 setp.ne.u32 %r37,%r36,0; @ %r37 bra $L38; .loc 1 256 9 add.u32 %r28,%r28,2; .loc 1 257 9 shl.b32 %r29,%r29,2; $L38: .loc 1 259 6 setp.lt.s32 %r38,%r29,0; @ %r38 bra $L34; .loc 1 261 8 add.u32 %r28,%r28,1; .loc 1 262 15 and.b32 %r39,%r29,1073741824; .loc 1 262 10 setp.ne.u32 %r40,%r39,0; .loc 1 263 9 selp.u32 %r28,%r28,32,%r40; $L34: .loc 1 266 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 272 20 ld.u32 %r32,[%r34]; .loc 1 274 9 and.b32 %r35,%r32,7; .loc 1 274 6 setp.eq.u32 %r36,%r35,0; @ %r36 bra $L42; .loc 1 276 13 and.b32 %r37,%r32,1; .loc 1 276 10 setp.ne.u32 %r38,%r37,0; @ %r38 bra $L50; .loc 1 278 13 and.b32 %r39,%r32,2; .loc 1 278 10 setp.eq.u32 %r40,%r39,0; @ %r40 bra $L44; .loc 1 280 11 shr.u32 %r41,%r32,1; .loc 1 280 7 st.u32 [%r34],%r41; .loc 1 281 11 mov.u32 %r33,1; bra $L41; $L44: .loc 1 283 14 shr.u32 %r42,%r32,2; .loc 1 283 10 st.u32 [%r34],%r42; .loc 1 284 14 mov.u32 %r33,2; bra $L41; $L42: .loc 1 287 11 and.b32 %r43,%r32,65535; .loc 1 287 6 setp.ne.u32 %r44,%r43,0; @ %r44 bra $L51; .loc 1 290 9 shr.u32 %r32,%r32,16; .loc 1 289 9 mov.u32 %r33,16; bra $L45; $L51: .loc 1 286 5 mov.u32 %r33,%r35; $L45: .loc 1 292 11 and.b32 %r45,%r32,255; .loc 1 292 6 setp.ne.u32 %r46,%r45,0; @ %r46 bra $L46; .loc 1 294 9 add.u32 %r33,%r33,8; .loc 1 295 9 shr.u32 %r32,%r32,8; $L46: .loc 1 297 11 and.b32 %r47,%r32,15; .loc 1 297 6 setp.ne.u32 %r48,%r47,0; @ %r48 bra $L47; .loc 1 299 9 add.u32 %r33,%r33,4; .loc 1 300 9 shr.u32 %r32,%r32,4; $L47: .loc 1 302 11 and.b32 %r49,%r32,3; .loc 1 302 6 setp.ne.u32 %r50,%r49,0; @ %r50 bra $L48; .loc 1 304 9 add.u32 %r33,%r33,2; .loc 1 305 9 shr.u32 %r32,%r32,2; $L48: .loc 1 307 11 and.b32 %r51,%r32,1; .loc 1 307 6 setp.ne.u32 %r52,%r51,0; @ %r52 bra $L49; .loc 1 309 8 add.u32 %r33,%r33,1; .loc 1 310 9 shr.u32 %r32,%r32,1; .loc 1 311 10 setp.eq.u32 %r53,%r32,0; @ %r53 bra $L52; $L49: .loc 1 314 6 st.u32 [%r34],%r32; .loc 1 315 10 bra $L41; $L50: .loc 1 277 9 mov.u32 %r33,0; bra $L41; $L52: .loc 1 312 9 mov.u32 %r33,32; $L41: .loc 1 316 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 %r24; .reg .u32 %r25; .reg .u32 %r27; .reg .u64 %r28; mov.u64 %r24,%ar0; mov.u32 %r25,%ar1; .loc 1 323 7 mov.u32 %r27,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r27; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r28,[%value_in]; } .loc 1 324 12 st.u32 [%r28+24],%r25; .loc 1 325 11 st.u32 [%r28+20],%r27; .loc 1 327 1 mov.u64 %value,%r28; 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 %r31; .reg .u32 %r32; .reg .u32 %r35; .reg .u32 %r56; .reg .u32 %r61; .reg .u32 %r62; .reg .u32 %r63; .reg .u64 %r64; .reg .u64 %r65; .reg .u32 %r66; .reg .u64 %r67; .reg .u64 %r68; .reg .u64 %r70; .reg .u64 %r71; .reg .u32 %r72; .reg .u32 %r73; .reg .u32 %r75; .reg .u32 %r76; .reg .u32 %r77; .reg .u64 %r79; .reg .u64 %r80; .reg .u64 %r81; .reg .u32 %r82; .reg .u64 %r83; .reg .u64 %r85; .reg .u64 %r89; .reg .u64 %r91; .reg .u64 %r92; .reg .u64 %r93; .reg .u32 %r94; .reg .u64 %r95; .reg .pred %r96; .reg .u32 %r97; .reg .pred %r98; .reg .u64 %r101; .reg .u64 %r102; .reg .u64 %r103; .reg .pred %r104; .reg .u64 %r105; .reg .u64 %r106; .reg .u64 %r107; .reg .u64 %r108; .reg .pred %r109; .reg .u32 %r110; .reg .pred %r111; .reg .pred %r112; .reg .pred %r113; .reg .u32 %r114; .reg .u32 %r116; .reg .u32 %r117; .reg .u32 %r118; .reg .u32 %r120; .reg .u32 %r121; .reg .u32 %r122; .reg .u32 %r123; .reg .u32 %r124; .reg .u32 %r125; .reg .pred %r126; .reg .pred %r127; .reg .u32 %r128; .reg .u32 %r131; .reg .u32 %r132; .reg .u32 %r133; .reg .u32 %r134; .reg .u32 %r135; .reg .u32 %r136; .reg .u32 %r137; .reg .u32 %r139; .reg .u32 %r140; .reg .u32 %r141; .reg .pred %r142; .reg .pred %r143; .reg .u32 %r144; .reg .pred %r145; .reg .pred %r146; .reg .u32 %r147; .reg .pred %r148; .reg .u64 %r150; .reg .u32 %r151; mov.u64 %r91,%ar0; mov.u64 %r92,%ar1; mov.u64 %r93,%ar2; .loc 1 340 8 ld.u32 %r22,[%r92+20]; .loc 1 340 18 ld.u32 %r23,[%r93+20]; .loc 1 340 6 setp.lt.s32 %r96,%r22,%r23; @ %r96 bra $L55; mov.u32 %r94,%r23; mov.u32 %r23,%r22; mov.u32 %r22,%r94; mov.u64 %r95,%r93; mov.u64 %r93,%r92; mov.u64 %r92,%r95; $L55: .loc 1 346 5 ld.u32 %r61,[%r93+8]; .loc 1 349 6 add.u32 %r82,%r23,%r22; .loc 1 350 6 ld.u32 %r97,[%r93+12]; setp.ge.s32 %r98,%r97,%r82; @ %r98 bra $L56; .loc 1 351 6 add.u32 %r61,%r61,1; $L56: .loc 1 352 7 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r91; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r61; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r101,[%value_in]; } .loc 1 353 10 add.u64 %r80,%r101,24; .loc 1 353 26 cvt.s64.s32 %r102,%r82; shl.b64 %r103,%r102,2; .loc 1 353 22 add.u64 %r67,%r80,%r103; .loc 1 353 3 setp.lt.u64 %r104,%r80,%r67; @ %r104 bra $L68; $L60: .loc 1 355 6 add.u64 %r150,%r93,24; .loc 1 356 12 cvt.s64.s32 %r105,%r23; shl.b64 %r106,%r105,2; .loc 1 356 7 add.u64 %r70,%r150,%r106; .loc 1 357 6 add.u64 %r79,%r92,24; .loc 1 358 12 cvt.s64.s32 %r107,%r22; shl.b64 %r108,%r107,2; .loc 1 358 7 add.u64 %r71,%r79,%r108; .loc 1 361 3 setp.lt.u64 %r109,%r79,%r71; @ ! %r109 bra $L59; .loc 1 367 10 mov.u32 %r151,0; bra $L58; $L68: .loc 1 353 3 mov.u64 %r68,%r80; .loc 1 354 8 mov.u32 %r110,0; $L57: st.u32 [%r68],%r110; .loc 1 353 41 add.u64 %r68,%r68,4; .loc 1 353 3 setp.gt.u64 %r111,%r67,%r68; @ %r111 bra $L57; bra $L60; $L59: .loc 1 416 3 setp.gt.s32 %r112,%r82,0; @ %r112 bra $L61; bra $L62; $L58: .loc 1 363 16 ld.u32 %r31,[%r79]; .loc 1 363 14 and.b32 %r72,%r31,65535; .loc 1 363 10 setp.eq.u32 %r113,%r72,0; @ %r113 bra $L63; mov.u64 %r85,%r80; .loc 1 365 6 mov.u64 %r64,%r150; .loc 1 367 10 mov.u32 %r62,%r151; $L64: .loc 1 370 13 ld.u32 %r32,[%r64]; mov.u64 %r83,%r85; .loc 1 370 33 ld.u32 %r35,[%r85]; .loc 1 370 16 and.b32 %r114,%r32,65535; .loc 1 370 37 and.b32 %r116,%r35,65535; .loc 1 370 30 mad.lo.u32 %r117,%r114,%r72,%r116; .loc 1 370 10 add.u32 %r73,%r117,%r62; .loc 1 372 16 add.u64 %r64,%r64,4; .loc 1 372 19 shr.u32 %r118,%r32,16; .loc 1 372 37 shr.u32 %r120,%r35,16; .loc 1 372 30 mad.lo.u32 %r121,%r118,%r72,%r120; .loc 1 371 14 shr.u32 %r122,%r73,16; .loc 1 372 11 add.u32 %r75,%r121,%r122; .loc 1 373 14 shr.u32 %r62,%r75,16; add.u64 %r85,%r85,4; .loc 1 374 8 shl.b32 %r123,%r75,16; and.b32 %r124,%r73,65535; or.b32 %r125,%r123,%r124; st.u32 [%r83],%r125; .loc 1 376 4 setp.gt.u64 %r126,%r70,%r64; @ %r126 bra $L64; .loc 1 377 8 st.u32 [%r85],%r62; ld.u32 %r31,[%r79]; $L63: .loc 1 379 14 shr.u32 %r76,%r31,16; .loc 1 379 10 setp.eq.u32 %r127,%r76,0; @ %r127 bra $L65; .loc 1 384 7 ld.u32 %r66,[%r80]; mov.u64 %r89,%r150; mov.u32 %r56,%r66; mov.u64 %r65,%r80; .loc 1 383 10 mov.u32 %r63,%r151; $L66: .loc 1 387 16 ld.u16 %r128,[%r89]; .loc 1 387 37 shr.u32 %r131,%r56,16; .loc 1 387 30 mad.lo.u32 %r132,%r128,%r76,%r131; .loc 1 387 10 add.u32 %r77,%r132,%r63; .loc 1 389 8 add.u64 %r65,%r65,4; shl.b32 %r133,%r77,16; and.b32 %r134,%r66,65535; or.b32 %r135,%r133,%r134; st.u32 [%r65+-4],%r135; .loc 1 390 33 ld.u32 %r56,[%r65]; .loc 1 390 19 ld.u32 %r137,[%r89]; shr.u32 %r136,%r137,16; .loc 1 390 37 and.b32 %r139,%r56,65535; .loc 1 390 30 mad.lo.u32 %r140,%r136,%r76,%r139; .loc 1 388 14 shr.u32 %r141,%r77,16; .loc 1 390 11 add.u32 %r66,%r140,%r141; .loc 1 391 14 shr.u32 %r63,%r66,16; add.u64 %r89,%r89,4; .loc 1 393 4 setp.gt.u64 %r142,%r70,%r89; @ %r142 bra $L66; .loc 1 394 8 st.u32 [%r65],%r66; $L65: .loc 1 361 22 add.u64 %r79,%r79,4; .loc 1 361 29 add.u64 %r80,%r80,4; .loc 1 361 3 setp.gt.u64 %r143,%r71,%r79; @ %r143 bra $L58; bra $L59; $L61: .loc 1 416 43 add.u64 %r81,%r67,-4; ld.u32 %r144,[%r67+-4]; setp.ne.u32 %r145,%r144,0; @ %r145 bra $L62; $L67: .loc 1 416 54 add.u32 %r82,%r82,-1; .loc 1 416 3 setp.eq.u32 %r146,%r82,0; @ %r146 bra $L62; .loc 1 416 43 add.u64 %r81,%r81,-4; ld.u32 %r147,[%r81]; setp.eq.u32 %r148,%r147,0; @ %r148 bra $L67; $L62: .loc 1 417 11 st.u32 [%r101+20],%r82; .loc 1 419 1 mov.u64 %value,%r101; 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 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .u32 %r39; .reg .pred %r40; .reg .u32 %r43; .reg .u32 %r44; .reg .u64 %r45; .reg .u32 %r46; .reg .u64 %r47; .reg .u64 %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .pred %r51; .reg .pred %r52; .reg .u32 %r54; .reg .u64 %r55; .reg .u32 %r56; .reg .u64 %r58; .reg .u32 %r59; .reg .pred %r60; .reg .u64 %r64; .reg .pred %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .u64 %r68; .reg .pred %r69; .reg .pred %r70; .reg .u64 %r74; .reg .u64 %r75; mov.u64 %r37,%ar0; mov.u64 %r38,%ar1; mov.u32 %r39,%ar2; .loc 1 429 10 and.b32 %r26,%r39,3; .loc 1 429 6 setp.eq.u32 %r40,%r26,0; @ %r40 bra $L86; .loc 1 430 9 cvta.const.u64 %r45,p05$2626; .loc 1 430 32 add.u32 %r46,%r26,-1; .loc 1 430 9 cvt.s64.s32 %r47,%r46; shl.b64 %r48,%r47,2; add.u64 %r49,%r45,%r48; mov.u32 %r44,0; ld.u32 %r43,[%r49]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r37; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r38; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r43; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r44; call (%value_in),__multadd,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r50,[%value_in]; } mov.u64 %r38,%r50; $L86: .loc 1 432 11 shr.s32 %r25,%r39,2; .loc 1 432 6 setp.eq.u32 %r51,%r25,0; @ %r51 bra $L92; .loc 1 435 12 ld.u64 %r27,[%r37+112]; .loc 1 435 6 setp.ne.u64 %r52,%r27,0; @ %r52 bra $L88; .loc 1 323 7 mov.u32 %r54,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r37; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r54; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r55,[%value_in]; } mov.u64 %r27,%r55; .loc 1 324 12 mov.u32 %r56,625; st.u32 [%r27+24],%r56; .loc 1 325 11 st.u32 [%r27+20],%r54; .loc 1 438 31 st.u64 [%r37+112],%r27; .loc 1 439 17 mov.u64 %r58,0; st.u64 [%r27],%r58; $L88: .loc 1 424 1 mov.u64 %r36,%r38; bra $L89; $L91: mov.u64 %r27,%r29; $L89: .loc 1 443 13 and.b32 %r59,%r25,1; .loc 1 443 10 setp.eq.u32 %r60,%r59,0; @ %r60 bra $L90; .loc 1 445 9 { .param .u64 %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],%r27; call (%value_in),__multiply,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r64,[%value_in]; } .loc 1 139 6 setp.eq.u64 %r65,%r36,0; @ %r65 bra $L93; .loc 1 141 43 ld.s32 %r66,[%r36+8]; .loc 1 141 41 shl.b64 %r67,%r66,3; ld.u64 %r68,[%r37+120]; add.u64 %r34,%r68,%r67; ld.u64 %r35,[%r34]; .loc 1 141 16 st.u64 [%r36],%r35; .loc 1 142 38 st.u64 [%r34],%r36; .loc 1 447 6 mov.u64 %r36,%r64; bra $L90; $L93: mov.u64 %r36,%r64; $L90: .loc 1 449 15 shr.s32 %r25,%r25,1; .loc 1 449 10 setp.eq.u32 %r69,%r25,0; @ %r69 bra $L85; .loc 1 451 17 ld.u64 %r29,[%r27]; .loc 1 451 10 setp.ne.u64 %r70,%r29,0; @ %r70 bra $L91; .loc 1 453 22 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r37; .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 %r74,[%value_in]; } mov.u64 %r29,%r74; .loc 1 453 20 st.u64 [%r27],%r29; .loc 1 454 15 mov.u64 %r75,0; st.u64 [%r74],%r75; bra $L91; $L92: .loc 1 433 12 mov.u64 %r36,%r38; $L85: .loc 1 459 1 mov.u64 %value,%r36; 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 .u64 %r29; .reg .u32 %r34; .reg .u32 %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .u64 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u64 %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .u64 %r56; .reg .u64 %r60; .reg .u64 %r61; .reg .u64 %r65; .reg .u64 %r70; .reg .u64 %r73; .reg .u64 %r75; .reg .u64 %r76; .reg .u32 %r77; .reg .u32 %r78; .reg .pred %r79; .reg .pred %r81; .reg .u64 %r84; .reg .pred %r85; .reg .u32 %r86; .reg .u64 %r87; .reg .u64 %r88; .reg .u32 %r89; .reg .pred %r90; .reg .u64 %r91; .reg .u64 %r92; .reg .u64 %r93; .reg .u64 %r94; .reg .u64 %r95; .reg .pred %r96; .reg .u32 %r97; .reg .u32 %r98; .reg .u32 %r99; .reg .u32 %r100; .reg .u32 %r101; .reg .pred %r102; .reg .pred %r103; .reg .pred %r104; .reg .u64 %r105; .reg .u64 %r106; .reg .u64 %r107; mov.u64 %r75,%ar0; mov.u64 %r76,%ar1; mov.u32 %r77,%ar2; .loc 1 469 5 shr.s32 %r40,%r77,5; .loc 1 473 6 ld.u32 %r42,[%r76+8]; .loc 1 474 10 ld.u32 %r78,[%r76+20]; add.u32 %r23,%r40,%r78; .loc 1 474 6 add.u32 %r41,%r23,1; .loc 1 475 10 ld.u32 %r43,[%r76+12]; .loc 1 475 3 setp.le.s32 %r79,%r41,%r43; @ %r79 bra $L104; $L105: .loc 1 476 7 add.u32 %r42,%r42,1; .loc 1 475 34 add.u32 %r43,%r43,%r43; .loc 1 475 3 setp.gt.s32 %r81,%r41,%r43; @ %r81 bra $L105; $L104: .loc 1 477 8 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r75; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r42; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r84,[%value_in]; } .loc 1 478 6 add.u64 %r54,%r84,24; .loc 1 479 3 setp.le.s32 %r85,%r40,0; @ %r85 bra $L106; mov.u64 %r65,%r54; add.u32 %r86,%r40,-1; cvt.u64.u32 %r70,%r86; shl.b64 %r87,%r70,2; add.u64 %r88,%r87,28; add.u64 %r73,%r84,%r88; .loc 1 480 11 mov.u32 %r89,0; $L107: st.u32 [%r65],%r89; add.u64 %r65,%r65,4; .loc 1 479 3 setp.ne.u64 %r90,%r65,%r73; @ %r90 bra $L107; add.u64 %r91,%r70,1; shl.b64 %r92,%r91,2; add.u64 %r54,%r54,%r92; $L106: .loc 1 481 5 add.u64 %r93,%r76,24; .loc 1 482 13 ld.s32 %r94,[%r76+20]; .loc 1 482 10 shl.b64 %r95,%r94,2; .loc 1 482 6 add.u64 %r45,%r93,%r95; .loc 1 484 9 and.b32 %r46,%r77,31; .loc 1 484 6 setp.eq.u32 %r96,%r46,0; @ %r96 bra $L108; .loc 1 486 10 mov.u32 %r97,32; sub.u32 %r47,%r97,%r46; mov.u64 %r60,%r93; mov.u64 %r56,%r54; .loc 1 487 9 mov.u32 %r39,0; $L109: .loc 1 490 15 ld.u32 %r99,[%r60]; shl.b32 %r98,%r99,%r46; .loc 1 490 20 or.b32 %r100,%r98,%r39; .loc 1 490 10 st.u32 [%r56],%r100; .loc 1 491 6 ld.u32 %r101,[%r60]; shr.u32 %r39,%r101,%r47; add.u64 %r60,%r60,4; add.u64 %r56,%r56,4; .loc 1 493 7 setp.gt.u64 %r102,%r45,%r60; @ %r102 bra $L109; .loc 1 494 16 st.u32 [%r56],%r39; .loc 1 494 10 setp.eq.u32 %r103,%r39,0; .loc 1 474 6 selp.u32 %r23,%r23,%r41,%r103; bra $L110; $L108: mov.u64 %r29,%r93; mov.u64 %r61,%r54; $L111: .loc 1 514 15 ld.u32 %r34,[%r29]; .loc 1 514 13 st.u32 [%r61],%r34; add.u64 %r29,%r29,4; add.u64 %r61,%r61,4; .loc 1 515 5 setp.gt.u64 %r104,%r45,%r29; @ %r104 bra $L111; $L110: .loc 1 516 12 st.u32 [%r84+20],%r23; .loc 1 141 43 ld.s32 %r105,[%r76+8]; .loc 1 141 41 shl.b64 %r106,%r105,3; ld.u64 %r107,[%r75+120]; add.u64 %r52,%r107,%r106; ld.u64 %r53,[%r52]; .loc 1 141 16 st.u64 [%r76],%r53; .loc 1 142 38 st.u64 [%r52],%r76; .loc 1 519 1 mov.u64 %value,%r84; 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 %r23; .reg .u32 %r24; .reg .u32 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u32 %r28; .reg .u32 %r29; .reg .u64 %r30; .reg .u32 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .pred %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .pred %r38; .reg .pred %r39; .reg .pred %r40; mov.u64 %r33,%ar0; mov.u64 %r34,%ar1; .loc 1 527 5 ld.u32 %r28,[%r33+20]; .loc 1 528 5 ld.u32 %r29,[%r34+20]; .loc 1 535 9 sub.u32 %r32,%r28,%r29; .loc 1 535 6 setp.ne.u32 %r35,%r32,0; @ %r35 bra $L118; .loc 1 537 7 add.u64 %r30,%r33,24; .loc 1 538 12 cvt.s64.s32 %r36,%r29; shl.b64 %r23,%r36,2; .loc 1 538 6 add.u64 %r26,%r30,%r23; .loc 1 539 7 add.u64 %r37,%r34,24; .loc 1 540 6 add.u64 %r27,%r37,%r23; $L121: .loc 1 543 10 add.u64 %r26,%r26,-4; .loc 1 543 11 ld.u32 %r24,[%r26]; .loc 1 543 10 add.u64 %r27,%r27,-4; .loc 1 543 20 ld.u32 %r25,[%r27]; .loc 1 543 10 setp.eq.u32 %r38,%r24,%r25; @ %r38 bra $L120; .loc 1 544 24 setp.lt.u32 %r39,%r24,%r25; selp.u32 %r32,-1,1,%r39; bra $L118; $L120: .loc 1 545 10 setp.lt.u64 %r40,%r30,%r26; @ %r40 bra $L121; $L118: .loc 1 549 1 mov.u32 %value,%r32; 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 %r27; .reg .u32 %r29; .reg .u32 %r41; .reg .u32 %r51; .reg .u32 %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .u64 %r58; .reg .u64 %r60; .reg .u32 %r61; .reg .u32 %r63; .reg .u32 %r64; .reg .u64 %r66; .reg .u32 %r67; .reg .u64 %r68; .reg .u32 %r69; .reg .u32 %r70; .reg .u64 %r72; .reg .u64 %r73; .reg .u32 %r74; .reg .u64 %r75; .reg .u32 %r76; .reg .u64 %r79; .reg .u64 %r81; .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 .pred %r96; .reg .u64 %r97; .reg .pred %r98; .reg .pred %r99; .reg .pred %r100; .reg .u32 %r103; .reg .u64 %r104; .reg .u64 %r105; .reg .u64 %r106; .reg .u64 %r107; .reg .u64 %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 .pred %r118; .reg .pred %r119; .reg .u32 %r120; .reg .u32 %r121; .reg .u32 %r122; .reg .u32 %r123; .reg .u32 %r124; .reg .pred %r125; .reg .u64 %r126; .reg .u64 %r127; .reg .u64 %r129; .reg .pred %r130; .reg .u32 %r131; .reg .pred %r132; .reg .u32 %r135; .reg .u64 %r136; .reg .u32 %r137; .reg .pred %r139; mov.u64 %r89,%ar0; mov.u64 %r90,%ar1; mov.u64 %r91,%ar2; .loc 1 527 5 ld.u32 %r56,[%r90+20]; .loc 1 528 5 ld.u32 %r70,[%r91+20]; .loc 1 535 9 sub.u32 %r53,%r56,%r70; add.u64 %r54,%r90,24; add.u64 %r55,%r91,24; .loc 1 535 6 setp.ne.u32 %r96,%r53,0; @ %r96 bra $L125; .loc 1 538 12 cvt.s64.s32 %r97,%r70; shl.b64 %r72,%r97,2; .loc 1 538 6 add.u64 %r73,%r54,%r72; .loc 1 540 6 add.u64 %r75,%r55,%r72; $L129: .loc 1 543 10 add.u64 %r73,%r73,-4; .loc 1 543 11 ld.u32 %r74,[%r73]; .loc 1 543 10 add.u64 %r75,%r75,-4; .loc 1 543 20 ld.u32 %r76,[%r75]; .loc 1 543 10 setp.eq.u32 %r98,%r74,%r76; @ %r98 bra $L126; .loc 1 544 24 setp.ge.u32 %r99,%r74,%r76; @ %r99 bra $L127; mov.u64 %r92,%r54; mov.u64 %r54,%r55; mov.u64 %r55,%r92; mov.u64 %r93,%r90; mov.u64 %r90,%r91; mov.u64 %r91,%r93; .loc 1 576 9 mov.u32 %r53,1; bra $L127; $L126: .loc 1 545 10 setp.le.u64 %r100,%r73,%r54; @ ! %r100 bra $L129; bra $L128; $L136: .loc 1 579 7 mov.u32 %r53,0; $L127: .loc 1 580 7 ld.u32 %r103,[%r90+8]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r89; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r103; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r104,[%value_in]; } mov.u64 %r88,%r104; .loc 1 581 12 st.u32 [%r104+16],%r53; .loc 1 582 6 ld.u32 %r69,[%r90+20]; .loc 1 584 12 cvt.s64.s32 %r105,%r69; shl.b64 %r106,%r105,2; .loc 1 584 7 add.u64 %r58,%r54,%r106; .loc 1 587 12 ld.s32 %r107,[%r91+20]; shl.b64 %r108,%r107,2; .loc 1 587 7 add.u64 %r60,%r55,%r108; add.u64 %r81,%r104,24; .loc 1 589 10 mov.u32 %r57,0; $L130: mov.u64 %r68,%r81; .loc 1 593 12 ld.u32 %r27,[%r54]; .loc 1 593 29 ld.u32 %r29,[%r55]; .loc 1 593 16 and.b32 %r109,%r27,65535; .loc 1 593 43 add.u32 %r110,%r109,%r57; .loc 1 593 33 and.b32 %r111,%r29,65535; .loc 1 593 43 sub.u32 %r61,%r110,%r111; .loc 1 596 15 add.u64 %r54,%r54,4; .loc 1 596 31 add.u64 %r55,%r55,4; .loc 1 596 18 shr.u32 %r112,%r27,16; .loc 1 596 34 shr.u32 %r113,%r29,16; .loc 1 596 25 sub.u32 %r114,%r112,%r113; .loc 1 594 14 shr.s32 %r115,%r61,16; .loc 1 596 41 add.u32 %r63,%r114,%r115; .loc 1 597 14 shr.s32 %r57,%r63,16; add.u64 %r81,%r81,4; mov.u64 %r79,%r81; .loc 1 599 7 shl.b32 %r116,%r63,16; and.b32 %r117,%r61,65535; or.b32 %r51,%r116,%r117; st.u32 [%r68],%r51; .loc 1 601 3 setp.gt.u64 %r118,%r60,%r55; @ %r118 bra $L130; .loc 1 602 9 setp.le.u64 %r119,%r58,%r54; @ %r119 bra $L131; mov.u64 %r66,%r54; $L132: .loc 1 604 12 ld.u32 %r41,[%r66]; .loc 1 604 16 and.b32 %r120,%r41,65535; .loc 1 604 26 add.u32 %r64,%r120,%r57; .loc 1 607 15 add.u64 %r66,%r66,4; .loc 1 607 18 shr.u32 %r121,%r41,16; .loc 1 605 14 shr.s32 %r122,%r64,16; .loc 1 607 25 add.u32 %r67,%r121,%r122; .loc 1 608 14 shr.s32 %r57,%r67,16; .loc 1 610 7 shl.b32 %r123,%r67,16; and.b32 %r124,%r64,65535; or.b32 %r51,%r123,%r124; st.u32 [%r81],%r51; add.u64 %r81,%r81,4; .loc 1 602 9 setp.gt.u64 %r125,%r58,%r66; @ %r125 bra $L132; add.u64 %r126,%r58,-1; sub.u64 %r127,%r126,%r54; and.b64 %r129,%r127,-4; add.u64 %r68,%r79,%r129; $L131: .loc 1 629 9 setp.ne.u32 %r130,%r51,0; @ %r130 bra $L133; $L134: .loc 1 630 7 add.u32 %r69,%r69,-1; .loc 1 629 9 add.u64 %r68,%r68,-4; ld.u32 %r131,[%r68]; setp.eq.u32 %r132,%r131,0; @ %r132 bra $L134; $L133: .loc 1 631 11 st.u32 [%r104+20],%r69; .loc 1 632 10 bra $L124; $L128: .loc 1 566 11 mov.u32 %r135,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r89; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r135; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r136,[%value_in]; } mov.u64 %r88,%r136; .loc 1 567 15 mov.u32 %r137,1; st.u32 [%r88+20],%r137; .loc 1 568 16 st.u32 [%r88+24],%r135; .loc 1 569 14 bra $L124; $L125: .loc 1 571 6 setp.ge.s32 %r139,%r53,0; @ %r139 bra $L136; mov.u64 %r94,%r54; mov.u64 %r54,%r55; mov.u64 %r55,%r94; mov.u64 %r95,%r90; mov.u64 %r90,%r91; mov.u64 %r91,%r95; .loc 1 576 9 mov.u32 %r53,1; bra $L127; $L124: .loc 1 633 1 mov.u64 %value,%r88; 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 %r27; .reg .u32 %r29; .reg .u32 %r30; .reg .u64 %r32; .reg .f64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .pred %r39; .reg .u64 %r40; .reg .pred %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u64 %r48; .reg .pred %r54; .reg .u32 %r55; .reg .u64 %r56; .reg .u64 %r57; mov.f64 %r34,%ar0; .loc 1 643 18 mov.b64 %r35,%r34; shr.u64 %r36,%r35,32; cvt.u32.u64 %r38,%r36; and.b32 %r37,%r38,2146435072; .loc 1 643 30 add.u32 %r23,%r37,-54525952; .loc 1 645 6 setp.le.s32 %r39,%r23,0; @ %r39 bra $L142; .loc 1 651 17 cvt.u64.u32 %r40,%r23; .loc 1 653 17 shl.b64 %r32,%r40,32; bra $L143; $L142: .loc 1 660 11 neg.s32 %r24,%r23; .loc 1 660 9 shr.s32 %r29,%r24,20; .loc 1 661 10 setp.gt.s32 %r45,%r29,19; @ %r45 bra $L144; .loc 1 663 24 mov.u32 %r47,524288; shr.s32 %r46,%r47,%r29; .loc 1 663 14 cvt.u64.u32 %r48,%r46; .loc 1 665 14 shl.b64 %r32,%r48,32; bra $L143; $L144: .loc 1 670 14 mov.u64 %r32,0; .loc 1 671 6 add.u32 %r30,%r29,-20; .loc 1 673 34 setp.gt.s32 %r54,%r30,30; @ %r54 bra $L146; mov.u32 %r55,-2147483648; shr.u32 %r27,%r55,%r30; bra $L145; $L146: mov.u32 %r27,1; $L145: .loc 1 673 20 cvt.u64.u32 %r56,%r27; and.b64 %r57,%r32,-4294967296; or.b64 %r32,%r57,%r56; $L143: .loc 1 678 11 mov.b64 %value,%r32; .loc 1 679 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 %r26; .reg .u32 %r33; .reg .u32 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u32 %r42; .reg .u32 %r46; .reg .u32 %r48; .reg .u32 %r49; .reg .u64 %r53; .reg .f64 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .u64 %r58; .reg .u32 %r60; .reg .u32 %r61; .reg .u32 %r62; .reg .pred %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .u64 %r67; .reg .pred %r71; .reg .u32 %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .u64 %r76; .reg .u64 %r77; .reg .pred %r79; .reg .pred %r80; .reg .u32 %r82; .reg .u32 %r83; .reg .u32 %r84; .reg .u32 %r85; .reg .u64 %r86; .reg .u64 %r90; .reg .pred %r91; .reg .u32 %r92; .reg .u32 %r93; .reg .u64 %r94; .reg .u64 %r95; .reg .u32 %r97; .reg .u64 %r98; .reg .u64 %r102; .reg .u64 %r103; .reg .u32 %r106; .reg .u32 %r107; .reg .u64 %r108; .reg .pred %r112; mov.u64 %r55,%ar0; mov.u64 %r56,%ar1; .loc 1 695 7 add.u64 %r39,%r55,24; .loc 1 696 15 ld.s32 %r57,[%r55+20]; .loc 1 696 12 shl.b64 %r58,%r57,2; .loc 1 696 6 add.u64 %r40,%r39,%r58; .loc 1 697 5 add.u64 %r41,%r40,-4; ld.u32 %r42,[%r40+-4]; .loc 1 702 7 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r42; call (%value_in),__hi0bits,(%out_arg1); ld.param.u32 %r60,[%value_in]; } .loc 1 703 11 mov.u32 %r62,32; sub.u32 %r61,%r62,%r60; .loc 1 703 6 st.u32 [%r56],%r61; .loc 1 705 6 setp.gt.s32 %r63,%r60,10; @ %r63 bra $L148; .loc 1 707 32 mov.u32 %r64,11; sub.u32 %r26,%r64,%r60; .loc 1 707 22 shr.u32 %r65,%r42,%r26; .loc 1 707 18 or.b32 %r66,%r65,1072693248; .loc 1 707 10 cvt.u64.u32 %r67,%r66; shl.b64 %r53,%r67,32; .loc 1 708 28 setp.ge.u64 %r71,%r39,%r41; @ %r71 bra $L155; ld.u32 %r72,[%r40+-8]; shr.u32 %r49,%r72,%r26; bra $L149; $L155: mov.u32 %r49,0; $L149: .loc 1 710 31 add.u32 %r73,%r60,21; .loc 1 710 14 shl.b32 %r74,%r42,%r73; .loc 1 710 36 or.b32 %r75,%r74,%r49; .loc 1 710 10 cvt.u64.u32 %r76,%r75; and.b64 %r77,%r53,-4294967296; or.b64 %r53,%r77,%r76; .loc 1 712 7 bra $L150; $L148: add.u32 %r38,%r60,-11; .loc 1 714 24 setp.ge.u64 %r79,%r39,%r41; @ %r79 bra $L151; ld.u32 %r46,[%r40+-8]; .loc 1 715 6 setp.eq.u32 %r80,%r38,0; @ %r80 bra $L152; .loc 1 717 38 sub.u32 %r33,%r62,%r38; .loc 1 717 22 shl.b32 %r82,%r42,%r38; .loc 1 717 31 shr.u32 %r83,%r46,%r33; .loc 1 717 27 or.b32 %r84,%r82,%r83; or.b32 %r85,%r84,1072693248; .loc 1 717 10 cvt.u64.u32 %r86,%r85; shl.b64 %r53,%r86,32; shl.b32 %r48,%r46,%r38; .loc 1 714 24 add.u64 %r90,%r40,-8; .loc 1 718 28 setp.ge.u64 %r91,%r39,%r90; @ %r91 bra $L153; ld.u32 %r93,[%r40+-12]; shr.u32 %r92,%r93,%r33; or.b32 %r48,%r48,%r92; $L153: .loc 1 720 10 cvt.u64.u32 %r94,%r48; and.b64 %r95,%r53,-4294967296; or.b64 %r53,%r95,%r94; bra $L150; $L152: .loc 1 725 18 or.b32 %r97,%r42,1072693248; .loc 1 725 10 cvt.u64.u32 %r98,%r97; .loc 1 727 10 cvt.u64.u32 %r102,%r46; shl.b64 %r103,%r98,32; or.b64 %r53,%r103,%r102; $L150: .loc 1 755 11 mov.b64 %r54,%r53; bra $L159; $L154: .loc 1 717 22 shl.b32 %r106,%r42,%r38; .loc 1 717 27 or.b32 %r107,%r106,1072693248; .loc 1 717 10 cvt.u64.u32 %r108,%r107; shl.b64 %r53,%r108,32; mov.u32 %r48,0; bra $L153; $L151: .loc 1 715 6 setp.ne.u32 %r112,%r38,0; @ %r112 bra $L154; .loc 1 714 24 mov.u32 %r46,%r38; bra $L152; $L159: .loc 1 756 1 mov.f64 %value,%r54; 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 %r25; .reg .u32 %r30; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r50; .reg .u32 %r51; .reg .u64 %r54; .reg .f64 %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .u32 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u64 %r62; .reg .u32 %r63; .reg .pred %r64; .reg .u32 %r65; .reg .u64 %r66; .reg .pred %r67; .reg .u64 %r69; .reg .u32 %r70; .reg .pred %r71; .reg .u32 %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .u32 %r76; .reg .u32 %r77; .reg .pred %r78; .reg .u32 %r80; .reg .u32 %r81; .reg .u32 %r82; .reg .pred %r83; .reg .u32 %r84; .reg .u32 %r85; .reg .u32 %r86; .reg .u32 %r87; .reg .u32 %r88; .reg .u32 %r89; .reg .u64 %r90; .reg .u64 %r91; .reg .u64 %r92; .reg .u32 %r94; .reg .u32 %r95; .reg .u32 %r96; mov.u64 %r54,%ar0; mov.f64 %r55,%ar1; mov.u64 %r56,%ar2; mov.u64 %r57,%ar3; .loc 1 785 7 mov.u32 %r59,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r54; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r59; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r60,[%value_in]; } mov.b64 %r61,%r55; shr.u64 %r62,%r61,32; cvt.u32.u64 %r51,%r62; .loc 1 791 10 and.b32 %r22,%r51,1048575; .loc 1 799 23 shr.u32 %r63,%r51,20; and.b32 %r23,%r63,2047; .loc 1 799 6 setp.ne.u32 %r64,%r23,0; @ %r64 bra $L161; .loc 1 791 5 st.u32 [%frame],%r22; bra $L162; $L161: .loc 1 800 7 or.b32 %r65,%r22,1048576; st.u32 [%frame],%r65; $L162: mov.b64 %r66,%r55; cvt.u32.u64 %r50,%r66; .loc 1 804 6 setp.eq.u32 %r67,%r50,0; @ %r67 bra $L163; .loc 1 806 9 st.u32 [%frame+4],%r50; .loc 1 807 11 add.u64 %r69,%frame,4; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r69; call (%value_in),__lo0bits,(%out_arg1); ld.param.u32 %r70,[%value_in]; } mov.u32 %r46,%r70; .loc 1 808 10 setp.eq.u32 %r71,%r46,0; @ %r71 bra $L164; .loc 1 810 23 ld.u32 %r25,[%frame]; .loc 1 810 30 mov.u32 %r73,32; sub.u32 %r72,%r73,%r46; .loc 1 810 23 shl.b32 %r74,%r25,%r72; .loc 1 810 19 ld.u32 %r76,[%frame+4]; or.b32 %r75,%r74,%r76; .loc 1 810 15 st.u32 [%r60+24],%r75; .loc 1 811 6 shr.u32 %r30,%r25,%r46; st.u32 [%frame],%r30; bra $L165; $L164: .loc 1 814 7 ld.u32 %r77,[%frame+4]; st.u32 [%r60+24],%r77; ld.u32 %r30,[%frame]; $L165: .loc 1 815 27 st.u32 [%r60+28],%r30; .loc 1 815 36 setp.ne.u32 %r78,%r30,0; selp.u32 %r45,2,1,%r78; .loc 1 815 19 st.u32 [%r60+20],%r45; bra $L167; $L163: .loc 1 824 11 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),__lo0bits,(%out_arg1); ld.param.u32 %r80,[%value_in]; } .loc 1 825 12 ld.u32 %r81,[%frame]; st.u32 [%r60+24],%r81; .loc 1 826 19 mov.u32 %r82,1; st.u32 [%r60+20],%r82; .loc 1 828 9 add.u32 %r46,%r80,32; .loc 1 826 9 mov.u32 %r45,%r82; $L167: .loc 1 886 6 setp.eq.u32 %r83,%r23,0; @ %r83 bra $L168; .loc 1 893 22 add.u32 %r84,%r23,-1075; .loc 1 893 32 add.u32 %r85,%r84,%r46; .loc 1 893 10 st.u32 [%r56],%r85; .loc 1 894 17 mov.u32 %r87,53; sub.u32 %r86,%r87,%r46; .loc 1 894 13 st.u32 [%r57],%r86; bra $L160; $L168: .loc 1 900 36 add.u32 %r88,%r46,-1074; .loc 1 900 10 st.u32 [%r56],%r88; .loc 1 902 34 cvt.s64.s32 %r90,%r45; .loc 1 902 24 shl.b64 %r91,%r90,2; add.u64 %r92,%r60,%r91; ld.u32 %r89,[%r92+20]; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r89; call (%value_in),__hi0bits,(%out_arg1); ld.param.u32 %r94,[%value_in]; } .loc 1 902 18 shl.b32 %r95,%r45,5; .loc 1 902 22 sub.u32 %r96,%r95,%r94; .loc 1 902 13 st.u32 [%r57],%r96; $L160: .loc 1 909 1 mov.u64 %value,%r60; 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 %r56; .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 920 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 920 8 mov.b64 %r40,%r39; .loc 1 921 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 921 8 mov.b64 %r41,%r22; .loc 1 923 31 ld.u32 %r53,[%r43+20]; ld.u32 %r54,[%r44+20]; sub.u32 %r52,%r53,%r54; .loc 1 923 20 shl.b32 %r55,%r52,5; .loc 1 923 10 ld.u32 %r57,[%frame+4]; ld.u32 %r58,[%frame]; sub.u32 %r56,%r57,%r58; .loc 1 923 5 add.u32 %r35,%r55,%r56; .loc 1 942 6 setp.le.s32 %r59,%r35,0; @ %r59 bra $L172; .loc 1 943 21 shl.b32 %r60,%r35,20; .loc 1 943 16 shr.u64 %r62,%r40,32; cvt.u32.u64 %r64,%r62; add.u32 %r63,%r60,%r64; cvt.u64.u32 %r65,%r63; shl.b64 %r66,%r65,32; and.b64 %r67,%r40,4294967295; or.b64 %r68,%r67,%r66; mov.b64 %r39,%r68; bra $L173; $L172: .loc 1 947 23 shl.b32 %r70,%r35,20; .loc 1 947 18 shr.u64 %r73,%r41,32; cvt.u32.u64 %r75,%r73; sub.u32 %r74,%r75,%r70; cvt.u64.u32 %r76,%r74; shl.b64 %r77,%r76,32; and.b64 %r78,%r41,4294967295; or.b64 %r79,%r78,%r77; mov.b64 %r22,%r79; $L173: .loc 1 950 15 div.rn.f64 %value,%r39,%r22; .loc 1 951 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 983 6 setp.gt.s32 %r24,%r23,23; @ %r24 bra $L177; .loc 1 984 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 $L174; $L177: .loc 1 982 10 mov.f64 %r22,0d3ff0000000000000; $L175: .loc 1 987 9 mul.f64 %r22,%r22,0d4024000000000000; .loc 1 988 10 add.u32 %r23,%r23,-1; .loc 1 985 9 setp.ne.u32 %r29,%r23,0; @ %r29 bra $L175; $L174: .loc 1 991 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 %r30; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r44; .reg .u64 %r45; .reg .u64 %r50; .reg .u32 %r51; .reg .u64 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .u64 %r58; .reg .u64 %r59; .reg .pred %r60; .reg .pred %r61; .reg .u64 %r62; .reg .u64 %r64; .reg .u64 %r66; .reg .u64 %r67; .reg .pred %r68; .reg .u32 %r69; .reg .pred %r70; mov.u64 %r50,%ar0; mov.u32 %r51,%ar1; mov.u64 %r52,%ar2; .loc 1 1004 14 add.u32 %r53,%r51,-1; .loc 1 1004 18 shr.s32 %r54,%r53,5; .loc 1 1004 29 cvt.s64.s32 %r55,%r54; add.u64 %r56,%r55,1; shl.b64 %r57,%r56,2; .loc 1 1004 5 add.u64 %r35,%r50,%r57; .loc 1 1005 4 add.u64 %r36,%r52,24; .loc 1 1007 12 ld.s32 %r58,[%r52+20]; .loc 1 1007 9 shl.b64 %r59,%r58,2; .loc 1 1007 5 add.u64 %r37,%r36,%r59; .loc 1 1008 7 setp.ge.u64 %r60,%r36,%r37; @ %r60 bra $L180; mov.u64 %r44,%r50; mov.u64 %r45,%r36; $L181: .loc 1 1009 10 ld.u32 %r30,[%r45]; .loc 1 1009 8 st.u32 [%r44],%r30; add.u64 %r44,%r44,4; add.u64 %r45,%r45,4; .loc 1 1008 7 setp.gt.u64 %r61,%r37,%r45; @ %r61 bra $L181; sub.u64 %r62,%r37,%r52; add.u64 %r64,%r62,-25; and.b64 %r66,%r64,-4; add.u64 %r67,%r66,4; add.u64 %r50,%r50,%r67; $L180: .loc 1 1018 7 setp.le.u64 %r68,%r35,%r50; @ %r68 bra $L179; mov.u64 %r34,%r50; .loc 1 1019 8 mov.u32 %r69,0; $L183: st.u32 [%r34],%r69; add.u64 %r34,%r34,4; .loc 1 1018 7 setp.gt.u64 %r70,%r35,%r34; @ %r70 bra $L183; $L179: .loc 1 1020 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 .u32 %r24; .reg .u32 %r25; .reg .u32 %r26; .reg .u32 %r27; .reg .u32 %r28; .reg .u64 %r30; .reg .u64 %r33; .reg .u32 %r36; .reg .u64 %r37; .reg .u32 %r38; .reg .pred %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .u64 %r43; .reg .pred %r44; .reg .pred %r45; .reg .u32 %r46; .reg .pred %r47; .reg .pred %r48; .reg .pred %r49; .reg .u32 %r50; .reg .pred %r51; .reg .pred %r52; mov.u64 %r37,%ar0; mov.u32 %r38,%ar1; .loc 1 1030 4 add.u64 %r23,%r37,24; .loc 1 1031 7 ld.u32 %r24,[%r37+20]; .loc 1 1032 4 shr.s32 %r25,%r38,5; .loc 1 1033 5 setp.ge.s32 %r39,%r24,%r25; @ %r39 bra $L187; cvt.s64.s32 %r40,%r24; shl.b64 %r41,%r40,2; add.u64 %r33,%r23,%r41; bra $L188; $L187: cvt.s64.s32 %r42,%r25; shl.b64 %r43,%r42,2; add.u64 %r33,%r23,%r43; .loc 1 1035 10 setp.le.s32 %r44,%r24,%r25; @ %r44 bra $L188; .loc 1 1035 26 and.b32 %r26,%r38,31; .loc 1 1035 20 setp.eq.u32 %r45,%r26,0; @ %r45 bra $L188; .loc 1 1036 11 ld.u32 %r27,[%r33]; .loc 1 1037 6 shr.u32 %r28,%r27,%r26; .loc 1 1038 6 shl.b32 %r46,%r28,%r26; .loc 1 1039 6 setp.ne.u32 %r47,%r27,%r46; @ %r47 bra $L192; $L188: .loc 1 1044 7 setp.ge.u64 %r48,%r23,%r33; @ %r48 bra $L193; .loc 1 1045 6 add.u64 %r30,%r33,-4; .loc 1 1045 7 ld.u32 %r36,[%r33+-4]; .loc 1 1045 6 setp.ne.u32 %r49,%r36,0; @ ! %r49 bra $L190; bra $L194; $L191: add.u64 %r30,%r30,-4; ld.u32 %r50,[%r30]; setp.ne.u32 %r51,%r50,0; @ %r51 bra $L195; $L190: .loc 1 1044 7 setp.lt.u64 %r52,%r23,%r30; @ %r52 bra $L191; bra $L186; $L192: .loc 1 1040 11 mov.u32 %r36,1; bra $L186; $L193: .loc 1 1047 9 mov.u32 %r36,0; bra $L186; $L194: .loc 1 1040 11 mov.u32 %r36,1; bra $L186; $L195: mov.u32 %r36,1; $L186: .loc 1 1048 1 mov.u32 %value,%r36; st.param.u32 [%value_out],%value; ret; } lib_a-mrand48.o/1591654539 399 399 100644 1842 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 21 17 add.u64 %r32,%r29,240; .loc 1 21 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 22 11 ld.u16 %r34,[%r29+244]; .loc 1 22 35 shl.b64 %r35,%r34,16; .loc 1 22 44 ld.u16 %r36,[%r29+242]; .loc 1 22 42 add.u64 %value,%r35,%r36; .loc 1 23 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 29 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 21 17 add.u64 %r32,%r22,240; .loc 1 21 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 22 11 ld.u16 %r34,[%r22+244]; .loc 1 22 35 shl.b64 %r35,%r34,16; .loc 1 22 44 ld.u16 %r36,[%r22+242]; .loc 1 22 42 add.u64 %value,%r35,%r36; .loc 1 30 1 st.param.u64 [%value_out],%value; ret; } /158 1591654539 399 399 100644 20527 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: nl_langinfo .visible .func (.param .u64 %value_out) nl_langinfo (.param .u32 %in_ar0); .file 1 "../../../../../newlib/libc/locale/nl_langinfo.c" // BEGIN GLOBAL FUNCTION DECL: setlocale .extern .func (.param .u64 %value_out) setlocale (.param .u32 %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: strncmp .extern .func (.param .u32 %value_out) strncmp (.param .u64 %in_ar0, .param .u64 %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: __nvptx_realloc .extern .func (.param .u64 %value_out) __nvptx_realloc (.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: strstr .extern .func (.param .u64 %value_out) strstr (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __get_current_time_locale .extern .func (.param .u64 %value_out) __get_current_time_locale; // BEGIN GLOBAL FUNCTION DECL: __get_current_numeric_locale .extern .func (.param .u64 %value_out) __get_current_numeric_locale; // BEGIN GLOBAL FUNCTION DECL: __get_current_messages_locale .extern .func (.param .u64 %value_out) __get_current_messages_locale; // BEGIN GLOBAL FUNCTION DECL: __get_current_monetary_locale .extern .func (.param .u64 %value_out) __get_current_monetary_locale; // BEGIN GLOBAL FUNCTION DECL: localeconv .extern .func (.param .u64 %value_out) localeconv; // 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 VAR DEF: $LC9 .const .align 1 .u8 $LC9[6] = {122,104,95,67,78,0 }; // BEGIN VAR DEF: cset$2318 .global .align 8 .u64 cset$2318[1]; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[6] = {101,117,99,67,78,0 }; // BEGIN VAR DEF: csym$2317 .global .align 8 .u64 csym$2317[1]; // BEGIN VAR DEF: $LC10 .const .align 1 .u8 $LC10[6] = {65,83,67,73,73,0 }; // BEGIN VAR DEF: $LC11 .const .align 1 .u8 $LC11[2] = {67,0 }; // BEGIN VAR DEF: $LC12 .const .align 1 .u8 $LC12[6] = {80,79,83,73,88,0 }; // BEGIN VAR DEF: $LC13 .const .align 1 .u8 $LC13[4] = {73,83,79,0 }; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[1] = {0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[9] = {85,83,45,65,83,67,73,73,0 }; // BEGIN VAR DEF: $LC3 .const .align 1 .u8 $LC3[6] = {101,117,99,75,82,0 }; // BEGIN VAR DEF: $LC4 .const .align 1 .u8 $LC4[6] = {101,117,99,74,80,0 }; // BEGIN VAR DEF: $LC5 .const .align 1 .u8 $LC5[5] = {73,83,79,95,0 }; // BEGIN VAR DEF: $LC6 .const .align 1 .u8 $LC6[4] = {69,85,67,0 }; // BEGIN VAR DEF: $LC7 .const .align 1 .u8 $LC7[6] = {106,97,95,74,80,0 }; // BEGIN VAR DEF: $LC8 .const .align 1 .u8 $LC8[6] = {107,111,95,75,82,0 }; // BEGIN GLOBAL FUNCTION DEF: nl_langinfo .visible .func (.param .u64 %value_out) nl_langinfo (.param .u32 %in_ar0) { .reg .u64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %r26; .reg .u64 %r75; .reg .u64 %r82; .reg .u32 %r83; .reg .u32 %r86; .reg .u64 %r87; .reg .u32 %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 .u32 %r116; .reg .u64 %r117; .reg .u64 %r118; .reg .pred %r119; .reg .u32 %r121; .reg .u64 %r122; .reg .pred %r123; .reg .u64 %r125; .reg .u64 %r126; .reg .u32 %r127; .reg .pred %r128; .reg .u64 %r130; .reg .u64 %r133; .reg .u32 %r134; .reg .u64 %r135; .reg .u64 %r136; .reg .pred %r137; .reg .pred %r138; .reg .u64 %r141; .reg .u32 %r142; .reg .pred %r143; .reg .u64 %r145; .reg .u64 %r146; .reg .u32 %r147; .reg .pred %r148; .reg .u64 %r150; .reg .u32 %r152; .reg .pred %r153; .reg .u64 %r155; .reg .u32 %r157; .reg .pred %r158; .reg .u64 %r160; .reg .u32 %r161; .reg .pred %r162; .reg .u64 %r164; .reg .u32 %r165; .reg .pred %r166; .reg .u64 %r168; .reg .u32 %r169; .reg .pred %r170; .reg .u64 %r172; .reg .u64 %r173; .reg .pred %r174; .reg .u64 %r175; .reg .u64 %r176; .reg .u64 %r177; .reg .u64 %r178; .reg .u64 %r179; .reg .u64 %r180; .reg .u64 %r181; .reg .u32 %r182; .reg .u64 %r183; .reg .u64 %r184; .reg .u64 %r185; .reg .u64 %r186; .reg .u64 %r188; .reg .u32 %r189; .reg .u64 %r190; .reg .u64 %r191; .reg .u64 %r192; .reg .u64 %r193; .reg .u64 %r194; .reg .u32 %r195; .reg .u64 %r196; .reg .u64 %r197; .reg .u64 %r198; .reg .u64 %r199; .reg .u64 %r200; .reg .u32 %r201; .reg .u64 %r202; .reg .u64 %r203; .reg .u64 %r204; .reg .u64 %r205; .reg .u64 %r206; .reg .u64 %r207; .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 %r216; .reg .u64 %r217; .reg .u16 %r218; .reg .u32 %r219; .reg .pred %r220; .reg .u64 %r221; .reg .u64 %r222; .reg .u16 %r223; .reg .u32 %r224; .reg .u16 %r225; .reg .pred %r226; .reg .pred %r228; .reg .u64 %r229; .reg .u64 %r232; .reg .u32 %r233; .reg .pred %r234; .reg .pred %r235; .reg .u64 %r237; .reg .u32 %r240; .reg .u32 %r241; .reg .u64 %r242; .reg .u64 %r243; .reg .u64 %r244; .reg .pred %r245; .reg .pred %r246; .reg .u64 %r248; .reg .u64 %r250; .reg .u64 %r252; .reg .u64 %r253; .reg .u64 %r256; .reg .u64 %r257; .reg .u64 %r258; .reg .u32 %r259; .reg .u64 %r262; .reg .u64 %r263; .reg .u64 %r264; mov.u32 %r88,%ar0; setp.gt.s32 %r89,%r88,44; @ %r89 bra $L2; setp.ge.s32 %r90,%r88,33; @ %r90 bra $L3; setp.eq.u32 %r91,%r88,6; @ %r91 bra $L4; setp.gt.s32 %r92,%r88,6; @ %r92 bra $L5; setp.eq.u32 %r93,%r88,2; @ %r93 bra $L6; setp.gt.s32 %r94,%r88,2; @ %r94 bra $L7; setp.eq.u32 %r95,%r88,0; @ %r95 bra $L8; setp.eq.u32 %r96,%r88,1; @ %r96 bra $L9; .loc 1 432 7 cvta.const.u64 %r87,$LC0; bra $L1; $L7: setp.eq.u32 %r97,%r88,4; @ %r97 bra $L11; setp.gt.s32 %r98,%r88,4; @ ! %r98 bra $L65; bra $L12; $L5: setp.gt.s32 %r99,%r88,20; @ %r99 bra $L14; setp.ge.s32 %r100,%r88,14; @ ! %r100 bra $L66; bra $L15; $L2: setp.eq.u32 %r101,%r88,51; @ %r101 bra $L17; setp.gt.s32 %r102,%r88,51; @ %r102 bra $L18; setp.eq.u32 %r103,%r88,47; @ %r103 bra $L19; setp.gt.s32 %r104,%r88,47; @ %r104 bra $L20; setp.eq.u32 %r105,%r88,45; @ %r105 bra $L21; setp.eq.u32 %r106,%r88,46; @ %r106 bra $L22; cvta.const.u64 %r87,$LC0; bra $L1; $L20: setp.eq.u32 %r107,%r88,49; @ %r107 bra $L23; setp.gt.s32 %r108,%r88,49; @ ! %r108 bra $L67; bra $L24; $L18: setp.eq.u32 %r109,%r88,55; @ %r109 bra $L26; setp.gt.s32 %r110,%r88,55; @ %r110 bra $L27; setp.eq.u32 %r111,%r88,53; @ %r111 bra $L28; setp.gt.s32 %r112,%r88,53; @ ! %r112 bra $L68; bra $L29; $L27: setp.eq.u32 %r113,%r88,57; @ %r113 bra $L31; setp.lt.s32 %r114,%r88,57; @ %r114 bra $L32; setp.eq.u32 %r115,%r88,84; @ %r115 bra $L33; cvta.const.u64 %r87,$LC0; bra $L1; $L8: .loc 1 267 12 mov.u64 %r117,0; mov.u32 %r116,2; { .param .u64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r116; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r117; call (%value_in),setlocale,(%out_arg1,%out_arg2); ld.param.u64 %r118,[%value_in]; } .loc 1 267 6 setp.ne.u64 %r119,%r118,0; @ %r119 bra $L34; $L41: .loc 1 266 7 cvta.const.u64 %r87,$LC0; bra $L1; $L34: .loc 1 268 14 mov.u32 %r121,46; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r118; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r121; call (%value_in),strchr,(%out_arg1,%out_arg2); ld.param.u64 %r122,[%value_in]; } .loc 1 268 7 setp.eq.u64 %r123,%r122,0; @ %r123 bra $L35; .loc 1 269 9 add.u64 %r87,%r122,1; .loc 1 271 9 mov.u64 %r126,4; cvta.const.u64 %r125,$LC5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r87; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r125; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r126; call (%value_in),strncmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r127,[%value_in]; } .loc 1 271 8 setp.ne.u32 %r128,%r127,0; @ %r128 bra $L36; .loc 1 272 17 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r87; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r130,[%value_in]; } .loc 1 274 48 cvt.u32.u64 %r134,%r130; cvt.s64.s32 %r133,%r134; ld.global.u64 %r135,[cset$2318]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r135; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r133; call (%value_in),__nvptx_realloc,(%out_arg1,%out_arg2); ld.param.u64 %r136,[%value_in]; } .loc 1 276 44 setp.ne.u64 %r137,%r136,0; @ %r137 bra $L37; .loc 1 276 51 ld.global.u64 %r26,[cset$2318]; setp.eq.u64 %r138,%r26,0; @ %r138 bra $L38; .loc 1 277 43 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; call __nvptx_free,(%out_arg1); } bra $L38; $L36: .loc 1 286 16 cvta.const.u64 %r141,$LC6; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r87; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r141; call (%value_in),strcmp,(%out_arg1,%out_arg2); ld.param.u32 %r142,[%value_in]; } .loc 1 286 15 setp.ne.u32 %r143,%r142,0; @ %r143 bra $L39; .loc 1 287 10 mov.u64 %r146,5; cvta.const.u64 %r145,$LC7; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r118; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r145; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r146; call (%value_in),strncmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r147,[%value_in]; } .loc 1 287 9 setp.eq.u32 %r148,%r147,0; @ %r148 bra $L46; .loc 1 289 15 cvta.const.u64 %r150,$LC8; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r118; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r150; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r146; call (%value_in),strncmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r152,[%value_in]; } .loc 1 289 14 setp.eq.u32 %r153,%r152,0; @ %r153 bra $L47; .loc 1 291 15 cvta.const.u64 %r155,$LC9; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r118; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r155; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r146; call (%value_in),strncmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r157,[%value_in]; } .loc 1 291 14 setp.ne.u32 %r158,%r157,0; @ %r158 bra $L1; .loc 1 292 11 cvta.const.u64 %r87,$LC1; bra $L1; $L39: .loc 1 293 16 cvta.const.u64 %r160,$LC10; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r87; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r160; call (%value_in),strcmp,(%out_arg1,%out_arg2); ld.param.u32 %r161,[%value_in]; } .loc 1 293 15 setp.ne.u32 %r162,%r161,0; @ %r162 bra $L1; $L40: .loc 1 294 10 cvta.const.u64 %r87,$LC2; bra $L1; $L35: .loc 1 296 15 cvta.const.u64 %r164,$LC11; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r118; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r164; call (%value_in),strcmp,(%out_arg1,%out_arg2); ld.param.u32 %r165,[%value_in]; } .loc 1 296 14 setp.eq.u32 %r166,%r165,0; @ %r166 bra $L40; .loc 1 297 8 cvta.const.u64 %r168,$LC12; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r118; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r168; call (%value_in),strcmp,(%out_arg1,%out_arg2); ld.param.u32 %r169,[%value_in]; } .loc 1 296 35 setp.eq.u32 %r170,%r169,0; @ %r170 bra $L40; .loc 1 299 11 cvta.const.u64 %r172,$LC10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r118; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r172; call (%value_in),strstr,(%out_arg1,%out_arg2); ld.param.u64 %r173,[%value_in]; } .loc 1 299 8 setp.ne.u64 %r174,%r173,0; @ %r174 bra $L40; bra $L41; $L9: .loc 1 307 18 { .param .u64 %value_in; call (%value_in),__get_current_time_locale; ld.param.u64 %r175,[%value_in]; } .loc 1 307 7 ld.u64 %r87,[%r175+320]; .loc 1 308 3 bra $L1; $L6: .loc 1 310 18 { .param .u64 %value_in; call (%value_in),__get_current_time_locale; ld.param.u64 %r176,[%value_in]; } .loc 1 310 7 ld.u64 %r87,[%r176+312]; .loc 1 311 3 bra $L1; $L65: .loc 1 313 18 { .param .u64 %value_in; call (%value_in),__get_current_time_locale; ld.param.u64 %r177,[%value_in]; } .loc 1 313 7 ld.u64 %r87,[%r177+304]; .loc 1 314 3 bra $L1; $L11: .loc 1 316 18 { .param .u64 %value_in; call (%value_in),__get_current_time_locale; ld.param.u64 %r178,[%value_in]; } .loc 1 316 7 ld.u64 %r87,[%r178+456]; .loc 1 317 3 bra $L1; $L12: .loc 1 319 18 { .param .u64 %value_in; call (%value_in),__get_current_time_locale; ld.param.u64 %r179,[%value_in]; } .loc 1 319 7 ld.u64 %r87,[%r179+328]; .loc 1 320 3 bra $L1; $L4: .loc 1 322 18 { .param .u64 %value_in; call (%value_in),__get_current_time_locale; ld.param.u64 %r180,[%value_in]; } .loc 1 322 7 ld.u64 %r87,[%r180+336]; .loc 1 323 3 bra $L1; $L66: .loc 1 326 17 { .param .u64 %value_in; call (%value_in),__get_current_time_locale; ld.param.u64 %r181,[%value_in]; } .loc 1 326 54 add.u32 %r182,%r88,-7; .loc 1 326 7 cvt.s64.s32 %r183,%r182; add.u64 %r184,%r183,30; shl.b64 %r185,%r184,3; add.u64 %r186,%r181,%r185; ld.u64 %r87,[%r186+8]; .loc 1 327 3 bra $L1; $L15: .loc 1 330 17 { .param .u64 %value_in; call (%value_in),__get_current_time_locale; ld.param.u64 %r188,[%value_in]; } .loc 1 330 51 add.u32 %r189,%r88,-14; .loc 1 330 7 cvt.s64.s32 %r190,%r189; add.u64 %r191,%r190,24; shl.b64 %r192,%r191,3; add.u64 %r193,%r188,%r192; ld.u64 %r87,[%r193]; .loc 1 331 3 bra $L1; $L14: .loc 1 335 17 { .param .u64 %value_in; call (%value_in),__get_current_time_locale; ld.param.u64 %r194,[%value_in]; } .loc 1 335 52 add.u32 %r195,%r88,-21; .loc 1 335 7 cvt.s64.s32 %r196,%r195; add.u64 %r197,%r196,12; shl.b64 %r198,%r197,3; add.u64 %r199,%r194,%r198; ld.u64 %r87,[%r199]; .loc 1 336 3 bra $L1; $L3: .loc 1 340 17 { .param .u64 %value_in; call (%value_in),__get_current_time_locale; ld.param.u64 %r200,[%value_in]; } .loc 1 340 50 add.u32 %r201,%r88,-33; .loc 1 340 7 cvt.s64.s32 %r202,%r201; shl.b64 %r203,%r202,3; add.u64 %r204,%r200,%r203; ld.u64 %r87,[%r204]; .loc 1 341 3 bra $L1; $L21: .loc 1 343 17 { .param .u64 %value_in; call (%value_in),__get_current_time_locale; ld.param.u64 %r205,[%value_in]; } .loc 1 343 7 ld.u64 %r87,[%r205+464]; .loc 1 344 3 bra $L1; $L22: .loc 1 346 17 { .param .u64 %value_in; call (%value_in),__get_current_time_locale; ld.param.u64 %r206,[%value_in]; } .loc 1 346 7 ld.u64 %r87,[%r206+472]; .loc 1 347 3 bra $L1; $L19: .loc 1 349 17 { .param .u64 %value_in; call (%value_in),__get_current_time_locale; ld.param.u64 %r207,[%value_in]; } .loc 1 349 7 ld.u64 %r87,[%r207+480]; .loc 1 350 3 bra $L1; $L67: .loc 1 352 17 { .param .u64 %value_in; call (%value_in),__get_current_time_locale; ld.param.u64 %r208,[%value_in]; } .loc 1 352 7 ld.u64 %r87,[%r208+488]; .loc 1 353 3 bra $L1; $L23: .loc 1 355 17 { .param .u64 %value_in; call (%value_in),__get_current_time_locale; ld.param.u64 %r209,[%value_in]; } .loc 1 355 7 ld.u64 %r87,[%r209+496]; .loc 1 356 3 bra $L1; $L33: .loc 1 358 17 { .param .u64 %value_in; call (%value_in),__get_current_time_locale; ld.param.u64 %r210,[%value_in]; } .loc 1 358 7 ld.u64 %r87,[%r210+344]; .loc 1 359 3 bra $L1; $L24: .loc 1 361 17 { .param .u64 %value_in; call (%value_in),__get_current_numeric_locale; ld.param.u64 %r211,[%value_in]; } .loc 1 361 7 ld.u64 %r87,[%r211]; .loc 1 362 3 bra $L1; $L17: .loc 1 364 17 { .param .u64 %value_in; call (%value_in),__get_current_numeric_locale; ld.param.u64 %r212,[%value_in]; } .loc 1 364 7 ld.u64 %r87,[%r212+8]; .loc 1 365 3 bra $L1; $L68: .loc 1 367 17 { .param .u64 %value_in; call (%value_in),__get_current_messages_locale; ld.param.u64 %r213,[%value_in]; } .loc 1 367 7 ld.u64 %r87,[%r213]; .loc 1 368 3 bra $L1; $L28: .loc 1 370 17 { .param .u64 %value_in; call (%value_in),__get_current_messages_locale; ld.param.u64 %r214,[%value_in]; } .loc 1 370 7 ld.u64 %r87,[%r214+8]; .loc 1 371 3 bra $L1; $L29: .loc 1 378 17 { .param .u64 %value_in; call (%value_in),__get_current_messages_locale; ld.param.u64 %r215,[%value_in]; } .loc 1 378 7 ld.u64 %r87,[%r215+16]; .loc 1 379 3 bra $L1; $L26: .loc 1 381 17 { .param .u64 %value_in; call (%value_in),__get_current_messages_locale; ld.param.u64 %r216,[%value_in]; } .loc 1 381 7 ld.u64 %r87,[%r216+24]; .loc 1 382 3 bra $L1; $L32: .loc 1 385 16 { .param .u64 %value_in; call (%value_in),__get_current_monetary_locale; ld.param.u64 %r217,[%value_in]; } .loc 1 385 6 ld.u64 %r82,[%r217+8]; .loc 1 386 6 ld.s8 %r219,[%r82]; cvt.u16.u32 %r218,%r219; setp.eq.u16 %r220,%r218,0; @ %r220 bra $L41; .loc 1 387 15 { .param .u64 %value_in; call (%value_in),localeconv; ld.param.u64 %r221,[%value_in]; } .loc 1 387 9 ld.s8 %r83,[%r221+82]; .loc 1 389 15 { .param .u64 %value_in; call (%value_in),localeconv; ld.param.u64 %r222,[%value_in]; } .loc 1 389 7 ld.s8 %r224,[%r222+84]; cvt.u16.u32 %r223,%r224; cvt.u16.u32 %r225,%r83; setp.ne.u16 %r226,%r223,%r225; @ %r226 bra $L41; .loc 1 392 8 setp.ne.u16 %r228,%r223,127; @ %r228 bra $L42; .loc 1 393 21 { .param .u64 %value_in; call (%value_in),__get_current_monetary_locale; ld.param.u64 %r229,[%value_in]; } .loc 1 393 10 ld.u64 %r232,[%r229+16]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r82; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r232; call (%value_in),strcmp,(%out_arg1,%out_arg2); ld.param.u32 %r233,[%value_in]; } .loc 1 393 9 setp.eq.u32 %r234,%r233,0; @ %r234 bra $L48; bra $L41; $L42: .loc 1 396 10 setp.ne.u32 %r235,%r83,0; selp.u32 %r86,45,43,%r235; bra $L43; $L48: .loc 1 394 11 mov.u32 %r86,46; $L43: .loc 1 398 17 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r82; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r237,[%value_in]; } .loc 1 400 67 cvt.u32.u64 %r241,%r237; add.u32 %r240,%r241,2; .loc 1 400 48 cvt.s64.s32 %r242,%r240; ld.global.u64 %r243,[csym$2317]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r243; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r242; call (%value_in),__nvptx_realloc,(%out_arg1,%out_arg2); ld.param.u64 %r244,[%value_in]; } .loc 1 401 44 setp.ne.u64 %r245,%r244,0; @ %r245 bra $L44; .loc 1 401 51 ld.global.u64 %r75,[csym$2317]; setp.eq.u64 %r246,%r75,0; @ %r246 bra $L45; .loc 1 402 43 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r75; call __nvptx_free,(%out_arg1); } bra $L45; $L31: .loc 1 416 18 { .param .u64 %value_in; call (%value_in),__get_current_time_locale; ld.param.u64 %r248,[%value_in]; } .loc 1 416 7 ld.u64 %r87,[%r248+448]; .loc 1 417 3 bra $L1; $L46: .loc 1 288 11 cvta.const.u64 %r87,$LC4; bra $L1; $L47: .loc 1 290 11 cvta.const.u64 %r87,$LC3; .loc 1 434 11 bra $L1; $L38: .loc 1 279 46 mov.u64 %r250,0; st.global.u64 [cset$2318],%r250; .loc 1 285 11 cvta.const.u64 %r87,$LC0; bra $L1; $L37: .loc 1 279 46 st.global.u64 [cset$2318],%r136; .loc 1 281 7 cvta.const.u64 %r252,$LC13; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r136; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r252; call (%value_in),strcpy,(%out_arg1,%out_arg2); ld.param.u64 %r253,[%value_in]; } .loc 1 282 24 add.u64 %r256,%r122,5; .loc 1 282 7 ld.global.u64 %r257,[cset$2318]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r257; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r256; call (%value_in),strcat,(%out_arg1,%out_arg2); ld.param.u64 %r258,[%value_in]; } .loc 1 283 11 ld.global.u64 %r87,[cset$2318]; bra $L1; $L44: .loc 1 404 46 st.global.u64 [csym$2317],%r244; .loc 1 407 13 cvt.u32.u32 %r259,%r86; st.u8 [%r244],%r259; .loc 1 408 7 add.u64 %r262,%r244,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r262; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r82; call (%value_in),strcpy,(%out_arg1,%out_arg2); ld.param.u64 %r263,[%value_in]; } .loc 1 409 11 ld.global.u64 %r87,[csym$2317]; bra $L1; $L45: .loc 1 404 46 mov.u64 %r264,0; st.global.u64 [csym$2317],%r264; .loc 1 384 7 cvta.const.u64 %r87,$LC0; $L1: .loc 1 435 1 mov.u64 %value,%r87; st.param.u64 [%value_out],%value; ret; } lib_a-nrand48.o/1591654539 399 399 100644 2193 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r37; .reg .u32 %r38; .reg .u64 %r39; .reg .u16 %r40; mov.u64 %r30,%ar0; mov.u64 %r31,%ar1; .loc 1 21 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 22 17 ld.u16 %r35,[%r31+4]; .loc 1 22 42 shl.b64 %r36,%r35,15; .loc 1 23 31 ld.u16 %r37,[%r31+2]; shr.u32 %r38,%r37,1; cvt.u16.u32 %r40,%r38; cvt.u64.u16 %r39,%r40; .loc 1 22 49 add.u64 %value,%r36,%r39; .loc 1 24 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 .u32 %r38; .reg .u32 %r39; .reg .u64 %r40; .reg .u16 %r41; mov.u64 %r31,%ar0; .loc 1 21 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 22 17 ld.u16 %r36,[%r31+4]; .loc 1 22 42 shl.b64 %r37,%r36,15; .loc 1 23 31 ld.u16 %r38,[%r31+2]; shr.u32 %r39,%r38,1; cvt.u16.u32 %r41,%r39; cvt.u64.u16 %r40,%r41; .loc 1 22 49 add.u64 %value,%r37,%r40; .loc 1 32 1 st.param.u64 [%value_out],%value; ret; } lib_a-printf.o/ 1591654539 399 399 100644 991 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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-putchar.o/1591654539 399 399 100644 1252 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } lib_a-puts.o/ 1591654539 399 399 100644 1127 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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-rand.o/ 1591654539 399 399 100644 1196 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 78 27 ld.global.u64 %r25,[_impure_ptr]; cvt.u64.u32 %r26,%r24; st.u64 [%r25+232],%r26; .loc 1 79 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 84 18 ld.global.u64 %r27,[_impure_ptr]; .loc 1 91 30 ld.u64 %r30,[%r27+232]; .loc 1 91 68 mad.lo.u64 %r24,%r30,6364136223846793005,1; .loc 1 90 27 st.u64 [%r27+232],%r24; .loc 1 92 41 shr.u64 %r32,%r24,32; .loc 1 92 10 cvt.u32.u64 %r33,%r32; and.b32 %value,%r33,2147483647; .loc 1 93 1 st.param.u32 [%value_out],%value; ret; } lib_a-rand48.o/ 1591654539 399 399 100644 1985 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u64 %r23; .reg .u32 %r24; .reg .u64 %r25; .reg .u32 %r30; .reg .u32 %r33; .reg .u64 %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .u64 %r58; .reg .u64 %r59; .reg .u16 %r60; .reg .u16 %r61; .reg .u64 %r63; .reg .u64 %r64; .reg .u16 %r65; .reg .u64 %r67; .reg .u16 %r68; .reg .u64 %r69; .reg .u64 %r70; .reg .u32 %r71; .reg .u32 %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .u32 %r77; .reg .u64 %r78; mov.u64 %r58,%ar0; mov.u64 %r59,%ar1; .loc 1 167 39 ld.u16 %r22,[%r58+246]; .loc 1 167 10 cvt.u16.u32 %r60,%r22; cvt.u64.u16 %r23,%r60; .loc 1 167 66 ld.u16 %r24,[%r59]; .loc 1 167 45 cvt.u16.u32 %r61,%r24; cvt.u64.u16 %r25,%r61; .loc 1 168 5 ld.u16 %r63,[%r58+252]; .loc 1 167 8 mad.lo.u64 %r53,%r23,%r25,%r63; .loc 1 170 8 shr.u64 %r54,%r53,16; .loc 1 171 67 ld.u16 %r30,[%r59+2]; .loc 1 172 34 ld.u16 %r33,[%r58+248]; .loc 1 171 46 cvt.u16.u32 %r65,%r30; cvt.u64.u16 %r64,%r65; .loc 1 172 5 cvt.u16.u32 %r68,%r33; cvt.u64.u16 %r67,%r68; .loc 1 172 38 mul.lo.u64 %r69,%r67,%r25; .loc 1 171 71 mad.lo.u64 %r70,%r64,%r23,%r69; .loc 1 171 8 add.u64 %r55,%r70,%r54; .loc 1 174 8 shr.u64 %r56,%r55,16; .loc 1 175 35 ld.u16 %r71,[%r59+4]; .loc 1 175 58 mul.lo.u32 %r73,%r33,%r30; .loc 1 175 39 mad.lo.u32 %r74,%r71,%r22,%r73; .loc 1 175 84 ld.u16 %r75,[%r58+250]; .loc 1 175 69 mad.lo.u32 %r77,%r75,%r24,%r74; cvt.s64.s32 %r78,%r77; .loc 1 175 8 add.u64 %r57,%r78,%r56; .loc 1 169 13 st.u16 [%r59],%r53; .loc 1 173 13 st.u16 [%r59+2],%r55; .loc 1 178 14 st.u16 [%r59+4],%r57; .loc 1 179 1 ret; } lib_a-rand_r.o/ 1591654539 399 399 100644 1254 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u32 %r32; .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 %r28,[%r35]; .loc 1 29 12 setp.eq.u64 %r36,%r28,0; @ %r36 bra $L4; .loc 1 31 11 div.s64 %r29,%r28,127773; .loc 1 32 24 mad.lo.u64 %r38,%r29,-127773,%r28; .loc 1 32 45 mul.lo.u64 %r39,%r29,-2836; .loc 1 32 11 mad.lo.u64 %r30,%r38,16807,%r39; .loc 1 33 12 setp.lt.s64 %r40,%r30,0; @ %r40 bra $L3; cvt.u32.u64 %r32,%r30; and.b32 %r34,%r32,2147483647; bra $L2; $L3: .loc 1 34 13 add.u64 %r31,%r30,2147483647; cvt.u32.u64 %r32,%r31; and.b32 %r34,%r32,2147483647; bra $L2; $L4: mov.u32 %r34,719435623; mov.u32 %r32,%r34; $L2: .loc 1 35 17 st.u32 [%r35],%r32; .loc 1 37 1 mov.u32 %value,%r34; st.param.u32 [%value_out],%value; ret; } /179 1591654539 399 399 100644 2870 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: rawmemchr .visible .func (.param .u64 %value_out) rawmemchr (.param .u64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../newlib/libc/string/rawmemchr.c" // BEGIN GLOBAL FUNCTION DEF: rawmemchr .visible .func (.param .u64 %value_out) rawmemchr (.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 %r26; .reg .u64 %r27; .reg .u64 %r30; .reg .u32 %r37; .reg .u64 %r39; .reg .u64 %r40; .reg .u64 %r42; .reg .u64 %r44; .reg .u64 %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .u64 %r56; .reg .pred %r57; .reg .u16 %r58; .reg .u16 %r59; .reg .pred %r60; .reg .u16 %r61; .reg .pred %r63; .reg .u64 %r64; .reg .pred %r65; .reg .u32 %r66; .reg .u32 %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .u64 %r70; .reg .u64 %r71; .reg .u64 %r72; .reg .u64 %r73; .reg .u64 %r74; .reg .pred %r75; .reg .u16 %r76; .reg .u16 %r77; .reg .pred %r78; .reg .u64 %r79; .reg .u64 %r80; .reg .u64 %r81; .reg .u64 %r82; .reg .u64 %r83; .reg .pred %r84; .reg .u16 %r85; .reg .u16 %r86; .reg .pred %r87; .reg .u16 %r89; mov.u64 %r53,%ar0; mov.u32 %r54,%ar1; .loc 1 75 17 cvt.u32.u32 %r55,%r54; cvt.u32.u8 %r37,%r55; .loc 1 82 10 and.b64 %r56,%r53,7; .loc 1 82 9 setp.eq.u64 %r57,%r56,0; @ %r57 bra $L2; .loc 1 84 10 ld.u8 %r58,[%r53]; cvt.u16.u32 %r59,%r37; setp.eq.u16 %r60,%r58,%r59; @ %r60 bra $L1; cvt.u16.u32 %r89,%r37; bra $L4; $L5: ld.u8 %r61,[%r53]; setp.eq.u16 %r63,%r61,%r89; @ %r63 bra $L1; $L4: .loc 1 86 10 add.u64 %r53,%r53,1; .loc 1 82 10 and.b64 %r64,%r53,7; .loc 1 82 9 setp.ne.u64 %r65,%r64,0; @ %r65 bra $L5; $L2: .loc 1 97 12 shl.b32 %r66,%r54,8; and.b32 %r67,%r66,65535; .loc 1 97 17 and.b32 %r68,%r54,255; or.b32 %r69,%r67,%r68; .loc 1 97 8 cvt.s64.s32 %r39,%r69; .loc 1 98 15 shl.b64 %r26,%r39,16; .loc 1 98 8 or.b64 %r40,%r26,%r39; .loc 1 100 18 shl.b64 %r27,%r40,32; .loc 1 100 10 or.b64 %r42,%r27,%r40; .loc 1 104 11 ld.u64 %r70,[%r53]; xor.b64 %r44,%r42,%r70; add.u64 %r71,%r44,-72340172838076673; not.b64 %r72,%r44; and.b64 %r73,%r71,%r72; and.b64 %r74,%r73,-9187201950435737472; .loc 1 104 10 setp.eq.u64 %r75,%r74,0; @ %r75 bra $L6; $L8: .loc 1 117 10 ld.u8 %r76,[%r53]; cvt.u16.u32 %r77,%r37; setp.eq.u16 %r78,%r76,%r77; @ %r78 bra $L1; cvt.u16.u32 %r86,%r37; bra $L7; $L6: .loc 1 106 11 add.u64 %r53,%r53,8; .loc 1 104 11 ld.u64 %r79,[%r53]; xor.b64 %r30,%r42,%r79; add.u64 %r80,%r30,-72340172838076673; not.b64 %r81,%r30; and.b64 %r82,%r80,%r81; and.b64 %r83,%r82,-9187201950435737472; .loc 1 104 10 setp.ne.u64 %r84,%r83,0; @ ! %r84 bra $L6; bra $L8; $L7: .loc 1 119 10 add.u64 %r53,%r53,1; .loc 1 117 10 ld.u8 %r85,[%r53]; setp.ne.u16 %r87,%r85,%r86; @ %r87 bra $L7; $L1: .loc 1 121 1 mov.u64 %value,%r53; st.param.u64 [%value_out],%value; ret; } lib_a-realloc.o/1591654539 399 399 100644 2191 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %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 .u64 %r45; .reg .u64 %r52; mov.u64 %r28,%ar0; mov.u64 %r29,%ar1; .loc 1 37 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 39 7 set.u32.ne.u64 %r33,%r28,0; neg.s32 %r34,%r33; .loc 1 39 15 set.u32.ne.u64 %r36,%r31,0; neg.s32 %r37,%r36; cvt.u16.u32 %r39,%r34; cvt.u16.u32 %r40,%r37; and.b16 %r38,%r39,%r40; .loc 1 39 6 cvt.u32.u16 %r41,%r38; cvt.u16.u8 %r42,%r41; setp.eq.u16 %r43,%r42,0; @ %r43 bra $L1; .loc 1 42 14 ld.u64 %r45,[%r28+-8]; min.u64 %r44,%r29,%r45; .loc 1 43 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],%r44; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r52,[%value_in]; } .loc 1 44 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; call __nvptx_free,(%out_arg1); } $L1: .loc 1 48 1 mov.u64 %value,%r31; st.param.u64 [%value_out],%value; ret; } /198 1591654539 399 399 100644 1867 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _realloc_os_r .visible .func (.param .u64 %value_out) _realloc_os_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../../newlib/libc/machine/nvptx/reallocr.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 DEF: _realloc_os_r .visible .func (.param .u64 %value_out) _realloc_os_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 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .pred %r28; .reg .u64 %r30; .reg .pred %r31; .reg .u64 %r35; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; mov.u64 %r27,%ar3; .loc 1 22 6 setp.ge.u64 %r28,%r27,%r26; @ %r28 bra $L2; .loc 1 24 14 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; call (%value_in),__nvptx_malloc,(%out_arg1); ld.param.u64 %r30,[%value_in]; } .loc 1 25 10 setp.eq.u64 %r31,%r25,0; @ %r31 bra $L3; .loc 1 26 2 { .param .u64 %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],%r27; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r35,[%value_in]; } .loc 1 24 14 mov.u64 %r25,%r30; bra $L2; $L3: mov.u64 %r25,%r30; $L2: .loc 1 29 1 mov.u64 %value,%r25; st.param.u64 [%value_out],%value; ret; } lib_a-reent.o/ 1591654539 399 399 100644 4375 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .pred %r25; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; .loc 1 38 11 ld.u64 %r22,[%r24]; .loc 1 38 6 setp.eq.u64 %r25,%r22,0; @ %r25 bra $L2; .loc 1 39 5 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r22; call cleanup_glue,(%out_arg1,%out_arg2); } $L2: .loc 1 41 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; call _free_r,(%out_arg1,%out_arg2); } .loc 1 42 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 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .pred %r38; .reg .pred %r39; .reg .u64 %r40; .reg .pred %r41; .reg .pred %r44; .reg .pred %r45; .reg .pred %r48; .reg .pred %r51; .reg .pred %r52; .reg .pred %r53; .reg .pred %r56; .reg .u32 %r59; .reg .pred %r60; .reg .u64 %r62; .reg .pred %r63; mov.u64 %r36,%ar0; .loc 1 48 6 ld.global.u64 %r37,[_impure_ptr]; setp.ne.u64 %r38,%r37,%r36; @ ! %r38 bra $L6; .loc 1 55 11 ld.u64 %r35,[%r36+120]; .loc 1 55 10 setp.eq.u64 %r39,%r35,0; @ %r39 bra $L9; mov.u64 %r31,0; $L12: .loc 1 62 16 add.u64 %r40,%r35,%r31; ld.u64 %r23,[%r40]; .loc 1 63 14 setp.eq.u64 %r41,%r23,0; @ %r41 bra $L10; $L11: .loc 1 66 13 ld.u64 %r32,[%r23]; .loc 1 67 5 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r36; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r23; call _free_r,(%out_arg1,%out_arg2); } mov.u64 %r23,%r32; .loc 1 63 14 setp.ne.u64 %r44,%r23,0; @ %r44 bra $L11; ld.u64 %r35,[%r36+120]; $L10: add.u64 %r31,%r31,8; .loc 1 58 4 setp.ne.u64 %r45,%r31,512; @ %r45 bra $L12; .loc 1 71 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r36; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r35; call _free_r,(%out_arg1,%out_arg2); } $L9: .loc 1 73 11 ld.u64 %r25,[%r36+96]; .loc 1 73 10 setp.eq.u64 %r48,%r25,0; @ %r48 bra $L13; .loc 1 74 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r36; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; call _free_r,(%out_arg1,%out_arg2); } $L13: .loc 1 102 15 ld.u64 %r34,[%r36+504]; .loc 1 102 10 setp.ne.u64 %r51,%r34,0; @ %r51 bra $L14; $L17: .loc 1 115 14 ld.u64 %r27,[%r36+136]; .loc 1 115 10 setp.ne.u64 %r52,%r27,0; @ %r52 bra $L15; bra $L16; $L14: .loc 1 102 46 add.u64 %r26,%r36,512; .loc 1 102 26 setp.eq.u64 %r53,%r34,%r26; @ %r53 bra $L17; $L18: .loc 1 108 10 ld.u64 %r33,[%r34]; .loc 1 109 8 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r36; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r34; call _free_r,(%out_arg1,%out_arg2); } mov.u64 %r34,%r33; .loc 1 105 4 setp.ne.u64 %r56,%r26,%r34; @ %r56 bra $L18; bra $L17; $L15: .loc 1 116 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r36; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; call _free_r,(%out_arg1,%out_arg2); } $L16: .loc 1 123 10 ld.u32 %r59,[%r36+80]; setp.eq.u32 %r60,%r59,0; @ %r60 bra $L6; .loc 1 127 4 ld.u64 %r62,[%r36+88]; { $LCT0: .callprototype _ ( .param .u64 %in_ar0); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r36; call %r62,(%out_arg1),$LCT0; } .loc 1 129 20 ld.u64 %r30,[%r36+1312]; .loc 1 129 7 setp.eq.u64 %r63,%r30,0; @ %r63 bra $L6; .loc 1 130 6 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r36; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r30; call cleanup_glue,(%out_arg1,%out_arg2); } $L6: .loc 1 136 1 ret; } lib_a-rindex.o/ 1591654539 399 399 100644 1014 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 44 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 45 1 mov.u64 %value,%r27; st.param.u64 [%value_out],%value; ret; } /216 1591654539 399 399 100644 1183 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 78 2 mov.b64 %r27,%r29; shr.u64 %r32,%r27,32; cvt.u32.u64 %r34,%r32; and.b32 %r33,%r34,2147483647; mov.b64 %r35,%r30; shr.u64 %r36,%r35,32; cvt.u32.u64 %r38,%r36; and.b32 %r37,%r38,-2147483648; or.b32 %r39,%r33,%r37; 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 80 1 st.param.f64 [%value_out],%value; ret; } /236 1591654539 399 399 100644 780 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; .loc 1 32 32 cvt.u32.u64 %r34,%r32; and.b32 %r33,%r34,2147483647; .loc 1 32 44 add.u32 %r35,%r33,-2146435072; .loc 1 32 56 shr.u32 %value,%r35,31; .loc 1 33 1 st.param.u32 [%value_out],%value; ret; } /254 1591654539 399 399 100644 2084 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r27; .reg .u32 %r28; .reg .u32 %r31; .reg .u32 %r33; .reg .f64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u32 %r38; .reg .pred %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u32 %r42; .reg .u32 %r44; .reg .u32 %r45; .reg .u16 %r46; .reg .u16 %r47; .reg .u16 %r48; .reg .u32 %r49; .reg .u16 %r50; .reg .pred %r51; .reg .u32 %r52; .reg .pred %r53; .reg .u32 %r54; .reg .pred %r55; .reg .u32 %r57; .reg .u32 %r58; .reg .u16 %r59; .reg .u16 %r60; .reg .u32 %r62; mov.f64 %r34,%ar0; mov.b64 %r35,%r34; shr.u64 %r36,%r35,32; cvt.u32.u64 %r28,%r36; cvt.u32.u64 %r27,%r35; .loc 1 16 26 or.b32 %r38,%r27,%r28; .loc 1 16 6 setp.eq.u32 %r39,%r38,0; @ %r39 bra $L3; .loc 1 17 33 set.u32.eq.u32 %r41,%r27,0; neg.s32 %r42,%r41; cvt.u32.u32 %r40,%r42; .loc 1 17 12 set.u32.eq.u32 %r44,%r28,-2147483648; neg.s32 %r45,%r44; .loc 1 17 26 cvt.u16.u32 %r47,%r45; cvt.u16.u8 %r48,%r40; and.b16 %r46,%r47,%r48; .loc 1 16 48 cvt.u32.u16 %r49,%r46; cvt.u16.u8 %r50,%r49; setp.ne.u16 %r51,%r50,0; @ %r51 bra $L4; .loc 1 19 31 and.b32 %r31,%r28,2147483647; add.u32 %r52,%r31,-1048576; .loc 1 19 11 setp.le.u32 %r53,%r52,2145386495; @ %r53 bra $L5; .loc 1 22 31 and.b32 %r54,%r28,2146435072; .loc 1 22 11 setp.eq.u32 %r55,%r54,0; @ %r55 bra $L6; .loc 1 26 17 set.u32.eq.u32 %r57,%r31,2146435072; neg.s32 %r58,%r57; .loc 1 26 53 cvt.u16.u32 %r60,%r58; and.b16 %r59,%r60,%r48; .loc 1 18 12 cvt.u32.u16 %r62,%r59; cvt.u32.u8 %r33,%r62; 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/1591654539 399 399 100644 2042 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r42; .reg .pred %r43; .reg .u32 %r45; .reg .u32 %r46; .reg .pred %r47; .reg .u32 %r48; .reg .pred %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .u32 %r56; .reg .u64 %r57; .reg .u64 %r58; .reg .u64 %r59; .reg .u64 %r60; mov.f64 %r38,%ar0; mov.u64 %r39,%ar1; mov.b64 %r40,%r38; shr.u64 %r41,%r40,32; cvt.u32.u64 %r33,%r41; .loc 1 99 5 and.b32 %r28,%r33,2147483647; .loc 1 100 8 mov.u32 %r42,0; st.u32 [%r39],%r42; .loc 1 101 4 setp.gt.s32 %r43,%r28,2146435071; @ %r43 bra $L2; .loc 1 101 25 cvt.u32.u64 %r46,%r40; or.b32 %r45,%r28,%r46; .loc 1 101 19 setp.eq.u32 %r47,%r45,0; @ %r47 bra $L2; .loc 1 102 5 and.b32 %r48,%r33,2146435072; setp.ne.u32 %r49,%r48,0; @ %r49 bra $L4; .loc 1 103 8 mul.f64 %r38,%r38,0d4350000000000000; mov.b64 %r50,%r38; shr.u64 %r51,%r50,32; cvt.u32.u64 %r33,%r51; .loc 1 105 9 and.b32 %r28,%r33,2147483647; mov.u32 %r35,-54; bra $L3; $L4: mov.u32 %r35,%r42; $L3: .loc 1 108 14 shr.s32 %r52,%r28,20; .loc 1 108 19 add.u32 %r53,%r52,-1022; .loc 1 108 8 add.u32 %r54,%r53,%r35; st.u32 [%r39],%r54; .loc 1 110 2 mov.b64 %r36,%r38; .loc 1 109 10 and.b32 %r55,%r33,-2146435073; .loc 1 109 22 or.b32 %r56,%r55,1071644672; .loc 1 110 2 cvt.u64.u32 %r57,%r56; shl.b64 %r58,%r57,32; and.b64 %r59,%r36,4294967295; or.b64 %r60,%r59,%r58; mov.b64 %r38,%r60; $L2: .loc 1 112 1 mov.f64 %value,%r38; st.param.f64 [%value_out],%value; ret; } /276 1591654539 399 399 100644 393 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // BEGIN GLOBAL VAR DEF: __infinity .visible .const .align 8 .u64 __infinity[1] = {9218868437227405312 }; // END PREAMBLE // BEGIN GLOBAL VAR DEF: __infinityld .visible .const .align 8 .u64 __infinityld[2] = {9218868437227405312 }; // BEGIN GLOBAL VAR DEF: __infinityf .visible .const .align 4 .u32 __infinityf[1] = {2139095040 }; lib_a-s_isinf.o/1591654539 399 399 100644 1245 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r27; .reg .u32 %r33; .reg .u32 %r34; .reg .f64 %r41; .reg .u64 %r42; .reg .u64 %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 %r41,%ar0; .loc 1 22 2 mov.b64 %r42,%r41; shr.u64 %r43,%r42,32; cvt.u32.u64 %r33,%r43; cvt.u32.u64 %r34,%r42; .loc 1 24 25 neg.s32 %r45,%r34; .loc 1 24 23 or.b32 %r46,%r45,%r34; .loc 1 24 30 shr.u32 %r47,%r46,31; .loc 1 23 5 and.b32 %r48,%r33,2147483647; .loc 1 24 5 or.b32 %r27,%r47,%r48; .loc 1 26 36 add.u32 %r50,%r27,-2146435072; .loc 1 25 5 mov.u32 %r52,2146435072; sub.u32 %r51,%r52,%r27; .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; } /296 1591654539 399 399 100644 1258 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r27; .reg .u32 %r33; .reg .u32 %r34; .reg .f64 %r41; .reg .u64 %r42; .reg .u64 %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 %r41,%ar0; .loc 1 16 2 mov.b64 %r42,%r41; shr.u64 %r43,%r42,32; cvt.u32.u64 %r33,%r43; cvt.u32.u64 %r34,%r42; .loc 1 18 25 neg.s32 %r45,%r34; .loc 1 18 23 or.b32 %r46,%r45,%r34; .loc 1 18 30 shr.u32 %r47,%r46,31; .loc 1 17 5 and.b32 %r48,%r33,2147483647; .loc 1 18 5 or.b32 %r27,%r47,%r48; .loc 1 20 36 add.u32 %r50,%r27,-2146435072; .loc 1 19 5 mov.u32 %r52,2146435072; sub.u32 %r51,%r52,%r27; .loc 1 20 34 or.b32 %r53,%r50,%r51; .loc 1 20 41 shr.u32 %r54,%r53,31; .loc 1 20 11 mov.u32 %r55,1; sub.u32 %value,%r55,%r54; .loc 1 21 1 st.param.u32 [%value_out],%value; ret; } lib_a-s_isnan.o/1591654539 399 399 100644 1057 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r27; .reg .u32 %r30; .reg .u32 %r31; .reg .f64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r47; .reg .u32 %r48; mov.f64 %r38,%ar0; .loc 1 199 2 mov.b64 %r39,%r38; shr.u64 %r40,%r39,32; cvt.u32.u64 %r30,%r40; cvt.u32.u64 %r31,%r39; .loc 1 201 25 neg.s32 %r42,%r31; .loc 1 201 23 or.b32 %r43,%r42,%r31; .loc 1 201 30 shr.u32 %r44,%r43,31; .loc 1 200 5 and.b32 %r45,%r30,2147483647; .loc 1 201 5 or.b32 %r27,%r44,%r45; .loc 1 202 5 mov.u32 %r48,2146435072; sub.u32 %r47,%r48,%r27; .loc 1 203 33 shr.u32 %value,%r47,31; .loc 1 204 1 st.param.u32 [%value_out],%value; ret; } /314 1591654539 399 399 100644 1070 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r27; .reg .u32 %r30; .reg .u32 %r31; .reg .f64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r47; .reg .u32 %r48; mov.f64 %r38,%ar0; .loc 1 115 2 mov.b64 %r39,%r38; shr.u64 %r40,%r39,32; cvt.u32.u64 %r30,%r40; cvt.u32.u64 %r31,%r39; .loc 1 117 25 neg.s32 %r42,%r31; .loc 1 117 23 or.b32 %r43,%r42,%r31; .loc 1 117 30 shr.u32 %r44,%r43,31; .loc 1 116 5 and.b32 %r45,%r30,2147483647; .loc 1 117 5 or.b32 %r27,%r44,%r45; .loc 1 118 5 mov.u32 %r48,2146435072; sub.u32 %r47,%r48,%r27; .loc 1 119 33 shr.u32 %value,%r47,31; .loc 1 120 1 st.param.u32 [%value_out],%value; ret; } lib_a-s_ldexp.o/1591654539 399 399 100644 2687 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r37; .reg .u32 %r38; .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 %r54; .reg .u32 %r55; .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; mov.f64 %r32,%ar0; mov.u32 %r33,%ar1; .loc 1 75 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 75 19 set.u32.eq.f64 %r37,%r32,0d0000000000000000; neg.s32 %r38,%r37; .loc 1 75 4 set.u32.eq.u32 %r40,%r35,0; neg.s32 %r41,%r40; .loc 1 75 19 cvt.u16.u32 %r43,%r38; cvt.u16.u32 %r44,%r41; 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 76 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 77 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 77 19 set.u32.eq.f64 %r54,%r32,0d0000000000000000; neg.s32 %r55,%r54; .loc 1 77 4 set.u32.eq.u32 %r57,%r52,0; neg.s32 %r58,%r57; .loc 1 77 19 cvt.u16.u32 %r60,%r55; cvt.u16.u32 %r61,%r58; 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 77 33 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r65,[%value_in]; } .loc 1 77 39 mov.u32 %r66,34; st.u32 [%r65],%r66; $L2: .loc 1 79 1 mov.f64 %value,%r32; st.param.f64 [%value_out],%value; ret; } lib_a-s_modf.o/ 1591654539 399 399 100644 3230 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 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 .u32 %r38; .reg .f64 %r40; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .f64 %r52; .reg .f64 %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u32 %r58; .reg .pred %r59; .reg .pred %r60; .reg .u32 %r61; .reg .u64 %r62; .reg .u64 %r66; .reg .f64 %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .u32 %r70; .reg .pred %r71; .reg .u32 %r72; .reg .u64 %r73; .reg .u64 %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .u64 %r80; .reg .u64 %r84; .reg .pred %r85; .reg .u32 %r86; .reg .u64 %r87; .reg .u64 %r91; .reg .u32 %r92; .reg .u32 %r93; .reg .u32 %r94; .reg .pred %r95; .reg .u32 %r96; .reg .u64 %r97; .reg .u64 %r101; .reg .u64 %r102; .reg .u32 %r106; .reg .u32 %r107; .reg .u64 %r108; .reg .u64 %r109; .reg .u64 %r110; mov.f64 %r53,%ar0; mov.u64 %r54,%ar1; mov.b64 %r55,%r53; shr.u64 %r56,%r55,32; cvt.u32.u64 %r38,%r56; cvt.u32.u64 %r45,%r55; .loc 1 92 11 shr.s32 %r58,%r38,20; .loc 1 92 16 and.b32 %r23,%r58,2047; .loc 1 92 5 add.u32 %r42,%r23,-1023; .loc 1 93 4 setp.gt.s32 %r59,%r42,19; @ %r59 bra $L2; .loc 1 94 8 setp.ge.s32 %r60,%r42,0; @ %r60 bra $L3; .loc 1 95 10 and.b32 %r61,%r38,-2147483648; cvt.u64.u32 %r62,%r61; shl.b64 %r66,%r62,32; mov.b64 %r67,%r66; st.f64 [%r54],%r67; .loc 1 96 10 mov.f64 %r52,%r53; bra $L1; $L3: .loc 1 98 19 mov.u32 %r68,1048575; shr.s32 %r43,%r68,%r42; .loc 1 99 10 and.b32 %r69,%r38,%r43; .loc 1 99 13 or.b32 %r70,%r69,%r45; .loc 1 99 5 setp.ne.u32 %r71,%r70,0; @ %r71 bra $L5; .loc 1 101 13 st.f64 [%r54],%r53; .loc 1 103 7 and.b32 %r72,%r38,-2147483648; cvt.u64.u32 %r73,%r72; shl.b64 %r77,%r73,32; mov.b64 %r52,%r77; .loc 1 104 14 bra $L1; $L5: .loc 1 106 7 not.b32 %r78,%r43; and.b32 %r79,%r78,%r38; cvt.u64.u32 %r80,%r79; shl.b64 %r84,%r80,32; mov.b64 %r32,%r84; st.f64 [%r54],%r32; .loc 1 107 16 sub.f64 %r52,%r53,%r32; bra $L1; $L2: .loc 1 110 12 setp.le.s32 %r85,%r42,51; @ %r85 bra $L6; .loc 1 112 12 st.f64 [%r54],%r53; .loc 1 114 6 and.b32 %r86,%r38,-2147483648; cvt.u64.u32 %r87,%r86; shl.b64 %r91,%r87,32; mov.b64 %r52,%r91; .loc 1 115 13 bra $L1; $L6: .loc 1 117 41 add.u32 %r92,%r23,-1043; .loc 1 117 8 mov.u32 %r93,-1; shr.u32 %r44,%r93,%r92; .loc 1 118 12 and.b32 %r94,%r44,%r45; .loc 1 118 8 setp.ne.u32 %r95,%r94,0; @ %r95 bra $L7; .loc 1 120 9 st.f64 [%r54],%r53; .loc 1 122 3 and.b32 %r96,%r38,-2147483648; cvt.u64.u32 %r97,%r96; shl.b64 %r101,%r97,32; mov.b64 %r52,%r101; .loc 1 123 10 bra $L1; $L7: .loc 1 125 10 cvt.u64.u32 %r102,%r38; not.b32 %r106,%r44; and.b32 %r107,%r106,%r45; cvt.u64.u32 %r108,%r107; shl.b64 %r109,%r102,32; or.b64 %r110,%r109,%r108; mov.b64 %r40,%r110; st.f64 [%r54],%r40; .loc 1 126 12 sub.f64 %r52,%r53,%r40; $L1: .loc 1 129 1 mov.f64 %value,%r52; st.param.f64 [%value_out],%value; ret; } lib_a-s_nan.o/ 1591654539 399 399 100644 497 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 49 9 mov.f64 %value,0d7ff8000000000000; .loc 1 50 1 st.param.f64 [%value_out],%value; ret; } /332 1591654539 399 399 100644 4211 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 DECL: copysign .extern .func (.param .f64 %value_out) copysign (.param .f64 %in_ar0, .param .f64 %in_ar1); // 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 .u32 %r40; .reg .u32 %r42; .reg .u32 %r43; .reg .f64 %r45; .reg .u64 %r49; .reg .u64 %r50; .reg .f64 %r51; .reg .f64 %r52; .reg .u32 %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .u32 %r56; .reg .pred %r57; .reg .u32 %r58; .reg .u32 %r60; .reg .u32 %r61; .reg .pred %r62; .reg .pred %r63; .reg .pred %r64; .reg .u64 %r65; .reg .u64 %r66; .reg .u32 %r67; .reg .u32 %r68; .reg .pred %r69; .reg .f64 %r70; .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 .pred %r82; .reg .f64 %r83; .reg .f64 %r85; .reg .f64 %r86; .reg .f64 %r88; .reg .u32 %r89; .reg .u32 %r90; .reg .u32 %r91; .reg .u32 %r92; .reg .u64 %r93; .reg .u64 %r94; .reg .u64 %r95; .reg .u64 %r96; mov.f64 %r52,%ar0; mov.u32 %r53,%ar1; .loc 1 86 2 mov.b64 %r54,%r52; shr.u64 %r55,%r54,32; cvt.u32.u64 %r40,%r55; .loc 1 87 28 shr.s32 %r56,%r40,20; .loc 1 87 11 and.b32 %r42,%r56,2047; .loc 1 88 12 setp.ne.u32 %r57,%r42,0; @ %r57 bra $L2; .loc 1 89 24 and.b32 %r58,%r40,2147483647; .loc 1 89 20 cvt.u32.u64 %r61,%r54; or.b32 %r60,%r58,%r61; .loc 1 89 16 setp.eq.u32 %r62,%r60,0; @ %r62 bra $L10; .loc 1 90 8 mul.f64 %r52,%r52,0d4350000000000000; .loc 1 93 16 setp.ge.s32 %r63,%r53,-50000; @ %r63 bra $L4; .loc 1 93 39 mul.f64 %r51,%r52,0d01a56e1fc2f8f359; bra $L1; $L2: .loc 1 95 12 setp.ne.u32 %r64,%r42,2047; @ %r64 bra $L5; .loc 1 95 31 add.f64 %r51,%r52,%r52; bra $L1; $L4: .loc 1 91 6 mov.b64 %r65,%r52; shr.u64 %r66,%r65,32; cvt.u32.u64 %r40,%r66; .loc 1 92 26 shr.s32 %r67,%r40,20; and.b32 %r68,%r67,2047; .loc 1 92 8 add.u32 %r42,%r68,-54; $L5: .loc 1 96 11 add.u32 %r43,%r53,%r42; .loc 1 97 12 setp.le.s32 %r69,%r43,2046; @ %r69 bra $L6; .loc 1 97 37 mov.f64 %r70,0d7e37e43c8800759c; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r70; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r52; call (%value_in),copysign,(%out_arg1,%out_arg2); ld.param.f64 %r72,[%value_in]; } .loc 1 97 36 mul.f64 %r51,%r72,0d7e37e43c8800759c; bra $L1; $L6: .loc 1 98 12 setp.le.s32 %r73,%r43,0; @ %r73 bra $L7; .loc 1 99 7 mov.b64 %r49,%r52; and.b32 %r74,%r40,-2146435073; shl.b32 %r75,%r43,20; or.b32 %r76,%r74,%r75; cvt.u64.u32 %r77,%r76; shl.b64 %r78,%r77,32; and.b64 %r79,%r49,4294967295; or.b64 %r80,%r79,%r78; mov.b64 %r51,%r80; .loc 1 99 56 bra $L1; $L7: .loc 1 100 12 setp.ge.s32 %r81,%r43,-53; @ %r81 bra $L8; .loc 1 101 16 setp.le.s32 %r82,%r53,50000; @ %r82 bra $L9; .loc 1 102 15 mov.f64 %r83,0d7e37e43c8800759c; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r83; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r52; call (%value_in),copysign,(%out_arg1,%out_arg2); ld.param.f64 %r85,[%value_in]; } .loc 1 102 14 mul.f64 %r51,%r85,0d7e37e43c8800759c; bra $L1; $L9: .loc 1 103 23 mov.f64 %r86,0d01a56e1fc2f8f359; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r86; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r52; call (%value_in),copysign,(%out_arg1,%out_arg2); ld.param.f64 %r88,[%value_in]; } .loc 1 103 22 mul.f64 %r51,%r88,0d01a56e1fc2f8f359; bra $L1; $L8: .loc 1 106 2 mov.b64 %r50,%r52; .loc 1 105 11 add.u32 %r89,%r43,54; .loc 1 106 2 shl.b32 %r90,%r89,20; and.b32 %r91,%r40,-2146435073; or.b32 %r92,%r90,%r91; cvt.u64.u32 %r93,%r92; shl.b64 %r94,%r93,32; and.b64 %r95,%r50,4294967295; or.b64 %r96,%r95,%r94; mov.b64 %r45,%r96; .loc 1 107 17 mul.f64 %r51,%r45,0d3c90000000000000; bra $L1; $L10: .loc 1 89 49 mov.f64 %r51,%r52; $L1: .loc 1 108 1 mov.f64 %value,%r51; st.param.f64 [%value_out],%value; ret; } lib_a-seed48.o/ 1591654539 399 399 100644 2678 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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$2061 .global .align 2 .u16 sseed$2061[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 24 12 cvta.global.u64 %r31,sseed$2061; ld.u16 %r32,[%r29+240]; st.u16 [%r31],%r32; .loc 1 25 12 ld.u16 %r34,[%r29+242]; st.u16 [%r31+2],%r34; .loc 1 26 12 ld.u16 %r36,[%r29+244]; st.u16 [%r31+4],%r36; .loc 1 27 20 ld.u16 %r37,[%r30]; st.u16 [%r29+240],%r37; .loc 1 28 20 ld.u16 %r38,[%r30+2]; st.u16 [%r29+242],%r38; .loc 1 29 20 ld.u16 %r39,[%r30+4]; st.u16 [%r29+244],%r39; .loc 1 30 20 mov.u16 %r40,-6547; st.u16 [%r29+246],%r40; .loc 1 31 20 mov.u32 %r41,384748; st.u32 [%r29+248],%r41; .loc 1 33 16 mov.u16 %r42,11; st.u16 [%r29+252],%r42; .loc 1 35 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 42 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 24 12 cvta.global.u64 %r31,sseed$2061; ld.u16 %r32,[%r22+240]; st.u16 [%r31],%r32; .loc 1 25 12 ld.u16 %r34,[%r22+242]; st.u16 [%r31+2],%r34; .loc 1 26 12 ld.u16 %r36,[%r22+244]; st.u16 [%r31+4],%r36; .loc 1 27 20 ld.u16 %r37,[%r30]; st.u16 [%r22+240],%r37; .loc 1 28 20 ld.u16 %r38,[%r30+2]; st.u16 [%r22+242],%r38; .loc 1 29 20 ld.u16 %r39,[%r30+4]; st.u16 [%r22+244],%r39; .loc 1 30 20 mov.u16 %r40,-6547; st.u16 [%r22+246],%r40; .loc 1 31 20 mov.u32 %r41,384748; st.u32 [%r22+248],%r41; .loc 1 33 16 mov.u16 %r42,11; st.u16 [%r22+252],%r42; .loc 1 43 1 mov.u64 %value,%r31; st.param.u64 [%value_out],%value; ret; } /350 1591654539 399 399 100644 885 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } /371 1591654539 399 399 100644 697 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } /390 1591654539 399 399 100644 1217 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } /413 1591654539 399 399 100644 2002 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r32; .reg .u32 %r36; .reg .f32 %r37; .reg .f32 %r38; .reg .u64 %r39; .reg .u32 %r40; .reg .u32 %r42; .reg .u32 %r43; .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; mov.f32 %r38,%ar0; mov.u64 %r39,%ar1; .loc 1 33 2 mov.b32 %r32,%r38; .loc 1 34 5 and.b32 %r30,%r32,2147483647; .loc 1 35 8 mov.u32 %r40,0; st.u32 [%r39],%r40; .loc 1 36 5 set.u32.gt.s32 %r42,%r30,2139095039; neg.s32 %r43,%r42; .loc 1 36 31 set.u32.eq.u32 %r45,%r30,0; neg.s32 %r46,%r45; .loc 1 36 29 cvt.u16.u32 %r48,%r43; cvt.u16.u32 %r49,%r46; or.b16 %r47,%r48,%r49; .loc 1 36 4 cvt.u32.u16 %r50,%r47; cvt.u16.u8 %r51,%r50; setp.ne.u16 %r52,%r51,0; @ %r52 bra $L4; .loc 1 37 5 and.b32 %r53,%r32,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 %r32,%r55; .loc 1 40 9 and.b32 %r30,%r32,2147483647; mov.u32 %r36,-25; bra $L3; $L5: mov.u32 %r36,%r40; $L3: .loc 1 43 14 shr.s32 %r56,%r30,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,%r32,-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; } /431 1591654539 399 399 100644 691 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 21 2 mov.b32 %r23,%r27; .loc 1 22 5 and.b32 %r29,%r23,2147483647; .loc 1 23 9 set.u32.eq.u32 %r31,%r29,2139095040; neg.s32 %value,%r31; .loc 1 24 1 st.param.u32 [%value_out],%value; ret; } /449 1591654539 399 399 100644 700 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 13 2 mov.b32 %r23,%r27; .loc 1 14 5 and.b32 %r29,%r23,2147483647; .loc 1 15 9 set.u32.eq.u32 %r31,%r29,2139095040; neg.s32 %value,%r31; .loc 1 16 1 st.param.u32 [%value_out],%value; ret; } /468 1591654539 399 399 100644 691 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 31 2 mov.b32 %r23,%r27; .loc 1 32 5 and.b32 %r29,%r23,2147483647; .loc 1 33 9 set.u32.gt.s32 %r31,%r29,2139095040; neg.s32 %value,%r31; .loc 1 34 1 st.param.u32 [%value_out],%value; ret; } /486 1591654539 399 399 100644 700 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 23 2 mov.b32 %r23,%r27; .loc 1 24 5 and.b32 %r29,%r23,2147483647; .loc 1 25 9 set.u32.gt.s32 %r31,%r29,2139095040; neg.s32 %value,%r31; .loc 1 26 1 st.param.u32 [%value_out],%value; ret; } /505 1591654539 399 399 100644 2683 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r37; .reg .u32 %r38; .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 %r54; .reg .u32 %r55; .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; 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; .loc 1 26 4 set.u32.eq.u32 %r40,%r35,0; neg.s32 %r41,%r40; .loc 1 26 20 cvt.u16.u32 %r43,%r38; cvt.u16.u32 %r44,%r41; 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; .loc 1 28 4 set.u32.eq.u32 %r57,%r52,0; neg.s32 %r58,%r57; .loc 1 28 20 cvt.u16.u32 %r60,%r55; cvt.u16.u32 %r61,%r58; 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/1591654539 399 399 100644 1818 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 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 %r34; .reg .u32 %r35; .reg .u32 %r36; .reg .f32 %r37; .reg .f32 %r38; .reg .u64 %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .pred %r42; .reg .pred %r43; .reg .u32 %r44; .reg .f32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .pred %r48; .reg .u32 %r49; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r52; mov.f32 %r38,%ar0; mov.u64 %r39,%ar1; .loc 1 33 2 mov.b32 %r36,%r38; .loc 1 34 11 shr.s32 %r40,%r36,23; .loc 1 34 16 and.b32 %r41,%r40,255; .loc 1 34 5 add.u32 %r34,%r41,-127; .loc 1 35 4 setp.gt.s32 %r42,%r34,22; @ %r42 bra $L2; .loc 1 36 8 setp.ge.s32 %r43,%r34,0; @ %r43 bra $L3; .loc 1 37 10 and.b32 %r44,%r36,-2147483648; mov.b32 %r45,%r44; st.f32 [%r39],%r45; .loc 1 38 10 mov.f32 %r37,%r38; bra $L1; $L3: .loc 1 40 19 mov.u32 %r46,8388607; shr.s32 %r35,%r46,%r34; .loc 1 41 9 and.b32 %r47,%r35,%r36; .loc 1 41 5 setp.ne.u32 %r48,%r47,0; @ %r48 bra $L5; .loc 1 43 13 st.f32 [%r39],%r38; .loc 1 45 7 and.b32 %r49,%r36,-2147483648; mov.b32 %r37,%r49; .loc 1 46 14 bra $L1; $L5: .loc 1 48 7 not.b32 %r50,%r35; and.b32 %r51,%r50,%r36; mov.b32 %r31,%r51; st.f32 [%r39],%r31; .loc 1 49 16 sub.f32 %r37,%r38,%r31; bra $L1; $L2: .loc 1 54 12 st.f32 [%r39],%r38; .loc 1 56 6 and.b32 %r52,%r36,-2147483648; mov.b32 %r37,%r52; $L1: .loc 1 59 1 mov.f32 %value,%r37; st.param.f32 [%value_out],%value; ret; } lib_a-sf_nan.o/ 1591654539 399 399 100644 494 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } /523 1591654539 399 399 100644 3545 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 DECL: copysignf .extern .func (.param .f32 %value_out) copysignf (.param .f32 %in_ar0, .param .f32 %in_ar1); // 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 .u32 %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u32 %r43; .reg .u32 %r44; .reg .f32 %r47; .reg .f32 %r48; .reg .u32 %r49; .reg .pred %r50; .reg .pred %r51; .reg .u32 %r52; .reg .pred %r53; .reg .pred %r54; .reg .u32 %r55; .reg .u32 %r56; .reg .pred %r57; .reg .f32 %r58; .reg .f32 %r60; .reg .pred %r61; .reg .u32 %r62; .reg .u32 %r63; .reg .u32 %r64; .reg .pred %r65; .reg .pred %r66; .reg .f32 %r67; .reg .f32 %r69; .reg .f32 %r70; .reg .f32 %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .u32 %r76; .reg .f32 %r77; mov.f32 %r48,%ar0; mov.u32 %r49,%ar1; .loc 1 46 2 mov.b32 %r44,%r48; .loc 1 47 5 and.b32 %r41,%r44,2147483647; .loc 1 49 5 setp.eq.u32 %r50,%r41,0; @ %r50 bra $L11; .loc 1 51 12 setp.le.u32 %r51,%r41,2139095039; @ %r51 bra $L3; .loc 1 52 14 add.f32 %r47,%r48,%r48; bra $L1; $L3: .loc 1 53 12 and.b32 %r52,%r44,2139095040; setp.ne.u32 %r53,%r52,0; @ %r53 bra $L4; .loc 1 54 8 mul.f32 %r48,%r48,0f4c000000; .loc 1 57 16 setp.lt.s32 %r54,%r49,-50000; @ %r54 bra $L5; .loc 1 55 6 mov.b32 %r40,%r48; .loc 1 56 26 shr.s32 %r55,%r40,23; and.b32 %r56,%r55,255; .loc 1 56 8 add.u32 %r39,%r56,-25; bra $L6; $L5: .loc 1 57 39 mul.f32 %r47,%r48,0f0da24260; bra $L1; $L4: .loc 1 46 2 mov.u32 %r40,%r44; .loc 1 48 15 shr.u32 %r39,%r41,23; $L6: .loc 1 59 11 add.u32 %r43,%r39,%r49; .loc 1 60 12 setp.le.s32 %r57,%r43,254; @ %r57 bra $L7; .loc 1 60 46 mov.f32 %r58,0f7149f2ca; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r58; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r48; call (%value_in),copysignf,(%out_arg1,%out_arg2); ld.param.f32 %r60,[%value_in]; } .loc 1 60 45 mul.f32 %r47,%r60,0f7149f2ca; bra $L1; $L7: .loc 1 61 12 setp.le.s32 %r61,%r43,0; @ %r61 bra $L8; .loc 1 62 7 and.b32 %r62,%r40,-2139095041; shl.b32 %r63,%r43,23; or.b32 %r64,%r62,%r63; mov.b32 %r47,%r64; .loc 1 62 57 bra $L1; $L8: .loc 1 63 12 setp.ge.s32 %r65,%r43,-22; @ %r65 bra $L9; .loc 1 64 16 setp.le.s32 %r66,%r49,50000; @ %r66 bra $L10; .loc 1 65 15 mov.f32 %r67,0f7149f2ca; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r67; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r48; call (%value_in),copysignf,(%out_arg1,%out_arg2); ld.param.f32 %r69,[%value_in]; } .loc 1 65 14 mul.f32 %r47,%r69,0f7149f2ca; bra $L1; $L10: .loc 1 66 23 mov.f32 %r70,0f0da24260; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r70; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r48; call (%value_in),copysignf,(%out_arg1,%out_arg2); ld.param.f32 %r72,[%value_in]; } .loc 1 66 22 mul.f32 %r47,%r72,0f0da24260; bra $L1; $L9: .loc 1 68 11 add.u32 %r73,%r43,25; .loc 1 69 2 shl.b32 %r74,%r73,23; and.b32 %r75,%r40,-2139095041; or.b32 %r76,%r74,%r75; .loc 1 70 17 mov.b32 %r77,%r76; mul.f32 %r47,%r77,0f33000000; bra $L1; $L11: .loc 1 50 13 mov.f32 %r47,%r48; $L1: .loc 1 71 1 mov.f32 %value,%r47; st.param.f32 [%value_out],%value; ret; } /542 1591654539 399 399 100644 3506 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 124 22 st.u64 [%frame],%r26; .loc 1 124 15 st.u64 [%frame+24],%r26; .loc 1 125 15 mov.u32 %r28,2147483647; st.u32 [%frame+32],%r28; .loc 1 125 22 st.u32 [%frame+12],%r28; .loc 1 123 12 mov.u32 %r30,-65016; st.u32 [%frame+16],%r30; .loc 1 132 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 134 5 ld.u64 %r22,[%frame]; .loc 1 134 9 mov.u32 %r37,0; st.u8 [%r22],%r37; .loc 1 136 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 157 22 st.u64 [%frame],%r26; .loc 1 157 15 st.u64 [%frame+24],%r26; .loc 1 158 15 mov.u32 %r28,2147483647; st.u32 [%frame+32],%r28; .loc 1 158 22 st.u32 [%frame+12],%r28; .loc 1 156 12 mov.u32 %r30,-65016; st.u32 [%frame+16],%r30; .loc 1 165 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 167 5 ld.u64 %r23,[%frame]; .loc 1 167 9 mov.u32 %r38,0; st.u8 [%r23],%r38; .loc 1 169 1 mov.u32 %value,%r37; st.param.u32 [%value_out],%value; ret; } lib_a-siscanf.o/1591654539 399 399 100644 4428 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 135 12 mov.u16 %r29,516; st.u16 [%frame+16],%r29; .loc 1 136 22 st.u64 [%frame],%r27; .loc 1 136 15 st.u64 [%frame+24],%r27; .loc 1 137 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 137 22 cvt.u32.u64 %r23,%r31; st.u32 [%frame+8],%r23; .loc 1 137 15 st.u32 [%frame+32],%r23; .loc 1 138 11 mov.u64 %r32,__seofread; st.u64 [%frame+56],%r32; .loc 1 139 15 mov.u64 %r33,0; st.u64 [%frame+88],%r33; .loc 1 140 15 st.u64 [%frame+120],%r33; .loc 1 141 11 mov.u16 %r35,-1; st.u16 [%frame+18],%r35; .loc 1 147 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 150 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 173 12 mov.u16 %r29,516; st.u16 [%frame+16],%r29; .loc 1 174 22 st.u64 [%frame],%r27; .loc 1 174 15 st.u64 [%frame+24],%r27; .loc 1 175 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 175 22 cvt.u32.u64 %r23,%r31; st.u32 [%frame+8],%r23; .loc 1 175 15 st.u32 [%frame+32],%r23; .loc 1 176 11 mov.u64 %r32,__seofread; st.u64 [%frame+56],%r32; .loc 1 177 15 mov.u64 %r33,0; st.u64 [%frame+88],%r33; .loc 1 178 15 st.u64 [%frame+120],%r33; .loc 1 179 11 mov.u16 %r35,-1; st.u16 [%frame+18],%r35; .loc 1 185 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 188 1 mov.u32 %value,%r41; st.param.u32 [%value_out],%value; ret; } /560 1591654539 399 399 100644 6400 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r25; .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 52 6 setp.le.u64 %r33,%r31,2147483647; @ %r33 bra $L2; .loc 1 54 19 mov.u32 %r34,139; st.u32 [%r29],%r34; .loc 1 55 14 mov.u32 %r28,-1; bra $L1; $L2: .loc 1 57 12 mov.u16 %r35,520; st.u16 [%frame+16],%r35; .loc 1 58 22 st.u64 [%frame],%r30; .loc 1 58 15 st.u64 [%frame+24],%r30; .loc 1 59 22 setp.eq.u64 %r36,%r31,0; @ %r36 bra $L4; .loc 1 59 41 cvt.u32.u64 %r37,%r31; add.u32 %r25,%r37,-1; .loc 1 59 22 st.u32 [%frame+12],%r25; .loc 1 59 15 st.u32 [%frame+32],%r25; .loc 1 60 11 mov.u16 %r38,-1; st.u16 [%frame+18],%r38; .loc 1 66 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 68 6 setp.lt.s32 %r45,%r28,-1; @ %r45 bra $L5; $L7: .loc 1 71 7 ld.u64 %r24,[%frame]; .loc 1 71 11 mov.u32 %r46,0; st.u8 [%r24],%r46; bra $L1; $L4: .loc 1 59 22 cvt.u32.u64 %r48,%r31; st.u32 [%frame+12],%r48; .loc 1 59 15 st.u32 [%frame+32],%r48; .loc 1 60 11 mov.u16 %r50,-1; st.u16 [%frame+18],%r50; .loc 1 66 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 68 6 setp.lt.s32 %r57,%r28,-1; @ ! %r57 bra $L1; bra $L6; $L5: .loc 1 69 17 mov.u32 %r58,139; st.u32 [%r29],%r58; bra $L7; $L6: mov.u32 %r59,139; st.u32 [%r29],%r59; $L1: .loc 1 73 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 %r25; .reg .u32 %r26; .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 100 18 ld.global.u64 %r25,[_impure_ptr]; .loc 1 102 6 setp.le.u64 %r33,%r31,2147483647; @ %r33 bra $L9; .loc 1 104 19 mov.u32 %r34,139; st.u32 [%r25],%r34; .loc 1 105 14 mov.u32 %r29,-1; bra $L8; $L9: .loc 1 107 12 mov.u16 %r35,520; st.u16 [%frame+16],%r35; .loc 1 108 22 st.u64 [%frame],%r30; .loc 1 108 15 st.u64 [%frame+24],%r30; .loc 1 109 22 setp.eq.u64 %r36,%r31,0; @ %r36 bra $L11; .loc 1 109 41 cvt.u32.u64 %r37,%r31; add.u32 %r26,%r37,-1; .loc 1 109 22 st.u32 [%frame+12],%r26; .loc 1 109 15 st.u32 [%frame+32],%r26; .loc 1 110 11 mov.u16 %r38,-1; st.u16 [%frame+18],%r38; .loc 1 116 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],%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 118 6 setp.lt.s32 %r45,%r29,-1; @ %r45 bra $L12; $L14: .loc 1 121 7 ld.u64 %r24,[%frame]; .loc 1 121 11 mov.u32 %r46,0; st.u8 [%r24],%r46; bra $L8; $L11: .loc 1 109 22 cvt.u32.u64 %r48,%r31; st.u32 [%frame+12],%r48; .loc 1 109 15 st.u32 [%frame+32],%r48; .loc 1 110 11 mov.u16 %r50,-1; st.u16 [%frame+18],%r50; .loc 1 116 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],%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 118 6 setp.lt.s32 %r57,%r29,-1; @ ! %r57 bra $L8; bra $L13; $L12: .loc 1 119 17 mov.u32 %r58,139; st.u32 [%r25],%r58; bra $L14; $L13: mov.u32 %r59,139; st.u32 [%r25],%r59; $L8: .loc 1 123 1 mov.u32 %value,%r29; st.param.u32 [%value_out],%value; ret; } lib_a-sprintf.o/1591654539 399 399 100644 3493 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 597 22 st.u64 [%frame],%r26; .loc 1 597 15 st.u64 [%frame+24],%r26; .loc 1 598 15 mov.u32 %r28,2147483647; st.u32 [%frame+32],%r28; .loc 1 598 22 st.u32 [%frame+12],%r28; .loc 1 596 12 mov.u32 %r30,-65016; st.u32 [%frame+16],%r30; .loc 1 605 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 607 5 ld.u64 %r22,[%frame]; .loc 1 607 9 mov.u32 %r37,0; st.u8 [%r22],%r37; .loc 1 609 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 636 22 st.u64 [%frame],%r26; .loc 1 636 15 st.u64 [%frame+24],%r26; .loc 1 637 15 mov.u32 %r28,2147483647; st.u32 [%frame+32],%r28; .loc 1 637 22 st.u32 [%frame+12],%r28; .loc 1 635 12 mov.u32 %r30,-65016; st.u32 [%frame+16],%r30; .loc 1 644 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 646 5 ld.u64 %r23,[%frame]; .loc 1 646 9 mov.u32 %r38,0; st.u8 [%r23],%r38; .loc 1 648 1 mov.u32 %value,%r37; st.param.u32 [%value_out],%value; ret; } lib_a-srand48.o/1591654539 399 399 100644 1780 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 22 20 mov.u16 %r28,13070; st.u16 [%r26+240],%r28; .loc 1 23 22 st.u16 [%r26+242],%r27; .loc 1 24 60 shr.u64 %r29,%r27,16; .loc 1 24 22 st.u16 [%r26+244],%r29; .loc 1 25 20 mov.u16 %r30,-6547; st.u16 [%r26+246],%r30; .loc 1 26 20 mov.u32 %r31,384748; st.u32 [%r26+248],%r31; .loc 1 28 16 mov.u16 %r32,11; st.u16 [%r26+252],%r32; .loc 1 29 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 36 3 ld.global.u64 %r22,[_impure_ptr]; .loc 1 22 20 mov.u16 %r28,13070; st.u16 [%r22+240],%r28; .loc 1 23 22 st.u16 [%r22+242],%r27; .loc 1 24 60 shr.u64 %r29,%r27,16; .loc 1 24 22 st.u16 [%r22+244],%r29; .loc 1 25 20 mov.u16 %r30,-6547; st.u16 [%r22+246],%r30; .loc 1 26 20 mov.u32 %r31,384748; st.u32 [%r22+248],%r31; .loc 1 28 16 mov.u16 %r32,11; st.u16 [%r22+252],%r32; .loc 1 37 1 ret; } lib_a-sscanf.o/ 1591654539 399 399 100644 4415 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 416 12 mov.u16 %r29,516; st.u16 [%frame+16],%r29; .loc 1 417 22 st.u64 [%frame],%r27; .loc 1 417 15 st.u64 [%frame+24],%r27; .loc 1 418 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 418 22 cvt.u32.u64 %r23,%r31; st.u32 [%frame+8],%r23; .loc 1 418 15 st.u32 [%frame+32],%r23; .loc 1 419 11 mov.u64 %r32,__seofread; st.u64 [%frame+56],%r32; .loc 1 420 15 mov.u64 %r33,0; st.u64 [%frame+88],%r33; .loc 1 421 15 st.u64 [%frame+120],%r33; .loc 1 422 11 mov.u16 %r35,-1; st.u16 [%frame+18],%r35; .loc 1 428 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 431 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 460 12 mov.u16 %r29,516; st.u16 [%frame+16],%r29; .loc 1 461 22 st.u64 [%frame],%r27; .loc 1 461 15 st.u64 [%frame+24],%r27; .loc 1 462 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 462 22 cvt.u32.u64 %r23,%r31; st.u32 [%frame+8],%r23; .loc 1 462 15 st.u32 [%frame+32],%r23; .loc 1 463 11 mov.u64 %r32,__seofread; st.u64 [%frame+56],%r32; .loc 1 464 15 mov.u64 %r33,0; st.u64 [%frame+88],%r33; .loc 1 465 15 st.u64 [%frame+120],%r33; .loc 1 466 11 mov.u16 %r35,-1; st.u16 [%frame+18],%r35; .loc 1 472 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 475 1 mov.u32 %value,%r41; st.param.u32 [%value_out],%value; ret; } lib_a-stpcpy.o/ 1591654539 399 399 100644 1886 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: stpcpy .visible .func (.param .u64 %value_out) stpcpy (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/string/stpcpy.c" // BEGIN GLOBAL FUNCTION DEF: stpcpy .visible .func (.param .u64 %value_out) stpcpy (.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 .u32 %r31; .reg .u64 %r32; .reg .u64 %r39; .reg .u64 %r40; .reg .u64 %r43; .reg .u64 %r44; .reg .u64 %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .pred %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .pred %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .pred %r58; .reg .u32 %r59; .reg .pred %r60; mov.u64 %r44,%ar0; mov.u64 %r45,%ar1; .loc 1 71 8 mov.u64 %r32,%r44; or.b64 %r46,%r45,%r44; and.b64 %r47,%r46,7; .loc 1 71 6 setp.ne.u64 %r48,%r47,0; @ %r48 bra $L2; .loc 1 78 15 ld.u64 %r25,[%r45]; add.u64 %r49,%r25,-72340172838076673; not.b64 %r50,%r25; and.b64 %r51,%r49,%r50; and.b64 %r52,%r51,-9187201950435737472; .loc 1 78 13 setp.ne.u64 %r53,%r52,0; @ %r53 bra $L2; $L3: .loc 1 80 40 add.u64 %r45,%r45,8; add.u64 %r44,%r44,8; .loc 1 80 26 st.u64 [%r32],%r25; .loc 1 78 15 ld.u64 %r25,[%r45]; mov.u64 %r32,%r44; add.u64 %r54,%r25,-72340172838076673; not.b64 %r55,%r25; and.b64 %r56,%r54,%r55; and.b64 %r57,%r56,-9187201950435737472; .loc 1 78 13 setp.eq.u64 %r58,%r57,0; @ %r58 bra $L3; $L2: mov.u64 %r40,%r44; mov.u64 %r39,%r45; $L4: mov.u64 %r43,%r40; .loc 1 88 20 ld.s8 %r31,[%r39]; .loc 1 88 18 cvt.u32.u32 %r59,%r31; st.u8 [%r40],%r59; add.u64 %r40,%r40,1; add.u64 %r39,%r39,1; .loc 1 88 9 setp.ne.u32 %r60,%r31,0; @ %r60 bra $L4; .loc 1 91 1 mov.u64 %value,%r43; st.param.u64 [%value_out],%value; ret; } lib_a-stpncpy.o/1591654539 399 399 100644 3398 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: stpncpy .visible .func (.param .u64 %value_out) stpncpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/string/stpncpy.c" // BEGIN GLOBAL FUNCTION DEF: stpncpy .visible .func (.param .u64 %value_out) stpncpy (.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 .u32 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r39; .reg .u32 %r40; .reg .u64 %r44; .reg .u64 %r45; .reg .u64 %r46; .reg .u64 %r48; .reg .u64 %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u32 %r58; .reg .u32 %r59; .reg .u32 %r61; .reg .u32 %r62; .reg .u16 %r63; .reg .u16 %r64; .reg .u16 %r65; .reg .u32 %r66; .reg .u16 %r67; .reg .pred %r68; .reg .pred %r69; .reg .u64 %r70; .reg .u64 %r71; .reg .u64 %r72; .reg .u64 %r73; .reg .pred %r74; .reg .u32 %r76; .reg .pred %r77; .reg .pred %r78; .reg .pred %r79; .reg .u32 %r80; .reg .pred %r81; .reg .u32 %r82; .reg .pred %r83; .reg .pred %r85; .reg .u64 %r86; mov.u64 %r52,%ar0; mov.u64 %r53,%ar1; mov.u64 %r54,%ar2; .loc 1 83 8 mov.u64 %r50,%r52; or.b64 %r55,%r53,%r52; and.b64 %r56,%r55,7; .loc 1 83 6 set.u32.eq.u64 %r58,%r56,0; neg.s32 %r59,%r58; .loc 1 83 29 set.u32.gt.u64 %r61,%r54,7; neg.s32 %r62,%r61; cvt.u16.u32 %r64,%r59; cvt.u16.u32 %r65,%r62; and.b16 %r63,%r64,%r65; cvt.u32.u16 %r66,%r63; cvt.u16.u8 %r67,%r66; setp.ne.u16 %r68,%r67,0; @ ! %r68 bra $L3; bra $L2; $L4: .loc 1 92 10 add.u64 %r54,%r54,-8; .loc 1 93 33 add.u64 %r53,%r53,8; add.u64 %r50,%r50,8; mov.u64 %r52,%r50; .loc 1 93 19 st.u64 [%r45],%r25; .loc 1 90 13 setp.le.u64 %r69,%r54,7; @ %r69 bra $L3; $L2: mov.u64 %r45,%r50; .loc 1 90 45 ld.u64 %r25,[%r53]; add.u64 %r70,%r25,-72340172838076673; not.b64 %r71,%r25; and.b64 %r72,%r70,%r71; and.b64 %r73,%r72,-9187201950435737472; .loc 1 90 41 setp.eq.u64 %r74,%r73,0; @ %r74 bra $L4; mov.u64 %r52,%r50; bra $L5; $L7: sub.u64 %r33,%r86,%r36; add.u64 %r36,%r36,1; mov.u64 %r39,%r36; .loc 1 104 21 ld.s8 %r31,[%r46]; .loc 1 104 19 cvt.u32.u32 %r76,%r31; st.u8 [%r51],%r76; add.u64 %r46,%r46,1; .loc 1 104 10 setp.eq.u32 %r77,%r31,0; @ %r77 bra $L6; $L9: mov.u64 %r51,%r36; .loc 1 101 9 setp.ne.u64 %r78,%r36,%r48; @ %r78 bra $L7; bra $L1; $L3: setp.eq.u64 %r79,%r54,0; @ %r79 bra $L12; $L5: .loc 1 103 7 add.u64 %r32,%r54,-1; .loc 1 104 25 add.u64 %r44,%r53,1; .loc 1 104 16 add.u64 %r39,%r52,1; .loc 1 104 21 ld.s8 %r40,[%r53]; .loc 1 104 19 cvt.u32.u32 %r80,%r40; st.u8 [%r52],%r80; .loc 1 104 10 setp.eq.u32 %r81,%r40,0; @ %r81 bra $L13; mov.u64 %r36,%r39; mov.u64 %r46,%r44; add.u64 %r48,%r52,%r54; add.u64 %r86,%r52,%r32; bra $L9; $L11: mov.u64 %r34,%r39; add.u64 %r35,%r34,%r33; .loc 1 112 12 mov.u32 %r82,0; $L10: st.u8 [%r34],%r82; add.u64 %r34,%r34,1; .loc 1 111 9 setp.ne.u64 %r83,%r35,%r34; @ %r83 bra $L10; bra $L1; $L12: .loc 1 101 9 mov.u64 %r51,%r52; .loc 1 114 20 bra $L1; $L13: .loc 1 103 7 mov.u64 %r33,%r32; .loc 1 104 10 mov.u64 %r51,%r52; $L6: .loc 1 111 9 setp.ne.u64 %r85,%r33,0; @ %r85 bra $L11; $L1: .loc 1 115 1 mov.u64 %value,%r51; st.param.u64 [%value_out],%value; ret; } /578 1591654539 399 399 100644 2131 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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_ptr__ .extern .global .align 8 .u64 __ctype_ptr__[1]; // 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 .u64 %r22; .reg .u32 %r31; .reg .u32 %r35; .reg .u64 %r39; .reg .u64 %r40; .reg .u32 %r42; .reg .u64 %r45; .reg .u32 %r46; .reg .u64 %r47; .reg .u16 %r50; .reg .u16 %r51; .reg .u16 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .pred %r55; .reg .u64 %r56; .reg .u32 %r57; .reg .u64 %r58; .reg .u16 %r61; .reg .u16 %r62; .reg .u16 %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .pred %r66; .reg .u32 %r67; .reg .pred %r68; .reg .pred %r69; .reg .pred %r70; .reg .u16 %r72; .loc 1 54 23 ld.global.u64 %r22,[__ctype_ptr__]; mov.u64 %r40,%ar0; mov.u64 %r39,%ar1; bra $L2; $L6: add.u64 %r40,%r40,1; add.u64 %r39,%r39,1; $L2: ld.u8 %r31,[%r40]; cvt.u32.u32 %r46,%r31; cvt.u64.u8 %r45,%r46; add.u64 %r47,%r22,%r45; ld.u8 %r72,[%r47+1]; mov.u16 %r51,%r72; and.b16 %r50,%r51,3; cvt.u32.u16 %r54,%r50; cvt.s32.s8 %r53,%r54; cvt.u16.u32 %r52,%r53; setp.ne.u16 %r55,%r52,1; @ %r55 bra $L3; add.u32 %r31,%r31,32; $L3: .loc 1 55 23 ld.u8 %r35,[%r39]; cvt.u32.u32 %r57,%r35; cvt.u64.u8 %r56,%r57; add.u64 %r58,%r22,%r56; ld.u8 %r72,[%r58+1]; mov.u16 %r62,%r72; and.b16 %r61,%r62,3; cvt.u32.u16 %r65,%r61; cvt.s32.s8 %r64,%r65; cvt.u16.u32 %r63,%r64; setp.ne.u16 %r66,%r63,1; @ %r66 bra $L4; add.u32 %r67,%r35,32; .loc 1 56 15 sub.u32 %r42,%r31,%r67; .loc 1 56 10 setp.ne.u32 %r68,%r42,0; @ ! %r68 bra $L6; bra $L1; $L4: .loc 1 56 15 sub.u32 %r42,%r31,%r35; .loc 1 56 10 setp.ne.u32 %r69,%r42,0; @ %r69 bra $L1; .loc 1 56 32 setp.ne.u32 %r70,%r35,0; @ %r70 bra $L6; $L1: .loc 1 60 1 mov.u32 %value,%r42; st.param.u32 [%value_out],%value; ret; } /598 1591654539 399 399 100644 36082 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: critical_factorization .func (.param .u64 %value_out) critical_factorization (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/string/str-two-way.h" // 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); // BEGIN GLOBAL FUNCTION DECL: strcasestr .visible .func (.param .u64 %value_out) strcasestr (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 2 "../../../../../newlib/libc/string/strcasestr.c" // BEGIN GLOBAL VAR DECL: __ctype_ptr__ .extern .global .align 8 .u64 __ctype_ptr__[1]; // BEGIN GLOBAL FUNCTION DECL: strncasecmp .extern .func (.param .u32 %value_out) strncasecmp (.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 FUNCTION DEF: critical_factorization .func (.param .u64 %value_out) critical_factorization (.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 %r35; .reg .u64 %r43; .reg .u64 %r48; .reg .u64 %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .u32 %r60; .reg .u32 %r61; .reg .u32 %r63; .reg .u32 %r64; .reg .u64 %r66; .reg .u64 %r67; .reg .u64 %r68; .reg .u64 %r69; .reg .u64 %r70; .reg .u64 %r71; .reg .u32 %r72; .reg .u64 %r73; .reg .u16 %r76; .reg .u16 %r77; .reg .u16 %r78; .reg .u32 %r79; .reg .u32 %r80; .reg .pred %r81; .reg .u16 %r82; .reg .u16 %r83; .reg .u32 %r84; .reg .u64 %r85; .reg .u64 %r86; .reg .u64 %r87; .reg .u32 %r88; .reg .u64 %r89; .reg .u16 %r92; .reg .u16 %r93; .reg .u16 %r94; .reg .u32 %r95; .reg .u32 %r96; .reg .pred %r97; .reg .u16 %r98; .reg .u16 %r99; .reg .u32 %r100; .reg .u16 %r101; .reg .u16 %r102; .reg .pred %r103; .reg .pred %r106; .reg .pred %r107; .reg .pred %r108; .reg .u64 %r109; .reg .u64 %r110; .reg .u32 %r111; .reg .u64 %r112; .reg .u16 %r115; .reg .u16 %r116; .reg .u16 %r117; .reg .u32 %r118; .reg .u32 %r119; .reg .pred %r120; .reg .u16 %r121; .reg .u16 %r122; .reg .u32 %r123; .reg .u64 %r124; .reg .u64 %r125; .reg .u64 %r126; .reg .u32 %r127; .reg .u64 %r128; .reg .u16 %r131; .reg .u16 %r132; .reg .u16 %r133; .reg .u32 %r134; .reg .u32 %r135; .reg .pred %r136; .reg .u16 %r137; .reg .u16 %r138; .reg .u32 %r139; .reg .u16 %r140; .reg .u16 %r141; .reg .pred %r142; .reg .pred %r145; .reg .pred %r146; .reg .pred %r147; .reg .pred %r148; .reg .u64 %r150; .reg .u64 %r151; .reg .u64 %r152; .reg .u64 %r153; .reg .u16 %r154; mov.u64 %r67,%ar0; mov.u64 %r68,%ar1; mov.u64 %r69,%ar2; .loc 1 116 11 ld.global.u64 %r23,[__ctype_ptr__]; .loc 1 113 9 mov.u64 %r55,1; .loc 1 113 5 mov.u64 %r53,%r55; .loc 1 112 5 mov.u64 %r35,0; .loc 1 111 14 mov.u64 %r51,-1; .loc 1 140 10 mov.u64 %r153,%r55; .loc 1 114 9 bra $L2; $L9: .loc 1 116 11 add.u64 %r70,%r67,%r150; ld.u8 %r60,[%r70]; cvt.u32.u32 %r72,%r60; cvt.u64.u8 %r71,%r72; add.u64 %r73,%r23,%r71; ld.u8 %r154,[%r73+1]; mov.u16 %r77,%r154; and.b16 %r76,%r77,3; cvt.u32.u16 %r80,%r76; cvt.s32.s8 %r79,%r80; cvt.u16.u32 %r78,%r79; setp.ne.u16 %r81,%r78,1; @ %r81 bra $L3; cvt.u16.u32 %r83,%r60; add.u16 %r82,%r83,32; cvt.u32.u16 %r84,%r82; cvt.u32.u8 %r60,%r84; $L3: .loc 1 117 11 add.u64 %r85,%r67,%r51; add.u64 %r86,%r85,%r53; ld.u8 %r61,[%r86]; cvt.u32.u32 %r88,%r61; cvt.u64.u8 %r87,%r88; add.u64 %r89,%r23,%r87; ld.u8 %r154,[%r89+1]; mov.u16 %r93,%r154; and.b16 %r92,%r93,3; cvt.u32.u16 %r96,%r92; cvt.s32.s8 %r95,%r96; cvt.u16.u32 %r94,%r95; setp.ne.u16 %r97,%r94,1; @ %r97 bra $L4; cvt.u16.u32 %r99,%r61; add.u16 %r98,%r99,32; cvt.u32.u16 %r100,%r98; cvt.u32.u8 %r61,%r100; $L4: .loc 1 118 10 cvt.u16.u32 %r101,%r61; cvt.u16.u32 %r102,%r60; setp.le.u16 %r103,%r101,%r102; @ %r103 bra $L5; .loc 1 123 6 sub.u64 %r55,%r150,%r51; mov.u64 %r35,%r150; .loc 1 122 6 mov.u64 %r53,1; bra $L2; $L5: .loc 1 125 15 setp.ne.u16 %r106,%r101,%r102; @ %r106 bra $L7; .loc 1 128 7 setp.eq.u64 %r107,%r53,%r55; @ %r107 bra $L8; .loc 1 129 6 add.u64 %r53,%r53,1; bra $L2; $L8: .loc 1 132 10 mov.u64 %r35,%r150; .loc 1 133 10 mov.u64 %r53,1; bra $L2; $L7: .loc 1 139 15 mov.u64 %r51,%r35; .loc 1 139 18 add.u64 %r35,%r35,1; .loc 1 140 10 mov.u64 %r55,%r153; .loc 1 140 6 mov.u64 %r53,1; $L2: .loc 1 114 12 add.u64 %r150,%r35,%r53; .loc 1 114 9 setp.lt.u64 %r108,%r150,%r68; @ %r108 bra $L9; .loc 1 143 11 st.u64 [%r69],%r55; .loc 1 148 9 mov.u64 %r43,1; .loc 1 148 5 mov.u64 %r54,%r43; .loc 1 147 5 mov.u64 %r48,0; .loc 1 146 18 mov.u64 %r52,-1; .loc 1 175 10 mov.u64 %r152,%r43; .loc 1 149 9 bra $L10; $L17: .loc 1 151 11 add.u64 %r109,%r67,%r151; ld.u8 %r63,[%r109]; cvt.u32.u32 %r111,%r63; cvt.u64.u8 %r110,%r111; add.u64 %r112,%r23,%r110; ld.u8 %r154,[%r112+1]; mov.u16 %r116,%r154; and.b16 %r115,%r116,3; cvt.u32.u16 %r119,%r115; cvt.s32.s8 %r118,%r119; cvt.u16.u32 %r117,%r118; setp.ne.u16 %r120,%r117,1; @ %r120 bra $L11; cvt.u16.u32 %r122,%r63; add.u16 %r121,%r122,32; cvt.u32.u16 %r123,%r121; cvt.u32.u8 %r63,%r123; $L11: .loc 1 152 11 add.u64 %r124,%r67,%r52; add.u64 %r125,%r124,%r54; ld.u8 %r64,[%r125]; cvt.u32.u32 %r127,%r64; cvt.u64.u8 %r126,%r127; add.u64 %r128,%r23,%r126; ld.u8 %r154,[%r128+1]; mov.u16 %r132,%r154; and.b16 %r131,%r132,3; cvt.u32.u16 %r135,%r131; cvt.s32.s8 %r134,%r135; cvt.u16.u32 %r133,%r134; setp.ne.u16 %r136,%r133,1; @ %r136 bra $L12; cvt.u16.u32 %r138,%r64; add.u16 %r137,%r138,32; cvt.u32.u16 %r139,%r137; cvt.u32.u8 %r64,%r139; $L12: .loc 1 153 10 cvt.u16.u32 %r140,%r64; cvt.u16.u32 %r141,%r63; setp.ge.u16 %r142,%r140,%r141; @ %r142 bra $L13; .loc 1 158 6 sub.u64 %r43,%r151,%r52; mov.u64 %r48,%r151; .loc 1 157 6 mov.u64 %r54,1; bra $L10; $L13: .loc 1 160 15 setp.ne.u16 %r145,%r140,%r141; @ %r145 bra $L15; .loc 1 163 7 setp.eq.u64 %r146,%r54,%r43; @ %r146 bra $L16; .loc 1 164 6 add.u64 %r54,%r54,1; bra $L10; $L16: .loc 1 167 10 mov.u64 %r48,%r151; .loc 1 168 10 mov.u64 %r54,1; bra $L10; $L15: .loc 1 174 19 mov.u64 %r52,%r48; .loc 1 174 22 add.u64 %r48,%r48,1; .loc 1 175 10 mov.u64 %r43,%r152; .loc 1 175 6 mov.u64 %r54,1; $L10: .loc 1 149 12 add.u64 %r151,%r48,%r54; .loc 1 149 9 setp.lt.u64 %r147,%r151,%r68; @ %r147 bra $L17; .loc 1 181 22 add.u64 %r50,%r52,1; .loc 1 181 39 add.u64 %r66,%r51,1; .loc 1 181 6 setp.lt.u64 %r148,%r50,%r66; @ %r148 bra $L1; .loc 1 183 11 st.u64 [%r69],%r43; .loc 1 184 25 mov.u64 %r66,%r50; $L1: .loc 1 185 1 mov.u64 %value,%r66; st.param.u64 [%value_out],%value; ret; } // 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[2064]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r22; .reg .u64 %r28; .reg .u64 %r31; .reg .u64 %r36; .reg .u64 %r54; .reg .u64 %r55; .reg .u64 %r65; .reg .u64 %r70; .reg .u64 %r79; .reg .u64 %r90; .reg .u64 %r94; .reg .u64 %r96; .reg .u64 %r97; .reg .u64 %r98; .reg .u64 %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 .u64 %r125; .reg .u64 %r129; .reg .u64 %r134; .reg .u64 %r136; .reg .u64 %r144; .reg .u64 %r151; .reg .u64 %r152; .reg .u64 %r158; .reg .u64 %r168; .reg .u64 %r169; .reg .u64 %r172; .reg .u64 %r173; .reg .u64 %r174; .reg .u64 %r175; .reg .u64 %r176; .reg .u64 %r180; .reg .u64 %r181; .reg .pred %r182; .reg .u64 %r183; .reg .pred %r184; .reg .u64 %r185; .reg .u32 %r186; .reg .u64 %r187; .reg .u16 %r190; .reg .u16 %r191; .reg .u16 %r192; .reg .u32 %r193; .reg .u32 %r194; .reg .pred %r195; .reg .u64 %r196; .reg .u64 %r197; .reg .u64 %r198; .reg .u64 %r200; .reg .pred %r201; .reg .u32 %r205; .reg .pred %r206; .reg .u64 %r207; .reg .u64 %r209; .reg .u32 %r210; .reg .u64 %r211; .reg .u16 %r214; .reg .u16 %r215; .reg .u16 %r216; .reg .u32 %r217; .reg .u32 %r218; .reg .pred %r219; .reg .u64 %r220; .reg .u64 %r221; .reg .u64 %r222; .reg .pred %r223; .reg .pred %r224; .reg .pred %r225; .reg .pred %r226; .reg .pred %r227; .reg .u64 %r228; .reg .u64 %r229; .reg .u32 %r230; .reg .u64 %r231; .reg .u16 %r234; .reg .u16 %r235; .reg .u16 %r236; .reg .u32 %r237; .reg .u32 %r238; .reg .pred %r239; .reg .u64 %r240; .reg .u64 %r241; .reg .u64 %r242; .reg .u32 %r243; .reg .u64 %r244; .reg .u16 %r247; .reg .u16 %r248; .reg .u16 %r249; .reg .u32 %r250; .reg .u32 %r251; .reg .pred %r252; .reg .pred %r253; .reg .pred %r254; .reg .u64 %r255; .reg .u64 %r256; .reg .u32 %r257; .reg .u64 %r258; .reg .u16 %r261; .reg .u16 %r262; .reg .u16 %r263; .reg .u32 %r264; .reg .u32 %r265; .reg .pred %r266; .reg .u64 %r267; .reg .u64 %r268; .reg .u64 %r269; .reg .u32 %r270; .reg .u64 %r271; .reg .u16 %r274; .reg .u16 %r275; .reg .u16 %r276; .reg .u32 %r277; .reg .u32 %r278; .reg .pred %r279; .reg .pred %r280; .reg .u64 %r281; .reg .pred %r282; .reg .u32 %r284; .reg .u64 %r286; .reg .u64 %r287; .reg .u64 %r288; .reg .u32 %r290; .reg .u32 %r291; .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 %r302; .reg .u64 %r303; .reg .u64 %r304; .reg .u64 %r306; .reg .u32 %r307; .reg .u64 %r308; .reg .u16 %r311; .reg .u16 %r312; .reg .u16 %r313; .reg .u32 %r314; .reg .u32 %r315; .reg .pred %r316; .reg .u64 %r317; .reg .u64 %r318; .reg .u64 %r319; .reg .pred %r320; .reg .pred %r321; .reg .pred %r322; .reg .u64 %r323; .reg .u64 %r324; .reg .u32 %r325; .reg .u64 %r326; .reg .u16 %r329; .reg .u16 %r330; .reg .u16 %r331; .reg .u32 %r332; .reg .u32 %r333; .reg .pred %r334; .reg .u64 %r335; .reg .u64 %r336; .reg .u64 %r337; .reg .u32 %r338; .reg .u64 %r339; .reg .u16 %r342; .reg .u16 %r343; .reg .u16 %r344; .reg .u32 %r345; .reg .u32 %r346; .reg .pred %r347; .reg .pred %r348; .reg .pred %r349; .reg .u64 %r350; .reg .u64 %r351; .reg .u32 %r352; .reg .u64 %r353; .reg .u16 %r356; .reg .u16 %r357; .reg .u16 %r358; .reg .u32 %r359; .reg .u32 %r360; .reg .pred %r361; .reg .u64 %r362; .reg .u64 %r363; .reg .u64 %r364; .reg .u32 %r365; .reg .u64 %r366; .reg .u16 %r369; .reg .u16 %r370; .reg .u16 %r371; .reg .u32 %r372; .reg .u32 %r373; .reg .pred %r374; .reg .pred %r375; .reg .u32 %r377; .reg .u64 %r379; .reg .u64 %r380; .reg .u64 %r381; .reg .u32 %r383; .reg .u32 %r384; .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 .u64 %r395; .reg .pred %r397; .reg .u64 %r398; .reg .pred %r399; .reg .u64 %r400; .reg .u64 %r405; .reg .u64 %r406; .reg .u64 %r407; .reg .u32 %r411; .reg .pred %r412; .reg .u64 %r413; .reg .u64 %r414; .reg .u64 %r415; .reg .u16 %r416; mov.u64 %r173,%ar0; mov.u64 %r174,%ar1; mov.u64 %r175,%ar2; mov.u64 %r176,%ar3; .loc 1 304 12 add.u64 %r180,%frame,2048; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r175; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r176; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r180; call (%value_in),critical_factorization,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r181,[%value_in]; } mov.u64 %r151,%frame; $L20: .loc 1 311 20 st.u64 [%r151],%r176; add.u64 %r151,%r151,8; .loc 1 310 3 setp.ne.u64 %r182,%r180,%r151; @ %r182 bra $L20; ld.u64 %r183,[%frame+2048]; add.u64 %r168,%r175,%r183; .loc 1 312 3 setp.eq.u64 %r184,%r176,0; @ %r184 bra $L21; .loc 1 313 17 ld.global.u64 %r22,[__ctype_ptr__]; add.u64 %r169,%r176,-1; add.u64 %r152,%r176,%r175; mov.u64 %r158,%r175; add.u64 %r413,%r175,%r169; $L23: ld.u8 %r100,[%r158]; cvt.u32.u32 %r186,%r100; cvt.u64.u8 %r185,%r186; add.u64 %r187,%r22,%r185; ld.u8 %r416,[%r187+1]; mov.u16 %r191,%r416; and.b16 %r190,%r191,3; cvt.u32.u16 %r194,%r190; cvt.s32.s8 %r193,%r194; cvt.u16.u32 %r192,%r193; setp.ne.u16 %r195,%r192,1; @ %r195 bra $L22; add.u32 %r100,%r100,32; $L22: .loc 1 313 44 cvt.s64.s32 %r196,%r100; shl.b64 %r197,%r196,3; add.u64 %r198,%frame,%r197; sub.u64 %r200,%r413,%r158; st.u64 [%r198],%r200; add.u64 %r158,%r158,1; .loc 1 312 3 setp.ne.u64 %r201,%r152,%r158; @ %r201 bra $L23; .loc 1 317 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r175; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r168; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r181; call (%value_in),strncasecmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r205,[%value_in]; } .loc 1 317 6 setp.eq.u32 %r206,%r205,0; @ ! %r206 bra $L25; bra $L63; $L42: .loc 1 329 24 add.u64 %r207,%r173,%r55; ld.global.u64 %r31,[__ctype_ptr__]; ld.u8 %r101,[%r207+-1]; cvt.u32.u32 %r210,%r101; cvt.u64.u8 %r209,%r210; add.u64 %r211,%r31,%r209; ld.u8 %r416,[%r211+1]; mov.u16 %r215,%r416; and.b16 %r214,%r215,3; cvt.u32.u16 %r218,%r214; cvt.s32.s8 %r217,%r218; cvt.u16.u32 %r216,%r217; setp.ne.u16 %r219,%r216,1; @ %r219 bra $L26; add.u32 %r101,%r101,32; $L26: .loc 1 329 10 cvt.s64.s32 %r220,%r101; shl.b64 %r221,%r220,3; add.u64 %r222,%frame,%r221; ld.u64 %r99,[%r222]; .loc 1 330 7 setp.eq.u64 %r223,%r99,0; @ %r223 bra $L27; .loc 1 332 11 setp.eq.u64 %r224,%r98,0; @ %r224 bra $L28; .loc 1 332 28 ld.u64 %r36,[%frame+2048]; .loc 1 332 19 setp.le.u64 %r225,%r36,%r99; @ %r225 bra $L28; .loc 1 337 11 sub.u64 %r99,%r176,%r36; $L28: .loc 1 340 10 add.u64 %r96,%r96,%r99; .loc 1 339 15 mov.u64 %r98,0; .loc 1 341 8 bra $L29; $L27: .loc 1 345 6 max.u64 %r79,%r98,%r181; .loc 1 346 10 setp.lt.u64 %r226,%r79,%r169; @ %r226 bra $L30; bra $L31; $L34: .loc 1 348 6 add.u64 %r79,%r79,1; .loc 1 346 10 setp.eq.u64 %r227,%r79,%r169; @ %r227 bra $L31; $L30: .loc 1 346 34 add.u64 %r228,%r175,%r79; ld.u8 %r102,[%r228]; cvt.u32.u32 %r230,%r102; cvt.u64.u8 %r229,%r230; add.u64 %r231,%r31,%r229; ld.u8 %r416,[%r231+1]; mov.u16 %r235,%r416; and.b16 %r234,%r235,3; cvt.u32.u16 %r238,%r234; cvt.s32.s8 %r237,%r238; cvt.u16.u32 %r236,%r237; setp.ne.u16 %r239,%r236,1; @ %r239 bra $L32; add.u32 %r102,%r102,32; $L32: .loc 1 347 9 add.u64 %r240,%r79,%r96; add.u64 %r241,%r173,%r240; ld.u8 %r103,[%r241]; cvt.u32.u32 %r243,%r103; cvt.u64.u8 %r242,%r243; add.u64 %r244,%r31,%r242; ld.u8 %r416,[%r244+1]; mov.u16 %r248,%r416; and.b16 %r247,%r248,3; cvt.u32.u16 %r251,%r247; cvt.s32.s8 %r250,%r251; cvt.u16.u32 %r249,%r250; setp.ne.u16 %r252,%r249,1; @ %r252 bra $L33; add.u32 %r103,%r103,32; $L33: .loc 1 346 30 setp.eq.u32 %r253,%r102,%r103; @ %r253 bra $L34; bra $L77; $L39: .loc 1 355 3 add.u64 %r125,%r70,-1; .loc 1 353 14 setp.eq.u64 %r254,%r70,%r98; @ %r254 bra $L64; mov.u64 %r70,%r125; $L60: add.u64 %r134,%r70,1; .loc 1 353 34 add.u64 %r255,%r175,%r70; ld.u8 %r104,[%r255]; cvt.u32.u32 %r257,%r104; cvt.u64.u8 %r256,%r257; add.u64 %r258,%r31,%r256; ld.u8 %r416,[%r258+1]; mov.u16 %r262,%r416; and.b16 %r261,%r262,3; cvt.u32.u16 %r265,%r261; cvt.s32.s8 %r264,%r265; cvt.u16.u32 %r263,%r264; setp.ne.u16 %r266,%r263,1; @ %r266 bra $L37; add.u32 %r104,%r104,32; $L37: .loc 1 354 9 add.u64 %r267,%r70,%r96; add.u64 %r268,%r173,%r267; ld.u8 %r105,[%r268]; cvt.u32.u32 %r270,%r105; cvt.u64.u8 %r269,%r270; add.u64 %r271,%r31,%r269; ld.u8 %r416,[%r271+1]; mov.u16 %r275,%r416; and.b16 %r274,%r275,3; cvt.u32.u16 %r278,%r274; cvt.s32.s8 %r277,%r278; cvt.u16.u32 %r276,%r277; setp.ne.u16 %r279,%r276,1; @ %r279 bra $L38; add.u32 %r105,%r105,32; $L38: .loc 1 353 30 setp.eq.u32 %r280,%r104,%r105; @ %r280 bra $L39; bra $L36; $L64: mov.u64 %r134,%r98; $L36: .loc 1 356 27 add.u64 %r281,%r98,1; .loc 1 356 11 setp.le.u64 %r282,%r281,%r134; @ %r282 bra $L40; .loc 1 357 10 add.u64 %r172,%r173,%r96; bra $L19; $L40: .loc 1 360 10 ld.u64 %r54,[%frame+2048]; add.u64 %r96,%r96,%r54; .loc 1 361 15 sub.u64 %r98,%r176,%r54; $L29: .loc 1 339 15 mov.u64 %r174,%r55; bra $L24; $L63: .loc 1 322 14 mov.u64 %r98,0; .loc 1 324 9 mov.u64 %r96,%r98; .loc 1 352 10 add.u64 %r414,%r181,-1; $L24: .loc 1 325 14 add.u64 %r55,%r96,%r176; sub.u64 %r286,%r55,%r174; add.u64 %r287,%r173,%r174; mov.u32 %r284,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r287; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r284; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r286; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r288,[%value_in]; } .loc 1 325 13 set.u32.eq.u64 %r290,%r288,0; neg.s32 %r291,%r290; .loc 1 325 14 set.u32.ne.u64 %r293,%r55,0; neg.s32 %r294,%r293; cvt.u16.u32 %r296,%r291; cvt.u16.u32 %r297,%r294; and.b16 %r295,%r296,%r297; cvt.u32.u16 %r298,%r295; cvt.u16.u8 %r299,%r298; setp.ne.u16 %r300,%r299,0; @ %r300 bra $L42; $L59: .loc 1 408 10 mov.u64 %r172,0; bra $L19; $L25: .loc 1 375 16 sub.u64 %r302,%r176,%r181; max.u64 %r301,%r302,%r181; .loc 1 375 50 add.u64 %r303,%r301,1; .loc 1 375 14 st.u64 [%frame+2048],%r303; .loc 1 376 9 mov.u64 %r97,0; .loc 1 390 26 add.u64 %r415,%r176,-1; .loc 1 377 13 bra $L43; $L58: .loc 1 381 24 add.u64 %r304,%r173,%r90; ld.global.u64 %r65,[__ctype_ptr__]; ld.u8 %r106,[%r304+-1]; cvt.u32.u32 %r307,%r106; cvt.u64.u8 %r306,%r307; add.u64 %r308,%r65,%r306; ld.u8 %r416,[%r308+1]; mov.u16 %r312,%r416; and.b16 %r311,%r312,3; cvt.u32.u16 %r315,%r311; cvt.s32.s8 %r314,%r315; cvt.u16.u32 %r313,%r314; setp.ne.u16 %r316,%r313,1; @ %r316 bra $L44; add.u32 %r106,%r106,32; $L44: .loc 1 381 10 cvt.s64.s32 %r317,%r106; shl.b64 %r318,%r317,3; add.u64 %r319,%frame,%r318; ld.u64 %r129,[%r319]; .loc 1 382 7 setp.ne.u64 %r320,%r129,0; @ %r320 bra $L45; .loc 1 390 10 setp.lt.u64 %r321,%r181,%r415; @ %r321 bra $L65; bra $L47; $L45: .loc 1 384 10 add.u64 %r97,%r97,%r129; .loc 1 385 8 bra $L48; $L51: .loc 1 392 6 add.u64 %r28,%r28,1; .loc 1 390 10 setp.ge.u64 %r322,%r28,%r415; @ ! %r322 bra $L46; bra $L47; $L65: mov.u64 %r28,%r181; $L46: .loc 1 390 34 add.u64 %r323,%r175,%r28; ld.u8 %r107,[%r323]; cvt.u32.u32 %r325,%r107; cvt.u64.u8 %r324,%r325; add.u64 %r326,%r65,%r324; ld.u8 %r416,[%r326+1]; mov.u16 %r330,%r416; and.b16 %r329,%r330,3; cvt.u32.u16 %r333,%r329; cvt.s32.s8 %r332,%r333; cvt.u16.u32 %r331,%r332; setp.ne.u16 %r334,%r331,1; @ %r334 bra $L49; add.u32 %r107,%r107,32; $L49: .loc 1 391 9 add.u64 %r335,%r28,%r97; add.u64 %r336,%r173,%r335; ld.u8 %r108,[%r336]; cvt.u32.u32 %r338,%r108; cvt.u64.u8 %r337,%r338; add.u64 %r339,%r65,%r337; ld.u8 %r416,[%r339+1]; mov.u16 %r343,%r416; and.b16 %r342,%r343,3; cvt.u32.u16 %r346,%r342; cvt.s32.s8 %r345,%r346; cvt.u16.u32 %r344,%r345; setp.ne.u16 %r347,%r344,1; @ %r347 bra $L50; add.u32 %r108,%r108,32; $L50: .loc 1 390 30 setp.eq.u32 %r348,%r107,%r108; @ %r348 bra $L51; bra $L78; $L56: .loc 1 399 3 add.u64 %r136,%r136,-1; .loc 1 397 14 setp.eq.u64 %r349,%r136,-1; @ %r349 bra $L53; $L61: .loc 1 397 33 add.u64 %r350,%r175,%r136; ld.u8 %r109,[%r350]; cvt.u32.u32 %r352,%r109; cvt.u64.u8 %r351,%r352; add.u64 %r353,%r65,%r351; ld.u8 %r416,[%r353+1]; mov.u16 %r357,%r416; and.b16 %r356,%r357,3; cvt.u32.u16 %r360,%r356; cvt.s32.s8 %r359,%r360; cvt.u16.u32 %r358,%r359; setp.ne.u16 %r361,%r358,1; @ %r361 bra $L54; add.u32 %r109,%r109,32; $L54: .loc 1 398 15 add.u64 %r362,%r97,%r136; add.u64 %r363,%r173,%r362; ld.u8 %r110,[%r363]; cvt.u32.u32 %r365,%r110; cvt.u64.u8 %r364,%r365; add.u64 %r366,%r65,%r364; ld.u8 %r416,[%r366+1]; mov.u16 %r370,%r416; and.b16 %r369,%r370,3; cvt.u32.u16 %r373,%r369; cvt.s32.s8 %r372,%r373; cvt.u16.u32 %r371,%r372; setp.ne.u16 %r374,%r371,1; @ %r374 bra $L55; add.u32 %r110,%r110,32; $L55: .loc 1 397 29 setp.eq.u32 %r375,%r109,%r110; @ %r375 bra $L56; bra $L79; $L48: .loc 1 390 10 mov.u64 %r174,%r90; $L43: .loc 1 377 14 add.u64 %r90,%r97,%r176; sub.u64 %r379,%r90,%r174; add.u64 %r380,%r173,%r174; mov.u32 %r377,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r380; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r377; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r379; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r381,[%value_in]; } set.u32.ne.u64 %r383,%r90,0; neg.s32 %r384,%r383; .loc 1 377 13 set.u32.eq.u64 %r386,%r381,0; neg.s32 %r387,%r386; .loc 1 377 14 cvt.u16.u32 %r389,%r384; cvt.u16.u32 %r390,%r387; and.b16 %r388,%r389,%r390; cvt.u32.u16 %r391,%r388; cvt.u16.u8 %r392,%r391; setp.ne.u16 %r393,%r392,0; @ %r393 bra $L58; bra $L59; $L77: sub.u64 %r395,%r96,%r181; add.u64 %r144,%r395,1; .loc 1 365 10 add.u64 %r96,%r79,%r144; .loc 1 366 15 mov.u64 %r98,%r99; bra $L29; $L31: .loc 1 352 10 mov.u64 %r70,%r414; .loc 1 353 14 setp.lt.u64 %r397,%r98,%r181; @ %r397 bra $L60; mov.u64 %r134,%r181; bra $L36; $L53: .loc 1 401 10 add.u64 %r172,%r173,%r97; bra $L19; $L79: .loc 1 402 10 ld.u64 %r398,[%frame+2048]; add.u64 %r97,%r97,%r398; bra $L48; $L47: .loc 1 396 10 add.u64 %r136,%r181,-1; .loc 1 397 14 setp.ne.u64 %r399,%r136,-1; @ %r399 bra $L61; bra $L53; $L78: sub.u64 %r400,%r97,%r181; add.u64 %r94,%r400,1; .loc 1 405 8 add.u64 %r97,%r28,%r94; bra $L48; $L62: .loc 1 325 14 neg.s64 %r405,%r174; add.u64 %r406,%r173,%r174; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r406; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r411; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r405; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r407,[%value_in]; } .loc 1 408 10 mov.u64 %r172,%r176; bra $L19; $L21: .loc 1 317 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r175; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r168; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r181; call (%value_in),strncasecmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r411,[%value_in]; } .loc 1 317 6 setp.eq.u32 %r412,%r411,0; @ %r412 bra $L62; bra $L25; $L19: .loc 1 409 1 mov.u64 %value,%r172; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strcasestr .visible .func (.param .u64 %value_out) strcasestr (.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 .u32 %r33; .reg .u32 %r34; .reg .u64 %r38; .reg .u32 %r39; .reg .u32 %r40; .reg .u64 %r43; .reg .u64 %r45; .reg .u32 %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u64 %r56; .reg .u64 %r57; .reg .u64 %r59; .reg .u64 %r65; .reg .u32 %r72; .reg .u32 %r73; .reg .u64 %r75; .reg .u64 %r76; .reg .u64 %r78; .reg .u32 %r90; .reg .u32 %r91; .reg .u64 %r95; .reg .u64 %r96; .reg .u64 %r103; .reg .u64 %r105; .reg .u64 %r111; .reg .u32 %r118; .reg .u32 %r119; .reg .u64 %r120; .reg .u64 %r122; .reg .u32 %r134; .reg .u32 %r135; .reg .u64 %r138; .reg .u64 %r144; .reg .u64 %r145; .reg .u64 %r158; .reg .u64 %r159; .reg .u64 %r160; .reg .pred %r161; .reg .pred %r162; .reg .u32 %r163; .reg .u64 %r164; .reg .u64 %r166; .reg .u16 %r169; .reg .u16 %r170; .reg .u16 %r171; .reg .u32 %r172; .reg .u32 %r173; .reg .pred %r174; .reg .u32 %r175; .reg .u64 %r176; .reg .u64 %r178; .reg .u16 %r181; .reg .u16 %r182; .reg .u16 %r183; .reg .u32 %r184; .reg .u32 %r185; .reg .pred %r186; .reg .u32 %r188; .reg .u32 %r189; .reg .pred %r190; .reg .pred %r191; .reg .pred %r192; .reg .u16 %r193; .reg .u32 %r194; .reg .pred %r195; .reg .pred %r196; .reg .pred %r197; .reg .u64 %r201; .reg .u64 %r205; .reg .u64 %r206; .reg .u32 %r207; .reg .pred %r208; .reg .pred %r209; .reg .pred %r210; .reg .u64 %r211; .reg .u64 %r212; .reg .u32 %r213; .reg .u64 %r214; .reg .u16 %r217; .reg .u16 %r218; .reg .u16 %r219; .reg .u32 %r220; .reg .u32 %r221; .reg .pred %r222; .reg .u64 %r223; .reg .u64 %r224; .reg .u64 %r225; .reg .u32 %r226; .reg .u64 %r227; .reg .u16 %r230; .reg .u16 %r231; .reg .u16 %r232; .reg .u32 %r233; .reg .u32 %r234; .reg .pred %r235; .reg .pred %r236; .reg .pred %r237; .reg .pred %r238; .reg .pred %r239; .reg .u64 %r240; .reg .u64 %r241; .reg .u32 %r242; .reg .u64 %r243; .reg .u16 %r246; .reg .u16 %r247; .reg .u16 %r248; .reg .u32 %r249; .reg .u32 %r250; .reg .pred %r251; .reg .u64 %r252; .reg .u64 %r253; .reg .u64 %r254; .reg .u32 %r255; .reg .u64 %r256; .reg .u16 %r259; .reg .u16 %r260; .reg .u16 %r261; .reg .u32 %r262; .reg .u32 %r263; .reg .pred %r264; .reg .pred %r265; .reg .u64 %r266; .reg .pred %r267; .reg .u64 %r268; .reg .u32 %r271; .reg .u64 %r273; .reg .u64 %r274; .reg .u64 %r275; .reg .u32 %r277; .reg .u32 %r278; .reg .u32 %r280; .reg .u32 %r281; .reg .u16 %r282; .reg .u16 %r283; .reg .u16 %r284; .reg .u32 %r285; .reg .u16 %r286; .reg .pred %r287; .reg .u64 %r288; .reg .u64 %r289; .reg .u64 %r290; .reg .pred %r291; .reg .u64 %r292; .reg .u64 %r293; .reg .u32 %r294; .reg .u64 %r295; .reg .u16 %r298; .reg .u16 %r299; .reg .u16 %r300; .reg .u32 %r301; .reg .u32 %r302; .reg .pred %r303; .reg .u64 %r304; .reg .u64 %r305; .reg .u64 %r306; .reg .u32 %r307; .reg .u64 %r308; .reg .u16 %r311; .reg .u16 %r312; .reg .u16 %r313; .reg .u32 %r314; .reg .u32 %r315; .reg .pred %r316; .reg .pred %r317; .reg .pred %r318; .reg .pred %r319; .reg .pred %r320; .reg .u64 %r321; .reg .u64 %r322; .reg .u32 %r323; .reg .u64 %r324; .reg .u16 %r327; .reg .u16 %r328; .reg .u16 %r329; .reg .u32 %r330; .reg .u32 %r331; .reg .pred %r332; .reg .u64 %r333; .reg .u64 %r334; .reg .u64 %r335; .reg .u32 %r336; .reg .u64 %r337; .reg .u16 %r340; .reg .u16 %r341; .reg .u16 %r342; .reg .u32 %r343; .reg .u32 %r344; .reg .pred %r345; .reg .pred %r346; .reg .u64 %r347; .reg .u32 %r350; .reg .u64 %r352; .reg .u64 %r353; .reg .u64 %r354; .reg .u32 %r356; .reg .u32 %r357; .reg .u32 %r359; .reg .u32 %r360; .reg .u16 %r361; .reg .u16 %r362; .reg .u16 %r363; .reg .u32 %r364; .reg .u16 %r365; .reg .pred %r366; .reg .pred %r367; .reg .u64 %r372; .reg .u64 %r374; .reg .u64 %r375; .reg .u16 %r376; mov.u64 %r159,%ar0; mov.u64 %r160,%ar1; .loc 2 133 10 ld.s8 %r33,[%r159]; ld.s8 %r34,[%r160]; .loc 2 133 9 setp.eq.u32 %r161,%r33,0; @ %r161 bra $L81; .loc 2 133 20 setp.eq.u32 %r162,%r34,0; @ %r162 bra $L121; .loc 2 134 12 ld.global.u64 %r23,[__ctype_ptr__]; mov.u64 %r45,%r160; mov.u64 %r43,%r159; .loc 2 128 7 mov.u32 %r48,1; $L86: .loc 2 134 12 add.u64 %r43,%r43,1; cvt.u32.u32 %r163,%r33; cvt.u32.u8 %r39,%r163; cvt.u64.u8 %r164,%r163; add.u64 %r166,%r23,%r164; ld.u8 %r376,[%r166+1]; mov.u16 %r170,%r376; and.b16 %r169,%r170,3; cvt.u32.u16 %r173,%r169; cvt.s32.s8 %r172,%r173; cvt.u16.u32 %r171,%r172; setp.ne.u16 %r174,%r171,1; @ %r174 bra $L83; add.u32 %r39,%r39,32; $L83: .loc 2 135 8 add.u64 %r45,%r45,1; cvt.u32.u32 %r175,%r34; cvt.u32.u8 %r40,%r175; cvt.u64.u8 %r176,%r175; add.u64 %r178,%r23,%r176; ld.u8 %r376,[%r178+1]; mov.u16 %r182,%r376; and.b16 %r181,%r182,3; cvt.u32.u16 %r185,%r181; cvt.s32.s8 %r184,%r185; cvt.u16.u32 %r183,%r184; setp.ne.u16 %r186,%r183,1; @ %r186 bra $L84; add.u32 %r40,%r40,32; $L84: .loc 2 135 5 set.u32.eq.u32 %r188,%r39,%r40; neg.s32 %r189,%r188; .loc 2 134 8 and.b32 %r48,%r48,%r189; .loc 2 133 10 ld.s8 %r33,[%r43]; .loc 2 133 9 setp.eq.u32 %r190,%r33,0; @ %r190 bra $L85; .loc 2 133 23 ld.s8 %r34,[%r45]; .loc 2 133 20 setp.ne.u32 %r191,%r34,0; @ %r191 bra $L86; bra $L87; $L81: .loc 2 136 6 setp.eq.u32 %r192,%r34,0; .loc 2 137 12 selp.u64 %r158,%r159,0,%r192; bra $L80; $L85: .loc 2 136 6 ld.s8 %r194,[%r45]; cvt.u16.u32 %r193,%r194; setp.ne.u16 %r195,%r193,0; @ %r195 bra $L123; $L87: .loc 2 138 6 setp.ne.u32 %r196,%r48,0; @ %r196 bra $L124; .loc 2 140 23 sub.u64 %r49,%r45,%r160; .loc 2 141 12 add.u64 %r50,%r159,1; .loc 2 142 16 add.u64 %r51,%r49,-1; .loc 2 145 6 setp.gt.u64 %r197,%r49,31; @ %r197 bra $L88; .loc 1 209 12 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r160; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r49; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call (%value_in),critical_factorization,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r201,[%value_in]; } .loc 1 213 32 ld.u64 %r206,[%frame]; add.u64 %r205,%r160,%r206; .loc 1 213 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r160; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r205; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r201; call (%value_in),strncasecmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r207,[%value_in]; } .loc 1 213 6 setp.eq.u32 %r208,%r207,0; @ %r208 bra $L125; bra $L138; $L105: .loc 1 223 6 max.u64 %r57,%r201,%r56; .loc 1 224 10 setp.le.u64 %r209,%r49,%r57; @ %r209 bra $L91; .loc 1 224 30 ld.global.u64 %r59,[__ctype_ptr__]; bra $L92; $L95: .loc 1 226 6 add.u64 %r57,%r57,1; .loc 1 224 10 setp.eq.u64 %r210,%r49,%r57; @ %r210 bra $L91; $L92: .loc 1 224 30 add.u64 %r211,%r160,%r57; ld.u8 %r72,[%r211]; cvt.u32.u32 %r213,%r72; cvt.u64.u8 %r212,%r213; add.u64 %r214,%r59,%r212; ld.u8 %r376,[%r214+1]; mov.u16 %r218,%r376; and.b16 %r217,%r218,3; cvt.u32.u16 %r221,%r217; cvt.s32.s8 %r220,%r221; cvt.u16.u32 %r219,%r220; setp.ne.u16 %r222,%r219,1; @ %r222 bra $L93; add.u32 %r72,%r72,32; $L93: .loc 1 225 12 add.u64 %r223,%r65,%r57; add.u64 %r224,%r159,%r223; ld.u8 %r73,[%r224+1]; cvt.u32.u32 %r226,%r73; cvt.u64.u8 %r225,%r226; add.u64 %r227,%r59,%r225; ld.u8 %r376,[%r227+1]; mov.u16 %r231,%r376; and.b16 %r230,%r231,3; cvt.u32.u16 %r234,%r230; cvt.s32.s8 %r233,%r234; cvt.u16.u32 %r232,%r233; setp.ne.u16 %r235,%r232,1; @ %r235 bra $L94; add.u32 %r73,%r73,32; $L94: .loc 1 224 26 setp.eq.u32 %r236,%r72,%r73; @ %r236 bra $L95; .loc 1 227 7 setp.gt.u64 %r237,%r49,%r57; @ %r237 bra $L96; $L91: .loc 1 230 10 mov.u64 %r75,%r375; .loc 1 231 14 setp.le.u64 %r238,%r201,%r56; @ %r238 bra $L126; .loc 1 231 34 ld.global.u64 %r78,[__ctype_ptr__]; bra $L98; $L101: .loc 1 233 3 add.u64 %r76,%r75,-1; .loc 1 231 14 setp.eq.u64 %r239,%r56,%r75; @ %r239 bra $L127; mov.u64 %r75,%r76; $L98: add.u64 %r144,%r75,1; .loc 1 231 34 add.u64 %r240,%r160,%r75; ld.u8 %r90,[%r240]; cvt.u32.u32 %r242,%r90; cvt.u64.u8 %r241,%r242; add.u64 %r243,%r78,%r241; ld.u8 %r376,[%r243+1]; mov.u16 %r247,%r376; and.b16 %r246,%r247,3; cvt.u32.u16 %r250,%r246; cvt.s32.s8 %r249,%r250; cvt.u16.u32 %r248,%r249; setp.ne.u16 %r251,%r248,1; @ %r251 bra $L99; add.u32 %r90,%r90,32; $L99: .loc 1 232 9 add.u64 %r252,%r65,%r75; add.u64 %r253,%r159,%r252; ld.u8 %r91,[%r253+1]; cvt.u32.u32 %r255,%r91; cvt.u64.u8 %r254,%r255; add.u64 %r256,%r78,%r254; ld.u8 %r376,[%r256+1]; mov.u16 %r260,%r376; and.b16 %r259,%r260,3; cvt.u32.u16 %r263,%r259; cvt.s32.s8 %r262,%r263; cvt.u16.u32 %r261,%r262; setp.ne.u16 %r264,%r261,1; @ %r264 bra $L100; add.u32 %r91,%r91,32; $L100: .loc 1 231 30 setp.eq.u32 %r265,%r90,%r91; @ %r265 bra $L101; bra $L97; $L126: .loc 1 231 14 mov.u64 %r144,%r201; bra $L97; $L127: mov.u64 %r144,%r56; $L97: .loc 1 234 27 add.u64 %r266,%r56,1; .loc 1 234 11 setp.le.u64 %r267,%r266,%r144; @ %r267 bra $L102; .loc 1 235 10 add.u64 %r158,%r50,%r65; bra $L80; $L102: .loc 1 238 10 ld.u64 %r95,[%frame]; add.u64 %r65,%r65,%r95; .loc 1 239 15 sub.u64 %r56,%r49,%r95; bra $L104; $L96: sub.u64 %r268,%r65,%r201; add.u64 %r145,%r268,1; .loc 1 243 10 add.u64 %r65,%r57,%r145; .loc 1 244 15 mov.u64 %r56,0; $L104: mov.u64 %r51,%r96; bra $L89; $L125: .loc 1 218 14 mov.u64 %r56,0; .loc 1 219 9 mov.u64 %r65,%r56; .loc 1 230 10 add.u64 %r375,%r201,-1; $L89: .loc 1 220 14 add.u64 %r96,%r49,%r65; sub.u64 %r273,%r96,%r51; add.u64 %r274,%r50,%r51; mov.u32 %r271,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r274; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r271; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r273; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r275,[%value_in]; } .loc 1 220 13 set.u32.eq.u64 %r277,%r275,0; neg.s32 %r278,%r277; .loc 1 220 14 set.u32.ne.u64 %r280,%r96,0; neg.s32 %r281,%r280; cvt.u16.u32 %r283,%r278; cvt.u16.u32 %r284,%r281; and.b16 %r282,%r283,%r284; cvt.u32.u16 %r285,%r282; cvt.u16.u8 %r286,%r285; setp.ne.u16 %r287,%r286,0; @ %r287 bra $L105; bra $L106; $L138: .loc 1 252 16 sub.u64 %r289,%r49,%r201; max.u64 %r288,%r289,%r201; .loc 1 252 50 add.u64 %r290,%r288,1; .loc 1 252 14 st.u64 [%frame],%r290; .loc 1 253 9 mov.u64 %r111,0; bra $L107; $L111: .loc 1 260 6 add.u64 %r103,%r103,1; .loc 1 258 10 setp.eq.u64 %r291,%r49,%r103; @ %r291 bra $L108; $L119: .loc 1 258 30 add.u64 %r292,%r160,%r103; ld.u8 %r118,[%r292]; cvt.u32.u32 %r294,%r118; cvt.u64.u8 %r293,%r294; add.u64 %r295,%r105,%r293; ld.u8 %r376,[%r295+1]; mov.u16 %r299,%r376; and.b16 %r298,%r299,3; cvt.u32.u16 %r302,%r298; cvt.s32.s8 %r301,%r302; cvt.u16.u32 %r300,%r301; setp.ne.u16 %r303,%r300,1; @ %r303 bra $L109; add.u32 %r118,%r118,32; $L109: .loc 1 259 12 add.u64 %r304,%r111,%r103; add.u64 %r305,%r159,%r304; ld.u8 %r119,[%r305+1]; cvt.u32.u32 %r307,%r119; cvt.u64.u8 %r306,%r307; add.u64 %r308,%r105,%r306; ld.u8 %r376,[%r308+1]; mov.u16 %r312,%r376; and.b16 %r311,%r312,3; cvt.u32.u16 %r315,%r311; cvt.s32.s8 %r314,%r315; cvt.u16.u32 %r313,%r314; setp.ne.u16 %r316,%r313,1; @ %r316 bra $L110; add.u32 %r119,%r119,32; $L110: .loc 1 258 26 setp.eq.u32 %r317,%r118,%r119; @ %r317 bra $L111; .loc 1 261 7 setp.gt.u64 %r318,%r49,%r103; @ %r318 bra $L112; $L108: .loc 1 264 10 add.u64 %r120,%r201,-1; .loc 1 265 14 setp.eq.u64 %r319,%r120,-1; @ %r319 bra $L113; .loc 1 265 33 ld.global.u64 %r122,[__ctype_ptr__]; bra $L114; $L117: .loc 1 267 3 add.u64 %r120,%r120,-1; .loc 1 265 14 setp.eq.u64 %r320,%r120,-1; @ %r320 bra $L113; $L114: .loc 1 265 33 add.u64 %r321,%r160,%r120; ld.u8 %r134,[%r321]; cvt.u32.u32 %r323,%r134; cvt.u64.u8 %r322,%r323; add.u64 %r324,%r122,%r322; ld.u8 %r376,[%r324+1]; mov.u16 %r328,%r376; and.b16 %r327,%r328,3; cvt.u32.u16 %r331,%r327; cvt.s32.s8 %r330,%r331; cvt.u16.u32 %r329,%r330; setp.ne.u16 %r332,%r329,1; @ %r332 bra $L115; add.u32 %r134,%r134,32; $L115: .loc 1 266 15 add.u64 %r333,%r111,%r120; add.u64 %r334,%r159,%r333; ld.u8 %r135,[%r334+1]; cvt.u32.u32 %r336,%r135; cvt.u64.u8 %r335,%r336; add.u64 %r337,%r122,%r335; ld.u8 %r376,[%r337+1]; mov.u16 %r341,%r376; and.b16 %r340,%r341,3; cvt.u32.u16 %r344,%r340; cvt.s32.s8 %r343,%r344; cvt.u16.u32 %r342,%r343; setp.ne.u16 %r345,%r342,1; @ %r345 bra $L116; add.u32 %r135,%r135,32; $L116: .loc 1 265 29 setp.eq.u32 %r346,%r134,%r135; @ %r346 bra $L117; bra $L139; $L112: sub.u64 %r347,%r111,%r201; add.u64 %r38,%r347,1; .loc 1 273 8 add.u64 %r111,%r38,%r103; $L120: .loc 1 258 30 mov.u64 %r51,%r138; $L107: .loc 1 254 14 add.u64 %r138,%r49,%r111; sub.u64 %r352,%r138,%r51; add.u64 %r353,%r50,%r51; mov.u32 %r350,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r353; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r350; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r352; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r354,[%value_in]; } set.u32.ne.u64 %r356,%r138,0; neg.s32 %r357,%r356; .loc 1 254 13 set.u32.eq.u64 %r359,%r354,0; neg.s32 %r360,%r359; .loc 1 254 14 cvt.u16.u32 %r362,%r357; cvt.u16.u32 %r363,%r360; and.b16 %r361,%r362,%r363; cvt.u32.u16 %r364,%r361; cvt.u16.u8 %r365,%r364; setp.eq.u16 %r366,%r365,0; @ %r366 bra $L106; .loc 1 258 10 setp.le.u64 %r367,%r49,%r201; @ %r367 bra $L108; .loc 1 258 30 ld.global.u64 %r105,[__ctype_ptr__]; mov.u64 %r103,%r201; bra $L119; $L106: .loc 1 276 10 mov.u64 %r158,0; .loc 2 146 12 bra $L80; $L88: .loc 2 149 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r50; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r51; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r160; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r49; call (%value_in),two_way_long_needle,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r372,[%value_in]; } mov.u64 %r158,%r372; bra $L80; $L121: .loc 2 133 20 mov.u64 %r158,%r159; bra $L80; $L123: .loc 2 137 12 mov.u64 %r158,0; bra $L80; $L124: mov.u64 %r158,%r159; bra $L80; $L113: .loc 1 269 10 add.u64 %r158,%r50,%r111; bra $L80; $L139: .loc 1 270 10 ld.u64 %r374,[%frame]; add.u64 %r111,%r111,%r374; bra $L120; $L80: .loc 2 152 1 mov.u64 %value,%r158; st.param.u64 [%value_out],%value; ret; } lib_a-strcat.o/ 1591654539 399 399 100644 2239 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 81 7 and.b64 %r40,%r38,7; .loc 1 81 6 setp.ne.u64 %r41,%r40,0; @ %r41 bra $L6; .loc 1 84 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 84 13 setp.eq.u64 %r46,%r45,0; @ %r46 bra $L7; mov.u64 %r30,%r38; bra $L2; $L6: mov.u64 %r30,%r38; $L2: .loc 1 90 9 ld.s8 %r48,[%r30]; cvt.u16.u32 %r47,%r48; setp.ne.u16 %r49,%r47,0; @ %r49 bra $L4; bra $L5; $L7: .loc 1 84 13 mov.u64 %r30,%r38; $L3: .loc 1 85 12 add.u64 %r30,%r30,8; .loc 1 84 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 84 13 setp.eq.u64 %r54,%r53,0; @ %r54 bra $L3; bra $L2; $L4: .loc 1 91 7 add.u64 %r30,%r30,1; .loc 1 90 9 ld.s8 %r56,[%r30]; cvt.u16.u32 %r55,%r56; setp.ne.u16 %r57,%r55,0; @ %r57 bra $L4; $L5: .loc 1 100 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 104 1 mov.u64 %value,%r38; st.param.u64 [%value_out],%value; ret; } lib_a-strchr.o/ 1591654539 399 399 100644 5729 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r32; .reg .u64 %r33; .reg .u64 %r38; .reg .u32 %r44; .reg .u32 %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r52; .reg .u32 %r53; .reg .u64 %r55; .reg .u64 %r56; .reg .u32 %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .u64 %r68; .reg .u64 %r69; .reg .u64 %r73; .reg .u64 %r74; .reg .u64 %r75; .reg .u32 %r76; .reg .u32 %r77; .reg .pred %r78; .reg .pred %r79; .reg .pred %r80; .reg .u16 %r81; .reg .u16 %r82; .reg .pred %r83; .reg .pred %r84; .reg .u16 %r85; .reg .pred %r86; .reg .u16 %r87; .reg .pred %r88; .reg .u64 %r89; .reg .pred %r90; .reg .u64 %r91; .reg .u64 %r92; .reg .u64 %r93; .reg .u64 %r94; .reg .pred %r95; .reg .u64 %r96; .reg .u64 %r97; .reg .u64 %r98; .reg .u64 %r99; .reg .pred %r100; .reg .u16 %r101; .reg .pred %r102; .reg .u16 %r103; .reg .pred %r104; .reg .pred %r105; .reg .u16 %r106; .reg .pred %r108; .reg .u64 %r109; .reg .pred %r110; .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 .u64 %r121; .reg .u64 %r122; .reg .u64 %r123; .reg .u64 %r124; .reg .u64 %r125; .reg .u64 %r126; .reg .u64 %r127; .reg .u64 %r128; .reg .pred %r129; .reg .pred %r130; .reg .u16 %r131; .reg .u16 %r132; .reg .pred %r133; .reg .pred %r134; .reg .u16 %r135; .reg .pred %r137; .reg .u16 %r139; .reg .u16 %r140; mov.u64 %r75,%ar0; mov.u32 %r76,%ar1; .loc 1 66 17 cvt.u32.u32 %r77,%r76; cvt.u32.u8 %r48,%r77; and.b64 %r73,%r75,7; .loc 1 73 6 setp.eq.u32 %r78,%r48,0; @ %r78 bra $L2; .loc 1 93 9 setp.eq.u64 %r79,%r73,0; @ %r79 bra $L3; .loc 1 95 12 ld.u8 %r65,[%r75]; .loc 1 95 10 setp.eq.u32 %r80,%r65,0; @ %r80 bra $L17; .loc 1 97 10 cvt.u16.u32 %r81,%r48; cvt.u16.u32 %r82,%r65; setp.eq.u16 %r83,%r81,%r82; @ %r83 bra $L18; cvt.u16.u32 %r140,%r48; bra $L5; $L2: .loc 1 75 13 setp.eq.u64 %r84,%r73,0; @ %r84 bra $L6; .loc 1 77 14 ld.u8 %r85,[%r75]; setp.eq.u16 %r86,%r85,0; @ ! %r86 bra $L7; bra $L19; $L8: ld.u8 %r87,[%r75]; setp.eq.u16 %r88,%r87,0; @ %r88 bra $L20; $L7: .loc 1 79 12 add.u64 %r75,%r75,1; .loc 1 75 14 and.b64 %r89,%r75,7; .loc 1 75 13 setp.ne.u64 %r90,%r89,0; @ %r90 bra $L8; $L6: .loc 1 83 15 ld.u64 %r52,[%r75]; add.u64 %r91,%r52,-72340172838076673; not.b64 %r92,%r52; and.b64 %r93,%r91,%r92; and.b64 %r94,%r93,-9187201950435737472; .loc 1 83 13 setp.ne.u64 %r95,%r94,0; @ %r95 bra $L9; $L10: .loc 1 84 21 add.u64 %r75,%r75,8; .loc 1 83 15 ld.u64 %r24,[%r75]; add.u64 %r96,%r24,-72340172838076673; not.b64 %r97,%r24; and.b64 %r98,%r96,%r97; and.b64 %r99,%r98,-9187201950435737472; .loc 1 83 13 setp.eq.u64 %r100,%r99,0; @ %r100 bra $L10; $L9: .loc 1 87 13 ld.u8 %r101,[%r75]; setp.eq.u16 %r102,%r101,0; @ %r102 bra $L21; $L11: .loc 1 88 10 add.u64 %r75,%r75,1; .loc 1 87 13 ld.u8 %r103,[%r75]; setp.ne.u16 %r104,%r103,0; @ %r104 bra $L11; .loc 1 88 10 mov.u64 %r74,%r75; bra $L1; $L12: .loc 1 95 12 ld.u8 %r30,[%r75]; .loc 1 95 10 setp.eq.u32 %r105,%r30,0; @ %r105 bra $L22; .loc 1 97 10 cvt.u16.u32 %r106,%r30; setp.eq.u16 %r108,%r106,%r140; @ %r108 bra $L23; $L5: .loc 1 99 8 add.u64 %r75,%r75,1; .loc 1 93 10 and.b64 %r109,%r75,7; .loc 1 93 9 setp.ne.u64 %r110,%r109,0; @ %r110 bra $L12; $L3: .loc 1 102 8 cvt.u64.u8 %r49,%r77; .loc 1 104 18 shl.b64 %r69,%r49,8; .loc 1 104 10 or.b64 %r68,%r49,%r69; .loc 1 104 18 shl.b64 %r67,%r68,16; .loc 1 104 10 or.b64 %r66,%r67,%r68; .loc 1 104 18 shl.b64 %r32,%r66,32; .loc 1 104 10 or.b64 %r50,%r32,%r66; .loc 1 107 11 ld.u64 %r56,[%r75]; .loc 1 107 42 xor.b64 %r55,%r50,%r56; .loc 1 107 11 not.b64 %r112,%r56; add.u64 %r113,%r56,-72340172838076673; and.b64 %r114,%r112,%r113; .loc 1 107 42 not.b64 %r115,%r55; add.u64 %r116,%r55,-72340172838076673; and.b64 %r117,%r115,%r116; .loc 1 107 38 or.b64 %r118,%r114,%r117; and.b64 %r119,%r118,-9187201950435737472; setp.ne.u64 %r120,%r119,0; @ %r120 bra $L13; $L14: .loc 1 108 17 add.u64 %r75,%r75,8; .loc 1 107 11 ld.u64 %r33,[%r75]; .loc 1 107 42 xor.b64 %r38,%r33,%r50; .loc 1 107 11 add.u64 %r121,%r33,-72340172838076673; not.b64 %r122,%r33; and.b64 %r123,%r121,%r122; .loc 1 107 42 add.u64 %r124,%r38,-72340172838076673; not.b64 %r125,%r38; and.b64 %r126,%r124,%r125; .loc 1 107 38 or.b64 %r127,%r123,%r126; and.b64 %r128,%r127,-9187201950435737472; setp.eq.u64 %r129,%r128,0; @ %r129 bra $L14; $L13: .loc 1 118 10 ld.u8 %r53,[%r75]; .loc 1 118 9 setp.eq.u32 %r130,%r53,0; @ %r130 bra $L24; .loc 1 118 13 cvt.u16.u32 %r131,%r48; cvt.u16.u32 %r132,%r53; setp.eq.u16 %r133,%r131,%r132; @ %r133 bra $L15; cvt.u16.u32 %r139,%r48; $L16: .loc 1 119 6 add.u64 %r75,%r75,1; .loc 1 118 10 ld.u8 %r44,[%r75]; .loc 1 118 9 setp.eq.u32 %r134,%r44,0; @ %r134 bra $L25; .loc 1 118 13 cvt.u16.u32 %r135,%r44; setp.ne.u16 %r137,%r135,%r139; @ %r137 bra $L16; $L15: .loc 1 121 12 mov.u64 %r74,%r75; bra $L1; $L17: .loc 1 96 16 mov.u64 %r74,0; bra $L1; $L18: .loc 1 97 10 mov.u64 %r74,%r75; bra $L1; $L19: .loc 1 77 14 mov.u64 %r74,%r75; bra $L1; $L20: .loc 1 79 12 mov.u64 %r74,%r75; bra $L1; $L21: .loc 1 87 13 mov.u64 %r74,%r75; bra $L1; $L22: .loc 1 96 16 mov.u64 %r74,0; bra $L1; $L23: .loc 1 99 8 mov.u64 %r74,%r75; bra $L1; $L24: .loc 1 96 16 mov.u64 %r74,0; bra $L1; $L25: mov.u64 %r74,0; $L1: .loc 1 123 1 mov.u64 %value,%r74; st.param.u64 [%value_out],%value; ret; } /618 1591654539 399 399 100644 1459 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strchrnul .visible .func (.param .u64 %value_out) strchrnul (.param .u64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../newlib/libc/string/strchrnul.c" // 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 DEF: strchrnul .visible .func (.param .u64 %value_out) strchrnul (.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 .u64 %r28; .reg .pred %r29; .reg .u64 %r31; mov.u64 %r24,%ar0; mov.u32 %r25,%ar1; .loc 1 44 13 { .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 %r28,[%value_in]; } mov.u64 %r23,%r28; .loc 1 46 16 setp.ne.u64 %r29,%r23,0; @ %r29 bra $L1; .loc 1 46 31 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r31,[%value_in]; } .loc 1 46 16 add.u64 %r23,%r24,%r31; $L1: .loc 1 47 1 mov.u64 %value,%r23; st.param.u64 [%value_out],%value; ret; } lib_a-strcmp.o/ 1591654539 399 399 100644 2864 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r30; .reg .u32 %r32; .reg .u32 %r37; .reg .u32 %r41; .reg .u64 %r43; .reg .u32 %r47; .reg .u64 %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .pred %r52; .reg .u64 %r53; .reg .pred %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .u64 %r58; .reg .pred %r59; .reg .pred %r60; .reg .u16 %r61; .reg .u32 %r62; .reg .u16 %r63; .reg .pred %r64; .reg .u32 %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .u64 %r68; .reg .u64 %r69; .reg .pred %r70; .reg .u64 %r71; .reg .pred %r72; .reg .pred %r73; .reg .u16 %r74; .reg .u32 %r75; .reg .u16 %r76; .reg .pred %r77; .reg .u32 %r78; .reg .u32 %r79; mov.u64 %r48,%ar0; mov.u64 %r49,%ar1; .loc 1 78 8 or.b64 %r50,%r48,%r49; and.b64 %r51,%r50,7; .loc 1 78 6 setp.ne.u64 %r52,%r51,0; @ %r52 bra $L2; .loc 1 83 14 ld.u64 %r43,[%r48]; .loc 1 83 13 ld.u64 %r53,[%r49]; setp.ne.u64 %r54,%r53,%r43; @ %r54 bra $L2; .loc 1 87 15 add.u64 %r55,%r53,-72340172838076673; not.b64 %r56,%r53; and.b64 %r57,%r55,%r56; and.b64 %r58,%r57,-9187201950435737472; .loc 1 87 14 setp.ne.u64 %r59,%r58,0; @ ! %r59 bra $L4; bra $L8; $L2: .loc 1 99 10 ld.s8 %r41,[%r48]; .loc 1 99 9 setp.eq.u32 %r60,%r41,0; @ %r60 bra $L9; .loc 1 99 22 ld.s8 %r62,[%r49]; cvt.u16.u32 %r61,%r62; cvt.u16.u32 %r63,%r41; setp.eq.u16 %r64,%r61,%r63; @ %r64 bra $L6; cvt.u32.u32 %r65,%r41; cvt.u32.u8 %r37,%r65; bra $L5; $L7: .loc 1 87 15 add.u64 %r66,%r30,-72340172838076673; not.b64 %r67,%r30; and.b64 %r68,%r66,%r67; and.b64 %r69,%r68,-9187201950435737472; .loc 1 87 14 setp.ne.u64 %r70,%r69,0; @ %r70 bra $L10; $L4: .loc 1 90 13 add.u64 %r48,%r48,8; .loc 1 91 13 add.u64 %r49,%r49,8; .loc 1 83 14 ld.u64 %r30,[%r48]; .loc 1 83 13 ld.u64 %r71,[%r49]; setp.eq.u64 %r72,%r30,%r71; @ %r72 bra $L7; bra $L2; $L6: .loc 1 101 9 add.u64 %r48,%r48,1; .loc 1 102 9 add.u64 %r49,%r49,1; .loc 1 99 10 ld.s8 %r32,[%r48]; .loc 1 99 9 setp.eq.u32 %r73,%r32,0; @ %r73 bra $L11; .loc 1 99 22 ld.s8 %r75,[%r49]; cvt.u16.u32 %r74,%r75; cvt.u16.u32 %r76,%r32; setp.eq.u16 %r77,%r74,%r76; @ %r77 bra $L6; cvt.u32.u32 %r78,%r32; cvt.u32.u8 %r37,%r78; bra $L5; $L9: .loc 1 99 9 mov.u32 %r37,%r41; bra $L5; $L11: mov.u32 %r37,%r32; $L5: .loc 1 104 37 ld.u8 %r79,[%r49]; .loc 1 104 34 sub.u32 %r47,%r37,%r79; bra $L1; $L8: .loc 1 88 13 cvt.u32.u64 %r47,%r51; bra $L1; $L10: mov.u32 %r47,0; $L1: .loc 1 106 1 mov.u32 %value,%r47; st.param.u32 [%value_out],%value; ret; } lib_a-strcoll.o/1591654539 399 399 100644 1016 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 47 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 48 1 mov.u32 %value,%r27; st.param.u32 [%value_out],%value; ret; } lib_a-strcpy.o/ 1591654539 399 399 100644 1954 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r25; .reg .u32 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r42; .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 79 8 mov.u64 %r42,%r46; or.b64 %r48,%r47,%r46; and.b64 %r49,%r48,7; .loc 1 79 6 setp.eq.u64 %r50,%r49,0; @ %r50 bra $L2; .loc 1 73 9 mov.u64 %r34,%r46; bra $L4; $L6: mov.u64 %r34,%r46; $L4: mov.u64 %r33,%r34; mov.u64 %r32,%r47; bra $L3; $L2: .loc 1 86 15 ld.u64 %r25,[%r47]; add.u64 %r51,%r25,-72340172838076673; not.b64 %r52,%r25; and.b64 %r53,%r51,%r52; and.b64 %r54,%r53,-9187201950435737472; .loc 1 86 13 setp.ne.u64 %r55,%r54,0; @ %r55 bra $L6; $L5: .loc 1 88 40 add.u64 %r47,%r47,8; add.u64 %r34,%r42,8; .loc 1 88 26 st.u64 [%r42],%r25; .loc 1 86 15 ld.u64 %r25,[%r47]; mov.u64 %r42,%r34; add.u64 %r56,%r25,-72340172838076673; not.b64 %r57,%r25; and.b64 %r58,%r56,%r57; and.b64 %r59,%r58,-9187201950435737472; .loc 1 86 13 setp.eq.u64 %r60,%r59,0; @ %r60 bra $L5; bra $L4; $L3: .loc 1 95 20 ld.s8 %r31,[%r32]; .loc 1 95 18 cvt.u32.u32 %r61,%r31; st.u8 [%r33],%r61; add.u64 %r33,%r33,1; add.u64 %r32,%r32,1; .loc 1 95 9 setp.ne.u32 %r62,%r31,0; @ %r62 bra $L3; .loc 1 99 1 mov.u64 %value,%r46; st.param.u64 [%value_out],%value; ret; } lib_a-strcspn.o/1591654539 399 399 100644 1741 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r27; .reg .u64 %r28; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .pred %r33; .reg .u16 %r34; .reg .pred %r36; .reg .pred %r37; .reg .u16 %r40; .reg .pred %r41; .reg .pred %r43; .reg .pred %r44; .reg .u16 %r45; .reg .u16 %r46; mov.u64 %r31,%ar0; mov.u64 %r32,%ar1; .loc 1 41 10 ld.s8 %r25,[%r31]; .loc 1 41 9 setp.ne.u32 %r33,%r25,0; @ %r33 bra $L2; mov.u64 %r30,0; bra $L1; $L5: .loc 1 45 7 cvt.u16.u32 %r34,%r24; setp.ne.u16 %r36,%r34,%r45; @ %r36 bra $L4; sub.u64 %r30,%r28,%r31; bra $L1; $L8: mov.u64 %r27,%r32; cvt.u16.u32 %r45,%r25; $L4: .loc 1 43 25 add.u64 %r27,%r27,1; .loc 1 43 20 ld.s8 %r24,[%r27]; .loc 1 43 7 setp.ne.u32 %r37,%r24,0; @ %r37 bra $L5; bra $L6; $L2: .loc 1 43 20 ld.s8 %r22,[%r32]; mov.u64 %r28,%r31; setp.eq.u32 %r44,%r22,0; .loc 1 45 7 cvt.u16.u32 %r46,%r22; $L7: .loc 1 43 7 @ %r44 bra $L6; .loc 1 45 7 cvt.u16.u32 %r40,%r25; setp.ne.u16 %r41,%r46,%r40; @ %r41 bra $L8; sub.u64 %r30,%r28,%r31; .loc 1 53 13 bra $L1; $L6: .loc 1 50 9 add.u64 %r28,%r28,1; .loc 1 41 10 ld.s8 %r25,[%r28]; .loc 1 41 9 setp.ne.u32 %r43,%r25,0; @ %r43 bra $L7; sub.u64 %r30,%r28,%r31; $L1: .loc 1 54 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } lib_a-strdup.o/ 1591654539 399 399 100644 1032 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } /637 1591654539 399 399 100644 1898 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 10 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 10 10 add.u64 %r23,%r28,1; .loc 1 11 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 12 6 setp.eq.u64 %r32,%r31,0; @ %r32 bra $L1; .loc 1 14 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 17 1 mov.u64 %value,%r31; st.param.u64 [%value_out],%value; ret; } /655 1591654539 399 399 100644 22313 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 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: $LC10 .const .align 1 .u8 $LC10[12] = {78,111,32,99,104,105,108,100,114,101,110,0 }; // BEGIN VAR DEF: $LC11 .const .align 1 .u8 $LC11[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: $LC12 .const .align 1 .u8 $LC12[18] = {78,111,32,109,111,114,101,32,112,114,111,99,101,115,115,101,115,0 }; // BEGIN VAR DEF: $LC13 .const .align 1 .u8 $LC13[17] = {78,111,116,32,101,110,111,117,103,104,32,115,112,97,99,101,0 }; // BEGIN VAR DEF: $LC14 .const .align 1 .u8 $LC14[18] = {80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0 }; // BEGIN VAR DEF: $LC15 .const .align 1 .u8 $LC15[12] = {66,97,100,32,97,100,100,114,101,115,115,0 }; // BEGIN VAR DEF: $LC16 .const .align 1 .u8 $LC16[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: $LC17 .const .align 1 .u8 $LC17[12] = {70,105,108,101,32,101,120,105,115,116,115,0 }; // BEGIN VAR DEF: $LC18 .const .align 1 .u8 $LC18[18] = {67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0 }; // BEGIN VAR DEF: $LC19 .const .align 1 .u8 $LC19[15] = {78,111,32,115,117,99,104,32,100,101,118,105,99,101,0 }; // BEGIN VAR DEF: $LC20 .const .align 1 .u8 $LC20[16] = {78,111,116,32,97,32,100,105,114,101,99,116,111,114,121,0 }; // BEGIN VAR DEF: $LC21 .const .align 1 .u8 $LC21[13] = {72,111,115,116,32,105,115,32,100,111,119,110,0 }; // BEGIN VAR DEF: $LC22 .const .align 1 .u8 $LC22[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: $LC23 .const .align 1 .u8 $LC23[15] = {73,115,32,97,32,100,105,114,101,99,116,111,114,121,0 }; // BEGIN VAR DEF: $LC24 .const .align 1 .u8 $LC24[17] = {73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0 }; // BEGIN VAR DEF: $LC25 .const .align 1 .u8 $LC25[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: $LC26 .const .align 1 .u8 $LC26[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: $LC27 .const .align 1 .u8 $LC27[20] = {84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,0 }; // BEGIN VAR DEF: $LC28 .const .align 1 .u8 $LC28[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: $LC29 .const .align 1 .u8 $LC29[15] = {84,101,120,116,32,102,105,108,101,32,98,117,115,121,0 }; // BEGIN VAR DEF: $LC30 .const .align 1 .u8 $LC30[15] = {70,105,108,101,32,116,111,111,32,108,97,114,103,101,0 }; // BEGIN VAR DEF: $LC31 .const .align 1 .u8 $LC31[20] = {72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0 }; // BEGIN VAR DEF: $LC32 .const .align 1 .u8 $LC32[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: $LC33 .const .align 1 .u8 $LC33[14] = {78,111,116,32,115,117,112,112,111,114,116,101,100,0 }; // BEGIN VAR DEF: $LC34 .const .align 1 .u8 $LC34[13] = {73,108,108,101,103,97,108,32,115,101,101,107,0 }; // BEGIN VAR DEF: $LC35 .const .align 1 .u8 $LC35[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: $LC36 .const .align 1 .u8 $LC36[15] = {84,111,111,32,109,97,110,121,32,108,105,110,107,115,0 }; // BEGIN VAR DEF: $LC37 .const .align 1 .u8 $LC37[12] = {66,114,111,107,101,110,32,112,105,112,101,0 }; // BEGIN VAR DEF: $LC38 .const .align 1 .u8 $LC38[14] = {77,97,116,104,32,97,114,103,117,109,101,110,116,0 }; // BEGIN VAR DEF: $LC39 .const .align 1 .u8 $LC39[17] = {82,101,115,117,108,116,32,116,111,111,32,108,97,114,103,101,0 }; // BEGIN VAR DEF: $LC40 .const .align 1 .u8 $LC40[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: $LC41 .const .align 1 .u8 $LC41[19] = {73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0 }; // BEGIN VAR DEF: $LC42 .const .align 1 .u8 $LC42[9] = {68,101,97,100,108,111,99,107,0 }; // BEGIN VAR DEF: $LC43 .const .align 1 .u8 $LC43[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: $LC44 .const .align 1 .u8 $LC44[8] = {78,111,32,108,111,99,107,0 }; // BEGIN VAR DEF: $LC45 .const .align 1 .u8 $LC45[13] = {78,111,116,32,97,32,115,116,114,101,97,109,0 }; // BEGIN VAR DEF: $LC46 .const .align 1 .u8 $LC46[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: $LC47 .const .align 1 .u8 $LC47[20] = {78,111,32,115,116,114,101,97,109,32,114,101,115,111,117,114,99,101,115,0 }; // BEGIN VAR DEF: $LC48 .const .align 1 .u8 $LC48[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: $LC49 .const .align 1 .u8 $LC49[15] = {80,114,111,116,111,99,111,108,32,101,114,114,111,114,0 }; // BEGIN VAR DEF: $LC50 .const .align 1 .u8 $LC50[17] = {85,110,107,110,111,119,110,32,112,114,111,116,111,99,111,108,0 }; // BEGIN VAR DEF: $LC51 .const .align 1 .u8 $LC51[19] = {77,117,108,116,105,104,111,112,32,97,116,116,101,109,112,116,101,100,0 }; // BEGIN VAR DEF: $LC52 .const .align 1 .u8 $LC52[12] = {66,97,100,32,109,101,115,115,97,103,101,0 }; // BEGIN VAR DEF: $LC53 .const .align 1 .u8 $LC53[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: $LC54 .const .align 1 .u8 $LC54[20] = {68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0 }; // BEGIN VAR DEF: $LC55 .const .align 1 .u8 $LC55[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: $LC56 .const .align 1 .u8 $LC56[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 }; // BEGIN VAR DEF: $LC57 .const .align 1 .u8 $LC57[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: $LC58 .const .align 1 .u8 $LC58[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: $LC59 .const .align 1 .u8 $LC59[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 }; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[10] = {78,111,116,32,111,119,110,101,114,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[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: $LC2 .const .align 1 .u8 $LC2[16] = {78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0 }; // BEGIN VAR DEF: $LC3 .const .align 1 .u8 $LC3[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: $LC4 .const .align 1 .u8 $LC4[10] = {73,47,79,32,101,114,114,111,114,0 }; // BEGIN VAR DEF: $LC5 .const .align 1 .u8 $LC5[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: $LC6 .const .align 1 .u8 $LC6[18] = {65,114,103,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0 }; // BEGIN VAR DEF: $LC7 .const .align 1 .u8 $LC7[18] = {69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0 }; // BEGIN VAR DEF: $LC8 .const .align 1 .u8 $LC8[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: $LC9 .const .align 1 .u8 $LC9[16] = {66,97,100,32,102,105,108,101,32,110,117,109,98,101,114,0 }; // BEGIN VAR DEF: $LC60 .const .align 1 .u8 $LC60[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: $LC61 .const .align 1 .u8 $LC61[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: $LC62 .const .align 1 .u8 $LC62[19] = {67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0 }; // BEGIN VAR DEF: $LC63 .const .align 1 .u8 $LC63[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: $LC64 .const .align 1 .u8 $LC64[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: $LC65 .const .align 1 .u8 $LC65[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: $LC66 .const .align 1 .u8 $LC66[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: $LC67 .const .align 1 .u8 $LC67[19] = {79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0 }; // BEGIN VAR DEF: $LC68 .const .align 1 .u8 $LC68[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: $LC69 .const .align 1 .u8 $LC69[20] = {80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0 }; // BEGIN VAR DEF: $LC70 .const .align 1 .u8 $LC70[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: $LC71 .const .align 1 .u8 $LC71[17] = {77,101,115,115,97,103,101,32,116,111,111,32,108,111,110,103,0 }; // BEGIN VAR DEF: $LC72 .const .align 1 .u8 $LC72[21] = {67,111,110,110,101,99,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0 }; // BEGIN VAR DEF: $LC73 .const .align 1 .u8 $LC73[8] = {83,117,99,99,101,115,115,0 }; // BEGIN VAR DEF: $LC74 .const .align 1 .u8 $LC74[1] = {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 .u64 %r120; .reg .pred %r121; mov.u64 %r23,%ar0; mov.u32 %r24,%ar1; mov.u32 %r25,%ar2; mov.u64 %r26,%ar3; setp.eq.u32 %r27,%r24,45; @ %r27 bra $L23; setp.gt.s32 %r28,%r24,45; @ %r28 bra $L3; setp.eq.u32 %r29,%r24,18; @ %r29 bra $L24; setp.gt.s32 %r30,%r24,18; @ %r30 bra $L4; setp.eq.u32 %r31,%r24,8; @ %r31 bra $L25; setp.gt.s32 %r32,%r24,8; @ %r32 bra $L5; setp.eq.u32 %r33,%r24,3; @ %r33 bra $L26; setp.gt.s32 %r34,%r24,3; @ %r34 bra $L6; setp.eq.u32 %r35,%r24,1; @ %r35 bra $L27; setp.gt.s32 %r36,%r24,1; @ %r36 bra $L28; setp.eq.u32 %r37,%r24,0; @ %r37 bra $L29; bra $L7; $L6: setp.eq.u32 %r38,%r24,5; @ %r38 bra $L30; setp.lt.s32 %r39,%r24,5; @ %r39 bra $L31; setp.eq.u32 %r40,%r24,6; @ %r40 bra $L32; setp.eq.u32 %r41,%r24,7; @ %r41 bra $L33; bra $L7; $L5: setp.eq.u32 %r42,%r24,12; @ %r42 bra $L34; setp.gt.s32 %r43,%r24,12; @ %r43 bra $L8; setp.eq.u32 %r44,%r24,10; @ %r44 bra $L35; setp.gt.s32 %r45,%r24,10; @ %r45 bra $L36; .loc 1 419 13 cvta.const.u64 %r22,$LC9; bra $L1; $L8: setp.eq.u32 %r46,%r24,14; @ %r46 bra $L37; setp.lt.s32 %r47,%r24,14; @ %r47 bra $L38; setp.eq.u32 %r48,%r24,16; @ %r48 bra $L39; setp.eq.u32 %r49,%r24,17; @ %r49 bra $L40; bra $L7; $L4: setp.eq.u32 %r50,%r24,27; @ %r50 bra $L41; setp.gt.s32 %r51,%r24,27; @ %r51 bra $L9; setp.eq.u32 %r52,%r24,22; @ %r52 bra $L42; setp.gt.s32 %r53,%r24,22; @ %r53 bra $L10; setp.eq.u32 %r54,%r24,20; @ %r54 bra $L43; setp.gt.s32 %r55,%r24,20; @ %r55 bra $L44; .loc 1 474 13 cvta.const.u64 %r22,$LC19; bra $L1; $L10: setp.eq.u32 %r56,%r24,24; @ %r56 bra $L45; setp.lt.s32 %r57,%r24,24; @ %r57 bra $L46; setp.eq.u32 %r58,%r24,25; @ %r58 bra $L47; setp.eq.u32 %r59,%r24,26; @ %r59 bra $L48; bra $L7; $L9: setp.eq.u32 %r60,%r24,32; @ %r60 bra $L49; setp.gt.s32 %r61,%r24,32; @ %r61 bra $L11; setp.eq.u32 %r62,%r24,29; @ %r62 bra $L50; setp.lt.s32 %r63,%r24,29; @ %r63 bra $L51; setp.eq.u32 %r64,%r24,30; @ %r64 bra $L52; setp.eq.u32 %r65,%r24,31; @ %r65 bra $L53; bra $L7; $L11: setp.eq.u32 %r66,%r24,34; @ %r66 bra $L54; setp.lt.s32 %r67,%r24,34; @ %r67 bra $L55; setp.eq.u32 %r68,%r24,35; @ %r68 bra $L56; setp.eq.u32 %r69,%r24,36; @ %r69 bra $L57; bra $L7; $L3: setp.eq.u32 %r70,%r24,111; @ %r70 bra $L58; setp.gt.s32 %r71,%r24,111; @ %r71 bra $L12; setp.eq.u32 %r72,%r24,88; @ %r72 bra $L59; setp.gt.s32 %r73,%r24,88; @ %r73 bra $L13; setp.eq.u32 %r74,%r24,63; @ %r74 bra $L60; setp.gt.s32 %r75,%r24,63; @ %r75 bra $L14; setp.eq.u32 %r76,%r24,60; @ %r76 bra $L61; setp.eq.u32 %r77,%r24,62; @ %r77 bra $L62; setp.eq.u32 %r78,%r24,46; @ ! %r78 bra $L7; bra $L63; $L14: setp.eq.u32 %r79,%r24,71; @ %r79 bra $L64; setp.gt.s32 %r80,%r24,71; @ %r80 bra $L15; setp.eq.u32 %r81,%r24,67; @ %r81 bra $L65; bra $L7; $L15: setp.eq.u32 %r82,%r24,74; @ %r82 bra $L66; setp.eq.u32 %r83,%r24,77; @ %r83 bra $L67; bra $L7; $L13: setp.eq.u32 %r84,%r24,105; @ %r84 bra $L68; setp.gt.s32 %r85,%r24,105; @ %r85 bra $L16; setp.eq.u32 %r86,%r24,91; @ %r86 bra $L69; setp.gt.s32 %r87,%r24,91; @ %r87 bra $L17; setp.eq.u32 %r88,%r24,90; @ %r88 bra $L70; bra $L7; $L17: setp.eq.u32 %r89,%r24,92; @ %r89 bra $L71; setp.eq.u32 %r90,%r24,95; @ %r90 bra $L72; bra $L7; $L16: setp.eq.u32 %r91,%r24,107; @ %r91 bra $L73; setp.lt.s32 %r92,%r24,107; @ %r92 bra $L74; setp.eq.u32 %r93,%r24,108; @ %r93 bra $L75; setp.eq.u32 %r94,%r24,109; @ %r94 bra $L76; bra $L7; $L12: setp.eq.u32 %r95,%r24,120; @ %r95 bra $L77; setp.gt.s32 %r96,%r24,120; @ %r96 bra $L18; setp.eq.u32 %r97,%r24,115; @ %r97 bra $L78; setp.gt.s32 %r98,%r24,115; @ %r98 bra $L19; setp.eq.u32 %r99,%r24,113; @ %r99 bra $L79; setp.gt.s32 %r100,%r24,113; @ %r100 bra $L80; .loc 1 759 13 cvta.const.u64 %r22,$LC63; bra $L1; $L19: setp.eq.u32 %r101,%r24,117; @ %r101 bra $L81; setp.lt.s32 %r102,%r24,117; @ %r102 bra $L82; setp.eq.u32 %r103,%r24,118; @ %r103 bra $L83; setp.eq.u32 %r104,%r24,119; @ %r104 bra $L84; bra $L7; $L18: setp.eq.u32 %r105,%r24,128; @ %r105 bra $L85; setp.gt.s32 %r106,%r24,128; @ %r106 bra $L20; setp.eq.u32 %r107,%r24,122; @ %r107 bra $L86; setp.lt.s32 %r108,%r24,122; @ %r108 bra $L87; setp.eq.u32 %r109,%r24,123; @ %r109 bra $L88; setp.eq.u32 %r110,%r24,127; @ %r110 bra $L89; bra $L7; $L20: setp.eq.u32 %r111,%r24,140; @ %r111 bra $L90; setp.gt.s32 %r112,%r24,140; @ %r112 bra $L21; setp.eq.u32 %r113,%r24,134; @ %r113 bra $L91; bra $L7; $L21: setp.eq.u32 %r114,%r24,141; @ %r114 bra $L92; setp.eq.u32 %r115,%r24,142; @ %r115 bra $L93; $L7: .loc 1 823 10 setp.ne.u64 %r116,%r26,0; .loc 1 824 16 selp.u64 %r26,%r26,%r23,%r116; .loc 1 825 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 %r120,[%value_in]; } mov.u64 %r22,%r120; .loc 1 825 10 setp.ne.u64 %r121,%r22,0; @ %r121 bra $L1; .loc 1 826 15 cvta.const.u64 %r22,$LC74; bra $L1; $L23: .loc 1 589 13 cvta.const.u64 %r22,$LC42; bra $L1; $L24: .loc 1 469 13 cvta.const.u64 %r22,$LC18; bra $L1; $L25: .loc 1 409 13 cvta.const.u64 %r22,$LC7; bra $L1; $L26: .loc 1 383 13 cvta.const.u64 %r22,$LC2; bra $L1; $L27: .loc 1 373 13 cvta.const.u64 %r22,$LC0; bra $L1; $L28: .loc 1 378 13 cvta.const.u64 %r22,$LC1; bra $L1; $L29: .loc 1 368 13 cvta.const.u64 %r22,$LC73; bra $L1; $L30: .loc 1 393 13 cvta.const.u64 %r22,$LC4; bra $L1; $L31: .loc 1 388 13 cvta.const.u64 %r22,$LC3; bra $L1; $L32: .loc 1 399 13 cvta.const.u64 %r22,$LC5; bra $L1; $L33: .loc 1 404 13 cvta.const.u64 %r22,$LC6; bra $L1; $L34: .loc 1 439 13 cvta.const.u64 %r22,$LC13; bra $L1; $L35: .loc 1 424 13 cvta.const.u64 %r22,$LC10; bra $L1; $L36: .loc 1 434 13 cvta.const.u64 %r22,$LC12; bra $L1; $L37: .loc 1 449 13 cvta.const.u64 %r22,$LC15; bra $L1; $L38: .loc 1 444 13 cvta.const.u64 %r22,$LC14; bra $L1; $L39: .loc 1 459 13 cvta.const.u64 %r22,$LC16; bra $L1; $L40: .loc 1 464 13 cvta.const.u64 %r22,$LC17; bra $L1; $L41: .loc 1 529 13 cvta.const.u64 %r22,$LC30; bra $L1; $L42: .loc 1 499 13 cvta.const.u64 %r22,$LC24; bra $L1; $L43: .loc 1 479 13 cvta.const.u64 %r22,$LC20; bra $L1; $L44: .loc 1 494 13 cvta.const.u64 %r22,$LC23; bra $L1; $L45: .loc 1 514 13 cvta.const.u64 %r22,$LC27; bra $L1; $L46: .loc 1 509 13 cvta.const.u64 %r22,$LC26; bra $L1; $L47: .loc 1 519 13 cvta.const.u64 %r22,$LC28; bra $L1; $L48: .loc 1 524 13 cvta.const.u64 %r22,$LC29; bra $L1; $L49: .loc 1 564 13 cvta.const.u64 %r22,$LC37; bra $L1; $L50: .loc 1 549 13 cvta.const.u64 %r22,$LC34; bra $L1; $L51: .loc 1 539 13 cvta.const.u64 %r22,$LC32; bra $L1; $L52: .loc 1 554 13 cvta.const.u64 %r22,$LC35; bra $L1; $L53: .loc 1 559 13 cvta.const.u64 %r22,$LC36; bra $L1; $L54: .loc 1 574 13 cvta.const.u64 %r22,$LC39; bra $L1; $L55: .loc 1 569 13 cvta.const.u64 %r22,$LC38; bra $L1; $L56: .loc 1 579 13 cvta.const.u64 %r22,$LC40; bra $L1; $L57: .loc 1 584 13 cvta.const.u64 %r22,$LC41; bra $L1; $L58: .loc 1 754 13 cvta.const.u64 %r22,$LC62; bra $L1; $L59: .loc 1 699 13 cvta.const.u64 %r22,$LC53; bra $L1; $L60: .loc 1 614 13 cvta.const.u64 %r22,$LC47; bra $L1; $L61: .loc 1 604 13 cvta.const.u64 %r22,$LC45; bra $L1; $L62: .loc 1 609 13 cvta.const.u64 %r22,$LC46; bra $L1; $L63: .loc 1 599 13 cvta.const.u64 %r22,$LC44; bra $L1; $L64: .loc 1 654 13 cvta.const.u64 %r22,$LC49; bra $L1; $L65: .loc 1 634 13 cvta.const.u64 %r22,$LC48; bra $L1; $L66: .loc 1 664 13 cvta.const.u64 %r22,$LC51; bra $L1; $L67: .loc 1 669 13 cvta.const.u64 %r22,$LC52; bra $L1; $L68: .loc 1 724 13 cvta.const.u64 %r22,$LC57; bra $L1; $L69: .loc 1 714 13 cvta.const.u64 %r22,$LC55; bra $L1; $L70: .loc 1 709 13 cvta.const.u64 %r22,$LC54; bra $L1; $L71: .loc 1 719 13 cvta.const.u64 %r22,$LC56; bra $L1; $L72: .loc 1 809 15 cvta.const.u64 %r22,$LC70; bra $L1; $L73: .loc 1 734 13 cvta.const.u64 %r22,$LC59; bra $L1; $L74: .loc 1 729 13 cvta.const.u64 %r22,$LC58; bra $L1; $L75: .loc 1 739 13 cvta.const.u64 %r22,$LC60; bra $L1; $L76: .loc 1 744 13 cvta.const.u64 %r22,$LC61; bra $L1; $L77: .loc 1 414 13 cvta.const.u64 %r22,$LC8; bra $L1; $L78: .loc 1 504 13 cvta.const.u64 %r22,$LC25; bra $L1; $L79: .loc 1 764 13 cvta.const.u64 %r22,$LC64; bra $L1; $L80: .loc 1 594 13 cvta.const.u64 %r22,$LC43; bra $L1; $L81: .loc 1 484 13 cvta.const.u64 %r22,$LC21; bra $L1; $L82: .loc 1 819 15 cvta.const.u64 %r22,$LC72; bra $L1; $L83: .loc 1 534 13 cvta.const.u64 %r22,$LC31; bra $L1; $L84: .loc 1 489 13 cvta.const.u64 %r22,$LC22; bra $L1; $L85: .loc 1 774 15 cvta.const.u64 %r22,$LC65; bra $L1; $L86: .loc 1 814 15 cvta.const.u64 %r22,$LC71; bra $L1; $L87: .loc 1 429 13 cvta.const.u64 %r22,$LC11; bra $L1; $L88: .loc 1 659 13 cvta.const.u64 %r22,$LC50; bra $L1; $L89: .loc 1 784 15 cvta.const.u64 %r22,$LC66; bra $L1; $L90: .loc 1 789 15 cvta.const.u64 %r22,$LC67; bra $L1; $L91: .loc 1 544 13 cvta.const.u64 %r22,$LC33; bra $L1; $L92: .loc 1 794 15 cvta.const.u64 %r22,$LC68; bra $L1; $L93: .loc 1 799 15 cvta.const.u64 %r22,$LC69; $L1: .loc 1 831 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 837 10 ld.global.u64 %r29,[_impure_ptr]; mov.u64 %r28,0; cvt.u32.u64 %r27,%r28; { .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 838 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } /673 1591654539 399 399 100644 2322 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 80 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 82 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 82 6 setp.ge.u64 %r36,%r35,%r27; @ %r36 bra $L1; .loc 1 84 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 85 1 mov.u64 %value,%r24; st.param.u64 [%value_out],%value; ret; } lib_a-strlcat.o/1591654539 399 399 100644 2640 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .pred %r37; .reg .u16 %r38; .reg .u32 %r39; .reg .pred %r40; .reg .pred %r41; .reg .u16 %r42; .reg .u32 %r43; .reg .pred %r44; .reg .pred %r45; .reg .pred %r46; .reg .u64 %r48; .reg .pred %r49; .reg .u32 %r50; .reg .pred %r51; .reg .u64 %r52; .reg .u32 %r53; mov.u64 %r34,%ar0; mov.u64 %r35,%ar1; mov.u64 %r36,%ar2; .loc 1 56 15 setp.eq.u64 %r37,%r36,0; @ %r37 bra $L10; .loc 1 56 25 ld.s8 %r39,[%r34]; cvt.u16.u32 %r38,%r39; setp.eq.u16 %r40,%r38,0; @ %r40 bra $L11; add.u64 %r26,%r34,%r36; mov.u64 %r27,%r34; $L5: .loc 1 57 18 add.u64 %r27,%r27,1; .loc 1 56 15 setp.eq.u64 %r41,%r27,%r26; @ %r41 bra $L4; .loc 1 56 25 ld.s8 %r43,[%r27]; cvt.u16.u32 %r42,%r43; setp.ne.u16 %r44,%r42,0; @ %r44 bra $L5; mov.u64 %r26,%r27; $L4: .loc 1 58 18 sub.u64 %r33,%r26,%r34; .loc 1 59 11 sub.u64 %r36,%r36,%r33; .loc 1 61 12 setp.eq.u64 %r45,%r36,0; @ ! %r45 bra $L3; bra $L2; $L11: .loc 1 56 25 mov.u64 %r26,%r34; .loc 1 58 14 mov.u64 %r33,0; $L3: .loc 1 63 16 ld.s8 %r25,[%r35]; .loc 1 63 15 setp.ne.u32 %r46,%r25,0; @ %r46 bra $L12; bra $L7; $L10: .loc 1 58 14 mov.u64 %r33,%r36; $L2: .loc 1 62 31 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r35; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r48,[%value_in]; } .loc 1 62 29 add.u64 %r33,%r33,%r48; bra $L1; $L12: .loc 1 63 15 mov.u64 %r29,%r35; $L6: .loc 1 64 20 setp.eq.u64 %r49,%r36,1; @ %r49 bra $L9; .loc 1 65 30 cvt.u32.u32 %r50,%r25; st.u8 [%r26],%r50; .loc 1 66 26 add.u64 %r36,%r36,-1; .loc 1 65 27 add.u64 %r26,%r26,1; $L9: .loc 1 68 18 add.u64 %r29,%r29,1; .loc 1 63 16 ld.s8 %r25,[%r29]; .loc 1 63 15 setp.ne.u32 %r51,%r25,0; @ %r51 bra $L6; sub.u64 %r52,%r29,%r35; add.u64 %r33,%r33,%r52; $L7: .loc 1 70 12 mov.u32 %r53,0; st.u8 [%r26],%r53; $L1: .loc 1 73 1 mov.u64 %value,%r33; st.param.u64 [%value_out],%value; ret; } lib_a-strlcpy.o/1591654539 399 399 100644 1955 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r28; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .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 53 12 setp.eq.u64 %r41,%r40,0; @ %r41 bra $L7; .loc 1 53 20 add.u64 %r31,%r40,-1; setp.eq.u64 %r42,%r31,0; @ %r42 bra $L8; mov.u64 %r33,%r38; mov.u64 %r32,%r39; .loc 1 57 17 add.u64 %r53,%r39,%r31; $L5: add.u64 %r28,%r32,1; add.u64 %r38,%r38,1; .loc 1 55 37 ld.s8 %r22,[%r32]; .loc 1 55 35 cvt.u32.u32 %r43,%r22; st.u8 [%r33],%r43; .loc 1 55 28 setp.eq.u32 %r44,%r22,0; @ %r44 bra $L4; mov.u64 %r33,%r38; mov.u64 %r32,%r28; .loc 1 57 17 setp.ne.u64 %r46,%r53,%r32; @ %r46 bra $L5; bra $L3; $L7: .loc 1 49 30 mov.u64 %r28,%r39; $L2: mov.u64 %r36,%r28; $L6: add.u64 %r36,%r36,1; mov.u64 %r28,%r36; .loc 1 64 23 ld.s8 %r48,[%r36+-1]; cvt.u16.u32 %r47,%r48; setp.ne.u16 %r49,%r47,0; @ %r49 bra $L6; $L4: .loc 1 68 18 sub.u64 %r51,%r28,%r39; .loc 1 68 24 add.u64 %r50,%r51,-1; bra $L14; $L8: .loc 1 49 30 mov.u64 %r28,%r39; $L3: .loc 1 63 28 mov.u32 %r52,0; st.u8 [%r38],%r52; bra $L2; $L14: .loc 1 69 1 mov.u64 %value,%r50; st.param.u64 [%value_out],%value; ret; } lib_a-strlen.o/ 1591654539 399 399 100644 2285 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r24; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r43; .reg .u64 %r44; .reg .u64 %r45; .reg .pred %r46; .reg .u16 %r47; .reg .u32 %r48; .reg .pred %r49; .reg .u16 %r50; .reg .u32 %r51; .reg .pred %r52; .reg .u64 %r53; .reg .pred %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .u64 %r58; .reg .pred %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u64 %r62; .reg .u64 %r63; .reg .pred %r64; .reg .u16 %r65; .reg .u32 %r66; .reg .pred %r67; .reg .u16 %r68; .reg .u32 %r69; .reg .pred %r70; mov.u64 %r44,%ar0; .loc 1 66 10 and.b64 %r45,%r44,7; .loc 1 66 9 setp.eq.u64 %r46,%r45,0; @ %r46 bra $L11; .loc 1 68 10 ld.s8 %r48,[%r44]; cvt.u16.u32 %r47,%r48; setp.eq.u16 %r49,%r47,0; @ %r49 bra $L12; mov.u64 %r31,%r44; bra $L4; $L6: ld.s8 %r51,[%r31]; cvt.u16.u32 %r50,%r51; setp.ne.u16 %r52,%r50,0; @ %r52 bra $L4; sub.u64 %r43,%r31,%r44; bra $L1; $L12: mov.u64 %r43,0; .loc 1 69 13 bra $L1; $L4: .loc 1 70 10 add.u64 %r31,%r31,1; .loc 1 66 10 and.b64 %r53,%r31,7; .loc 1 66 9 setp.ne.u64 %r54,%r53,0; @ %r54 bra $L6; bra $L2; $L11: mov.u64 %r31,%r44; $L2: .loc 1 76 11 ld.u64 %r32,[%r31]; add.u64 %r55,%r32,-72340172838076673; not.b64 %r56,%r32; and.b64 %r57,%r55,%r56; and.b64 %r58,%r57,-9187201950435737472; .loc 1 76 9 setp.ne.u64 %r59,%r58,0; @ %r59 bra $L7; $L8: .loc 1 77 17 add.u64 %r31,%r31,8; .loc 1 76 11 ld.u64 %r24,[%r31]; add.u64 %r60,%r24,-72340172838076673; not.b64 %r61,%r24; and.b64 %r62,%r60,%r61; and.b64 %r63,%r62,-9187201950435737472; .loc 1 76 9 setp.eq.u64 %r64,%r63,0; @ %r64 bra $L8; $L7: .loc 1 85 9 ld.s8 %r66,[%r31]; cvt.u16.u32 %r65,%r66; setp.eq.u16 %r67,%r65,0; @ %r67 bra $L9; $L10: .loc 1 86 8 add.u64 %r31,%r31,1; .loc 1 85 9 ld.s8 %r69,[%r31]; cvt.u16.u32 %r68,%r69; setp.ne.u16 %r70,%r68,0; @ %r70 bra $L10; $L9: .loc 1 87 14 sub.u64 %r43,%r31,%r44; $L1: .loc 1 88 1 mov.u64 %value,%r43; st.param.u64 [%value_out],%value; ret; } lib_a-strlwr.o/ 1591654539 399 399 100644 1587 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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_ptr__ .extern .global .align 8 .u64 __ctype_ptr__[1]; // 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 %r27; .reg .u64 %r29; .reg .u64 %r31; .reg .pred %r32; .reg .u64 %r34; .reg .u32 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .u16 %r40; .reg .u16 %r41; .reg .u16 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .pred %r45; .reg .u16 %r46; .reg .u16 %r47; .reg .u32 %r48; .reg .u32 %r49; .reg .pred %r50; .reg .u16 %r51; mov.u64 %r31,%ar0; .loc 1 41 11 ld.u8 %r27,[%r31]; .loc 1 41 3 setp.ne.u32 %r32,%r27,0; @ ! %r32 bra $L7; mov.u64 %r29,%r31; $L2: .loc 1 43 14 cvt.u32.u32 %r35,%r27; cvt.u64.u8 %r34,%r35; ld.global.u64 %r36,[__ctype_ptr__]; add.u64 %r37,%r36,%r34; ld.u8 %r51,[%r37+1]; mov.u16 %r41,%r51; and.b16 %r40,%r41,3; cvt.u32.u16 %r44,%r40; cvt.s32.s8 %r43,%r44; cvt.u16.u32 %r42,%r43; setp.ne.u16 %r45,%r42,1; @ %r45 bra $L3; cvt.u16.u32 %r47,%r27; add.u16 %r46,%r47,32; cvt.u32.u16 %r48,%r46; cvt.u32.u8 %r27,%r48; $L3: .loc 1 43 12 cvt.u32.u32 %r49,%r27; st.u8 [%r29],%r49; .loc 1 41 28 add.u64 %r29,%r29,1; .loc 1 41 11 ld.u8 %r27,[%r29]; .loc 1 41 3 setp.ne.u32 %r50,%r27,0; @ %r50 bra $L2; $L7: .loc 1 46 1 mov.u64 %value,%r31; st.param.u64 [%value_out],%value; ret; } /693 1591654539 399 399 100644 2555 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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_ptr__ .extern .global .align 8 .u64 __ctype_ptr__[1]; // 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 .u64 %r22; .reg .u32 %r31; .reg .u32 %r35; .reg .u64 %r38; .reg .u64 %r40; .reg .u64 %r41; .reg .u32 %r43; .reg .u64 %r44; .reg .u64 %r45; .reg .u64 %r46; .reg .pred %r47; .reg .u64 %r48; .reg .u32 %r49; .reg .u64 %r50; .reg .u16 %r53; .reg .u16 %r54; .reg .u16 %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .pred %r58; .reg .u64 %r59; .reg .u32 %r60; .reg .u64 %r61; .reg .u16 %r64; .reg .u16 %r65; .reg .u16 %r66; .reg .u32 %r67; .reg .u32 %r68; .reg .pred %r69; .reg .u32 %r70; .reg .pred %r71; .reg .pred %r72; .reg .pred %r73; .reg .pred %r74; .reg .u16 %r76; mov.u64 %r44,%ar0; mov.u64 %r45,%ar1; mov.u64 %r46,%ar2; .loc 1 55 3 setp.eq.u64 %r47,%r46,0; @ %r47 bra $L7; .loc 1 57 23 ld.global.u64 %r22,[__ctype_ptr__]; mov.u64 %r41,%r44; mov.u64 %r40,%r45; add.u64 %r38,%r41,%r46; $L6: ld.u8 %r31,[%r41]; cvt.u32.u32 %r49,%r31; cvt.u64.u8 %r48,%r49; add.u64 %r50,%r22,%r48; ld.u8 %r76,[%r50+1]; mov.u16 %r54,%r76; and.b16 %r53,%r54,3; cvt.u32.u16 %r57,%r53; cvt.s32.s8 %r56,%r57; cvt.u16.u32 %r55,%r56; setp.ne.u16 %r58,%r55,1; @ %r58 bra $L3; add.u32 %r31,%r31,32; $L3: .loc 1 58 23 ld.u8 %r35,[%r40]; cvt.u32.u32 %r60,%r35; cvt.u64.u8 %r59,%r60; add.u64 %r61,%r22,%r59; ld.u8 %r76,[%r61+1]; mov.u16 %r65,%r76; and.b16 %r64,%r65,3; cvt.u32.u16 %r68,%r64; cvt.s32.s8 %r67,%r68; cvt.u16.u32 %r66,%r67; setp.ne.u16 %r69,%r66,1; @ %r69 bra $L4; add.u32 %r70,%r35,32; .loc 1 59 15 sub.u32 %r43,%r31,%r70; .loc 1 59 10 setp.ne.u32 %r71,%r43,0; @ ! %r71 bra $L5; bra $L1; $L4: .loc 1 59 15 sub.u32 %r43,%r31,%r35; .loc 1 59 10 setp.ne.u32 %r72,%r43,0; @ %r72 bra $L1; .loc 1 59 32 setp.eq.u32 %r73,%r35,0; @ %r73 bra $L1; $L5: add.u64 %r41,%r41,1; add.u64 %r40,%r40,1; .loc 1 55 3 setp.ne.u64 %r74,%r38,%r41; @ %r74 bra $L6; mov.u32 %r43,0; bra $L1; $L7: cvt.u32.u64 %r43,%r46; $L1: .loc 1 63 1 mov.u32 %value,%r43; st.param.u32 [%value_out],%value; ret; } lib_a-strncat.o/1591654539 399 399 100644 2668 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u64 %r31; .reg .u32 %r32; .reg .u64 %r34; .reg .u64 %r36; .reg .u64 %r42; .reg .u64 %r44; .reg .u64 %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .pred %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .pred %r53; .reg .u16 %r54; .reg .u32 %r55; .reg .pred %r56; .reg .u64 %r57; .reg .u64 %r58; .reg .u64 %r59; .reg .u64 %r60; .reg .pred %r61; .reg .u16 %r62; .reg .u32 %r63; .reg .pred %r64; .reg .pred %r65; .reg .u32 %r66; .reg .pred %r67; .reg .u32 %r68; .reg .pred %r69; mov.u64 %r44,%ar0; mov.u64 %r45,%ar1; mov.u64 %r46,%ar2; .loc 1 89 7 and.b64 %r47,%r44,7; .loc 1 89 6 setp.ne.u64 %r48,%r47,0; @ %r48 bra $L11; .loc 1 92 15 ld.u64 %r31,[%r44]; not.b64 %r49,%r31; add.u64 %r50,%r31,-72340172838076673; and.b64 %r51,%r49,%r50; and.b64 %r52,%r51,-9187201950435737472; .loc 1 92 13 setp.eq.u64 %r53,%r52,0; @ %r53 bra $L12; mov.u64 %r34,%r44; bra $L2; $L11: mov.u64 %r34,%r44; $L2: .loc 1 98 9 ld.s8 %r55,[%r34]; cvt.u16.u32 %r54,%r55; setp.ne.u16 %r56,%r54,0; @ %r56 bra $L4; bra $L5; $L12: .loc 1 92 13 mov.u64 %r34,%r44; $L3: .loc 1 93 12 add.u64 %r34,%r34,8; .loc 1 92 15 ld.u64 %r24,[%r34]; add.u64 %r57,%r24,-72340172838076673; not.b64 %r58,%r24; and.b64 %r59,%r57,%r58; and.b64 %r60,%r59,-9187201950435737472; .loc 1 92 13 setp.eq.u64 %r61,%r60,0; @ %r61 bra $L3; bra $L2; $L4: .loc 1 99 7 add.u64 %r34,%r34,1; .loc 1 98 9 ld.s8 %r63,[%r34]; cvt.u16.u32 %r62,%r63; setp.ne.u16 %r64,%r62,0; @ %r64 bra $L4; bra $L5; $L9: add.u64 %r36,%r36,1; add.u64 %r30,%r30,1; .loc 1 109 10 setp.ne.u64 %r65,%r46,0; @ %r65 bra $L6; .loc 1 110 6 cvt.u32.u64 %r66,%r46; st.u8 [%r34],%r66; bra $L7; $L5: mov.u64 %r36,%r34; mov.u64 %r30,%r45; add.u64 %r42,%r34,%r46; $L6: .loc 1 107 11 add.u64 %r46,%r46,-1; .loc 1 107 9 setp.ne.u64 %r67,%r34,%r42; @ ! %r67 bra $L7; .loc 1 107 26 add.u64 %r34,%r34,1; .loc 1 107 31 ld.s8 %r32,[%r30]; .loc 1 107 29 cvt.u32.u32 %r68,%r32; st.u8 [%r36],%r68; .loc 1 107 19 setp.ne.u32 %r69,%r32,0; @ %r69 bra $L9; $L7: .loc 1 115 1 mov.u64 %value,%r44; st.param.u64 [%value_out],%value; ret; } lib_a-strncmp.o/1591654539 399 399 100644 4422 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r30; .reg .u32 %r32; .reg .u64 %r42; .reg .u32 %r49; .reg .u64 %r51; .reg .u64 %r57; .reg .u32 %r58; .reg .u64 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .pred %r62; .reg .u64 %r63; .reg .u64 %r64; .reg .pred %r65; .reg .pred %r66; .reg .u64 %r67; .reg .pred %r68; .reg .pred %r69; .reg .u64 %r70; .reg .u64 %r71; .reg .u64 %r72; .reg .u64 %r73; .reg .pred %r74; .reg .pred %r75; .reg .u64 %r76; .reg .u64 %r77; .reg .u64 %r78; .reg .u64 %r79; .reg .pred %r80; .reg .pred %r81; .reg .u64 %r82; .reg .pred %r83; .reg .u16 %r84; .reg .u32 %r85; .reg .u16 %r86; .reg .pred %r87; .reg .u32 %r90; .reg .u32 %r91; .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 .u64 %r101; .reg .u64 %r102; .reg .u32 %r104; .reg .u32 %r105; .reg .u32 %r108; .reg .u32 %r109; .reg .u16 %r110; .reg .u16 %r111; .reg .u16 %r112; .reg .u32 %r113; .reg .u16 %r114; .reg .pred %r115; .reg .u16 %r116; .reg .u32 %r117; .reg .u16 %r118; .reg .pred %r119; .reg .u32 %r120; .reg .u32 %r121; mov.u64 %r59,%ar0; mov.u64 %r60,%ar1; mov.u64 %r61,%ar2; .loc 1 84 6 setp.eq.u64 %r62,%r61,0; @ %r62 bra $L9; .loc 1 88 8 or.b64 %r63,%r59,%r60; and.b64 %r64,%r63,7; .loc 1 88 6 setp.ne.u64 %r65,%r64,0; @ %r65 bra $L3; .loc 1 93 13 setp.le.u64 %r66,%r61,7; @ %r66 bra $L3; .loc 1 93 36 ld.u64 %r51,[%r59]; .loc 1 93 33 ld.u64 %r67,[%r60]; setp.ne.u64 %r68,%r51,%r67; @ %r68 bra $L3; .loc 1 95 13 add.u64 %r61,%r61,-8; .loc 1 99 14 setp.eq.u64 %r69,%r61,0; @ %r69 bra $L10; .loc 1 99 25 add.u64 %r70,%r51,-72340172838076673; not.b64 %r71,%r51; and.b64 %r72,%r70,%r71; and.b64 %r73,%r72,-9187201950435737472; .loc 1 99 22 setp.ne.u64 %r74,%r73,0; @ ! %r74 bra $L4; bra $L11; $L5: .loc 1 95 13 add.u64 %r61,%r61,-8; .loc 1 99 14 setp.eq.u64 %r75,%r61,0; @ %r75 bra $L12; .loc 1 99 25 add.u64 %r76,%r30,-72340172838076673; not.b64 %r77,%r30; and.b64 %r78,%r76,%r77; and.b64 %r79,%r78,-9187201950435737472; .loc 1 99 22 setp.ne.u64 %r80,%r79,0; @ %r80 bra $L13; $L4: .loc 1 102 13 add.u64 %r59,%r59,8; .loc 1 103 13 add.u64 %r60,%r60,8; .loc 1 93 13 setp.le.u64 %r81,%r61,7; @ %r81 bra $L3; .loc 1 93 36 ld.u64 %r30,[%r59]; .loc 1 93 33 ld.u64 %r82,[%r60]; setp.eq.u64 %r83,%r30,%r82; @ %r83 bra $L5; $L3: .loc 1 111 21 ld.s8 %r49,[%r59]; .loc 1 111 18 ld.s8 %r85,[%r60]; cvt.u16.u32 %r84,%r85; cvt.u16.u32 %r86,%r49; setp.ne.u16 %r87,%r84,%r86; @ %r87 bra $L14; .loc 1 115 18 set.u32.eq.u16 %r90,%r84,0; neg.s32 %r91,%r90; .loc 1 115 10 set.u32.eq.u64 %r93,%r61,1; neg.s32 %r94,%r93; .loc 1 115 18 cvt.u16.u32 %r96,%r91; cvt.u16.u32 %r97,%r94; or.b16 %r95,%r96,%r97; cvt.u32.u16 %r98,%r95; cvt.u16.u8 %r99,%r98; setp.ne.u16 %r100,%r99,0; @ %r100 bra $L15; mov.u64 %r42,%r59; bra $L7; $L8: not.b64 %r101,%r42; add.u64 %r57,%r101,%r61; .loc 1 115 10 add.u64 %r102,%r59,%r57; set.u32.eq.u64 %r104,%r102,0; neg.s32 %r105,%r104; .loc 1 115 18 set.u32.eq.u16 %r108,%r116,0; neg.s32 %r109,%r108; cvt.u16.u32 %r111,%r105; cvt.u16.u32 %r112,%r109; or.b16 %r110,%r111,%r112; cvt.u32.u16 %r113,%r110; cvt.u16.u8 %r114,%r113; setp.ne.u16 %r115,%r114,0; @ %r115 bra $L16; $L7: .loc 1 117 9 add.u64 %r42,%r42,1; .loc 1 118 9 add.u64 %r60,%r60,1; .loc 1 111 21 ld.s8 %r32,[%r42]; .loc 1 111 18 ld.s8 %r117,[%r60]; cvt.u16.u32 %r116,%r117; cvt.u16.u32 %r118,%r32; setp.eq.u16 %r119,%r116,%r118; @ %r119 bra $L8; bra $L6; $L14: mov.u64 %r42,%r59; $L6: .loc 1 120 11 ld.u8 %r120,[%r42]; .loc 1 120 37 ld.u8 %r121,[%r60]; .loc 1 120 34 sub.u32 %r58,%r120,%r121; bra $L1; $L9: .loc 1 85 12 cvt.u32.u64 %r58,%r61; bra $L1; $L10: cvt.u32.u64 %r58,%r61; bra $L1; $L11: cvt.u32.u64 %r58,%r64; bra $L1; $L12: cvt.u32.u64 %r58,%r61; bra $L1; $L13: mov.u32 %r58,0; bra $L1; $L15: mov.u32 %r58,0; bra $L1; $L16: mov.u32 %r58,0; $L1: .loc 1 122 1 mov.u32 %value,%r58; st.param.u32 [%value_out],%value; ret; } lib_a-strncpy.o/1591654539 399 399 100644 3250 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r25; .reg .u32 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .u32 %r41; .reg .u64 %r42; .reg .u64 %r46; .reg .u64 %r51; .reg .u64 %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .u32 %r59; .reg .u32 %r60; .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 .pred %r70; .reg .u64 %r71; .reg .u64 %r72; .reg .u64 %r73; .reg .u64 %r74; .reg .pred %r75; .reg .u32 %r77; .reg .pred %r78; .reg .pred %r79; .reg .pred %r80; .reg .pred %r81; .reg .u32 %r82; .reg .pred %r83; .reg .u32 %r84; .reg .pred %r85; .reg .u64 %r87; mov.u64 %r53,%ar0; mov.u64 %r54,%ar1; mov.u64 %r55,%ar2; .loc 1 97 8 mov.u64 %r51,%r53; or.b64 %r56,%r54,%r53; and.b64 %r57,%r56,7; .loc 1 97 6 set.u32.eq.u64 %r59,%r57,0; neg.s32 %r60,%r59; .loc 1 97 29 set.u32.gt.u64 %r62,%r55,7; neg.s32 %r63,%r62; cvt.u16.u32 %r65,%r60; cvt.u16.u32 %r66,%r63; and.b16 %r64,%r65,%r66; cvt.u32.u16 %r67,%r64; cvt.u16.u8 %r68,%r67; setp.ne.u16 %r69,%r68,0; @ %r69 bra $L2; .loc 1 91 9 mov.u64 %r38,%r53; bra $L3; $L4: .loc 1 106 10 add.u64 %r55,%r55,-8; .loc 1 107 33 add.u64 %r54,%r54,8; add.u64 %r51,%r51,8; mov.u64 %r38,%r51; .loc 1 107 19 st.u64 [%r46],%r25; .loc 1 104 13 setp.le.u64 %r70,%r55,7; @ %r70 bra $L3; $L2: mov.u64 %r46,%r51; .loc 1 104 45 ld.u64 %r25,[%r54]; add.u64 %r71,%r25,-72340172838076673; not.b64 %r72,%r25; and.b64 %r73,%r71,%r72; and.b64 %r74,%r73,-9187201950435737472; .loc 1 104 41 setp.eq.u64 %r75,%r74,0; @ %r75 bra $L4; mov.u64 %r38,%r51; bra $L5; $L7: .loc 1 116 7 add.u64 %r36,%r36,-1; sub.u64 %r39,%r87,%r36; .loc 1 117 21 ld.s8 %r31,[%r33]; .loc 1 117 19 cvt.u32.u32 %r77,%r31; st.u8 [%r32],%r77; add.u64 %r33,%r33,1; add.u64 %r32,%r32,1; .loc 1 117 10 setp.eq.u32 %r78,%r31,0; @ %r78 bra $L6; $L10: .loc 1 114 9 setp.ne.u64 %r79,%r36,0; @ %r79 bra $L7; bra $L8; $L6: .loc 1 121 9 setp.ne.u64 %r80,%r36,0; @ %r80 bra $L9; bra $L8; $L3: .loc 1 114 9 setp.eq.u64 %r81,%r55,0; @ %r81 bra $L8; $L5: .loc 1 116 7 add.u64 %r36,%r55,-1; .loc 1 117 25 add.u64 %r42,%r54,1; .loc 1 117 16 add.u64 %r39,%r38,1; .loc 1 117 21 ld.s8 %r41,[%r54]; .loc 1 117 19 cvt.u32.u32 %r82,%r41; st.u8 [%r38],%r82; .loc 1 117 10 setp.eq.u32 %r83,%r41,0; @ %r83 bra $L6; mov.u64 %r33,%r42; mov.u64 %r32,%r39; add.u64 %r87,%r38,%r55; bra $L10; $L9: mov.u64 %r37,%r39; add.u64 %r34,%r37,%r36; .loc 1 122 12 mov.u32 %r84,0; $L11: st.u8 [%r37],%r84; add.u64 %r37,%r37,1; .loc 1 121 9 setp.ne.u64 %r85,%r34,%r37; @ %r85 bra $L11; $L8: .loc 1 126 1 mov.u64 %value,%r53; st.param.u64 [%value_out],%value; ret; } lib_a-strndup.o/1591654539 399 399 100644 1247 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strndup .visible .func (.param .u64 %value_out) strndup (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/string/strndup.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _strndup_r .extern .func (.param .u64 %value_out) _strndup_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: strndup .visible .func (.param .u64 %value_out) strndup (.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 13 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),_strndup_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r30,[%value_in]; } .loc 1 14 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } /714 1591654539 399 399 100644 2542 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _strndup_r .visible .func (.param .u64 %value_out) _strndup_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/string/strndup_r.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: memcpy .extern .func (.param .u64 %value_out) memcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: _strndup_r .visible .func (.param .u64 %value_out) _strndup_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 %r26; .reg .u64 %r28; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .pred %r33; .reg .u16 %r34; .reg .u32 %r35; .reg .pred %r36; .reg .pred %r37; .reg .u16 %r38; .reg .u32 %r39; .reg .pred %r40; .reg .u64 %r43; .reg .pred %r44; .reg .u64 %r48; .reg .u64 %r49; .reg .u32 %r50; mov.u64 %r30,%ar0; mov.u64 %r31,%ar1; mov.u64 %r32,%ar2; .loc 1 15 9 setp.eq.u64 %r33,%r32,0; @ %r33 bra $L6; .loc 1 15 18 ld.s8 %r35,[%r31]; cvt.u16.u32 %r34,%r35; setp.eq.u16 %r36,%r34,0; @ %r36 bra $L7; add.u64 %r26,%r31,%r32; mov.u64 %r24,%r31; $L4: .loc 1 16 8 add.u64 %r24,%r24,1; .loc 1 15 9 setp.ne.u64 %r37,%r24,%r26; @ %r37 bra $L3; add.u64 %r28,%r32,1; bra $L2; $L3: .loc 1 15 18 ld.s8 %r39,[%r24]; cvt.u16.u32 %r38,%r39; setp.ne.u16 %r40,%r38,0; @ %r40 bra $L4; sub.u64 %r32,%r24,%r31; add.u64 %r28,%r32,1; bra $L2; $L6: .loc 1 15 9 mov.u64 %r28,1; bra $L2; $L7: .loc 1 15 18 mov.u64 %r32,0; mov.u64 %r28,1; $L2: .loc 1 20 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r28; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r43,[%value_in]; } .loc 1 21 6 setp.eq.u64 %r44,%r43,0; @ %r44 bra $L1; .loc 1 23 7 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r43; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r32; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r48,[%value_in]; } .loc 1 24 17 add.u64 %r49,%r43,%r32; mov.u32 %r50,0; st.u8 [%r49],%r50; $L1: .loc 1 27 1 mov.u64 %value,%r43; st.param.u64 [%value_out],%value; ret; } lib_a-strnlen.o/1591654539 399 399 100644 1251 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r23; .reg .u64 %r24; .reg .u64 %r28; .reg .u64 %r29; .reg .pred %r30; .reg .u16 %r31; .reg .u32 %r32; .reg .pred %r33; .reg .pred %r34; .reg .u16 %r35; .reg .u32 %r36; .reg .pred %r37; mov.u64 %r28,%ar0; mov.u64 %r29,%ar1; .loc 1 45 9 setp.eq.u64 %r30,%r29,0; @ %r30 bra $L2; .loc 1 45 18 ld.s8 %r32,[%r28]; cvt.u16.u32 %r31,%r32; setp.eq.u16 %r33,%r31,0; @ %r33 bra $L4; add.u64 %r24,%r28,%r29; mov.u64 %r23,%r28; $L3: .loc 1 46 8 add.u64 %r23,%r23,1; .loc 1 45 9 setp.eq.u64 %r34,%r23,%r24; @ %r34 bra $L2; .loc 1 45 18 ld.s8 %r36,[%r23]; cvt.u16.u32 %r35,%r36; setp.ne.u16 %r37,%r35,0; @ %r37 bra $L3; sub.u64 %r29,%r23,%r28; bra $L2; $L4: mov.u64 %r29,0; $L2: .loc 1 49 1 mov.u64 %value,%r29; st.param.u64 [%value_out],%value; ret; } lib_a-strpbrk.o/1591654539 399 399 100644 1873 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r32; .reg .pred %r33; .reg .pred %r34; .reg .u16 %r36; .reg .pred %r38; .reg .u16 %r39; .reg .u32 %r40; .reg .pred %r41; .reg .pred %r43; .reg .pred %r44; .reg .u16 %r45; .reg .u16 %r46; mov.u64 %r28,%ar0; mov.u64 %r29,%ar1; .loc 1 39 8 ld.s8 %r22,[%r28]; .loc 1 39 6 setp.eq.u32 %r30,%r22,0; @ ! %r30 bra $L13; bra $L9; $L4: .loc 1 46 7 cvt.u16.u32 %r32,%r23; setp.eq.u16 %r33,%r45,%r32; @ %r33 bra $L1; $L6: .loc 1 44 25 add.u64 %r25,%r25,1; .loc 1 44 20 ld.s8 %r23,[%r25]; .loc 1 44 7 setp.ne.u32 %r34,%r23,0; @ %r34 bra $L4; bra $L5; $L13: .loc 1 44 20 ld.s8 %r26,[%r29]; mov.u64 %r27,%r28; setp.eq.u32 %r44,%r26,0; .loc 1 46 7 cvt.u16.u32 %r46,%r26; $L7: .loc 1 44 7 @ %r44 bra $L10; .loc 1 46 7 cvt.u16.u32 %r36,%r22; setp.eq.u16 %r38,%r36,%r46; @ %r38 bra $L1; mov.u64 %r25,%r29; cvt.u16.u32 %r45,%r22; bra $L6; $L14: .loc 1 54 6 ld.s8 %r40,[%r25]; cvt.u16.u32 %r39,%r40; setp.eq.u16 %r41,%r39,0; .loc 1 55 8 selp.u64 %r27,0,%r27,%r41; bra $L1; $L9: mov.u64 %r27,0; bra $L1; $L10: .loc 1 44 7 mov.u64 %r25,%r29; $L5: .loc 1 51 9 add.u64 %r27,%r27,1; .loc 1 42 10 ld.s8 %r22,[%r27]; .loc 1 42 9 setp.ne.u32 %r43,%r22,0; @ %r43 bra $L7; bra $L14; $L1: .loc 1 58 1 mov.u64 %value,%r27; st.param.u64 [%value_out],%value; ret; } lib_a-strrchr.o/1591654539 399 399 100644 1567 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 45 6 setp.ne.u32 %r26,%r25,0; @ %r26 bra $L6; bra $L7; $L4: .loc 1 50 5 add.u64 %r24,%r29,1; mov.u64 %r23,%r29; bra $L2; $L6: .loc 1 43 16 mov.u64 %r23,0; $L2: .loc 1 47 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 47 13 setp.ne.u64 %r30,%r29,0; @ %r30 bra $L4; bra $L1; $L7: .loc 1 55 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 59 1 mov.u64 %value,%r23; st.param.u64 [%value_out],%value; ret; } lib_a-strsep.o/ 1591654539 399 399 100644 1260 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 18 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 19 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } /733 1591654539 399 399 100644 8530 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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[5] = {81,117,105,116,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[20] = {73,108,108,101,103,97,108,32,105,110,115,116,114,117,99,116,105,111,110,0 }; // BEGIN VAR DEF: $LC3 .const .align 1 .u8 $LC3[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: $LC4 .const .align 1 .u8 $LC4[9] = {73,79,84,32,116,114,97,112,0 }; // BEGIN VAR DEF: $LC5 .const .align 1 .u8 $LC5[9] = {69,77,84,32,116,114,97,112,0 }; // BEGIN VAR DEF: $LC6 .const .align 1 .u8 $LC6[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: $LC7 .const .align 1 .u8 $LC7[7] = {75,105,108,108,101,100,0 }; // BEGIN VAR DEF: $LC8 .const .align 1 .u8 $LC8[10] = {66,117,115,32,101,114,114,111,114,0 }; // BEGIN VAR DEF: $LC9 .const .align 1 .u8 $LC9[19] = {83,101,103,109,101,110,116,97,116,105,111,110,32,102,97,117,108,116,0 }; // BEGIN VAR DEF: $LC10 .const .align 1 .u8 $LC10[16] = {66,97,100,32,115,121,115,116,101,109,32,99,97,108,108,0 }; // BEGIN VAR DEF: $LC11 .const .align 1 .u8 $LC11[12] = {66,114,111,107,101,110,32,112,105,112,101,0 }; // BEGIN VAR DEF: $LC12 .const .align 1 .u8 $LC12[12] = {65,108,97,114,109,32,99,108,111,99,107,0 }; // BEGIN VAR DEF: $LC13 .const .align 1 .u8 $LC13[11] = {84,101,114,109,105,110,97,116,101,100,0 }; // BEGIN VAR DEF: $LC14 .const .align 1 .u8 $LC14[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: $LC15 .const .align 1 .u8 $LC15[17] = {83,116,111,112,112,101,100,32,40,115,105,103,110,97,108,41,0 }; // BEGIN VAR DEF: $LC16 .const .align 1 .u8 $LC16[8] = {83,116,111,112,112,101,100,0 }; // BEGIN VAR DEF: $LC17 .const .align 1 .u8 $LC17[10] = {67,111,110,116,105,110,117,101,100,0 }; // BEGIN VAR DEF: $LC18 .const .align 1 .u8 $LC18[13] = {67,104,105,108,100,32,101,120,105,116,101,100,0 }; // BEGIN VAR DEF: $LC19 .const .align 1 .u8 $LC19[20] = {83,116,111,112,112,101,100,32,40,116,116,121,32,105,110,112,117,116,41,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[13] = {73,47,79,32,112,111,115,115,105,98,108,101,0 }; // BEGIN VAR DEF: $LC21 .const .align 1 .u8 $LC21[15] = {87,105,110,100,111,119,32,99,104,97,110,103,101,100,0 }; // BEGIN VAR DEF: $LC22 .const .align 1 .u8 $LC22[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: $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,50,0 }; // BEGIN VAR DEF: $LC24 .const .align 1 .u8 $LC24[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: $LC25 .const .align 1 .u8 $LC25[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: $LC26 .const .align 1 .u8 $LC26[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: $LC27 .const .align 1 .u8 $LC27[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: $LC28 .const .align 1 .u8 $LC28[14] = {82,101,115,111,117,114,99,101,32,108,111,115,116,0 }; // BEGIN VAR DEF: $LC29 .const .align 1 .u8 $LC29[10] = {73,110,116,101,114,114,117,112,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 .u64 %r57; .reg .u64 %r59; .reg .u32 %r60; mov.u32 %r24,%ar0; setp.eq.u32 %r25,%r24,15; @ %r25 bra $L11; setp.gt.s32 %r26,%r24,15; @ %r26 bra $L3; setp.eq.u32 %r27,%r24,7; @ %r27 bra $L12; setp.gt.s32 %r28,%r24,7; @ %r28 bra $L4; setp.eq.u32 %r29,%r24,3; @ %r29 bra $L13; setp.gt.s32 %r30,%r24,3; @ %r30 bra $L5; setp.eq.u32 %r31,%r24,1; @ %r31 bra $L14; setp.eq.u32 %r32,%r24,2; @ %r32 bra $L15; bra $L6; $L5: setp.eq.u32 %r33,%r24,5; @ %r33 bra $L16; setp.gt.s32 %r34,%r24,5; @ %r34 bra $L17; .loc 1 98 14 cvta.const.u64 %r23,$LC2; bra $L1; $L4: setp.eq.u32 %r35,%r24,11; @ %r35 bra $L18; setp.gt.s32 %r36,%r24,11; @ %r36 bra $L7; setp.eq.u32 %r37,%r24,9; @ %r37 bra $L19; setp.gt.s32 %r38,%r24,9; @ %r38 bra $L20; .loc 1 121 14 cvta.const.u64 %r23,$LC6; bra $L1; $L7: setp.eq.u32 %r39,%r24,13; @ %r39 bra $L21; setp.gt.s32 %r40,%r24,13; @ %r40 bra $L22; .loc 1 141 14 cvta.const.u64 %r23,$LC10; bra $L1; $L3: setp.eq.u32 %r41,%r24,24; @ %r41 bra $L23; setp.gt.s32 %r42,%r24,24; @ %r42 bra $L8; setp.eq.u32 %r43,%r24,19; @ %r43 bra $L24; setp.gt.s32 %r44,%r24,19; @ %r44 bra $L9; setp.eq.u32 %r45,%r24,17; @ %r45 bra $L25; setp.gt.s32 %r46,%r24,17; @ %r46 bra $L26; .loc 1 161 14 cvta.const.u64 %r23,$LC14; bra $L1; $L9: setp.eq.u32 %r47,%r24,21; @ %r47 bra $L27; setp.lt.s32 %r48,%r24,21; @ %r48 bra $L28; setp.eq.u32 %r49,%r24,23; @ %r49 bra $L29; bra $L6; $L8: setp.eq.u32 %r50,%r24,28; @ %r50 bra $L30; setp.gt.s32 %r51,%r24,28; @ %r51 bra $L10; setp.eq.u32 %r52,%r24,26; @ %r52 bra $L31; setp.gt.s32 %r53,%r24,26; @ %r53 bra $L32; .loc 1 232 14 cvta.const.u64 %r23,$LC25; bra $L1; $L10: setp.eq.u32 %r54,%r24,30; @ %r54 bra $L33; setp.lt.s32 %r55,%r24,30; @ %r55 bra $L34; setp.eq.u32 %r56,%r24,31; @ %r56 bra $L35; $L6: .loc 1 71 10 ld.global.u64 %r57,[_impure_ptr]; add.u64 %r23,%r57,288; .loc 1 251 7 st.u32 [%stack],%r24; cvta.const.u64 %r59,$LC30; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r59; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),siprintf,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r60,[%value_in]; } .loc 1 252 7 bra $L1; $L11: .loc 1 156 14 cvta.const.u64 %r23,$LC13; bra $L1; $L12: .loc 1 116 14 cvta.const.u64 %r23,$LC5; bra $L1; $L13: .loc 1 93 14 cvta.const.u64 %r23,$LC1; bra $L1; $L14: .loc 1 83 14 cvta.const.u64 %r23,$LC0; bra $L1; $L15: .loc 1 88 14 cvta.const.u64 %r23,$LC29; bra $L1; $L16: .loc 1 103 14 cvta.const.u64 %r23,$LC3; bra $L1; $L17: .loc 1 111 14 cvta.const.u64 %r23,$LC4; bra $L1; $L18: .loc 1 136 14 cvta.const.u64 %r23,$LC9; bra $L1; $L19: .loc 1 126 14 cvta.const.u64 %r23,$LC7; bra $L1; $L20: .loc 1 131 14 cvta.const.u64 %r23,$LC8; bra $L1; $L21: .loc 1 146 14 cvta.const.u64 %r23,$LC11; bra $L1; $L22: .loc 1 151 14 cvta.const.u64 %r23,$LC12; bra $L1; $L23: .loc 1 227 14 cvta.const.u64 %r23,$LC24; bra $L1; $L24: .loc 1 176 14 cvta.const.u64 %r23,$LC17; bra $L1; $L25: .loc 1 166 14 cvta.const.u64 %r23,$LC15; bra $L1; $L26: .loc 1 171 14 cvta.const.u64 %r23,$LC16; bra $L1; $L27: .loc 1 189 14 cvta.const.u64 %r23,$LC19; bra $L1; $L28: .loc 1 184 14 cvta.const.u64 %r23,$LC18; bra $L1; $L29: .loc 1 202 14 cvta.const.u64 %r23,$LC20; bra $L1; $L30: .loc 1 207 14 cvta.const.u64 %r23,$LC21; bra $L1; $L31: .loc 1 237 14 cvta.const.u64 %r23,$LC26; bra $L1; $L32: .loc 1 242 14 cvta.const.u64 %r23,$LC27; bra $L1; $L33: .loc 1 212 14 cvta.const.u64 %r23,$LC22; bra $L1; $L34: .loc 1 247 14 cvta.const.u64 %r23,$LC28; bra $L1; $L35: .loc 1 217 14 cvta.const.u64 %r23,$LC23; $L1: .loc 1 256 1 mov.u64 %value,%r23; st.param.u64 [%value_out],%value; ret; } lib_a-strspn.o/ 1591654539 399 399 100644 1723 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r27; .reg .u64 %r28; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .pred %r33; .reg .u16 %r34; .reg .pred %r36; .reg .pred %r37; .reg .u16 %r40; .reg .pred %r41; .reg .pred %r43; .reg .pred %r44; .reg .u16 %r45; .reg .u16 %r46; mov.u64 %r31,%ar0; mov.u64 %r32,%ar1; .loc 1 46 10 ld.s8 %r25,[%r31]; .loc 1 46 9 setp.ne.u32 %r33,%r25,0; @ %r33 bra $L2; mov.u64 %r30,0; bra $L1; $L5: .loc 1 50 7 cvt.u16.u32 %r34,%r24; setp.eq.u16 %r36,%r34,%r45; @ %r36 bra $L4; $L7: .loc 1 48 25 add.u64 %r27,%r27,1; .loc 1 48 20 ld.s8 %r24,[%r27]; .loc 1 48 7 setp.ne.u32 %r37,%r24,0; @ %r37 bra $L5; sub.u64 %r30,%r28,%r31; bra $L1; $L2: .loc 1 48 20 ld.s8 %r22,[%r32]; mov.u64 %r28,%r31; setp.ne.u32 %r44,%r22,0; .loc 1 50 7 cvt.u16.u32 %r46,%r22; $L8: .loc 1 48 7 @ %r44 bra $L6; sub.u64 %r30,%r28,%r31; bra $L1; $L6: .loc 1 50 7 cvt.u16.u32 %r40,%r25; setp.eq.u16 %r41,%r46,%r40; @ %r41 bra $L4; mov.u64 %r27,%r32; cvt.u16.u32 %r45,%r25; bra $L7; $L4: .loc 1 55 9 add.u64 %r28,%r28,1; .loc 1 46 10 ld.s8 %r25,[%r28]; .loc 1 46 9 setp.ne.u32 %r43,%r25,0; @ %r43 bra $L8; sub.u64 %r30,%r28,%r31; $L1: .loc 1 59 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } lib_a-strstr.o/ 1591654539 399 399 100644 26711 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: critical_factorization .func (.param .u64 %value_out) critical_factorization (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../newlib/libc/string/str-two-way.h" // 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); // 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: memchr .extern .func (.param .u64 %value_out) memchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: strchr .extern .func (.param .u64 %value_out) strchr (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN FUNCTION DEF: critical_factorization .func (.param .u64 %value_out) critical_factorization (.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 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .u64 %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .u64 %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u16 %r52; .reg .u16 %r53; .reg .pred %r54; .reg .pred %r57; .reg .pred %r58; .reg .pred %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u64 %r62; .reg .u16 %r63; .reg .u16 %r64; .reg .pred %r65; .reg .pred %r68; .reg .pred %r69; .reg .pred %r70; .reg .pred %r71; .reg .u64 %r73; .reg .u64 %r74; mov.u64 %r46,%ar0; mov.u64 %r47,%ar1; mov.u64 %r48,%ar2; .loc 1 113 9 mov.u64 %r37,1; .loc 1 113 5 mov.u64 %r35,%r37; .loc 1 112 5 mov.u64 %r28,0; .loc 1 111 14 mov.u64 %r32,-1; .loc 1 140 10 mov.u64 %r74,%r37; .loc 1 114 9 bra $L2; $L7: .loc 1 116 9 add.u64 %r49,%r46,%r27; .loc 1 117 9 add.u64 %r50,%r46,%r32; add.u64 %r51,%r50,%r35; .loc 1 118 10 ld.u8 %r52,[%r49]; ld.u8 %r53,[%r51]; setp.ge.u16 %r54,%r52,%r53; @ %r54 bra $L3; .loc 1 123 6 sub.u64 %r37,%r27,%r32; mov.u64 %r28,%r27; .loc 1 122 6 mov.u64 %r35,1; bra $L2; $L3: .loc 1 125 15 setp.ne.u16 %r57,%r52,%r53; @ %r57 bra $L5; .loc 1 128 7 setp.eq.u64 %r58,%r35,%r37; @ %r58 bra $L6; .loc 1 129 6 add.u64 %r35,%r35,1; bra $L2; $L6: .loc 1 132 10 mov.u64 %r28,%r27; .loc 1 133 10 mov.u64 %r35,1; bra $L2; $L5: .loc 1 139 15 mov.u64 %r32,%r28; .loc 1 139 18 add.u64 %r28,%r28,1; .loc 1 140 10 mov.u64 %r37,%r74; .loc 1 140 6 mov.u64 %r35,1; $L2: .loc 1 114 12 add.u64 %r27,%r28,%r35; .loc 1 114 9 setp.lt.u64 %r59,%r27,%r47; @ %r59 bra $L7; .loc 1 143 11 st.u64 [%r48],%r37; .loc 1 148 9 mov.u64 %r38,1; .loc 1 148 5 mov.u64 %r36,%r38; .loc 1 147 5 mov.u64 %r22,0; .loc 1 146 18 mov.u64 %r26,-1; .loc 1 175 10 mov.u64 %r73,%r38; .loc 1 149 9 bra $L8; $L13: .loc 1 151 9 add.u64 %r60,%r46,%r33; .loc 1 152 9 add.u64 %r61,%r46,%r26; add.u64 %r62,%r61,%r36; .loc 1 153 10 ld.u8 %r63,[%r60]; ld.u8 %r64,[%r62]; setp.le.u16 %r65,%r63,%r64; @ %r65 bra $L9; .loc 1 158 6 sub.u64 %r38,%r33,%r26; mov.u64 %r22,%r33; .loc 1 157 6 mov.u64 %r36,1; bra $L8; $L9: .loc 1 160 15 setp.ne.u16 %r68,%r63,%r64; @ %r68 bra $L11; .loc 1 163 7 setp.eq.u64 %r69,%r36,%r38; @ %r69 bra $L12; .loc 1 164 6 add.u64 %r36,%r36,1; bra $L8; $L12: .loc 1 167 10 mov.u64 %r22,%r33; .loc 1 168 10 mov.u64 %r36,1; bra $L8; $L11: .loc 1 174 19 mov.u64 %r26,%r22; .loc 1 174 22 add.u64 %r22,%r22,1; .loc 1 175 10 mov.u64 %r38,%r73; .loc 1 175 6 mov.u64 %r36,1; $L8: .loc 1 149 12 add.u64 %r33,%r22,%r36; .loc 1 149 9 setp.lt.u64 %r70,%r33,%r47; @ %r70 bra $L13; .loc 1 181 22 add.u64 %r34,%r26,1; .loc 1 181 39 add.u64 %r45,%r32,1; .loc 1 181 6 setp.lt.u64 %r71,%r34,%r45; @ %r71 bra $L1; .loc 1 183 11 st.u64 [%r48],%r38; .loc 1 184 25 mov.u64 %r45,%r34; $L1: .loc 1 185 1 mov.u64 %value,%r45; st.param.u64 [%value_out],%value; ret; } // 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[2064]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r22; .reg .u64 %r30; .reg .u64 %r39; .reg .u64 %r40; .reg .u64 %r42; .reg .u64 %r57; .reg .u64 %r62; .reg .u64 %r69; .reg .u64 %r71; .reg .u64 %r72; .reg .u64 %r73; .reg .u64 %r81; .reg .u64 %r82; .reg .u64 %r84; .reg .u64 %r85; .reg .u64 %r88; .reg .u64 %r109; .reg .u64 %r111; .reg .u64 %r113; .reg .u64 %r115; .reg .u64 %r117; .reg .u64 %r125; .reg .u64 %r126; .reg .u64 %r127; .reg .u64 %r128; .reg .u64 %r129; .reg .u64 %r133; .reg .u64 %r134; .reg .pred %r135; .reg .u64 %r136; .reg .pred %r137; .reg .u64 %r139; .reg .u64 %r140; .reg .u64 %r141; .reg .u64 %r143; .reg .pred %r144; .reg .u32 %r148; .reg .pred %r149; .reg .u64 %r150; .reg .u64 %r153; .reg .u64 %r154; .reg .u64 %r155; .reg .pred %r156; .reg .pred %r157; .reg .pred %r158; .reg .pred %r159; .reg .u64 %r160; .reg .u64 %r161; .reg .u64 %r162; .reg .u16 %r163; .reg .u16 %r164; .reg .pred %r165; .reg .pred %r166; .reg .u64 %r167; .reg .u64 %r168; .reg .u64 %r169; .reg .u16 %r170; .reg .u16 %r171; .reg .pred %r172; .reg .pred %r173; .reg .u64 %r174; .reg .u64 %r175; .reg .u64 %r176; .reg .u16 %r177; .reg .u16 %r178; .reg .pred %r179; .reg .u64 %r180; .reg .pred %r181; .reg .u32 %r183; .reg .u64 %r185; .reg .u64 %r186; .reg .u64 %r187; .reg .u32 %r189; .reg .u32 %r190; .reg .u32 %r192; .reg .u32 %r193; .reg .u16 %r194; .reg .u16 %r195; .reg .u16 %r196; .reg .u32 %r197; .reg .u16 %r198; .reg .pred %r199; .reg .u64 %r200; .reg .u64 %r201; .reg .u64 %r202; .reg .u64 %r203; .reg .u64 %r206; .reg .u64 %r207; .reg .u64 %r208; .reg .pred %r209; .reg .pred %r210; .reg .u64 %r212; .reg .u64 %r213; .reg .u16 %r214; .reg .u16 %r215; .reg .pred %r216; .reg .pred %r217; .reg .u64 %r218; .reg .u64 %r219; .reg .u64 %r220; .reg .u16 %r221; .reg .u16 %r222; .reg .pred %r223; .reg .pred %r224; .reg .u64 %r225; .reg .u64 %r226; .reg .u64 %r227; .reg .u16 %r228; .reg .u16 %r229; .reg .pred %r230; .reg .u32 %r232; .reg .u64 %r234; .reg .u64 %r235; .reg .u64 %r236; .reg .u32 %r238; .reg .u32 %r239; .reg .u32 %r241; .reg .u32 %r242; .reg .u16 %r243; .reg .u16 %r244; .reg .u16 %r245; .reg .u32 %r246; .reg .u16 %r247; .reg .pred %r248; .reg .pred %r250; .reg .u64 %r251; .reg .u64 %r252; .reg .u64 %r253; .reg .u16 %r254; .reg .u16 %r255; .reg .pred %r256; .reg .u64 %r257; .reg .u64 %r259; .reg .u64 %r260; .reg .pred %r262; .reg .u64 %r264; .reg .u64 %r265; .reg .u16 %r266; .reg .u16 %r267; .reg .pred %r268; .reg .u64 %r272; .reg .u64 %r273; .reg .u64 %r274; .reg .u32 %r278; .reg .pred %r279; .reg .u64 %r280; .reg .u64 %r281; .reg .u64 %r282; .reg .u64 %r283; mov.u64 %r126,%ar0; mov.u64 %r127,%ar1; mov.u64 %r128,%ar2; mov.u64 %r129,%ar3; .loc 1 304 12 add.u64 %r133,%frame,2048; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r128; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r129; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r133; call (%value_in),critical_factorization,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r134,[%value_in]; } mov.u64 %r111,%frame; $L16: .loc 1 311 20 st.u64 [%r111],%r129; add.u64 %r111,%r111,8; .loc 1 310 3 setp.ne.u64 %r135,%r133,%r111; @ %r135 bra $L16; ld.u64 %r136,[%frame+2048]; add.u64 %r115,%r128,%r136; .loc 1 312 3 setp.eq.u64 %r137,%r129,0; @ %r137 bra $L17; add.u64 %r117,%r129,-1; add.u64 %r113,%r129,%r128; mov.u64 %r22,%r128; add.u64 %r280,%r128,%r117; $L18: .loc 1 313 44 ld.u8 %r139,[%r22]; shl.b64 %r140,%r139,3; add.u64 %r141,%frame,%r140; sub.u64 %r143,%r280,%r22; st.u64 [%r141],%r143; add.u64 %r22,%r22,1; .loc 1 312 3 setp.ne.u64 %r144,%r22,%r113; @ %r144 bra $L18; .loc 1 317 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r128; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r115; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r134; call (%value_in),memcmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r148,[%value_in]; } .loc 1 317 6 setp.eq.u32 %r149,%r148,0; @ ! %r149 bra $L20; bra $L44; $L31: .loc 1 329 24 add.u64 %r150,%r126,%r42; .loc 1 329 10 ld.u8 %r153,[%r150+-1]; shl.b64 %r154,%r153,3; add.u64 %r155,%frame,%r154; ld.u64 %r73,[%r155]; .loc 1 330 7 setp.eq.u64 %r156,%r73,0; @ %r156 bra $L21; .loc 1 332 11 setp.eq.u64 %r157,%r72,0; @ %r157 bra $L22; .loc 1 332 28 ld.u64 %r30,[%frame+2048]; .loc 1 332 19 setp.le.u64 %r158,%r30,%r73; @ %r158 bra $L22; .loc 1 337 11 sub.u64 %r73,%r129,%r30; $L22: .loc 1 340 10 add.u64 %r57,%r57,%r73; .loc 1 339 15 mov.u64 %r72,0; .loc 1 341 8 bra $L23; $L21: .loc 1 345 6 max.u64 %r81,%r72,%r134; .loc 1 346 10 setp.ge.u64 %r159,%r81,%r117; @ %r159 bra $L24; .loc 1 347 9 add.u64 %r160,%r126,%r57; add.u64 %r161,%r160,%r81; .loc 1 346 34 add.u64 %r162,%r128,%r81; .loc 1 346 30 ld.u8 %r163,[%r161]; ld.u8 %r164,[%r162]; setp.ne.u16 %r165,%r163,%r164; @ %r165 bra $L25; $L26: .loc 1 348 6 add.u64 %r81,%r81,1; .loc 1 346 10 setp.eq.u64 %r166,%r81,%r117; @ %r166 bra $L24; .loc 1 346 34 add.u64 %r167,%r128,%r81; .loc 1 347 9 add.u64 %r168,%r57,%r81; add.u64 %r169,%r126,%r168; .loc 1 346 30 ld.u8 %r170,[%r167]; ld.u8 %r171,[%r169]; setp.eq.u16 %r172,%r170,%r171; @ %r172 bra $L26; bra $L25; $L45: mov.u64 %r88,%r40; $L28: .loc 1 355 3 add.u64 %r40,%r88,-1; .loc 1 353 14 setp.eq.u64 %r173,%r72,%r88; @ %r173 bra $L27; .loc 1 353 34 add.u64 %r174,%r128,%r40; .loc 1 354 9 add.u64 %r175,%r57,%r40; add.u64 %r176,%r126,%r175; .loc 1 353 30 ld.u8 %r177,[%r174]; ld.u8 %r178,[%r176]; setp.eq.u16 %r179,%r177,%r178; @ %r179 bra $L45; bra $L27; $L47: .loc 1 353 14 mov.u64 %r88,%r134; $L27: .loc 1 356 27 add.u64 %r180,%r72,1; .loc 1 356 11 setp.le.u64 %r181,%r180,%r88; @ %r181 bra $L29; .loc 1 357 10 add.u64 %r125,%r126,%r57; bra $L15; $L29: .loc 1 360 10 ld.u64 %r39,[%frame+2048]; add.u64 %r57,%r57,%r39; .loc 1 361 15 sub.u64 %r72,%r129,%r39; $L23: .loc 1 339 15 mov.u64 %r127,%r42; bra $L19; $L44: .loc 1 322 14 mov.u64 %r72,0; .loc 1 324 9 mov.u64 %r57,%r72; .loc 1 352 10 add.u64 %r282,%r134,-1; $L19: .loc 1 325 14 add.u64 %r42,%r57,%r129; sub.u64 %r185,%r42,%r127; add.u64 %r186,%r126,%r127; mov.u32 %r183,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r186; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r183; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r185; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r187,[%value_in]; } .loc 1 325 13 set.u32.eq.u64 %r189,%r187,0; neg.s32 %r190,%r189; .loc 1 325 14 set.u32.ne.u64 %r192,%r42,0; neg.s32 %r193,%r192; cvt.u16.u32 %r195,%r190; cvt.u16.u32 %r196,%r193; and.b16 %r194,%r195,%r196; cvt.u32.u16 %r197,%r194; cvt.u16.u8 %r198,%r197; setp.ne.u16 %r199,%r198,0; @ %r199 bra $L31; $L42: .loc 1 408 10 mov.u64 %r125,0; bra $L15; $L20: .loc 1 375 16 sub.u64 %r201,%r129,%r134; max.u64 %r200,%r201,%r134; .loc 1 375 50 add.u64 %r202,%r200,1; .loc 1 375 14 st.u64 [%frame+2048],%r202; .loc 1 376 9 mov.u64 %r71,0; .loc 1 390 26 add.u64 %r283,%r129,-1; .loc 1 377 13 bra $L32; $L41: .loc 1 381 24 add.u64 %r203,%r126,%r62; .loc 1 381 10 ld.u8 %r206,[%r203+-1]; shl.b64 %r207,%r206,3; add.u64 %r208,%frame,%r207; ld.u64 %r82,[%r208]; .loc 1 382 7 setp.ne.u64 %r209,%r82,0; @ %r209 bra $L33; .loc 1 390 10 setp.ge.u64 %r210,%r134,%r283; @ ! %r210 bra $L65; add.u64 %r281,%r126,%r71; bra $L34; $L65: .loc 1 391 9 add.u64 %r281,%r126,%r71; add.u64 %r212,%r281,%r134; .loc 1 390 34 add.u64 %r213,%r128,%r134; .loc 1 390 30 ld.u8 %r214,[%r212]; ld.u8 %r215,[%r213]; setp.eq.u16 %r216,%r214,%r215; @ %r216 bra $L46; mov.u64 %r84,%r134; bra $L36; $L33: .loc 1 384 10 add.u64 %r71,%r71,%r82; .loc 1 385 8 bra $L37; $L46: .loc 1 390 30 mov.u64 %r84,%r134; $L35: .loc 1 392 6 add.u64 %r84,%r84,1; .loc 1 390 10 setp.ge.u64 %r217,%r84,%r283; @ %r217 bra $L34; .loc 1 390 34 add.u64 %r218,%r128,%r84; .loc 1 391 9 add.u64 %r219,%r71,%r84; add.u64 %r220,%r126,%r219; .loc 1 390 30 ld.u8 %r221,[%r218]; ld.u8 %r222,[%r220]; setp.eq.u16 %r223,%r221,%r222; @ %r223 bra $L35; bra $L36; $L39: .loc 1 399 3 add.u64 %r85,%r85,-1; .loc 1 397 14 setp.eq.u64 %r224,%r85,-1; @ %r224 bra $L38; .loc 1 397 33 add.u64 %r225,%r128,%r85; .loc 1 398 15 add.u64 %r226,%r71,%r85; add.u64 %r227,%r126,%r226; .loc 1 397 29 ld.u8 %r228,[%r225]; ld.u8 %r229,[%r227]; setp.eq.u16 %r230,%r228,%r229; @ %r230 bra $L39; bra $L40; $L37: .loc 1 390 30 mov.u64 %r127,%r62; $L32: .loc 1 377 14 add.u64 %r62,%r71,%r129; sub.u64 %r234,%r62,%r127; add.u64 %r235,%r126,%r127; mov.u32 %r232,0; { .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],%r234; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r236,[%value_in]; } set.u32.ne.u64 %r238,%r62,0; neg.s32 %r239,%r238; .loc 1 377 13 set.u32.eq.u64 %r241,%r236,0; neg.s32 %r242,%r241; .loc 1 377 14 cvt.u16.u32 %r244,%r239; cvt.u16.u32 %r245,%r242; and.b16 %r243,%r244,%r245; cvt.u32.u16 %r246,%r243; cvt.u16.u8 %r247,%r246; setp.ne.u16 %r248,%r247,0; @ %r248 bra $L41; bra $L42; $L24: .loc 1 352 10 mov.u64 %r88,%r282; .loc 1 353 14 setp.ge.u64 %r250,%r72,%r134; @ %r250 bra $L47; .loc 1 354 9 add.u64 %r251,%r126,%r57; add.u64 %r252,%r251,%r282; .loc 1 353 34 add.u64 %r253,%r128,%r282; .loc 1 353 30 ld.u8 %r254,[%r252]; ld.u8 %r255,[%r253]; setp.eq.u16 %r256,%r254,%r255; @ %r256 bra $L28; mov.u64 %r88,%r134; bra $L27; $L25: sub.u64 %r257,%r57,%r134; add.u64 %r109,%r257,1; .loc 1 365 10 add.u64 %r57,%r81,%r109; .loc 1 366 15 mov.u64 %r72,%r73; bra $L23; $L40: .loc 1 402 10 ld.u64 %r259,[%frame+2048]; add.u64 %r71,%r71,%r259; bra $L37; $L38: .loc 1 401 10 mov.u64 %r125,%r281; bra $L15; $L36: sub.u64 %r260,%r71,%r134; add.u64 %r69,%r260,1; .loc 1 405 8 add.u64 %r71,%r69,%r84; bra $L37; $L34: .loc 1 396 10 add.u64 %r85,%r134,-1; .loc 1 397 14 setp.eq.u64 %r262,%r85,-1; @ %r262 bra $L38; .loc 1 398 15 add.u64 %r264,%r281,%r85; .loc 1 397 33 add.u64 %r265,%r128,%r85; .loc 1 397 29 ld.u8 %r266,[%r264]; ld.u8 %r267,[%r265]; setp.eq.u16 %r268,%r266,%r267; @ %r268 bra $L39; bra $L40; $L43: .loc 1 325 14 neg.s64 %r272,%r127; add.u64 %r273,%r126,%r127; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r273; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r278; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r272; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r274,[%value_in]; } .loc 1 408 10 mov.u64 %r125,%r129; bra $L15; $L17: .loc 1 317 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r128; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r115; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r134; call (%value_in),memcmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r278,[%value_in]; } .loc 1 317 6 setp.eq.u32 %r279,%r278,0; @ %r279 bra $L43; bra $L20; $L15: .loc 1 409 1 mov.u64 %value,%r125; 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[16]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u32 %r25; .reg .u64 %r34; .reg .u64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .u32 %r41; .reg .u64 %r42; .reg .u64 %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r52; .reg .u64 %r55; .reg .u64 %r62; .reg .u64 %r63; .reg .u64 %r71; .reg .u64 %r73; .reg .u64 %r77; .reg .u64 %r82; .reg .u64 %r89; .reg .u64 %r98; .reg .u32 %r110; .reg .u32 %r112; .reg .u64 %r116; .reg .u64 %r117; .reg .u64 %r118; .reg .pred %r119; .reg .pred %r120; .reg .u16 %r122; .reg .u16 %r123; .reg .u32 %r124; .reg .u32 %r125; .reg .pred %r126; .reg .pred %r127; .reg .pred %r128; .reg .pred %r129; .reg .pred %r130; .reg .u64 %r133; .reg .u64 %r134; .reg .u32 %r136; .reg .u32 %r137; .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 .pred %r148; .reg .u64 %r152; .reg .u64 %r156; .reg .u64 %r157; .reg .u32 %r158; .reg .pred %r159; .reg .pred %r160; .reg .u64 %r161; .reg .u64 %r162; .reg .u64 %r163; .reg .u16 %r164; .reg .u16 %r165; .reg .pred %r166; .reg .pred %r167; .reg .u64 %r168; .reg .u64 %r169; .reg .u64 %r170; .reg .u16 %r171; .reg .u16 %r172; .reg .pred %r173; .reg .u64 %r174; .reg .u64 %r175; .reg .u64 %r176; .reg .u16 %r177; .reg .u16 %r178; .reg .pred %r179; .reg .pred %r180; .reg .u64 %r181; .reg .u64 %r182; .reg .u64 %r183; .reg .u16 %r184; .reg .u16 %r185; .reg .pred %r186; .reg .u64 %r187; .reg .pred %r188; .reg .u32 %r190; .reg .u64 %r192; .reg .u64 %r193; .reg .u64 %r194; .reg .u32 %r196; .reg .u32 %r197; .reg .u32 %r199; .reg .u32 %r200; .reg .u16 %r201; .reg .u16 %r202; .reg .u16 %r203; .reg .u32 %r204; .reg .u16 %r205; .reg .pred %r206; .reg .u64 %r207; .reg .u64 %r208; .reg .u64 %r209; .reg .pred %r210; .reg .u64 %r211; .reg .u64 %r212; .reg .u64 %r213; .reg .u16 %r214; .reg .u16 %r215; .reg .pred %r216; .reg .u64 %r218; .reg .u64 %r219; .reg .u16 %r220; .reg .u16 %r221; .reg .pred %r222; .reg .pred %r223; .reg .u64 %r224; .reg .u64 %r225; .reg .u64 %r226; .reg .u16 %r227; .reg .u16 %r228; .reg .pred %r229; .reg .u32 %r231; .reg .u64 %r233; .reg .u64 %r234; .reg .u64 %r235; .reg .u32 %r237; .reg .u32 %r238; .reg .u32 %r240; .reg .u32 %r241; .reg .u16 %r242; .reg .u16 %r243; .reg .u16 %r244; .reg .u32 %r245; .reg .u16 %r246; .reg .pred %r247; .reg .pred %r248; .reg .u64 %r249; .reg .u64 %r250; .reg .u64 %r251; .reg .u16 %r252; .reg .u16 %r253; .reg .pred %r254; .reg .u64 %r259; .reg .u64 %r261; .reg .u64 %r262; .reg .pred %r264; .reg .pred %r265; .reg .u64 %r266; .reg .u64 %r268; .reg .u64 %r269; mov.u64 %r117,%ar0; mov.u64 %r118,%ar1; .loc 2 97 10 ld.s8 %r25,[%r117]; ld.s8 %r112,[%r118]; .loc 2 97 9 setp.eq.u32 %r119,%r25,0; @ %r119 bra $L67; .loc 2 97 20 setp.eq.u32 %r120,%r112,0; @ %r120 bra $L96; mov.u64 %r39,%r118; mov.u64 %r38,%r117; mov.u32 %r110,%r112; .loc 2 92 7 mov.u32 %r41,1; $L70: .loc 2 98 20 add.u64 %r38,%r38,1; .loc 2 98 33 add.u64 %r39,%r39,1; .loc 2 98 23 cvt.u16.u32 %r122,%r25; cvt.u16.u32 %r123,%r110; set.u32.eq.u16 %r124,%r122,%r123; neg.s32 %r125,%r124; .loc 2 98 8 and.b32 %r41,%r41,%r125; .loc 2 97 10 ld.s8 %r25,[%r38]; ld.s8 %r110,[%r39]; .loc 2 97 9 setp.eq.u32 %r126,%r25,0; @ %r126 bra $L69; .loc 2 97 20 setp.ne.u32 %r127,%r110,0; @ %r127 bra $L70; bra $L71; $L67: .loc 2 99 6 setp.eq.u32 %r128,%r112,0; .loc 2 100 12 selp.u64 %r116,%r117,0,%r128; bra $L66; $L69: .loc 2 99 6 setp.ne.u32 %r129,%r110,0; @ %r129 bra $L98; $L71: .loc 2 101 6 setp.ne.u32 %r130,%r41,0; @ %r130 bra $L99; .loc 2 106 23 sub.u64 %r42,%r39,%r118; .loc 2 107 14 add.u64 %r133,%r117,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r133; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r112; call (%value_in),strchr,(%out_arg1,%out_arg2); ld.param.u64 %r134,[%value_in]; } mov.u64 %r116,%r134; .loc 2 108 7 set.u32.eq.u64 %r136,%r134,0; neg.s32 %r137,%r136; .loc 2 108 31 set.u32.eq.u64 %r139,%r42,1; neg.s32 %r140,%r139; .loc 2 108 17 cvt.u16.u32 %r142,%r137; cvt.u16.u32 %r143,%r140; or.b16 %r141,%r142,%r143; .loc 2 108 6 cvt.u32.u16 %r144,%r141; cvt.u16.u8 %r145,%r144; setp.ne.u16 %r146,%r145,0; @ %r146 bra $L66; .loc 2 110 39 add.u64 %r34,%r117,%r42; .loc 2 111 5 setp.lt.u64 %r147,%r34,%r134; @ %r147 bra $L100; .loc 2 111 29 sub.u64 %r37,%r34,%r134; bra $L72; $L100: .loc 2 111 5 mov.u64 %r37,1; $L72: .loc 2 114 6 setp.gt.u64 %r148,%r42,31; @ %r148 bra $L73; .loc 1 209 12 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r118; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r42; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call (%value_in),critical_factorization,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r152,[%value_in]; } .loc 1 213 32 ld.u64 %r157,[%frame]; add.u64 %r156,%r118,%r157; .loc 1 213 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r118; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r156; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r152; call (%value_in),memcmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r158,[%value_in]; } .loc 1 213 6 setp.eq.u32 %r159,%r158,0; @ %r159 bra $L101; bra $L115; $L83: .loc 1 223 6 max.u64 %r50,%r152,%r48; .loc 1 224 10 setp.le.u64 %r160,%r42,%r50; @ %r160 bra $L76; .loc 1 225 12 add.u64 %r161,%r134,%r50; add.u64 %r162,%r161,%r52; .loc 1 224 30 add.u64 %r163,%r118,%r50; .loc 1 224 26 ld.u8 %r164,[%r162]; ld.u8 %r165,[%r163]; setp.ne.u16 %r166,%r164,%r165; @ %r166 bra $L77; $L78: .loc 1 226 6 add.u64 %r50,%r50,1; .loc 1 224 10 setp.eq.u64 %r167,%r42,%r50; @ %r167 bra $L76; .loc 1 224 30 add.u64 %r168,%r118,%r50; .loc 1 225 12 add.u64 %r169,%r50,%r52; add.u64 %r170,%r134,%r169; .loc 1 224 26 ld.u8 %r171,[%r168]; ld.u8 %r172,[%r170]; setp.eq.u16 %r173,%r171,%r172; @ %r173 bra $L78; bra $L77; $L94: .loc 1 231 34 add.u64 %r174,%r118,%r269; .loc 1 232 9 add.u64 %r175,%r134,%r52; add.u64 %r176,%r175,%r269; .loc 1 231 30 ld.u8 %r177,[%r174]; ld.u8 %r178,[%r176]; setp.ne.u16 %r179,%r177,%r178; @ ! %r179 bra $L80; bra $L102; $L103: mov.u64 %r55,%r49; $L80: .loc 1 233 3 add.u64 %r49,%r55,-1; .loc 1 231 14 setp.eq.u64 %r180,%r48,%r55; @ %r180 bra $L79; .loc 1 231 34 add.u64 %r181,%r118,%r49; .loc 1 232 9 add.u64 %r182,%r52,%r49; add.u64 %r183,%r134,%r182; .loc 1 231 30 ld.u8 %r184,[%r181]; ld.u8 %r185,[%r183]; setp.eq.u16 %r186,%r184,%r185; @ %r186 bra $L103; bra $L79; $L102: mov.u64 %r55,%r152; $L79: .loc 1 234 27 add.u64 %r187,%r48,1; .loc 1 234 11 setp.le.u64 %r188,%r187,%r55; @ %r188 bra $L81; .loc 1 235 10 add.u64 %r116,%r134,%r52; bra $L66; $L81: .loc 1 238 10 ld.u64 %r62,[%frame]; add.u64 %r52,%r52,%r62; .loc 1 239 15 sub.u64 %r48,%r42,%r62; $L93: .loc 1 244 15 mov.u64 %r37,%r63; bra $L74; $L101: .loc 1 218 14 mov.u64 %r48,0; .loc 1 219 9 mov.u64 %r52,%r48; .loc 1 230 10 add.u64 %r269,%r152,-1; $L74: .loc 1 220 14 add.u64 %r63,%r42,%r52; sub.u64 %r192,%r63,%r37; add.u64 %r193,%r134,%r37; mov.u32 %r190,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r193; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r190; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r192; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r194,[%value_in]; } .loc 1 220 13 set.u32.eq.u64 %r196,%r194,0; neg.s32 %r197,%r196; .loc 1 220 14 set.u32.ne.u64 %r199,%r63,0; neg.s32 %r200,%r199; cvt.u16.u32 %r202,%r197; cvt.u16.u32 %r203,%r200; and.b16 %r201,%r202,%r203; cvt.u32.u16 %r204,%r201; cvt.u16.u8 %r205,%r204; setp.ne.u16 %r206,%r205,0; @ %r206 bra $L83; bra $L84; $L115: .loc 1 252 16 sub.u64 %r208,%r42,%r152; max.u64 %r207,%r208,%r152; .loc 1 252 50 add.u64 %r209,%r207,1; .loc 1 252 14 st.u64 [%frame],%r209; .loc 1 253 9 mov.u64 %r73,0; bra $L85; $L104: .loc 1 258 26 mov.u64 %r71,%r152; $L87: .loc 1 260 6 add.u64 %r71,%r71,1; .loc 1 258 10 setp.eq.u64 %r210,%r42,%r71; @ %r210 bra $L86; .loc 1 258 30 add.u64 %r211,%r118,%r71; .loc 1 259 12 add.u64 %r212,%r71,%r73; add.u64 %r213,%r134,%r212; .loc 1 258 26 ld.u8 %r214,[%r211]; ld.u8 %r215,[%r213]; setp.eq.u16 %r216,%r214,%r215; @ %r216 bra $L87; bra $L88; $L95: .loc 1 266 15 add.u64 %r268,%r134,%r73; add.u64 %r218,%r268,%r77; .loc 1 265 33 add.u64 %r219,%r118,%r77; .loc 1 265 29 ld.u8 %r220,[%r218]; ld.u8 %r221,[%r219]; setp.ne.u16 %r222,%r220,%r221; @ %r222 bra $L89; $L91: .loc 1 267 3 add.u64 %r77,%r77,-1; .loc 1 265 14 setp.eq.u64 %r223,%r77,-1; @ %r223 bra $L90; .loc 1 265 33 add.u64 %r224,%r118,%r77; .loc 1 266 15 add.u64 %r225,%r73,%r77; add.u64 %r226,%r134,%r225; .loc 1 265 29 ld.u8 %r227,[%r224]; ld.u8 %r228,[%r226]; setp.eq.u16 %r229,%r227,%r228; @ %r229 bra $L91; bra $L89; $L92: .loc 1 258 26 mov.u64 %r37,%r82; $L85: .loc 1 254 14 add.u64 %r82,%r42,%r73; sub.u64 %r233,%r82,%r37; add.u64 %r234,%r134,%r37; mov.u32 %r231,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r234; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r231; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r233; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r235,[%value_in]; } set.u32.ne.u64 %r237,%r82,0; neg.s32 %r238,%r237; .loc 1 254 13 set.u32.eq.u64 %r240,%r235,0; neg.s32 %r241,%r240; .loc 1 254 14 cvt.u16.u32 %r243,%r238; cvt.u16.u32 %r244,%r241; and.b16 %r242,%r243,%r244; cvt.u32.u16 %r245,%r242; cvt.u16.u8 %r246,%r245; setp.eq.u16 %r247,%r246,0; @ %r247 bra $L84; .loc 1 258 10 setp.le.u64 %r248,%r42,%r152; @ %r248 bra $L86; .loc 1 259 12 add.u64 %r249,%r134,%r152; add.u64 %r250,%r249,%r73; .loc 1 258 30 add.u64 %r251,%r118,%r152; .loc 1 258 26 ld.u8 %r252,[%r250]; ld.u8 %r253,[%r251]; setp.eq.u16 %r254,%r252,%r253; @ %r254 bra $L104; mov.u64 %r71,%r152; bra $L88; $L84: .loc 1 276 10 mov.u64 %r116,0; .loc 2 115 12 bra $L66; $L73: .loc 2 118 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r134; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r37; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r118; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r42; call (%value_in),two_way_long_needle,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r259,[%value_in]; } mov.u64 %r116,%r259; bra $L66; $L96: .loc 2 97 20 mov.u64 %r116,%r117; bra $L66; $L98: .loc 2 100 12 mov.u64 %r116,0; bra $L66; $L99: mov.u64 %r116,%r117; bra $L66; $L90: .loc 1 269 10 mov.u64 %r116,%r268; bra $L66; $L89: .loc 1 270 10 ld.u64 %r261,[%frame]; add.u64 %r73,%r73,%r261; bra $L92; $L77: sub.u64 %r262,%r52,%r152; add.u64 %r89,%r262,1; .loc 1 243 10 add.u64 %r52,%r89,%r50; .loc 1 244 15 mov.u64 %r48,0; bra $L93; $L76: .loc 1 230 10 mov.u64 %r55,%r269; .loc 1 231 14 setp.gt.u64 %r264,%r152,%r48; @ %r264 bra $L94; mov.u64 %r55,%r152; bra $L79; $L86: .loc 1 264 10 add.u64 %r77,%r152,-1; .loc 1 265 14 setp.ne.u64 %r265,%r77,-1; @ %r265 bra $L95; add.u64 %r268,%r134,%r73; bra $L90; $L88: sub.u64 %r266,%r73,%r152; add.u64 %r98,%r266,1; .loc 1 273 8 add.u64 %r73,%r71,%r98; bra $L92; $L66: .loc 2 121 1 mov.u64 %value,%r116; st.param.u64 [%value_out],%value; ret; } lib_a-strtod.o/ 1591654539 399 399 100644 61417 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: sulp .func (.param .f64 %value_out) sulp (.param .u64 %in_ar0, .param .u32 %in_ar1); .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 .visible .func (.param .f64 %value_out) strtod (.param .u64 %in_ar0, .param .u64 %in_ar1); // 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: __mprec_bigtens .extern .const .align 8 .u64 __mprec_bigtens[5]; // BEGIN GLOBAL VAR DECL: __mprec_tens .extern .const .align 8 .u64 __mprec_tens[25]; // BEGIN GLOBAL FUNCTION DECL: __ulp .extern .func (.param .f64 %value_out) __ulp (.param .f64 %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); // 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: _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: strncmp .extern .func (.param .u32 %value_out) strncmp (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // 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: __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: __ratio .extern .func (.param .f64 %value_out) __ratio (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: nanf .extern .func (.param .f32 %value_out) nanf (.param .u64 %in_ar0); // BEGIN VAR DEF: fpi$2595 .const .align 4 .u32 fpi$2595[5] = {53,4294966222,971,1,0 }; // BEGIN VAR DEF: fpinan$2631 .const .align 4 .u32 fpinan$2631[5] = {52,4294966222,971,1,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[3] = {97,110,0 }; // 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: tinytens .const .align 8 .u64 tinytens[5] = {4367597403136100796,4128101167230658355,3649340653511681853,2691949749288605597,1254259266780163907 }; // BEGIN FUNCTION DEF: sulp .func (.param .f64 %value_out) sulp (.param .u64 %in_ar0, .param .u32 %in_ar1) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u32 %r31; .reg .f64 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u32 %r36; .reg .f64 %r37; .reg .f64 %r38; .reg .pred %r39; .reg .u64 %r40; .reg .u32 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .pred %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u64 %r48; .reg .u64 %r52; .reg .f64 %r53; mov.u64 %r34,%ar0; ld.u64 %r35,[%r34]; mov.u32 %r36,%ar1; .loc 1 163 14 mov.b64 %r37,%r35; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r37; call (%value_in),__ulp,(%out_arg1); ld.param.f64 %r38,[%value_in]; } mov.f64 %r33,%r38; .loc 1 164 12 setp.eq.u32 %r39,%r36,0; @ %r39 bra $L1; .loc 1 164 40 shr.u64 %r40,%r35,32; .loc 1 164 62 cvt.u32.u64 %r42,%r40; shr.u32 %r41,%r42,20; and.b32 %r43,%r41,2047; .loc 1 164 36 mov.u32 %r44,107; sub.u32 %r31,%r44,%r43; .loc 1 164 20 setp.le.s32 %r45,%r31,0; @ %r45 bra $L1; .loc 1 166 32 shl.b32 %r46,%r31,20; .loc 1 166 27 add.u32 %r47,%r46,1072693248; .loc 1 166 19 cvt.u64.u32 %r48,%r47; .loc 1 168 19 shl.b64 %r52,%r48,32; .loc 1 170 19 mov.b64 %r53,%r52; mul.f64 %r33,%r33,%r53; $L1: .loc 1 171 9 mov.f64 %value,%r33; 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]; .local .align 16 .b8 %frame_ar[40]; .reg .u64 %frame; cvta.local.u64 %frame,%frame_ar; .reg .u64 %r22; .reg .u32 %r23; .reg .u64 %r24; .reg .u32 %r26; .reg .u32 %r27; .reg .u32 %r29; .reg .u64 %r30; .reg .u32 %r32; .reg .u32 %r39; .reg .u64 %r50; .reg .u64 %r51; .reg .u64 %r59; .reg .f64 %r69; .reg .u32 %r75; .reg .u64 %r81; .reg .u32 %r87; .reg .u64 %r88; .reg .u64 %r93; .reg .f64 %r99; .reg .f64 %r127; .reg .u32 %r128; .reg .u32 %r134; .reg .u32 %r137; .reg .u32 %r157; .reg .u64 %r158; .reg .u32 %r159; .reg .u32 %r173; .reg .u32 %r175; .reg .u32 %r193; .reg .u32 %r194; .reg .f64 %r196; .reg .f64 %r197; .reg .f64 %r199; .reg .f64 %r207; .reg .u64 %r210; .reg .f64 %r211; .reg .f64 %r216; .reg .u32 %r219; .reg .u32 %r220; .reg .u32 %r221; .reg .u32 %r222; .reg .u32 %r223; .reg .u64 %r224; .reg .u32 %r225; .reg .u32 %r226; .reg .u32 %r227; .reg .u32 %r228; .reg .u32 %r229; .reg .u64 %r230; .reg .u32 %r232; .reg .u32 %r233; .reg .u64 %r234; .reg .u32 %r235; .reg .u32 %r236; .reg .f64 %r237; .reg .u64 %r238; .reg .u32 %r239; .reg .u32 %r240; .reg .u64 %r241; .reg .u64 %r243; .reg .u64 %r244; .reg .u32 %r245; .reg .u32 %r246; .reg .u32 %r247; .reg .f64 %r248; .reg .f64 %r249; .reg .f64 %r250; .reg .u32 %r251; .reg .u64 %r254; .reg .u64 %r257; .reg .u64 %r259; .reg .u32 %r260; .reg .u32 %r261; .reg .u32 %r263; .reg .u64 %r264; .reg .u64 %r266; .reg .u32 %r267; .reg .u32 %r269; .reg .u32 %r270; .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 %r285; .reg .u32 %r286; .reg .u32 %r287; .reg .u32 %r290; .reg .u32 %r292; .reg .u32 %r297; .reg .u32 %r298; .reg .f64 %r301; .reg .u64 %r303; .reg .u32 %r305; .reg .u32 %r306; .reg .u32 %r311; .reg .u32 %r312; .reg .u64 %r315; .reg .u32 %r317; .reg .u32 %r318; .reg .u32 %r335; .reg .u64 %r337; .reg .u32 %r341; .reg .u32 %r342; .reg .f64 %r344; .reg .u32 %r345; .reg .u64 %r347; .reg .f64 %r348; .reg .u32 %r349; .reg .u32 %r350; .reg .u64 %r351; .reg .u64 %r355; .reg .u32 %r359; .reg .u64 %r365; .reg .u64 %r366; .reg .f64 %r368; .reg .u64 %r369; .reg .u64 %r370; .reg .u64 %r371; .reg .u64 %r372; .reg .u16 %r373; .reg .pred %r374; .reg .pred %r376; .reg .pred %r377; .reg .pred %r379; .reg .pred %r381; .reg .pred %r383; .reg .pred %r384; .reg .u16 %r385; .reg .pred %r386; .reg .u16 %r387; .reg .pred %r388; .reg .pred %r390; .reg .u64 %r393; .reg .u64 %r397; .reg .u64 %r398; .reg .u64 %r399; .reg .u32 %r400; .reg .pred %r401; .reg .pred %r402; .reg .pred %r403; .reg .pred %r404; .reg .u32 %r406; .reg .u64 %r410; .reg .pred %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 .pred %r451; .reg .pred %r452; .reg .u32 %r454; .reg .u32 %r455; .reg .u32 %r456; .reg .u32 %r459; .reg .u32 %r460; .reg .u32 %r461; .reg .pred %r464; .reg .u64 %r466; .reg .u64 %r467; .reg .u64 %r468; .reg .u64 %r470; .reg .u64 %r472; .reg .u64 %r474; .reg .u32 %r475; .reg .pred %r476; .reg .u64 %r478; .reg .u64 %r479; .reg .u64 %r480; .reg .u64 %r481; .reg .pred %r482; .reg .pred %r483; .reg .pred %r484; .reg .u32 %r485; .reg .pred %r486; .reg .pred %r487; .reg .pred %r488; .reg .pred %r489; .reg .u32 %r491; .reg .u32 %r492; .reg .pred %r495; .reg .u32 %r497; .reg .u32 %r498; .reg .pred %r500; .reg .pred %r501; .reg .u32 %r503; .reg .u32 %r504; .reg .u32 %r505; .reg .pred %r506; .reg .u32 %r508; .reg .u32 %r509; .reg .u32 %r510; .reg .u64 %r511; .reg .u32 %r512; .reg .pred %r513; .reg .u32 %r514; .reg .pred %r515; .reg .u32 %r516; .reg .u32 %r517; .reg .pred %r518; .reg .u64 %r519; .reg .u16 %r520; .reg .pred %r521; .reg .pred %r523; .reg .u64 %r524; .reg .u32 %r525; .reg .pred %r526; .reg .pred %r527; .reg .u64 %r528; .reg .pred %r529; .reg .u32 %r530; .reg .pred %r531; .reg .u64 %r532; .reg .u32 %r533; .reg .pred %r534; .reg .u32 %r536; .reg .u32 %r537; .reg .u32 %r538; .reg .u32 %r539; .reg .pred %r540; .reg .u64 %r541; .reg .u32 %r543; .reg .u32 %r544; .reg .u32 %r546; .reg .u32 %r547; .reg .u16 %r548; .reg .u16 %r549; .reg .u16 %r550; .reg .u32 %r551; .reg .u16 %r552; .reg .pred %r553; .reg .pred %r554; .reg .pred %r555; .reg .u32 %r556; .reg .pred %r557; .reg .pred %r558; .reg .pred %r559; .reg .pred %r560; .reg .pred %r561; .reg .pred %r562; .reg .pred %r563; .reg .u32 %r564; .reg .pred %r565; .reg .pred %r566; .reg .pred %r567; .reg .u32 %r568; .reg .pred %r569; .reg .pred %r570; .reg .pred %r571; .reg .u64 %r572; .reg .u64 %r573; .reg .u32 %r576; .reg .pred %r577; .reg .pred %r578; .reg .pred %r579; .reg .u64 %r580; .reg .u16 %r581; .reg .u32 %r582; .reg .pred %r583; .reg .u64 %r585; .reg .u64 %r587; .reg .u32 %r588; .reg .pred %r589; .reg .u32 %r590; .reg .u32 %r591; .reg .u64 %r592; .reg .u64 %r596; .reg .u64 %r597; .reg .pred %r601; .reg .pred %r602; .reg .pred %r603; .reg .f64 %r604; .reg .u64 %r605; .reg .u32 %r606; .reg .u64 %r607; .reg .u64 %r608; .reg .u64 %r609; .reg .f64 %r610; .reg .f64 %r611; .reg .pred %r612; .reg .pred %r613; .reg .pred %r614; .reg .pred %r615; .reg .u64 %r616; .reg .u64 %r617; .reg .u64 %r618; .reg .u64 %r619; .reg .f64 %r620; .reg .f64 %r621; .reg .u32 %r622; .reg .u32 %r623; .reg .pred %r624; .reg .u32 %r625; .reg .u64 %r626; .reg .u64 %r627; .reg .u64 %r628; .reg .u64 %r629; .reg .f64 %r630; .reg .f64 %r631; .reg .f64 %r632; .reg .u32 %r634; .reg .u64 %r635; .reg .u64 %r636; .reg .u64 %r637; .reg .f64 %r638; .reg .pred %r639; .reg .u64 %r640; .reg .u32 %r641; .reg .u64 %r642; .reg .u64 %r643; .reg .u64 %r644; .reg .f64 %r645; .reg .f64 %r646; .reg .u32 %r647; .reg .pred %r648; .reg .pred %r649; .reg .u64 %r650; .reg .u64 %r651; .reg .u64 %r652; .reg .u64 %r653; .reg .f64 %r654; .reg .f64 %r655; .reg .f64 %r656; .reg .pred %r657; .reg .pred %r658; .reg .u32 %r659; .reg .u32 %r660; .reg .u32 %r661; .reg .pred %r662; .reg .u32 %r663; .reg .pred %r664; .reg .f64 %r665; .reg .pred %r666; .reg .pred %r667; .reg .u64 %r668; .reg .u32 %r669; .reg .u32 %r670; .reg .u64 %r671; .reg .u64 %r672; .reg .u64 %r673; .reg .u64 %r676; .reg .u64 %r677; .reg .u64 %r678; .reg .f64 %r679; .reg .f64 %r680; .reg .u64 %r682; .reg .pred %r683; .reg .pred %r684; .reg .u32 %r685; .reg .u64 %r686; .reg .u64 %r687; .reg .u64 %r688; .reg .pred %r690; .reg .pred %r691; .reg .u64 %r692; .reg .u64 %r693; .reg .u64 %r694; .reg .u64 %r695; .reg .f64 %r696; .reg .f64 %r697; .reg .f64 %r698; .reg .pred %r699; .reg .pred %r700; .reg .u32 %r702; .reg .pred %r703; .reg .f64 %r704; .reg .pred %r705; .reg .pred %r706; .reg .u32 %r709; .reg .u32 %r710; .reg .u32 %r711; .reg .pred %r712; .reg .pred %r713; .reg .pred %r715; .reg .u32 %r718; .reg .u32 %r719; .reg .u32 %r720; .reg .u32 %r721; .reg .u64 %r722; .reg .u64 %r723; .reg .u64 %r724; .reg .u32 %r726; .reg .u32 %r727; .reg .u32 %r728; .reg .u32 %r729; .reg .u64 %r730; .reg .u64 %r731; .reg .f64 %r733; .reg .pred %r734; .reg .u32 %r735; .reg .u64 %r741; .reg .pred %r742; .reg .u32 %r743; .reg .pred %r744; .reg .u32 %r747; .reg .u64 %r748; .reg .pred %r749; .reg .u64 %r753; .reg .u64 %r754; .reg .u64 %r755; .reg .u64 %r757; .reg .u64 %r758; .reg .u64 %r764; .reg .pred %r765; .reg .u32 %r767; .reg .u64 %r768; .reg .pred %r769; .reg .pred %r770; .reg .u32 %r771; .reg .u32 %r772; .reg .u32 %r773; .reg .pred %r774; .reg .u32 %r775; .reg .pred %r776; .reg .u32 %r777; .reg .u32 %r778; .reg .u32 %r779; .reg .u32 %r780; .reg .u32 %r781; .reg .pred %r782; .reg .u64 %r787; .reg .pred %r788; .reg .u64 %r792; .reg .u64 %r793; .reg .pred %r794; .reg .u64 %r797; .reg .pred %r798; .reg .u64 %r803; .reg .u64 %r804; .reg .pred %r805; .reg .u64 %r809; .reg .pred %r810; .reg .pred %r811; .reg .u64 %r815; .reg .pred %r816; .reg .pred %r817; .reg .u64 %r821; .reg .pred %r822; .reg .u64 %r826; .reg .u64 %r827; .reg .pred %r828; .reg .u32 %r829; .reg .u32 %r832; .reg .pred %r833; .reg .pred %r834; .reg .u64 %r835; .reg .u64 %r836; .reg .pred %r837; .reg .u32 %r839; .reg .u32 %r840; .reg .pred %r841; .reg .u32 %r842; .reg .pred %r843; .reg .u32 %r844; .reg .pred %r845; .reg .u32 %r848; .reg .u64 %r849; .reg .u32 %r852; .reg .pred %r853; .reg .pred %r854; .reg .u64 %r856; .reg .u32 %r857; .reg .pred %r858; .reg .pred %r860; .reg .u32 %r861; .reg .u32 %r862; .reg .u32 %r863; .reg .u32 %r864; .reg .pred %r865; .reg .u64 %r866; .reg .pred %r867; .reg .u32 %r868; .reg .u32 %r869; .reg .u64 %r870; .reg .u64 %r875; .reg .u64 %r876; .reg .pred %r877; .reg .pred %r880; .reg .pred %r881; .reg .u32 %r883; .reg .u32 %r884; .reg .u64 %r885; .reg .u64 %r886; .reg .pred %r890; .reg .u64 %r891; .reg .u32 %r892; .reg .u32 %r893; .reg .pred %r894; .reg .u32 %r895; .reg .u32 %r896; .reg .pred %r897; .reg .u64 %r901; .reg .f64 %r902; .reg .u64 %r905; .reg .f64 %r906; .reg .pred %r907; .reg .f64 %r910; .reg .pred %r911; .reg .pred %r912; .reg .u64 %r913; .reg .pred %r914; .reg .pred %r915; .reg .pred %r916; .reg .pred %r917; .reg .u64 %r918; .reg .pred %r919; .reg .u32 %r920; .reg .u64 %r921; .reg .u64 %r922; .reg .u64 %r923; .reg .f64 %r926; .reg .u64 %r928; .reg .u32 %r929; .reg .pred %r930; .reg .u64 %r931; .reg .pred %r932; .reg .u64 %r933; .reg .u64 %r934; .reg .u64 %r935; .reg .u32 %r941; .reg .u32 %r942; .reg .u16 %r943; .reg .u16 %r945; .reg .u32 %r946; .reg .u16 %r947; .reg .pred %r948; .reg .pred %r949; .reg .pred %r950; .reg .pred %r951; .reg .u64 %r952; .reg .u32 %r953; .reg .u32 %r954; .reg .u32 %r955; .reg .u64 %r956; .reg .u64 %r957; .reg .u64 %r958; .reg .f64 %r961; .reg .f64 %r962; .reg .u32 %r964; .reg .u32 %r966; .reg .u32 %r967; .reg .u16 %r971; .reg .u16 %r972; .reg .u32 %r974; .reg .u16 %r975; .reg .pred %r976; .reg .u32 %r977; .reg .pred %r978; .reg .u64 %r979; .reg .pred %r980; .reg .pred %r981; .reg .pred %r982; .reg .pred %r983; .reg .u64 %r986; .reg .pred %r996; .reg .u32 %r997; .reg .pred %r1008; .reg .u64 %r1009; .reg .pred %r1010; .reg .u32 %r1012; .reg .u32 %r1013; .reg .u32 %r1014; .reg .pred %r1015; .reg .u32 %r1016; .reg .u64 %r1017; .reg .u32 %r1018; .reg .u64 %r1019; .reg .u64 %r1020; .reg .pred %r1021; .reg .u32 %r1022; .reg .u64 %r1025; .reg .u64 %r1026; .reg .pred %r1027; .reg .pred %r1028; .reg .u32 %r1029; .reg .u32 %r1030; .reg .u16 %r1031; .reg .u32 %r1032; .reg .u32 %r1033; .reg .u16 %r1034; .reg .u32 %r1035; .reg .u32 %r1036; mov.u64 %r369,%ar0; mov.u64 %r370,%ar1; mov.u64 %r371,%ar2; .loc 1 252 11 mov.u64 %r372,0; st.u64 [%frame+8],%r372; .loc 1 265 11 mov.u64 %r366,%r372; .loc 1 266 8 st.u64 [%frame+16],%r370; mov.u64 %r230,%r370; $L12: mov.u64 %r355,%r230; .loc 1 266 27 ld.s8 %r23,[%r230]; cvt.u16.u32 %r373,%r23; setp.gt.s16 %r374,%r373,13; @ %r374 bra $L7; setp.ge.s16 %r376,%r373,9; @ %r376 bra $L8; setp.eq.u32 %r377,%r23,0; @ %r377 bra $L9; .loc 1 264 7 mov.u32 %r236,0; bra $L10; $L7: setp.eq.u16 %r379,%r373,43; @ %r379 bra $L164; setp.eq.u16 %r381,%r373,45; @ %r381 bra $L165; setp.eq.u16 %r383,%r373,32; @ %r383 bra $L8; mov.u32 %r236,0; bra $L10; $L164: mov.u32 %r236,0; bra $L11; $L165: .loc 1 268 9 mov.u32 %r236,1; $L11: .loc 1 271 9 add.u64 %r24,%r230,1; .loc 1 271 7 st.u64 [%frame+16],%r24; .loc 1 271 8 ld.s8 %r23,[%r230+1]; .loc 1 271 7 setp.ne.u32 %r384,%r23,0; @ %r384 bra $L166; bra $L9; $L8: add.u64 %r230,%r230,1; .loc 1 266 16 st.u64 [%frame+16],%r230; .loc 1 266 20 bra $L12; $L166: mov.u64 %r355,%r24; $L10: .loc 1 287 5 cvt.u16.u32 %r385,%r23; setp.ne.u16 %r386,%r385,48; @ %r386 bra $L167; .loc 1 293 11 ld.s8 %r27,[%r355+1]; cvt.u16.u32 %r387,%r27; setp.eq.u16 %r388,%r387,88; @ %r388 bra $L14; setp.ne.u16 %r390,%r387,120; @ %r390 bra $L15; $L14: .loc 1 310 16 add.u64 %r397,%frame,8; add.u64 %r398,%frame,24; add.u64 %r399,%frame,16; cvta.const.u64 %r393,fpi$2595; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r399; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r393; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r398; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r397; .param .u32 %out_arg6; st.param.u32 [%out_arg6],%r236; call (%value_in),__gethex,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); ld.param.u32 %r400,[%value_in]; } .loc 1 310 57 and.b32 %r29,%r400,7; setp.eq.u32 %r401,%r29,0; @ %r401 bra $L168; setp.ne.u32 %r402,%r29,6; @ %r402 bra $L17; add.u64 %r347,%r355,1; .loc 1 1249 5 setp.eq.u64 %r403,%r371,0; @ %r403 bra $L18; .loc 1 1250 7 st.u64 [%r371],%r347; mov.f64 %r368,0d0000000000000000; bra $L6; $L17: .loc 1 318 9 ld.u64 %r30,[%frame+8]; .loc 1 318 8 setp.eq.u64 %r404,%r30,0; @ %r404 bra $L20; .loc 1 319 6 mov.u32 %r406,53; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r406; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r30; call __copybits,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 320 6 ld.u64 %r410,[%frame+8]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; call _Bfree,(%out_arg1,%out_arg2); } $L20: setp.eq.u32 %r411,%r29,3; @ %r411 bra $L21; setp.gt.s32 %r412,%r29,3; @ %r412 bra $L22; setp.eq.u32 %r413,%r29,1; @ %r413 bra $L23; setp.eq.u32 %r414,%r29,2; @ %r414 bra $L24; bra $L25; $L22: setp.eq.u32 %r415,%r29,4; @ %r415 bra $L26; setp.eq.u32 %r416,%r29,5; @ ! %r416 bra $L25; bra $L23; $L24: .loc 1 192 9 ld.u32 %r420,[%frame+4]; shl.b64 %r421,%r420,32; ld.u32 %r422,[%frame]; or.b64 %r366,%r422,%r421; bra $L25; $L23: .loc 1 322 5 ld.u32 %r32,[%frame+24]; .loc 1 198 20 ld.u32 %r428,[%frame+4]; and.b32 %r427,%r428,-1048577; .loc 1 198 49 add.u32 %r429,%r32,1075; .loc 1 198 55 shl.b32 %r430,%r429,20; .loc 1 198 33 or.b32 %r431,%r427,%r430; .loc 1 198 9 cvt.u64.u32 %r432,%r431; shl.b64 %r433,%r432,32; ld.u32 %r434,[%frame]; or.b64 %r366,%r434,%r433; bra $L25; $L21: .loc 1 202 9 mov.u64 %r366,9218868437227405312; bra $L25; $L26: .loc 1 208 9 mov.u64 %r366,9223372036854775807; $L25: .loc 1 210 8 and.b32 %r438,%r400,8; .loc 1 210 5 setp.ne.u32 %r439,%r438,0; @ %r439 bra $L27; mov.b64 %r368,%r366; bra $L28; $L27: .loc 1 211 9 shr.u64 %r440,%r366,32; cvt.u32.u64 %r442,%r440; or.b32 %r441,%r442,-2147483648; cvt.u64.u32 %r443,%r441; shl.b64 %r444,%r443,32; and.b64 %r445,%r366,4294967295; or.b64 %r366,%r445,%r444; mov.b64 %r368,%r366; bra $L28; $L168: .loc 1 310 57 mov.f64 %r368,0d0000000000000000; bra $L28; $L15: add.u64 %r234,%r355,1; $L29: .loc 1 329 10 mov.u64 %r355,%r234; .loc 1 329 8 st.u64 [%frame+16],%r355; add.u64 %r234,%r355,1; .loc 1 329 9 ld.s8 %r23,[%r355]; .loc 1 329 8 cvt.u16.u32 %r447,%r23; setp.eq.u16 %r448,%r447,48; @ %r448 bra $L29; .loc 1 330 6 setp.ne.u32 %r449,%r23,0; @ %r449 bra $L169; $L57: .loc 1 693 18 mov.f64 %r368,0d0000000000000000; bra $L28; $L167: .loc 1 264 13 mov.u32 %r235,0; bra $L13; $L169: .loc 1 328 7 mov.u32 %r235,1; $L13: .loc 1 335 35 add.u32 %r1018,%r23,-48; setp.gt.u32 %r451,%r1018,9; @ %r451 bra $L30; add.u64 %r210,%r355,1; .loc 1 334 8 mov.u32 %r239,0; .loc 1 334 4 mov.u32 %r194,%r239; .loc 1 335 9 mov.u32 %r261,%r239; $L33: .loc 1 336 6 setp.gt.s32 %r452,%r261,8; @ %r452 bra $L31; .loc 1 337 10 shl.b32 %r454,%r194,2; add.u32 %r455,%r454,%r194; add.u32 %r456,%r455,%r455; .loc 1 337 6 add.u32 %r194,%r1018,%r456; bra $L32; $L31: .loc 1 339 10 shl.b32 %r459,%r239,2; add.u32 %r460,%r459,%r239; add.u32 %r461,%r460,%r460; .loc 1 339 6 add.u32 %r239,%r1018,%r461; $L32: .loc 1 335 50 add.u32 %r261,%r261,1; .loc 1 335 55 st.u64 [%frame+16],%r210; .loc 1 335 24 ld.s8 %r23,[%r210]; add.u64 %r210,%r210,1; .loc 1 335 35 add.u32 %r1018,%r23,-48; setp.le.u32 %r464,%r1018,9; @ %r464 bra $L33; .loc 1 335 22 mov.u32 %r226,%r23; bra $L34; $L30: mov.u32 %r226,%r23; .loc 1 334 8 mov.u32 %r239,0; .loc 1 334 4 mov.u32 %r194,%r239; .loc 1 335 9 mov.u32 %r261,%r239; $L34: .loc 1 342 16 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; call (%value_in),_localeconv_r,(%out_arg1); ld.param.u64 %r466,[%value_in]; } .loc 1 341 6 ld.u64 %r467,[%r466]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r467; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r468,[%value_in]; } .loc 1 341 18 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; call (%value_in),_localeconv_r,(%out_arg1); ld.param.u64 %r470,[%value_in]; } .loc 1 341 6 ld.u64 %r474,[%frame+16]; ld.u64 %r472,[%r470]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r474; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r472; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r468; call (%value_in),strncmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r475,[%value_in]; } .loc 1 341 5 setp.ne.u32 %r476,%r475,0; @ %r476 bra $L170; .loc 1 345 22 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; call (%value_in),_localeconv_r,(%out_arg1); ld.param.u64 %r478,[%value_in]; } .loc 1 345 14 ld.u64 %r479,[%r478]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r479; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r480,[%value_in]; } .loc 1 345 11 ld.u64 %r481,[%frame+16]; add.u64 %r50,%r481,%r480; st.u64 [%frame+16],%r50; .loc 1 345 5 ld.s8 %r226,[%r50]; .loc 1 346 6 setp.ne.u32 %r482,%r261,0; @ %r482 bra $L171; .loc 1 347 4 setp.ne.u32 %r483,%r226,48; @ %r483 bra $L172; add.u64 %r238,%r50,1; .loc 1 264 18 mov.u32 %r26,%r261; $L38: .loc 1 348 7 add.u32 %r26,%r26,1; .loc 1 347 22 st.u64 [%frame+16],%r238; ld.s8 %r226,[%r238]; add.u64 %r238,%r238,1; .loc 1 347 4 setp.eq.u32 %r484,%r226,48; @ %r484 bra $L38; bra $L37; $L172: .loc 1 264 18 mov.u32 %r26,%r261; $L37: .loc 1 349 16 add.u32 %r485,%r226,-49; .loc 1 349 7 setp.gt.u32 %r486,%r485,8; @ %r486 bra $L173; .loc 1 350 8 ld.u64 %r355,[%frame+16]; .loc 1 360 10 add.u32 %r359,%r226,-48; .loc 1 361 8 add.u32 %r232,%r26,1; mov.u64 %r158,%r355; mov.u32 %r350,1; bra $L39; $L40: .loc 1 359 6 add.u32 %r26,%r26,1; .loc 1 360 10 mov.u32 %r359,%r512; ld.u64 %r158,[%frame+16]; .loc 1 360 7 setp.eq.u32 %r487,%r512,0; @ %r487 bra $L41; add.u32 %r342,%r350,1; .loc 1 361 8 add.u32 %r232,%r232,%r26; .loc 1 362 5 setp.eq.u32 %r488,%r26,1; @ %r488 bra $L174; mov.u32 %r225,%r350; add.u32 %r240,%r26,%r225; add.u32 %r341,%r240,-1; $L45: .loc 1 363 9 setp.gt.s32 %r489,%r225,8; @ %r489 bra $L43; .loc 1 364 9 shl.b32 %r491,%r194,2; add.u32 %r492,%r491,%r194; add.u32 %r194,%r492,%r492; add.u32 %r1022,%r225,1; bra $L44; $L43: .loc 1 365 14 add.u32 %r1022,%r225,1; setp.gt.s32 %r495,%r1022,16; @ %r495 bra $L44; .loc 1 366 9 shl.b32 %r497,%r239,2; add.u32 %r498,%r497,%r239; add.u32 %r239,%r498,%r498; $L44: mov.u32 %r225,%r1022; .loc 1 362 5 setp.ne.u32 %r500,%r1022,%r341; @ %r500 bra $L45; mov.u32 %r349,%r1022; mov.u32 %r350,%r240; bra $L42; $L174: mov.u32 %r349,%r350; mov.u32 %r350,%r342; $L42: .loc 1 367 8 setp.gt.s32 %r501,%r349,8; @ %r501 bra $L46; $L39: .loc 1 368 12 shl.b32 %r503,%r194,2; add.u32 %r504,%r503,%r194; add.u32 %r505,%r504,%r504; .loc 1 368 8 add.u32 %r194,%r359,%r505; .loc 1 371 8 mov.u32 %r26,%r475; bra $L41; $L46: mov.u32 %r26,%r475; .loc 1 369 13 setp.gt.s32 %r506,%r350,16; @ %r506 bra $L41; .loc 1 370 12 shl.b32 %r508,%r239,2; add.u32 %r509,%r508,%r239; add.u32 %r510,%r509,%r509; .loc 1 370 8 add.u32 %r239,%r512,%r510; .loc 1 371 8 mov.u32 %r26,%r475; $L41: .loc 1 357 36 add.u64 %r511,%r158,1; .loc 1 357 33 st.u64 [%frame+16],%r511; ld.s8 %r226,[%r158+1]; bra $L36; $L171: .loc 1 264 18 mov.u32 %r26,%r475; .loc 1 335 14 mov.u32 %r232,%r475; mov.u32 %r350,%r261; $L36: .loc 1 357 18 add.u32 %r512,%r226,-48; .loc 1 357 3 setp.le.u32 %r513,%r512,9; @ %r513 bra $L40; .loc 1 344 9 mov.u32 %r227,1; .loc 1 375 2 bra $L35; $L170: mov.u32 %r350,%r261; .loc 1 264 18 mov.u32 %r26,0; .loc 1 335 14 mov.u32 %r232,%r26; .loc 1 264 26 mov.u32 %r227,%r26; bra $L35; $L173: .loc 1 335 14 mov.u32 %r232,%r261; mov.u32 %r350,%r261; .loc 1 344 9 mov.u32 %r227,1; $L35: .loc 1 377 20 and.b32 %r514,%r226,-33; .loc 1 377 5 setp.ne.u32 %r515,%r514,69; @ %r515 bra $L175; .loc 1 378 18 or.b32 %r516,%r350,%r26; or.b32 %r517,%r516,%r235; .loc 1 378 6 setp.eq.u32 %r518,%r517,0; @ %r518 bra $L9; .loc 1 381 7 ld.u64 %r370,[%frame+16]; .loc 1 383 15 add.u64 %r519,%r370,1; .loc 1 383 3 st.u64 [%frame+16],%r519; .loc 1 383 14 ld.s8 %r75,[%r370+1]; cvt.u16.u32 %r520,%r75; setp.eq.u16 %r521,%r520,43; @ %r521 bra $L176; setp.eq.u16 %r523,%r520,45; @ %r523 bra $L177; .loc 1 383 12 mov.u32 %r226,%r75; .loc 1 382 9 mov.u32 %r228,0; bra $L50; $L176: mov.u32 %r228,0; bra $L49; $L177: .loc 1 385 11 mov.u32 %r228,1; $L49: .loc 1 387 10 add.u64 %r524,%r370,2; .loc 1 387 7 st.u64 [%frame+16],%r524; ld.s8 %r226,[%r370+2]; $L50: .loc 1 389 16 add.u32 %r525,%r226,-48; .loc 1 389 6 setp.gt.u32 %r526,%r525,9; @ %r526 bra $L51; .loc 1 390 9 setp.ne.u32 %r527,%r226,48; @ %r527 bra $L52; ld.u64 %r528,[%frame+16]; add.u64 %r81,%r528,1; $L53: .loc 1 391 7 st.u64 [%frame+16],%r81; .loc 1 391 9 ld.s8 %r226,[%r81]; add.u64 %r81,%r81,1; .loc 1 390 9 setp.eq.u32 %r529,%r226,48; @ %r529 bra $L53; $L52: .loc 1 392 16 add.u32 %r530,%r226,-49; .loc 1 392 7 setp.gt.u32 %r531,%r530,8; @ %r531 bra $L178; .loc 1 393 7 add.u32 %r251,%r226,-48; .loc 1 394 8 ld.u64 %r266,[%frame+16]; .loc 1 395 17 add.u64 %r532,%r266,1; .loc 1 395 10 st.u64 [%frame+16],%r532; .loc 1 395 16 ld.s8 %r226,[%r266+1]; .loc 1 395 29 add.u32 %r533,%r226,-48; setp.gt.u32 %r534,%r533,9; @ %r534 bra $L54; add.u64 %r51,%r266,2; $L55: .loc 1 396 12 shl.b32 %r536,%r251,2; add.u32 %r537,%r536,%r251; add.u32 %r538,%r537,%r537; .loc 1 396 15 add.u32 %r87,%r538,%r226; .loc 1 396 8 add.u32 %r251,%r87,-48; .loc 1 395 17 mov.u64 %r88,%r51; .loc 1 395 10 st.u64 [%frame+16],%r51; .loc 1 395 16 ld.s8 %r226,[%r51]; add.u64 %r51,%r51,1; .loc 1 395 29 add.u32 %r539,%r226,-48; setp.le.u32 %r540,%r539,9; @ %r540 bra $L55; .loc 1 397 11 sub.u64 %r541,%r88,%r266; .loc 1 397 8 set.u32.gt.s64 %r543,%r541,8; neg.s32 %r544,%r543; .loc 1 397 20 set.u32.gt.s32 %r546,%r251,19999; neg.s32 %r547,%r546; cvt.u16.u32 %r549,%r544; cvt.u16.u32 %r550,%r547; or.b16 %r548,%r549,%r550; cvt.u32.u16 %r551,%r548; cvt.u16.u8 %r552,%r551; setp.eq.u16 %r553,%r552,0; .loc 1 401 8 selp.u32 %r251,%r251,19999,%r553; $L54: .loc 1 404 8 setp.eq.u32 %r554,%r228,0; @ %r554 bra $L47; .loc 1 405 8 neg.s32 %r251,%r251; bra $L47; $L51: .loc 1 411 6 st.u64 [%frame+16],%r370; .loc 1 376 4 mov.u32 %r251,0; bra $L47; $L175: mov.u32 %r251,0; bra $L47; $L178: .loc 1 408 7 mov.u32 %r251,0; $L47: .loc 1 413 5 setp.ne.u32 %r555,%r350,0; @ %r555 bra $L56; .loc 1 414 11 or.b32 %r556,%r26,%r235; .loc 1 414 6 setp.ne.u32 %r557,%r556,0; @ %r557 bra $L57; .loc 1 420 7 setp.ne.u32 %r558,%r227,0; @ %r558 bra $L9; setp.eq.u32 %r559,%r226,78; @ %r559 bra $L58; setp.gt.s32 %r560,%r226,78; @ %r560 bra $L59; setp.eq.u32 %r561,%r226,73; @ %r561 bra $L60; bra $L9; $L59: setp.eq.u32 %r562,%r226,105; @ %r562 bra $L60; setp.eq.u32 %r563,%r226,110; @ %r563 bra $L58; bra $L9; $L60: .loc 1 222 15 ld.u64 %r303,[%frame+16]; cvta.const.u64 %r351,$LC0+1; .loc 1 224 12 mov.u32 %r306,110; bra $L62; $L179: .loc 1 224 7 mov.u64 %r303,%r93; $L62: .loc 1 225 6 add.u64 %r93,%r303,1; .loc 1 225 12 ld.s8 %r305,[%r93]; .loc 1 225 25 add.u32 %r564,%r305,-65; setp.gt.u32 %r565,%r564,25; @ %r565 bra $L61; .loc 1 226 6 add.u32 %r305,%r305,32; $L61: .loc 1 227 6 setp.ne.u32 %r566,%r305,%r306; @ %r566 bra $L9; .loc 1 224 12 ld.s8 %r306,[%r351]; add.u64 %r351,%r351,1; .loc 1 224 7 setp.ne.u32 %r567,%r306,0; @ %r567 bra $L179; .loc 1 425 6 st.u64 [%frame+16],%r93; cvta.const.u64 %r59,$LC1+1; .loc 1 224 12 mov.u32 %r312,105; bra $L65; $L180: .loc 1 224 7 mov.u64 %r93,%r264; $L65: .loc 1 225 6 add.u64 %r264,%r93,1; .loc 1 225 12 ld.s8 %r311,[%r264]; .loc 1 225 25 add.u32 %r568,%r311,-65; setp.gt.u32 %r569,%r568,25; @ %r569 bra $L63; .loc 1 226 6 add.u32 %r311,%r311,32; $L63: .loc 1 227 6 setp.ne.u32 %r570,%r311,%r312; @ %r570 bra $L64; .loc 1 224 12 ld.s8 %r312,[%r59]; add.u64 %r59,%r59,1; .loc 1 224 7 setp.ne.u32 %r571,%r312,0; @ %r571 bra $L180; .loc 1 230 10 add.u64 %r572,%r93,2; .loc 1 230 6 st.u64 [%frame+16],%r572; bra $L66; $L64: .loc 1 230 10 add.u64 %r573,%r303,2; .loc 1 427 7 st.u64 [%frame+16],%r573; $L66: .loc 1 428 17 mov.u64 %r366,9218868437227405312; .loc 1 432 6 bra $L67; $L58: .loc 1 222 15 ld.u64 %r315,[%frame+16]; cvta.const.u64 %r22,$LC2+1; .loc 1 224 12 mov.u32 %r318,97; bra $L69; $L181: .loc 1 224 7 mov.u64 %r315,%r254; $L69: .loc 1 225 6 add.u64 %r254,%r315,1; .loc 1 225 12 ld.s8 %r317,[%r254]; .loc 1 225 25 add.u32 %r576,%r317,-65; setp.gt.u32 %r577,%r576,25; @ %r577 bra $L68; .loc 1 226 6 add.u32 %r317,%r317,32; $L68: .loc 1 227 6 setp.ne.u32 %r578,%r317,%r318; @ %r578 bra $L9; .loc 1 224 12 ld.s8 %r318,[%r22]; add.u64 %r22,%r22,1; .loc 1 224 7 setp.ne.u32 %r579,%r318,0; @ %r579 bra $L181; .loc 1 230 10 add.u64 %r580,%r315,2; .loc 1 230 6 st.u64 [%frame+16],%r580; .loc 1 439 9 ld.s8 %r582,[%r254+1]; cvt.u16.u32 %r581,%r582; setp.ne.u16 %r583,%r581,40; @ %r583 bra $L70; .loc 1 440 10 add.u64 %r587,%frame,16; cvta.const.u64 %r585,fpinan$2631; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r587; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r585; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call (%value_in),__hexnan,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r588,[%value_in]; } .loc 1 440 7 setp.ne.u32 %r589,%r588,5; @ %r589 bra $L70; .loc 1 442 31 ld.u32 %r591,[%frame+4]; or.b32 %r590,%r591,2146435072; .loc 1 442 18 cvt.u64.u32 %r592,%r590; .loc 1 444 18 ld.u32 %r596,[%frame]; shl.b64 %r597,%r592,32; or.b64 %r366,%r597,%r596; bra $L67; $L70: .loc 1 449 18 mov.u64 %r366,-2251799813685248; bra $L67; $L9: .loc 1 1249 5 setp.eq.u64 %r601,%r371,0; @ %r601 bra $L18; .loc 1 1250 7 st.u64 [%r371],%r370; mov.f64 %r368,0d0000000000000000; bra $L6; $L67: mov.b64 %r368,%r366; bra $L28; $L56: .loc 1 466 9 sub.u32 %r267,%r251,%r232; .loc 1 473 5 setp.ne.u32 %r602,%r261,0; selp.u32 %r261,%r261,%r350,%r602; .loc 1 475 4 min.s32 %r269,%r350,16; .loc 1 476 11 cvt.rn.f64.u32 %r99,%r194; mov.b64 %r366,%r99; .loc 1 477 5 setp.le.s32 %r603,%r350,9; @ %r603 bra $L72; .loc 1 482 37 cvt.rn.f64.u32 %r604,%r239; .loc 1 482 18 cvta.const.u64 %r605,__mprec_tens; .loc 1 482 21 add.u32 %r606,%r269,-9; .loc 1 482 18 cvt.s64.s32 %r607,%r606; shl.b64 %r608,%r607,3; add.u64 %r609,%r605,%r608; .loc 1 482 37 ld.f64 %r611,[%r609]; fma.rn.f64 %r610,%r99,%r611,%r604; .loc 1 482 12 mov.b64 %r366,%r610; $L72: .loc 1 485 5 setp.gt.s32 %r612,%r350,15; @ %r612 bra $L73; .loc 1 492 6 setp.ne.u32 %r613,%r267,0; @ %r613 bra $L74; mov.b64 %r368,%r366; bra $L28; $L74: .loc 1 494 6 setp.le.s32 %r614,%r267,0; @ %r614 bra $L75; .loc 1 495 7 setp.gt.s32 %r615,%r267,22; @ %r615 bra $L76; .loc 1 506 16 cvta.const.u64 %r616,__mprec_tens; cvt.s64.s32 %r617,%r267; shl.b64 %r618,%r617,3; add.u64 %r619,%r616,%r618; ld.f64 %r620,[%r619]; mov.b64 %r621,%r366; mul.f64 %r368,%r620,%r621; .loc 1 507 5 bra $L28; $L76: .loc 1 511 22 mov.u32 %r623,37; sub.u32 %r622,%r623,%r350; .loc 1 511 7 setp.lt.s32 %r624,%r622,%r267; @ %r624 bra $L77; .loc 1 510 6 mov.u32 %r625,15; sub.u32 %r270,%r625,%r350; .loc 1 523 21 cvta.const.u64 %r626,__mprec_tens; cvt.s64.s32 %r627,%r270; shl.b64 %r628,%r627,3; add.u64 %r629,%r626,%r628; .loc 1 523 14 ld.f64 %r631,[%r629]; mov.b64 %r632,%r366; mul.f64 %r630,%r631,%r632; .loc 1 522 7 sub.u32 %r634,%r267,%r270; .loc 1 536 16 cvt.s64.s32 %r635,%r634; shl.b64 %r636,%r635,3; add.u64 %r637,%r626,%r636; ld.f64 %r638,[%r637]; mul.f64 %r368,%r630,%r638; .loc 1 538 5 bra $L28; $L75: .loc 1 542 11 setp.lt.s32 %r639,%r267,-22; @ %r639 bra $L73; .loc 1 550 15 cvta.const.u64 %r640,__mprec_tens; sub.u32 %r641,%r232,%r251; cvt.s64.s32 %r642,%r641; shl.b64 %r643,%r642,3; add.u64 %r644,%r640,%r643; mov.b64 %r645,%r366; ld.f64 %r646,[%r644]; div.rn.f64 %r368,%r645,%r646; .loc 1 551 4 bra $L28; $L73: .loc 1 555 11 sub.u32 %r647,%r350,%r269; .loc 1 555 5 add.u32 %r272,%r647,%r267; .loc 1 579 5 setp.le.s32 %r648,%r272,0; @ %r648 bra $L78; $L163: .loc 1 580 11 and.b32 %r273,%r272,15; .loc 1 580 6 setp.eq.u32 %r649,%r273,0; @ %r649 bra $L79; .loc 1 581 20 cvta.const.u64 %r650,__mprec_tens; cvt.s64.s32 %r651,%r273; shl.b64 %r652,%r651,3; add.u64 %r653,%r650,%r652; .loc 1 581 13 ld.f64 %r655,[%r653]; mov.b64 %r656,%r366; mul.f64 %r654,%r655,%r656; mov.b64 %r366,%r654; $L79: .loc 1 582 10 and.b32 %r274,%r272,-16; .loc 1 582 6 setp.eq.u32 %r657,%r274,0; @ %r657 bra $L80; .loc 1 583 7 setp.le.s32 %r658,%r274,308; @ %r658 bra $L81; .loc 1 586 17 mov.u32 %r659,34; st.u32 [%r369],%r659; mov.f64 %r368,0d7ff0000000000000; bra $L28; $L98: mov.u32 %r660,34; st.u32 [%r369],%r660; mov.f64 %r368,0d7ff0000000000000; bra $L28; $L86: mov.u32 %r661,34; st.u32 [%r369],%r661; mov.f64 %r368,0d7ff0000000000000; bra $L28; $L81: .loc 1 626 7 shr.s32 %r276,%r274,4; .loc 1 627 4 setp.le.s32 %r662,%r276,1; @ %r662 bra $L182; mov.b64 %r250,%r366; cvta.const.u64 %r1019,__mprec_bigtens; mov.u64 %r257,%r1019; mov.u32 %r39,0; .loc 1 627 10 mov.u32 %r275,%r39; .loc 1 629 15 mov.u32 %r1035,1; $L84: .loc 1 628 12 and.b32 %r663,%r276,1; .loc 1 628 8 setp.eq.u32 %r664,%r663,0; @ %r664 bra $L83; .loc 1 629 15 ld.f64 %r665,[%r257]; mul.f64 %r250,%r250,%r665; mov.u32 %r39,%r1035; $L83: .loc 1 627 24 add.u32 %r275,%r275,1; .loc 1 627 31 shr.s32 %r276,%r276,1; add.u64 %r257,%r257,8; .loc 1 627 4 setp.ne.u32 %r666,%r276,1; @ %r666 bra $L84; setp.eq.u32 %r667,%r39,0; @ %r667 bra $L82; mov.b64 %r366,%r250; bra $L82; $L182: .loc 1 627 10 mov.u32 %r275,0; cvta.const.u64 %r1019,__mprec_bigtens; $L82: .loc 1 631 15 shr.u64 %r668,%r366,32; cvt.u32.u64 %r670,%r668; add.u32 %r669,%r670,-55574528; cvt.u64.u32 %r671,%r669; shl.b64 %r672,%r671,32; and.b64 %r673,%r366,4294967295; or.b64 %r366,%r673,%r672; .loc 1 632 23 cvt.s64.s32 %r676,%r275; shl.b64 %r677,%r676,3; add.u64 %r678,%r1019,%r677; .loc 1 632 13 ld.f64 %r679,[%r678]; mov.b64 %r680,%r366; mul.f64 %r127,%r679,%r680; mov.b64 %r366,%r127; shr.u64 %r682,%r366,32; cvt.u32.u64 %r260,%r682; .loc 1 633 11 and.b32 %r277,%r260,2146435072; .loc 1 633 7 setp.gt.u32 %r683,%r277,2090860544; @ %r683 bra $L86; .loc 1 636 7 setp.le.u32 %r684,%r277,2089811968; @ %r684 bra $L87; .loc 1 641 16 mov.u64 %r366,9218868437227405311; .loc 1 564 8 mov.u32 %r134,0; bra $L88; $L87: .loc 1 645 16 add.u32 %r685,%r260,55574528; cvt.u64.u32 %r686,%r685; shl.b64 %r687,%r686,32; and.b64 %r688,%r366,4294967295; or.b64 %r366,%r688,%r687; .loc 1 564 8 mov.u32 %r134,0; bra $L88; $L78: .loc 1 648 10 setp.eq.u32 %r690,%r272,0; @ %r690 bra $L80; .loc 1 649 6 neg.s32 %r278,%r272; .loc 1 650 11 and.b32 %r279,%r278,15; .loc 1 650 6 setp.eq.u32 %r691,%r279,0; @ %r691 bra $L89; .loc 1 651 20 cvta.const.u64 %r692,__mprec_tens; cvt.s64.s32 %r693,%r279; shl.b64 %r694,%r693,3; add.u64 %r695,%r692,%r694; .loc 1 651 13 mov.b64 %r697,%r366; ld.f64 %r698,[%r695]; div.rn.f64 %r696,%r697,%r698; mov.b64 %r366,%r696; $L89: .loc 1 652 10 shr.s32 %r280,%r278,4; .loc 1 652 6 setp.eq.u32 %r699,%r280,0; @ %r699 bra $L80; .loc 1 653 7 setp.gt.s32 %r700,%r280,31; @ %r700 bra $L90; .loc 1 656 11 and.b32 %r134,%r280,16; .loc 1 656 7 setp.eq.u32 %r1021,%r134,0; @ %r1021 bra $L91; .loc 1 657 11 mov.u32 %r134,106; setp.eq.u32 %r1021,1,0; $L91: mov.b64 %r69,%r366; cvta.const.u64 %r259,tinytens; mov.u32 %r233,0; .loc 1 660 15 mov.u32 %r1036,1; $L93: .loc 1 659 12 and.b32 %r702,%r280,1; .loc 1 659 8 setp.eq.u32 %r703,%r702,0; @ %r703 bra $L92; .loc 1 660 15 ld.f64 %r704,[%r259]; mul.f64 %r69,%r69,%r704; mov.u32 %r233,%r1036; $L92: .loc 1 658 31 shr.s32 %r280,%r280,1; add.u64 %r259,%r259,8; .loc 1 658 4 setp.ne.u32 %r705,%r280,0; @ %r705 bra $L93; setp.eq.u32 %r706,%r233,0; @ %r706 bra $L94; mov.b64 %r366,%r69; $L94: .loc 1 661 7 @ %r1021 bra $L95; .loc 1 661 34 shr.u64 %r1017,%r366,32; cvt.u32.u64 %r137,%r1017; .loc 1 662 7 shr.u32 %r709,%r137,20; and.b32 %r710,%r709,2047; .loc 1 661 30 mov.u32 %r711,107; sub.u32 %r281,%r711,%r710; .loc 1 661 14 setp.le.s32 %r712,%r281,0; @ %r712 bra $L95; .loc 1 664 8 setp.le.s32 %r713,%r281,31; @ %r713 bra $L96; .loc 1 666 17 and.b64 %r366,%r366,-4294967296; .loc 1 668 9 setp.le.s32 %r715,%r281,52; @ %r715 bra $L97; .loc 1 669 18 mov.u64 %r366,247697979505377280; bra $L95; $L97: .loc 1 671 37 add.u32 %r718,%r281,-32; .loc 1 671 32 mov.u32 %r720,-1; shl.b32 %r719,%r720,%r718; .loc 1 671 18 and.b32 %r721,%r719,%r137; cvt.u64.u32 %r722,%r721; shl.b64 %r723,%r722,32; and.b64 %r724,%r366,4294967295; or.b64 %r366,%r724,%r723; bra $L95; $L96: .loc 1 675 31 mov.u32 %r727,-1; shl.b32 %r726,%r727,%r281; .loc 1 675 17 cvt.u32.u64 %r729,%r366; and.b32 %r728,%r726,%r729; cvt.u64.u32 %r730,%r728; and.b64 %r731,%r366,-4294967296; or.b64 %r366,%r731,%r730; $L95: .loc 1 689 8 mov.b64 %r733,%r366; setp.neu.f64 %r734,%r733,0d0000000000000000; @ %r734 bra $L88; $L90: .loc 1 693 18 mov.u32 %r735,34; st.u32 [%r369],%r735; mov.f64 %r368,0d0000000000000000; bra $L28; $L80: .loc 1 564 8 mov.u32 %r134,0; $L88: .loc 1 718 8 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r355; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r261; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r350; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r194; call (%value_in),__s2b,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r741,[%value_in]; } .loc 1 719 5 setp.eq.u64 %r742,%r741,0; @ %r742 bra $L98; setp.ge.s32 %r744,%r267,0; @ %r744 bra $L99; .loc 1 739 14 sub.u32 %r743,%r232,%r251; bra $L100; $L99: mov.u32 %r743,0; $L100: max.s32 %r221,%r267,0; .loc 1 263 8 mov.u64 %r244,0; .loc 1 263 13 mov.u64 %r243,%r244; .loc 1 726 3 add.u64 %r1025,%r741,16; .loc 1 727 8 add.u64 %r1026,%frame,24; .loc 1 794 6 setp.le.s32 %r1027,%r743,0; .loc 1 809 6 setp.gt.s32 %r1028,%r267,0; .loc 1 1187 6 set.u32.eq.u32 %r1029,%r134,0; neg.s32 %r1030,%r1029; .loc 1 1189 6 cvt.u16.u32 %r1031,%r1030; .loc 1 1124 8 set.u32.ne.u32 %r1032,%r134,0; neg.s32 %r1033,%r1032; .loc 1 1124 14 cvt.u16.u32 %r1034,%r1033; $L160: .loc 1 723 8 ld.u32 %r747,[%r741+8]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r747; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r748,[%value_in]; } mov.u64 %r241,%r748; .loc 1 724 6 setp.eq.u64 %r749,%r241,0; @ %r749 bra $L101; .loc 1 726 3 ld.s32 %r753,[%r741+20]; add.u64 %r754,%r753,2; shl.b64 %r755,%r754,2; add.u64 %r757,%r241,16; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r757; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1025; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r755; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r758,[%value_in]; } .loc 1 727 8 mov.b64 %r348,%r366; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r348; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1026; .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 %r764,[%value_in]; } mov.u64 %r337,%r764; .loc 1 727 6 st.u64 [%frame+8],%r337; .loc 1 728 6 setp.eq.u64 %r765,%r337,0; @ %r765 bra $L102; .loc 1 730 8 mov.u32 %r767,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r767; call (%value_in),__i2b,(%out_arg1,%out_arg2); ld.param.u64 %r768,[%value_in]; } mov.u64 %r243,%r768; .loc 1 731 6 setp.ne.u64 %r769,%r243,0; @ %r769 bra $L103; ld.u64 %r337,[%frame+8]; bra $L102; $L103: .loc 1 742 11 ld.u32 %r157,[%frame+24]; .loc 1 742 6 setp.lt.s32 %r770,%r157,0; @ %r770 bra $L104; .loc 1 743 8 add.u32 %r219,%r157,%r743; mov.u32 %r222,%r221; bra $L105; $L104: .loc 1 745 8 sub.u32 %r222,%r221,%r157; mov.u32 %r219,%r743; $L105: .loc 1 755 9 ld.u32 %r159,[%frame]; .loc 1 754 5 sub.u32 %r771,%r157,%r134; .loc 1 755 9 add.u32 %r772,%r771,%r159; .loc 1 755 5 add.u32 %r285,%r772,-1; .loc 1 756 5 mov.u32 %r773,54; sub.u32 %r229,%r773,%r159; .loc 1 757 6 setp.ge.s32 %r774,%r285,-1022; @ %r774 bra $L183; .loc 1 758 6 mov.u32 %r775,-1022; sub.u32 %r286,%r775,%r285; .loc 1 759 6 sub.u32 %r229,%r229,%r286; .loc 1 760 7 setp.gt.s32 %r776,%r286,31; @ %r776 bra $L107; .loc 1 761 9 mov.u32 %r777,1; shl.b32 %r245,%r777,%r286; .loc 1 753 8 mov.u32 %r246,0; bra $L106; $L107: .loc 1 763 21 mov.u32 %r779,-1054; sub.u32 %r778,%r779,%r285; .loc 1 763 10 mov.u32 %r780,1; shl.b32 %r246,%r780,%r778; .loc 1 752 7 mov.u32 %r245,%r780; bra $L106; $L183: .loc 1 753 8 mov.u32 %r246,0; .loc 1 752 7 mov.u32 %r245,1; $L106: .loc 1 781 7 add.u32 %r220,%r219,%r229; .loc 1 782 7 add.u32 %r287,%r222,%r229; .loc 1 784 7 add.u32 %r223,%r134,%r287; min.s32 %r781,%r219,%r220; min.s32 %r128,%r781,%r223; .loc 1 789 6 setp.le.s32 %r782,%r128,0; @ %r782 bra $L108; .loc 1 790 8 sub.u32 %r220,%r220,%r128; .loc 1 791 8 sub.u32 %r223,%r223,%r128; .loc 1 792 8 sub.u32 %r219,%r219,%r128; $L108: .loc 1 794 6 @ %r1027 bra $L109; .loc 1 795 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r768; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r743; call (%value_in),__pow5mult,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r787,[%value_in]; } mov.u64 %r243,%r787; .loc 1 796 7 setp.ne.u64 %r788,%r243,0; @ %r788 bra $L110; ld.u64 %r337,[%frame+8]; bra $L102; $L110: .loc 1 798 10 ld.u64 %r792,[%frame+8]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r243; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r792; call (%value_in),__multiply,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r793,[%value_in]; } .loc 1 799 7 setp.ne.u64 %r794,%r793,0; @ %r794 bra $L111; ld.u64 %r337,[%frame+8]; bra $L102; $L111: .loc 1 801 4 ld.u64 %r797,[%frame+8]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r797; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 802 7 st.u64 [%frame+8],%r793; $L109: .loc 1 804 6 setp.gt.s32 %r798,%r220,0; @ %r798 bra $L112; $L115: .loc 1 809 6 @ ! %r1028 bra $L114; bra $L113; $L112: .loc 1 805 9 ld.u64 %r803,[%frame+8]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r803; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r220; call (%value_in),__lshift,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r804,[%value_in]; } mov.u64 %r337,%r804; .loc 1 805 7 st.u64 [%frame+8],%r337; .loc 1 806 7 setp.eq.u64 %r805,%r337,0; @ ! %r805 bra $L115; bra $L102; $L113: .loc 1 810 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r748; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r221; call (%value_in),__pow5mult,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r809,[%value_in]; } mov.u64 %r241,%r809; .loc 1 811 7 setp.ne.u64 %r810,%r241,0; @ %r810 bra $L114; ld.u64 %r337,[%frame+8]; bra $L102; $L114: .loc 1 814 6 setp.le.s32 %r811,%r223,0; @ %r811 bra $L116; .loc 1 815 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r241; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r223; call (%value_in),__lshift,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r815,[%value_in]; } mov.u64 %r241,%r815; .loc 1 816 7 setp.ne.u64 %r816,%r241,0; @ %r816 bra $L116; ld.u64 %r337,[%frame+8]; bra $L102; $L116: .loc 1 819 6 setp.le.s32 %r817,%r219,0; @ %r817 bra $L117; .loc 1 820 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r243; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r219; call (%value_in),__lshift,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r821,[%value_in]; } mov.u64 %r243,%r821; .loc 1 821 7 setp.ne.u64 %r822,%r243,0; @ %r822 bra $L117; ld.u64 %r337,[%frame+8]; bra $L102; $L117: .loc 1 824 11 ld.u64 %r826,[%frame+8]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r826; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r241; call (%value_in),__mdiff,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r827,[%value_in]; } mov.u64 %r244,%r827; .loc 1 825 6 setp.ne.u64 %r828,%r244,0; @ %r828 bra $L118; ld.u64 %r337,[%frame+8]; bra $L102; $L118: .loc 1 827 9 ld.u32 %r290,[%r827+16]; .loc 1 828 16 mov.u32 %r829,0; st.u32 [%r827+16],%r829; .loc 1 829 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r244; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r243; call (%value_in),__mcmp,(%out_arg1,%out_arg2); ld.param.u32 %r832,[%value_in]; } .loc 1 923 6 setp.ge.s32 %r833,%r832,0; @ %r833 bra $L119; .loc 1 927 7 setp.ne.u32 %r834,%r290,0; @ %r834 bra $L120; .loc 1 927 28 mov.b64 %r836,%r348; and.b64 %r835,%r836,4503599627370495; setp.eq.u64 %r837,%r835,0; @ %r837 bra $L121; ld.u64 %r337,[%frame+8]; setp.eq.u32 %r1021,%r134,0; bra $L122; $L121: .loc 1 930 9 shr.u64 %r1017,%r366,32; .loc 1 930 20 cvt.u32.u64 %r840,%r1017; and.b32 %r839,%r840,2146435072; .loc 1 930 5 setp.gt.u32 %r841,%r839,112197632; @ %r841 bra $L123; ld.u64 %r337,[%frame+8]; setp.eq.u32 %r1021,%r134,0; bra $L122; $L123: .loc 1 942 7 ld.u32 %r842,[%r244+24]; setp.ne.u32 %r843,%r842,0; @ %r843 bra $L124; .loc 1 942 22 ld.u32 %r844,[%r244+20]; setp.gt.s32 %r845,%r844,1; @ %r845 bra $L124; ld.u64 %r337,[%frame+8]; setp.eq.u32 %r1021,%r134,0; bra $L122; $L124: .loc 1 949 12 mov.u32 %r848,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r827; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r848; call (%value_in),__lshift,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r849,[%value_in]; } mov.u64 %r244,%r849; .loc 1 950 8 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r244; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r243; call (%value_in),__mcmp,(%out_arg1,%out_arg2); ld.param.u32 %r852,[%value_in]; } .loc 1 950 7 setp.gt.s32 %r853,%r852,0; @ %r853 bra $L125; ld.u64 %r337,[%frame+8]; setp.eq.u32 %r1021,%r134,0; bra $L122; $L119: .loc 1 954 6 setp.ne.u32 %r854,%r832,0; @ %r854 bra $L126; .loc 1 956 7 setp.eq.u32 %r1015,%r290,0; @ %r1015 bra $L127; .loc 1 957 10 shr.u64 %r856,%r366,32; cvt.u32.u64 %r173,%r856; .loc 1 957 21 and.b32 %r857,%r173,1048575; .loc 1 957 8 setp.ne.u32 %r858,%r857,1048575; @ %r858 bra $L128; .loc 1 958 10 cvt.u32.u64 %r175,%r366; .loc 1 961 59 setp.eq.u32 %r1021,%r134,0; @ %r1021 bra $L184; .loc 1 960 17 and.b32 %r292,%r173,2146435072; .loc 1 960 11 setp.gt.u32 %r860,%r292,111149056; @ %r860 bra $L185; .loc 1 961 43 shr.u32 %r861,%r292,20; .loc 1 961 40 mov.u32 %r863,107; sub.u32 %r862,%r863,%r861; .loc 1 961 59 mov.u32 %r864,-1; shl.b32 %r247,%r864,%r862; bra $L129; $L184: mov.u32 %r247,-1; bra $L129; $L185: mov.u32 %r247,-1; $L129: .loc 1 958 6 setp.ne.u32 %r865,%r175,%r247; @ %r865 bra $L128; ld.u64 %r337,[%frame+8]; .loc 1 965 9 mov.b64 %r866,%r348; setp.eq.u64 %r867,%r866,9218868437227405311; @ %r867 bra $L102; .loc 1 967 31 and.b32 %r868,%r173,2146435072; .loc 1 968 7 add.u32 %r869,%r868,1048576; .loc 1 967 17 cvt.u64.u32 %r870,%r869; .loc 1 974 17 shl.b64 %r366,%r870,32; mov.b64 %r348,%r366; .loc 1 979 6 bra $L122; $L127: .loc 1 982 40 mov.b64 %r876,%r348; and.b64 %r875,%r876,4503599627370495; .loc 1 982 12 setp.ne.u64 %r877,%r875,0; @ %r877 bra $L128; shr.u64 %r1017,%r366,32; $L125: cvt.u32.u64 %r335,%r1017; ld.u64 %r337,[%frame+8]; mov.u64 %r1020,%r337; .loc 1 1000 8 setp.eq.u32 %r1021,%r134,0; @ ! %r1021 bra $L311; and.b32 %r1016,%r335,2146435072; bra $L130; $L311: .loc 1 1001 8 and.b32 %r1016,%r335,2146435072; .loc 1 1002 9 setp.gt.s32 %r880,%r1016,112197632; @ %r880 bra $L130; .loc 1 1003 10 setp.gt.s32 %r881,%r1016,57671680; @ %r881 bra $L131; bra $L132; $L130: .loc 1 1012 33 add.u32 %r883,%r1016,-1048576; .loc 1 1014 20 or.b32 %r884,%r883,1048575; .loc 1 1014 16 cvt.u64.u32 %r885,%r884; shl.b64 %r886,%r885,32; .loc 1 1016 16 or.b64 %r366,%r886,4294967295; mov.b64 %r348,%r366; .loc 1 1021 5 bra $L122; $L128: .loc 1 1026 7 setp.eq.u32 %r890,%r246,0; @ %r890 bra $L133; .loc 1 1027 11 shr.u64 %r891,%r366,32; .loc 1 1027 22 cvt.u32.u64 %r893,%r891; and.b32 %r892,%r246,%r893; .loc 1 1027 8 setp.ne.u32 %r894,%r892,0; @ %r894 bra $L134; ld.u64 %r337,[%frame+8]; setp.eq.u32 %r1021,%r134,0; bra $L122; $L133: .loc 1 1030 26 cvt.u32.u64 %r896,%r366; and.b32 %r895,%r245,%r896; .loc 1 1030 12 setp.ne.u32 %r897,%r895,0; @ %r897 bra $L134; ld.u64 %r337,[%frame+8]; setp.eq.u32 %r1021,%r134,0; bra $L122; $L134: .loc 1 1037 7 @ %r1015 bra $L135; .loc 1 1039 17 st.u64 [%frame+32],%r366; add.u64 %r901,%frame,32; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r901; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r134; call (%value_in),sulp,(%out_arg1,%out_arg2); ld.param.f64 %r902,[%value_in]; } .loc 1 1039 14 add.f64 %r348,%r348,%r902; mov.b64 %r366,%r348; ld.u64 %r337,[%frame+8]; setp.eq.u32 %r1021,%r134,0; bra $L122; $L135: .loc 1 1046 17 st.u64 [%frame+32],%r366; add.u64 %r905,%frame,32; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r905; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r134; call (%value_in),sulp,(%out_arg1,%out_arg2); ld.param.f64 %r906,[%value_in]; } .loc 1 1046 14 sub.f64 %r348,%r348,%r906; mov.b64 %r366,%r348; .loc 1 1051 8 setp.eq.f64 %r907,%r348,0d0000000000000000; @ ! %r907 bra $L312; ld.u64 %r1020,[%frame+8]; bra $L132; $L312: ld.u64 %r337,[%frame+8]; setp.eq.u32 %r1021,%r134,0; bra $L122; $L126: .loc 1 1061 15 { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r827; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r243; call (%value_in),__ratio,(%out_arg1,%out_arg2); ld.param.f64 %r910,[%value_in]; } .loc 1 1061 6 setp.le.f64 %r911,%r910,0d4000000000000000; @ ! %r911 bra $L313; .loc 1 1062 7 setp.eq.u32 %r912,%r290,0; @ %r912 bra $L138; .loc 1 1063 24 mov.u64 %r365,4607182418800017408; .loc 1 1063 10 mov.f64 %r237,0d3ff0000000000000; bra $L139; $L138: mov.b64 %r224,%r348; .loc 1 1064 24 and.b64 %r913,%r224,4503599627370495; .loc 1 1064 12 setp.eq.u64 %r914,%r913,0; @ %r914 bra $L140; .loc 1 1066 8 setp.eq.u64 %r915,%r224,1; @ ! %r915 bra $L314; ld.u64 %r1020,[%frame+8]; bra $L132; $L314: .loc 1 1070 17 mov.u64 %r365,-4616189618054758400; .loc 1 1069 10 mov.f64 %r237,0d3ff0000000000000; bra $L139; $L140: .loc 1 1076 8 setp.lt.f64 %r916,%r910,0d3ff0000000000000; @ %r916 bra $L186; .loc 1 1079 11 mul.f64 %r237,%r910,0d3fe0000000000000; neg.f64 %r344,%r237; bra $L141; $L186: mov.f64 %r344,0dbfe0000000000000; .loc 1 1077 11 mov.f64 %r237,0d3fe0000000000000; $L141: .loc 1 1080 17 mov.b64 %r365,%r344; bra $L139; $L313: .loc 1 1084 9 mul.f64 %r237,%r910,0d3fe0000000000000; .loc 1 1085 31 setp.ne.u32 %r917,%r290,0; @ %r917 bra $L187; neg.f64 %r248,%r237; bra $L142; $L187: mov.f64 %r248,%r237; $L142: .loc 1 1085 16 mov.b64 %r365,%r248; $L139: .loc 1 1100 7 shr.u64 %r918,%r366,32; cvt.u32.u64 %r193,%r918; .loc 1 1100 5 and.b32 %r297,%r193,2146435072; .loc 1 1104 6 setp.ne.u32 %r919,%r297,2145386496; @ %r919 bra $L143; .loc 1 1106 15 add.u32 %r920,%r193,-55574528; cvt.u64.u32 %r921,%r920; shl.b64 %r922,%r921,32; and.b64 %r923,%r366,4294967295; or.b64 %r366,%r923,%r922; .loc 1 1107 10 mov.b64 %r196,%r365; .loc 1 1107 24 mov.b64 %r197,%r366; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r197; call (%value_in),__ulp,(%out_arg1); ld.param.f64 %r926,[%value_in]; } .loc 1 1108 13 fma.rn.f64 %r199,%r196,%r926,%r197; mov.b64 %r366,%r199; shr.u64 %r928,%r366,32; cvt.u32.u64 %r263,%r928; .loc 1 1109 20 and.b32 %r929,%r263,2146435072; .loc 1 1109 7 setp.le.u32 %r930,%r929,2090860543; @ %r930 bra $L144; .loc 1 1111 8 mov.b64 %r931,%r348; setp.ne.u64 %r932,%r931,9218868437227405311; @ %r932 bra $L145; ld.u64 %r337,[%frame+8]; bra $L102; $L145: .loc 1 1115 16 mov.u64 %r366,9218868437227405311; .loc 1 1117 5 bra $L146; $L144: .loc 1 1120 16 add.u32 %r345,%r263,55574528; cvt.u64.u32 %r933,%r345; shl.b64 %r934,%r933,32; and.b64 %r935,%r366,4294967295; or.b64 %r366,%r935,%r934; bra $L147; $L143: .loc 1 1124 19 set.u32.le.u32 %r941,%r297,111149056; neg.s32 %r942,%r941; .loc 1 1124 14 cvt.u16.u32 %r945,%r942; and.b16 %r943,%r1034,%r945; .loc 1 1124 7 cvt.u32.u16 %r946,%r943; cvt.u16.u8 %r947,%r946; setp.eq.u16 %r948,%r947,0; @ %r948 bra $L148; .loc 1 1125 8 setp.le.f64 %r949,%r237,0d41dfffffffc00000; @ ! %r949 bra $L149; .loc 1 1126 13 cvt.rzi.u32.f64 %r298,%r237; .loc 1 1126 9 setp.eq.u32 %r950,%r298,0; @ %r950 bra $L188; cvt.rn.f64.u32 %r237,%r298; bra $L151; $L188: mov.f64 %r237,0d3ff0000000000000; $L151: .loc 1 1129 33 setp.ne.u32 %r951,%r290,0; @ %r951 bra $L189; neg.f64 %r249,%r237; bra $L152; $L189: mov.f64 %r249,%r237; $L152: .loc 1 1129 18 mov.b64 %r365,%r249; $L149: .loc 1 1131 19 shr.u64 %r952,%r365,32; cvt.u32.u64 %r954,%r952; add.u32 %r953,%r954,112197632; sub.u32 %r955,%r953,%r297; cvt.u64.u32 %r956,%r955; shl.b64 %r957,%r956,32; and.b64 %r958,%r365,4294967295; or.b64 %r365,%r958,%r957; $L148: .loc 1 1133 10 mov.b64 %r207,%r365; .loc 1 1133 24 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r348; call (%value_in),__ulp,(%out_arg1); ld.param.f64 %r961,[%value_in]; } .loc 1 1134 13 fma.rn.f64 %r962,%r207,%r961,%r348; mov.b64 %r366,%r962; shr.u64 %r1017,%r366,32; cvt.u32.u64 %r345,%r1017; $L147: .loc 1 1184 5 and.b32 %r964,%r345,2146435072; .loc 1 1189 6 set.u32.eq.u32 %r966,%r964,%r297; neg.s32 %r967,%r966; cvt.u16.u32 %r972,%r967; and.b16 %r971,%r972,%r1031; cvt.u32.u16 %r974,%r971; cvt.u16.u8 %r975,%r974; setp.eq.u16 %r976,%r975,0; @ %r976 bra $L146; .loc 1 1191 6 cvt.rzi.s32.f64 %r977,%r237; .loc 1 1192 9 cvt.rn.f64.s32 %r211,%r977; sub.f64 %r301,%r237,%r211; .loc 1 1194 7 setp.ne.u32 %r978,%r290,0; @ %r978 bra $L153; .loc 1 1194 28 and.b64 %r979,%r366,4503599627370495; setp.eq.u64 %r980,%r979,0; @ %r980 bra $L154; $L153: .loc 1 1195 8 setp.lt.f64 %r981,%r301,0d3fdfffff94a03595; @ ! %r981 bra $L315; ld.u64 %r337,[%frame+8]; bra $L157; $L315: .loc 1 1195 25 setp.gt.f64 %r982,%r301,0d3fe0000035afe535; @ ! %r982 bra $L146; ld.u64 %r337,[%frame+8]; bra $L157; $L154: .loc 1 1198 12 setp.lt.f64 %r983,%r301,0d3fcfffff94a03595; @ ! %r983 bra $L146; ld.u64 %r337,[%frame+8]; bra $L157; $L146: .loc 1 1203 3 ld.u64 %r986,[%frame+8]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r986; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 1204 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r241; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 1205 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r243; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 1206 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r827; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 723 6 bra $L160; $L120: ld.u64 %r337,[%frame+8]; setp.eq.u32 %r1021,%r134,0; $L122: .loc 1 1222 5 @ %r1021 bra $L157; $L131: .loc 1 1227 12 mul.f64 %r216,%r348,0d3950000000000000; mov.b64 %r366,%r216; .loc 1 1230 6 setp.ne.u64 %r996,%r366,0; @ %r996 bra $L157; .loc 1 1231 16 mov.u32 %r997,34; st.u32 [%r369],%r997; $L157: .loc 1 1243 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r337; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 1244 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r241; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 1245 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r243; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 1246 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r741; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 1247 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r244; call _Bfree,(%out_arg1,%out_arg2); } mov.b64 %r368,%r366; $L28: .loc 1 1249 5 setp.eq.u64 %r1008,%r371,0; @ %r1008 bra $L161; .loc 1 1250 7 ld.u64 %r1009,[%frame+16]; st.u64 [%r371],%r1009; $L161: .loc 1 1251 26 setp.eq.u32 %r1010,%r236,0; @ %r1010 bra $L6; neg.f64 %r368,%r368; bra $L6; $L18: .loc 1 693 18 mov.f64 %r368,0d0000000000000000; .loc 1 1251 26 bra $L6; $L101: ld.u64 %r337,[%frame+8]; $L102: .loc 1 586 17 mov.u32 %r1012,34; st.u32 [%r369],%r1012; .loc 1 608 16 mov.u64 %r366,9218868437227405312; bra $L157; $L132: .loc 1 691 15 mov.u64 %r366,0; .loc 1 693 18 mov.u32 %r1013,34; st.u32 [%r369],%r1013; mov.u64 %r337,%r1020; bra $L157; $L77: .loc 1 555 11 sub.u32 %r1014,%r350,%r269; .loc 1 555 5 add.u32 %r272,%r1014,%r267; bra $L163; $L6: .loc 1 1252 1 mov.f64 %value,%r368; 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 .f64 %r30; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 1260 10 ld.global.u64 %r29,[_impure_ptr]; { .param .f64 %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),_strtod_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r30,[%value_in]; } .loc 1 1261 1 mov.f64 %value,%r30; st.param.f64 [%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 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r31; .reg .f64 %r32; .reg .u32 %r34; .reg .pred %r35; .reg .u64 %r36; .reg .f32 %r37; mov.u64 %r26,%ar0; mov.u64 %r27,%ar1; .loc 1 1268 19 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],%r26; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r27; call (%value_in),_strtod_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r32,[%value_in]; } .loc 1 1269 7 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r32; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r34,[%value_in]; } .loc 1 1269 6 setp.ne.u32 %r35,%r34,0; @ %r35 bra $L318; .loc 1 1270 12 mov.u64 %r36,0; { .param .f32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r36; call (%value_in),nanf,(%out_arg1); ld.param.f32 %r37,[%value_in]; } mov.f32 %r25,%r37; bra $L317; $L318: .loc 1 1271 10 cvt.rn.f32.f64 %r25,%r32; $L317: .loc 1 1272 1 mov.f32 %value,%r25; st.param.f32 [%value_out],%value; ret; } lib_a-strtok.o/ 1591654539 399 399 100644 1399 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 103 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 104 1 mov.u64 %value,%r33; st.param.u64 [%value_out],%value; ret; } /752 1591654539 399 399 100644 3711 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r25; .reg .u32 %r26; .reg .u64 %r27; .reg .u32 %r28; .reg .u32 %r29; .reg .u64 %r30; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .u32 %r43; .reg .pred %r44; .reg .pred %r45; .reg .pred %r46; .reg .u32 %r48; .reg .pred %r49; .reg .pred %r50; .reg .u64 %r51; .reg .u16 %r52; .reg .u16 %r53; .reg .pred %r54; .reg .pred %r55; .reg .u32 %r56; .reg .pred %r57; .reg .pred %r59; mov.u64 %r40,%ar0; mov.u64 %r41,%ar1; mov.u64 %r42,%ar2; mov.u32 %r43,%ar3; .loc 1 44 5 setp.ne.u64 %r44,%r40,0; @ %r44 bra $L2; .loc 1 44 22 ld.u64 %r40,[%r42]; .loc 1 44 16 setp.eq.u64 %r45,%r40,0; @ %r45 bra $L11; $L2: mov.u64 %r34,%r40; .loc 1 54 7 setp.ne.u32 %r59,%r43,0; $L5: mov.u64 %r39,%r34; add.u64 %r34,%r34,1; .loc 1 51 4 ld.s8 %r28,[%r39]; .loc 1 52 2 mov.u64 %r35,%r41; bra $L4; $L6: add.u64 %r35,%r35,1; .loc 1 53 6 setp.ne.u32 %r46,%r28,%r29; @ %r46 bra $L4; .loc 1 54 7 @ %r59 bra $L5; .loc 1 58 12 st.u64 [%r42],%r34; .loc 1 59 11 mov.u32 %r48,0; st.u8 [%r39],%r48; .loc 1 60 15 bra $L1; $L4: .loc 1 52 34 ld.s8 %r29,[%r35]; .loc 1 52 2 setp.ne.u32 %r49,%r29,0; @ %r49 bra $L6; .loc 1 65 5 setp.ne.u32 %r50,%r28,0; @ %r50 bra $L7; .loc 1 66 10 mov.u64 %r51,0; st.u64 [%r42],%r51; .loc 1 67 10 mov.u64 %r39,%r51; bra $L1; $L7: add.u64 %r30,%r34,1; mov.u64 %r27,%r30; .loc 1 76 7 ld.s8 %r25,[%r34]; mov.u64 %r22,%r41; .loc 1 79 7 cvt.u16.u32 %r52,%r25; $L10: .loc 1 79 14 ld.s8 %r26,[%r22]; .loc 1 79 7 cvt.u16.u32 %r53,%r26; setp.ne.u16 %r54,%r52,%r53; @ %r54 bra $L8; .loc 1 80 8 setp.eq.u32 %r55,%r26,0; @ %r55 bra $L12; .loc 1 83 12 mov.u32 %r56,0; st.u8 [%r30+-1],%r56; bra $L9; $L12: .loc 1 81 8 mov.u64 %r27,0; $L9: .loc 1 84 12 st.u64 [%r42],%r27; .loc 1 85 12 bra $L1; $L8: add.u64 %r22,%r22,1; .loc 1 87 3 setp.ne.u32 %r57,%r26,0; @ %r57 bra $L10; mov.u64 %r34,%r30; bra $L7; $L11: .loc 1 45 10 mov.u64 %r39,%r40; $L1: .loc 1 90 1 mov.u64 %value,%r39; 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 98 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 99 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } lib_a-strtol.o/ 1591654539 399 399 100644 7701 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // 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); .file 1 "../../../../../newlib/libc/stdlib/strtol.c" // 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_ptr__ .extern .global .align 8 .u64 __ctype_ptr__[1]; // 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 .u32 %r22; .reg .u64 %r23; .reg .u32 %r29; .reg .u64 %r34; .reg .u32 %r38; .reg .u64 %r47; .reg .u64 %r49; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u64 %r54; .reg .u32 %r55; .reg .u64 %r58; .reg .u32 %r61; .reg .u64 %r62; .reg .u64 %r66; .reg .u64 %r67; .reg .u64 %r69; .reg .u64 %r70; .reg .u64 %r71; .reg .u32 %r72; .reg .u64 %r73; .reg .u32 %r74; .reg .u64 %r75; .reg .u16 %r78; .reg .u16 %r79; .reg .u32 %r80; .reg .u16 %r81; .reg .u32 %r82; .reg .pred %r83; .reg .u16 %r84; .reg .pred %r85; .reg .pred %r87; .reg .u32 %r88; .reg .pred %r89; .reg .pred %r90; .reg .u16 %r92; .reg .u16 %r93; .reg .u16 %r94; .reg .u32 %r95; .reg .pred %r96; .reg .pred %r97; .reg .pred %r98; .reg .u64 %r100; .reg .u64 %r101; .reg .u64 %r102; .reg .u16 %r104; .reg .u16 %r105; .reg .u32 %r106; .reg .u16 %r107; .reg .u32 %r108; .reg .pred %r109; .reg .u16 %r110; .reg .u32 %r112; .reg .pred %r113; .reg .u16 %r114; .reg .pred %r115; .reg .pred %r116; .reg .u32 %r118; .reg .u32 %r120; .reg .u32 %r121; .reg .u16 %r123; .reg .u16 %r124; .reg .u16 %r125; .reg .u32 %r126; .reg .u16 %r127; .reg .pred %r128; .reg .u32 %r130; .reg .u32 %r131; .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 .pred %r142; .reg .u32 %r143; .reg .pred %r144; .reg .pred %r145; .reg .pred %r146; .reg .pred %r147; .reg .pred %r149; .reg .u32 %r151; .reg .u32 %r152; .reg .u16 %r153; mov.u64 %r69,%ar0; mov.u64 %r70,%ar1; mov.u64 %r71,%ar2; mov.u32 %r72,%ar3; .loc 1 153 11 ld.global.u64 %r23,[__ctype_ptr__]; mov.u64 %r58,%r70; $L2: mov.u64 %r47,%r58; add.u64 %r34,%r58,1; mov.u64 %r58,%r34; .loc 1 152 7 ld.u8 %r22,[%r47]; .loc 1 153 11 cvt.u32.u32 %r74,%r22; cvt.u64.u8 %r73,%r74; add.u64 %r75,%r23,%r73; .loc 1 153 2 ld.u8 %r153,[%r75+1]; mov.u16 %r79,%r153; and.b16 %r78,%r79,8; cvt.u32.u16 %r80,%r78; cvt.s32.s8 %r82,%r80; cvt.u16.u32 %r81,%r82; setp.ne.u16 %r83,%r81,0; @ %r83 bra $L2; .loc 1 154 5 cvt.u16.u32 %r84,%r22; setp.ne.u16 %r85,%r84,45; @ %r85 bra $L3; .loc 1 156 5 ld.u8 %r50,[%r34]; .loc 1 156 9 add.u64 %r34,%r47,2; .loc 1 155 7 mov.u32 %r52,1; bra $L4; $L3: .loc 1 157 12 setp.eq.u16 %r87,%r84,43; @ %r87 bra $L5; .loc 1 152 5 mov.u32 %r50,%r22; .loc 1 144 15 mov.u32 %r52,0; bra $L4; $L5: .loc 1 158 5 ld.u8 %r50,[%r34]; .loc 1 158 9 add.u64 %r34,%r47,2; .loc 1 144 15 mov.u32 %r52,0; $L4: .loc 1 159 12 and.b32 %r88,%r72,-17; .loc 1 159 5 setp.eq.u32 %r89,%r88,0; @ %r89 bra $L6; cvt.s64.s32 %r66,%r72; bra $L7; $L6: .loc 1 159 32 setp.ne.u32 %r90,%r50,48; @ %r90 bra $L8; .loc 1 160 29 ld.u8 %r153,[%r34]; mov.u16 %r93,%r153; and.b16 %r92,%r93,-33; .loc 1 160 15 cvt.u32.u16 %r95,%r92; cvt.u16.u8 %r94,%r95; setp.ne.u16 %r96,%r94,88; @ %r96 bra $L9; .loc 1 161 5 ld.u8 %r50,[%r34+1]; .loc 1 162 5 add.u64 %r34,%r34,2; mov.u64 %r66,16; .loc 1 163 8 cvt.u32.u64 %r72,%r66; bra $L7; $L9: .loc 1 165 5 setp.eq.u32 %r97,%r72,0; @ %r97 bra $L22; cvt.s64.s32 %r66,%r72; bra $L7; $L22: mov.u64 %r66,8; .loc 1 166 23 cvt.u32.u64 %r72,%r66; bra $L7; $L27: .loc 1 165 5 mov.u64 %r66,10; .loc 1 166 23 cvt.u32.u64 %r72,%r66; $L7: .loc 1 185 42 setp.ne.u32 %r98,%r52,0; selp.u64 %r54,-9223372036854775808,9223372036854775807,%r98; .loc 1 186 18 rem.u64 %r100,%r54,%r66; .loc 1 186 9 cvt.u32.u64 %r61,%r100; .loc 1 187 9 div.u64 %r62,%r54,%r66; mov.u64 %r67,%r34; .loc 1 188 20 mov.u32 %r53,0; .loc 1 188 11 mov.u64 %r49,0; .loc 1 198 8 mov.u32 %r151,-1; .loc 1 200 8 mov.u32 %r152,1; $L16: .loc 1 189 7 cvt.s64.s32 %r101,%r50; add.u64 %r102,%r23,%r101; ld.s8 %r38,[%r102+1]; .loc 1 189 6 cvt.u16.u32 %r105,%r38; and.b16 %r104,%r105,4; cvt.u32.u16 %r106,%r104; cvt.s32.s8 %r108,%r106; cvt.u16.u32 %r107,%r108; setp.eq.u16 %r109,%r107,0; @ %r109 bra $L11; .loc 1 190 6 add.u32 %r51,%r50,-48; bra $L12; $L11: and.b16 %r110,%r105,3; cvt.u32.u16 %r112,%r110; cvt.s32.s8 %r29,%r112; .loc 1 191 11 setp.eq.u32 %r113,%r29,0; @ %r113 bra $L13; .loc 1 192 31 cvt.u16.u32 %r114,%r29; setp.eq.u16 %r115,%r114,1; selp.u32 %r55,55,87,%r115; .loc 1 192 6 sub.u32 %r51,%r50,%r55; $L12: .loc 1 195 6 setp.le.s32 %r116,%r72,%r51; @ %r116 bra $L13; .loc 1 197 24 shr.u32 %r118,%r53,31; .loc 1 197 35 set.u32.gt.u64 %r120,%r49,%r62; neg.s32 %r121,%r120; .loc 1 197 28 cvt.u16.u32 %r124,%r118; cvt.u16.u32 %r125,%r121; or.b16 %r123,%r124,%r125; .loc 1 197 19 cvt.u32.u16 %r126,%r123; cvt.u16.u8 %r127,%r126; setp.ne.u16 %r128,%r127,0; @ %r128 bra $L25; .loc 1 197 52 set.u32.eq.u64 %r130,%r49,%r62; neg.s32 %r131,%r130; .loc 1 197 67 set.u32.gt.s32 %r133,%r51,%r61; neg.s32 %r134,%r133; .loc 1 197 62 cvt.u16.u32 %r136,%r131; cvt.u16.u32 %r137,%r134; and.b16 %r135,%r136,%r137; .loc 1 197 44 cvt.u32.u16 %r138,%r135; cvt.u16.u8 %r139,%r138; setp.ne.u16 %r140,%r139,0; @ %r140 bra $L26; .loc 1 202 8 cvt.s64.s32 %r141,%r51; mad.lo.u64 %r49,%r49,%r66,%r141; .loc 1 200 8 mov.u32 %r53,%r152; bra $L15; $L25: .loc 1 198 8 mov.u32 %r53,%r151; bra $L15; $L26: mov.u32 %r53,%r151; $L15: .loc 1 188 28 ld.u8 %r50,[%r67]; add.u64 %r67,%r67,1; .loc 1 189 6 bra $L16; $L13: .loc 1 205 5 setp.ne.u32 %r142,%r53,-1; @ %r142 bra $L17; .loc 1 207 16 mov.u32 %r143,34; st.u32 [%r69],%r143; .loc 1 210 5 setp.ne.u64 %r144,%r71,0; @ %r144 bra $L18; .loc 1 206 7 mov.u64 %r49,%r54; bra $L32; $L17: .loc 1 208 12 setp.eq.u32 %r145,%r52,0; @ %r145 bra $L20; .loc 1 209 7 neg.s64 %r49,%r49; $L20: .loc 1 210 5 setp.eq.u64 %r146,%r71,0; @ %r146 bra $L32; .loc 1 211 13 setp.eq.u32 %r147,%r53,0; @ %r147 bra $L21; mov.u64 %r54,%r49; $L18: add.u64 %r70,%r67,-1; mov.u64 %r49,%r54; $L21: .loc 1 211 11 st.u64 [%r71],%r70; .loc 1 212 9 bra $L32; $L8: .loc 1 165 5 setp.eq.u32 %r149,%r72,0; @ %r149 bra $L27; cvt.s64.s32 %r66,%r72; bra $L7; $L32: .loc 1 213 1 mov.u64 %value,%r49; 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 %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 223 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),_strtol_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r32,[%value_in]; } .loc 1 224 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } lib_a-strtold.o/1591654539 399 399 100644 1016 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strtold .visible .func (.param .f64 %value_out) strtold (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/stdlib/strtold.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: 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 %r23; .reg .u64 %r24; .reg .f64 %r27; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; .loc 1 42 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; call (%value_in),strtod,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 46 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } lib_a-strtoll.o/1591654539 399 399 100644 1455 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strtoll .visible .func (.param .u64 %value_out) strtoll (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); .file 1 "../../../../../newlib/libc/stdlib/strtoll.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // 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: 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 135 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_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r32,[%value_in]; } .loc 1 136 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } /770 1591654539 399 399 100644 6541 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // 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); .file 1 "../../../../../newlib/libc/stdlib/strtoll_r.c" // BEGIN GLOBAL VAR DECL: __ctype_ptr__ .extern .global .align 8 .u64 __ctype_ptr__[1]; // 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 .u32 %r22; .reg .u64 %r23; .reg .u32 %r29; .reg .u64 %r34; .reg .u32 %r38; .reg .u64 %r47; .reg .u64 %r49; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u64 %r54; .reg .u32 %r55; .reg .u64 %r58; .reg .u32 %r61; .reg .u64 %r62; .reg .u64 %r66; .reg .u64 %r67; .reg .u64 %r69; .reg .u64 %r70; .reg .u64 %r71; .reg .u32 %r72; .reg .u64 %r73; .reg .u32 %r74; .reg .u64 %r75; .reg .u16 %r78; .reg .u16 %r79; .reg .u32 %r80; .reg .u16 %r81; .reg .u32 %r82; .reg .pred %r83; .reg .u16 %r84; .reg .pred %r85; .reg .pred %r87; .reg .u32 %r88; .reg .pred %r89; .reg .pred %r90; .reg .u16 %r92; .reg .u16 %r93; .reg .u16 %r94; .reg .u32 %r95; .reg .pred %r96; .reg .pred %r97; .reg .pred %r98; .reg .u64 %r100; .reg .u64 %r101; .reg .u64 %r102; .reg .u16 %r104; .reg .u16 %r105; .reg .u32 %r106; .reg .u16 %r107; .reg .u32 %r108; .reg .pred %r109; .reg .u16 %r110; .reg .u32 %r112; .reg .pred %r113; .reg .u16 %r114; .reg .pred %r115; .reg .pred %r116; .reg .u32 %r118; .reg .u32 %r120; .reg .u32 %r121; .reg .u16 %r123; .reg .u16 %r124; .reg .u16 %r125; .reg .u32 %r126; .reg .u16 %r127; .reg .pred %r128; .reg .u32 %r130; .reg .u32 %r131; .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 .pred %r142; .reg .u32 %r143; .reg .pred %r144; .reg .pred %r145; .reg .pred %r146; .reg .pred %r147; .reg .pred %r149; .reg .u32 %r151; .reg .u32 %r152; .reg .u16 %r153; mov.u64 %r69,%ar0; mov.u64 %r70,%ar1; mov.u64 %r71,%ar2; mov.u32 %r72,%ar3; .loc 1 78 11 ld.global.u64 %r23,[__ctype_ptr__]; mov.u64 %r58,%r70; $L2: mov.u64 %r47,%r58; add.u64 %r34,%r58,1; mov.u64 %r58,%r34; .loc 1 77 7 ld.u8 %r22,[%r47]; .loc 1 78 11 cvt.u32.u32 %r74,%r22; cvt.u64.u8 %r73,%r74; add.u64 %r75,%r23,%r73; .loc 1 78 2 ld.u8 %r153,[%r75+1]; mov.u16 %r79,%r153; and.b16 %r78,%r79,8; cvt.u32.u16 %r80,%r78; cvt.s32.s8 %r82,%r80; cvt.u16.u32 %r81,%r82; setp.ne.u16 %r83,%r81,0; @ %r83 bra $L2; .loc 1 79 5 cvt.u16.u32 %r84,%r22; setp.ne.u16 %r85,%r84,45; @ %r85 bra $L3; .loc 1 81 5 ld.u8 %r50,[%r34]; .loc 1 81 9 add.u64 %r34,%r47,2; .loc 1 80 7 mov.u32 %r52,1; bra $L4; $L3: .loc 1 82 12 setp.eq.u16 %r87,%r84,43; @ %r87 bra $L5; .loc 1 77 5 mov.u32 %r50,%r22; .loc 1 69 15 mov.u32 %r52,0; bra $L4; $L5: .loc 1 83 5 ld.u8 %r50,[%r34]; .loc 1 83 9 add.u64 %r34,%r47,2; .loc 1 69 15 mov.u32 %r52,0; $L4: .loc 1 84 12 and.b32 %r88,%r72,-17; .loc 1 84 5 setp.eq.u32 %r89,%r88,0; @ %r89 bra $L6; cvt.s64.s32 %r66,%r72; bra $L7; $L6: .loc 1 84 32 setp.ne.u32 %r90,%r50,48; @ %r90 bra $L8; .loc 1 85 29 ld.u8 %r153,[%r34]; mov.u16 %r93,%r153; and.b16 %r92,%r93,-33; .loc 1 85 15 cvt.u32.u16 %r95,%r92; cvt.u16.u8 %r94,%r95; setp.ne.u16 %r96,%r94,88; @ %r96 bra $L9; .loc 1 86 5 ld.u8 %r50,[%r34+1]; .loc 1 87 5 add.u64 %r34,%r34,2; mov.u64 %r66,16; .loc 1 88 8 cvt.u32.u64 %r72,%r66; bra $L7; $L9: .loc 1 90 5 setp.eq.u32 %r97,%r72,0; @ %r97 bra $L22; cvt.s64.s32 %r66,%r72; bra $L7; $L22: mov.u64 %r66,8; .loc 1 91 23 cvt.u32.u64 %r72,%r66; bra $L7; $L27: .loc 1 90 5 mov.u64 %r66,10; .loc 1 91 23 cvt.u32.u64 %r72,%r66; $L7: .loc 1 110 52 setp.ne.u32 %r98,%r52,0; selp.u64 %r54,-9223372036854775808,9223372036854775807,%r98; .loc 1 111 18 rem.u64 %r100,%r54,%r66; .loc 1 111 9 cvt.u32.u64 %r61,%r100; .loc 1 112 9 div.u64 %r62,%r54,%r66; mov.u64 %r67,%r34; .loc 1 113 20 mov.u32 %r53,0; .loc 1 113 11 mov.u64 %r49,0; .loc 1 123 8 mov.u32 %r151,-1; .loc 1 125 8 mov.u32 %r152,1; $L16: .loc 1 114 7 cvt.s64.s32 %r101,%r50; add.u64 %r102,%r23,%r101; ld.s8 %r38,[%r102+1]; .loc 1 114 6 cvt.u16.u32 %r105,%r38; and.b16 %r104,%r105,4; cvt.u32.u16 %r106,%r104; cvt.s32.s8 %r108,%r106; cvt.u16.u32 %r107,%r108; setp.eq.u16 %r109,%r107,0; @ %r109 bra $L11; .loc 1 115 6 add.u32 %r51,%r50,-48; bra $L12; $L11: and.b16 %r110,%r105,3; cvt.u32.u16 %r112,%r110; cvt.s32.s8 %r29,%r112; .loc 1 116 11 setp.eq.u32 %r113,%r29,0; @ %r113 bra $L13; .loc 1 117 31 cvt.u16.u32 %r114,%r29; setp.eq.u16 %r115,%r114,1; selp.u32 %r55,55,87,%r115; .loc 1 117 6 sub.u32 %r51,%r50,%r55; $L12: .loc 1 120 6 setp.le.s32 %r116,%r72,%r51; @ %r116 bra $L13; .loc 1 122 24 shr.u32 %r118,%r53,31; .loc 1 122 35 set.u32.gt.u64 %r120,%r49,%r62; neg.s32 %r121,%r120; .loc 1 122 28 cvt.u16.u32 %r124,%r118; cvt.u16.u32 %r125,%r121; or.b16 %r123,%r124,%r125; .loc 1 122 19 cvt.u32.u16 %r126,%r123; cvt.u16.u8 %r127,%r126; setp.ne.u16 %r128,%r127,0; @ %r128 bra $L25; .loc 1 122 52 set.u32.eq.u64 %r130,%r49,%r62; neg.s32 %r131,%r130; .loc 1 122 67 set.u32.gt.s32 %r133,%r51,%r61; neg.s32 %r134,%r133; .loc 1 122 62 cvt.u16.u32 %r136,%r131; cvt.u16.u32 %r137,%r134; and.b16 %r135,%r136,%r137; .loc 1 122 44 cvt.u32.u16 %r138,%r135; cvt.u16.u8 %r139,%r138; setp.ne.u16 %r140,%r139,0; @ %r140 bra $L26; .loc 1 127 8 cvt.s64.s32 %r141,%r51; mad.lo.u64 %r49,%r49,%r66,%r141; .loc 1 125 8 mov.u32 %r53,%r152; bra $L15; $L25: .loc 1 123 8 mov.u32 %r53,%r151; bra $L15; $L26: mov.u32 %r53,%r151; $L15: .loc 1 113 28 ld.u8 %r50,[%r67]; add.u64 %r67,%r67,1; .loc 1 114 6 bra $L16; $L13: .loc 1 130 5 setp.ne.u32 %r142,%r53,-1; @ %r142 bra $L17; .loc 1 132 16 mov.u32 %r143,34; st.u32 [%r69],%r143; .loc 1 135 5 setp.ne.u64 %r144,%r71,0; @ %r144 bra $L18; .loc 1 131 7 mov.u64 %r49,%r54; bra $L32; $L17: .loc 1 133 12 setp.eq.u32 %r145,%r52,0; @ %r145 bra $L20; .loc 1 134 7 neg.s64 %r49,%r49; $L20: .loc 1 135 5 setp.eq.u64 %r146,%r71,0; @ %r146 bra $L32; .loc 1 136 13 setp.eq.u32 %r147,%r53,0; @ %r147 bra $L21; mov.u64 %r54,%r49; $L18: add.u64 %r70,%r67,-1; mov.u64 %r49,%r54; $L21: .loc 1 136 11 st.u64 [%r71],%r70; .loc 1 137 9 bra $L32; $L8: .loc 1 90 5 setp.eq.u32 %r149,%r72,0; @ %r149 bra $L27; cvt.s64.s32 %r66,%r72; bra $L7; $L32: .loc 1 138 1 mov.u64 %value,%r49; st.param.u64 [%value_out],%value; ret; } lib_a-strtoul.o/1591654539 399 399 100644 7994 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // 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); .file 1 "../../../../../newlib/libc/stdlib/strtoul.c" // 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_ptr__ .extern .global .align 8 .u64 __ctype_ptr__[1]; // 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 .u32 %r22; .reg .u64 %r23; .reg .u32 %r29; .reg .u64 %r33; .reg .u32 %r37; .reg .u64 %r46; .reg .u32 %r48; .reg .u32 %r49; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r52; .reg .u64 %r55; .reg .u64 %r61; .reg .u64 %r62; .reg .u32 %r65; .reg .u64 %r66; .reg .u64 %r68; .reg .u64 %r69; .reg .u64 %r70; .reg .u64 %r71; .reg .u32 %r72; .reg .u64 %r73; .reg .u32 %r74; .reg .u64 %r75; .reg .u16 %r78; .reg .u16 %r79; .reg .u32 %r80; .reg .u16 %r81; .reg .u32 %r82; .reg .pred %r83; .reg .u16 %r84; .reg .pred %r85; .reg .pred %r87; .reg .u32 %r88; .reg .pred %r89; .reg .u64 %r90; .reg .u64 %r93; .reg .pred %r94; .reg .u16 %r96; .reg .u16 %r97; .reg .u16 %r98; .reg .u32 %r99; .reg .pred %r100; .reg .pred %r101; .reg .u64 %r102; .reg .u64 %r105; .reg .u64 %r106; .reg .u64 %r107; .reg .u16 %r109; .reg .u16 %r110; .reg .u32 %r111; .reg .u16 %r112; .reg .u32 %r113; .reg .pred %r114; .reg .u16 %r115; .reg .u32 %r117; .reg .pred %r118; .reg .u16 %r119; .reg .pred %r120; .reg .pred %r121; .reg .u32 %r123; .reg .u32 %r125; .reg .u32 %r126; .reg .u16 %r128; .reg .u16 %r129; .reg .u16 %r130; .reg .u32 %r131; .reg .u16 %r132; .reg .pred %r133; .reg .u32 %r135; .reg .u32 %r136; .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 .pred %r147; .reg .u32 %r148; .reg .pred %r149; .reg .pred %r150; .reg .pred %r151; .reg .pred %r152; .reg .pred %r154; .reg .u64 %r155; .reg .u64 %r158; .reg .u32 %r159; .reg .u32 %r160; .reg .u16 %r161; mov.u64 %r69,%ar0; mov.u64 %r70,%ar1; mov.u64 %r71,%ar2; mov.u32 %r72,%ar3; .loc 1 152 11 ld.global.u64 %r23,[__ctype_ptr__]; mov.u64 %r55,%r70; $L2: mov.u64 %r46,%r55; add.u64 %r33,%r55,1; mov.u64 %r55,%r33; .loc 1 151 7 ld.u8 %r22,[%r46]; .loc 1 152 11 cvt.u32.u32 %r74,%r22; cvt.u64.u8 %r73,%r74; add.u64 %r75,%r23,%r73; .loc 1 152 2 ld.u8 %r161,[%r75+1]; mov.u16 %r79,%r161; and.b16 %r78,%r79,8; cvt.u32.u16 %r80,%r78; cvt.s32.s8 %r82,%r80; cvt.u16.u32 %r81,%r82; setp.ne.u16 %r83,%r81,0; @ %r83 bra $L2; .loc 1 153 5 cvt.u16.u32 %r84,%r22; setp.ne.u16 %r85,%r84,45; @ %r85 bra $L3; .loc 1 155 5 ld.u8 %r48,[%r33]; .loc 1 155 9 add.u64 %r33,%r46,2; .loc 1 154 7 mov.u32 %r50,1; bra $L4; $L3: .loc 1 156 12 setp.eq.u16 %r87,%r84,43; @ %r87 bra $L5; .loc 1 151 5 mov.u32 %r48,%r22; .loc 1 145 15 mov.u32 %r50,0; bra $L4; $L5: .loc 1 157 5 ld.u8 %r48,[%r33]; .loc 1 157 9 add.u64 %r33,%r46,2; .loc 1 145 15 mov.u32 %r50,0; $L4: .loc 1 158 12 and.b32 %r88,%r72,-17; .loc 1 158 5 setp.eq.u32 %r89,%r88,0; @ %r89 bra $L6; cvt.s64.s32 %r62,%r72; mov.u64 %r90,-1; div.u64 %r61,%r90,%r62; rem.u64 %r93,%r90,%r62; cvt.u32.u64 %r65,%r93; bra $L7; $L6: .loc 1 158 32 setp.ne.u32 %r94,%r48,48; @ %r94 bra $L8; .loc 1 159 29 ld.u8 %r161,[%r33]; mov.u16 %r97,%r161; and.b16 %r96,%r97,-33; .loc 1 159 15 cvt.u32.u16 %r99,%r96; cvt.u16.u8 %r98,%r99; setp.ne.u16 %r100,%r98,88; @ %r100 bra $L9; .loc 1 160 5 ld.u8 %r48,[%r33+1]; .loc 1 161 5 add.u64 %r33,%r33,2; mov.u32 %r65,15; mov.u64 %r61,1152921504606846975; mov.u64 %r62,16; .loc 1 162 8 cvt.u32.u64 %r72,%r62; bra $L7; $L9: .loc 1 164 5 setp.eq.u32 %r101,%r72,0; @ %r101 bra $L21; cvt.s64.s32 %r62,%r72; mov.u64 %r102,-1; div.u64 %r61,%r102,%r62; rem.u64 %r105,%r102,%r62; cvt.u32.u64 %r65,%r105; bra $L7; $L21: mov.u32 %r65,7; mov.u64 %r61,2305843009213693951; mov.u64 %r62,8; .loc 1 165 23 cvt.u32.u64 %r72,%r62; bra $L7; $L26: .loc 1 164 5 mov.u32 %r65,5; mov.u64 %r61,1844674407370955161; mov.u64 %r62,10; .loc 1 165 23 cvt.u32.u64 %r72,%r62; $L7: mov.u64 %r66,%r33; .loc 1 168 20 mov.u32 %r51,0; .loc 1 168 11 mov.u64 %r68,0; .loc 1 178 8 mov.u32 %r159,-1; .loc 1 180 8 mov.u32 %r160,1; $L15: .loc 1 169 7 cvt.s64.s32 %r106,%r48; add.u64 %r107,%r23,%r106; ld.s8 %r37,[%r107+1]; .loc 1 169 6 cvt.u16.u32 %r110,%r37; and.b16 %r109,%r110,4; cvt.u32.u16 %r111,%r109; cvt.s32.s8 %r113,%r111; cvt.u16.u32 %r112,%r113; setp.eq.u16 %r114,%r112,0; @ %r114 bra $L10; .loc 1 170 6 add.u32 %r49,%r48,-48; bra $L11; $L10: and.b16 %r115,%r110,3; cvt.u32.u16 %r117,%r115; cvt.s32.s8 %r29,%r117; .loc 1 171 11 setp.eq.u32 %r118,%r29,0; @ %r118 bra $L12; .loc 1 172 31 cvt.u16.u32 %r119,%r29; setp.eq.u16 %r120,%r119,1; selp.u32 %r52,55,87,%r120; .loc 1 172 6 sub.u32 %r49,%r48,%r52; $L11: .loc 1 175 6 setp.le.s32 %r121,%r72,%r49; @ %r121 bra $L12; .loc 1 177 24 shr.u32 %r123,%r51,31; .loc 1 177 35 set.u32.gt.u64 %r125,%r68,%r61; neg.s32 %r126,%r125; .loc 1 177 28 cvt.u16.u32 %r129,%r123; cvt.u16.u32 %r130,%r126; or.b16 %r128,%r129,%r130; .loc 1 177 19 cvt.u32.u16 %r131,%r128; cvt.u16.u8 %r132,%r131; setp.ne.u16 %r133,%r132,0; @ %r133 bra $L23; .loc 1 177 52 set.u32.eq.u64 %r135,%r68,%r61; neg.s32 %r136,%r135; .loc 1 177 67 set.u32.gt.s32 %r138,%r49,%r65; neg.s32 %r139,%r138; .loc 1 177 62 cvt.u16.u32 %r141,%r136; cvt.u16.u32 %r142,%r139; and.b16 %r140,%r141,%r142; .loc 1 177 44 cvt.u32.u16 %r143,%r140; cvt.u16.u8 %r144,%r143; setp.ne.u16 %r145,%r144,0; @ %r145 bra $L24; .loc 1 182 8 cvt.s64.s32 %r146,%r49; mad.lo.u64 %r68,%r68,%r62,%r146; .loc 1 180 8 mov.u32 %r51,%r160; bra $L14; $L23: .loc 1 178 8 mov.u32 %r51,%r159; bra $L14; $L24: mov.u32 %r51,%r159; $L14: .loc 1 168 28 ld.u8 %r48,[%r66]; add.u64 %r66,%r66,1; .loc 1 169 6 bra $L15; $L12: .loc 1 185 5 setp.ge.s32 %r147,%r51,0; @ %r147 bra $L16; .loc 1 187 16 mov.u32 %r148,34; st.u32 [%r69],%r148; .loc 1 190 5 setp.ne.u64 %r149,%r71,0; @ %r149 bra $L25; .loc 1 186 7 mov.u64 %r68,-1; bra $L1; $L16: .loc 1 188 12 setp.eq.u32 %r150,%r50,0; @ %r150 bra $L19; .loc 1 189 7 neg.s64 %r68,%r68; $L19: .loc 1 190 5 setp.eq.u64 %r151,%r71,0; @ %r151 bra $L1; .loc 1 191 13 setp.eq.u32 %r152,%r51,0; @ %r152 bra $L20; bra $L17; $L25: .loc 1 186 7 mov.u64 %r68,-1; $L17: .loc 1 191 13 add.u64 %r70,%r66,-1; $L20: .loc 1 191 11 st.u64 [%r71],%r70; .loc 1 192 9 bra $L1; $L8: .loc 1 164 5 setp.eq.u32 %r154,%r72,0; @ %r154 bra $L26; cvt.s64.s32 %r62,%r72; mov.u64 %r155,-1; div.u64 %r61,%r155,%r62; rem.u64 %r158,%r155,%r62; cvt.u32.u64 %r65,%r158; bra $L7; $L1: .loc 1 193 1 mov.u64 %value,%r68; 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 203 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_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r32,[%value_in]; } .loc 1 204 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } /789 1591654539 399 399 100644 1463 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strtoull .visible .func (.param .u64 %value_out) strtoull (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); .file 1 "../../../../../newlib/libc/stdlib/strtoull.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // 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 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 136 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_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r32,[%value_in]; } .loc 1 137 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } /807 1591654539 399 399 100644 6819 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // 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); .file 1 "../../../../../newlib/libc/stdlib/strtoull_r.c" // BEGIN GLOBAL VAR DECL: __ctype_ptr__ .extern .global .align 8 .u64 __ctype_ptr__[1]; // 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 .u32 %r22; .reg .u64 %r23; .reg .u32 %r29; .reg .u64 %r33; .reg .u32 %r37; .reg .u64 %r46; .reg .u32 %r48; .reg .u32 %r49; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r52; .reg .u64 %r55; .reg .u64 %r61; .reg .u64 %r62; .reg .u32 %r65; .reg .u64 %r66; .reg .u64 %r68; .reg .u64 %r69; .reg .u64 %r70; .reg .u64 %r71; .reg .u32 %r72; .reg .u64 %r73; .reg .u32 %r74; .reg .u64 %r75; .reg .u16 %r78; .reg .u16 %r79; .reg .u32 %r80; .reg .u16 %r81; .reg .u32 %r82; .reg .pred %r83; .reg .u16 %r84; .reg .pred %r85; .reg .pred %r87; .reg .u32 %r88; .reg .pred %r89; .reg .u64 %r90; .reg .u64 %r93; .reg .pred %r94; .reg .u16 %r96; .reg .u16 %r97; .reg .u16 %r98; .reg .u32 %r99; .reg .pred %r100; .reg .pred %r101; .reg .u64 %r102; .reg .u64 %r105; .reg .u64 %r106; .reg .u64 %r107; .reg .u16 %r109; .reg .u16 %r110; .reg .u32 %r111; .reg .u16 %r112; .reg .u32 %r113; .reg .pred %r114; .reg .u16 %r115; .reg .u32 %r117; .reg .pred %r118; .reg .u16 %r119; .reg .pred %r120; .reg .pred %r121; .reg .u32 %r123; .reg .u32 %r125; .reg .u32 %r126; .reg .u16 %r128; .reg .u16 %r129; .reg .u16 %r130; .reg .u32 %r131; .reg .u16 %r132; .reg .pred %r133; .reg .u32 %r135; .reg .u32 %r136; .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 .pred %r147; .reg .u32 %r148; .reg .pred %r149; .reg .pred %r150; .reg .pred %r151; .reg .pred %r152; .reg .pred %r154; .reg .u64 %r155; .reg .u64 %r158; .reg .u32 %r159; .reg .u32 %r160; .reg .u16 %r161; mov.u64 %r69,%ar0; mov.u64 %r70,%ar1; mov.u64 %r71,%ar2; mov.u32 %r72,%ar3; .loc 1 77 11 ld.global.u64 %r23,[__ctype_ptr__]; mov.u64 %r55,%r70; $L2: mov.u64 %r46,%r55; add.u64 %r33,%r55,1; mov.u64 %r55,%r33; .loc 1 76 7 ld.u8 %r22,[%r46]; .loc 1 77 11 cvt.u32.u32 %r74,%r22; cvt.u64.u8 %r73,%r74; add.u64 %r75,%r23,%r73; .loc 1 77 2 ld.u8 %r161,[%r75+1]; mov.u16 %r79,%r161; and.b16 %r78,%r79,8; cvt.u32.u16 %r80,%r78; cvt.s32.s8 %r82,%r80; cvt.u16.u32 %r81,%r82; setp.ne.u16 %r83,%r81,0; @ %r83 bra $L2; .loc 1 78 5 cvt.u16.u32 %r84,%r22; setp.ne.u16 %r85,%r84,45; @ %r85 bra $L3; .loc 1 80 5 ld.u8 %r48,[%r33]; .loc 1 80 9 add.u64 %r33,%r46,2; .loc 1 79 7 mov.u32 %r50,1; bra $L4; $L3: .loc 1 81 12 setp.eq.u16 %r87,%r84,43; @ %r87 bra $L5; .loc 1 76 5 mov.u32 %r48,%r22; .loc 1 70 15 mov.u32 %r50,0; bra $L4; $L5: .loc 1 82 5 ld.u8 %r48,[%r33]; .loc 1 82 9 add.u64 %r33,%r46,2; .loc 1 70 15 mov.u32 %r50,0; $L4: .loc 1 83 12 and.b32 %r88,%r72,-17; .loc 1 83 5 setp.eq.u32 %r89,%r88,0; @ %r89 bra $L6; cvt.s64.s32 %r62,%r72; mov.u64 %r90,-1; div.u64 %r61,%r90,%r62; rem.u64 %r93,%r90,%r62; cvt.u32.u64 %r65,%r93; bra $L7; $L6: .loc 1 83 32 setp.ne.u32 %r94,%r48,48; @ %r94 bra $L8; .loc 1 84 29 ld.u8 %r161,[%r33]; mov.u16 %r97,%r161; and.b16 %r96,%r97,-33; .loc 1 84 15 cvt.u32.u16 %r99,%r96; cvt.u16.u8 %r98,%r99; setp.ne.u16 %r100,%r98,88; @ %r100 bra $L9; .loc 1 85 5 ld.u8 %r48,[%r33+1]; .loc 1 86 5 add.u64 %r33,%r33,2; mov.u32 %r65,15; mov.u64 %r61,1152921504606846975; mov.u64 %r62,16; .loc 1 87 8 cvt.u32.u64 %r72,%r62; bra $L7; $L9: .loc 1 89 5 setp.eq.u32 %r101,%r72,0; @ %r101 bra $L21; cvt.s64.s32 %r62,%r72; mov.u64 %r102,-1; div.u64 %r61,%r102,%r62; rem.u64 %r105,%r102,%r62; cvt.u32.u64 %r65,%r105; bra $L7; $L21: mov.u32 %r65,7; mov.u64 %r61,2305843009213693951; mov.u64 %r62,8; .loc 1 90 23 cvt.u32.u64 %r72,%r62; bra $L7; $L26: .loc 1 89 5 mov.u32 %r65,5; mov.u64 %r61,1844674407370955161; mov.u64 %r62,10; .loc 1 90 23 cvt.u32.u64 %r72,%r62; $L7: mov.u64 %r66,%r33; .loc 1 93 20 mov.u32 %r51,0; .loc 1 93 11 mov.u64 %r68,0; .loc 1 103 8 mov.u32 %r159,-1; .loc 1 105 8 mov.u32 %r160,1; $L15: .loc 1 94 7 cvt.s64.s32 %r106,%r48; add.u64 %r107,%r23,%r106; ld.s8 %r37,[%r107+1]; .loc 1 94 6 cvt.u16.u32 %r110,%r37; and.b16 %r109,%r110,4; cvt.u32.u16 %r111,%r109; cvt.s32.s8 %r113,%r111; cvt.u16.u32 %r112,%r113; setp.eq.u16 %r114,%r112,0; @ %r114 bra $L10; .loc 1 95 6 add.u32 %r49,%r48,-48; bra $L11; $L10: and.b16 %r115,%r110,3; cvt.u32.u16 %r117,%r115; cvt.s32.s8 %r29,%r117; .loc 1 96 11 setp.eq.u32 %r118,%r29,0; @ %r118 bra $L12; .loc 1 97 31 cvt.u16.u32 %r119,%r29; setp.eq.u16 %r120,%r119,1; selp.u32 %r52,55,87,%r120; .loc 1 97 6 sub.u32 %r49,%r48,%r52; $L11: .loc 1 100 6 setp.le.s32 %r121,%r72,%r49; @ %r121 bra $L12; .loc 1 102 24 shr.u32 %r123,%r51,31; .loc 1 102 35 set.u32.gt.u64 %r125,%r68,%r61; neg.s32 %r126,%r125; .loc 1 102 28 cvt.u16.u32 %r129,%r123; cvt.u16.u32 %r130,%r126; or.b16 %r128,%r129,%r130; .loc 1 102 19 cvt.u32.u16 %r131,%r128; cvt.u16.u8 %r132,%r131; setp.ne.u16 %r133,%r132,0; @ %r133 bra $L23; .loc 1 102 52 set.u32.eq.u64 %r135,%r68,%r61; neg.s32 %r136,%r135; .loc 1 102 67 set.u32.gt.s32 %r138,%r49,%r65; neg.s32 %r139,%r138; .loc 1 102 62 cvt.u16.u32 %r141,%r136; cvt.u16.u32 %r142,%r139; and.b16 %r140,%r141,%r142; .loc 1 102 44 cvt.u32.u16 %r143,%r140; cvt.u16.u8 %r144,%r143; setp.ne.u16 %r145,%r144,0; @ %r145 bra $L24; .loc 1 107 8 cvt.s64.s32 %r146,%r49; mad.lo.u64 %r68,%r68,%r62,%r146; .loc 1 105 8 mov.u32 %r51,%r160; bra $L14; $L23: .loc 1 103 8 mov.u32 %r51,%r159; bra $L14; $L24: mov.u32 %r51,%r159; $L14: .loc 1 93 28 ld.u8 %r48,[%r66]; add.u64 %r66,%r66,1; .loc 1 94 6 bra $L15; $L12: .loc 1 110 5 setp.ge.s32 %r147,%r51,0; @ %r147 bra $L16; .loc 1 112 16 mov.u32 %r148,34; st.u32 [%r69],%r148; .loc 1 115 5 setp.ne.u64 %r149,%r71,0; @ %r149 bra $L25; .loc 1 111 7 mov.u64 %r68,-1; bra $L1; $L16: .loc 1 113 12 setp.eq.u32 %r150,%r50,0; @ %r150 bra $L19; .loc 1 114 7 neg.s64 %r68,%r68; $L19: .loc 1 115 5 setp.eq.u64 %r151,%r71,0; @ %r151 bra $L1; .loc 1 116 13 setp.eq.u32 %r152,%r51,0; @ %r152 bra $L20; bra $L17; $L25: .loc 1 111 7 mov.u64 %r68,-1; $L17: .loc 1 116 13 add.u64 %r70,%r66,-1; $L20: .loc 1 116 11 st.u64 [%r71],%r70; .loc 1 117 9 bra $L1; $L8: .loc 1 89 5 setp.eq.u32 %r154,%r72,0; @ %r154 bra $L26; cvt.s64.s32 %r62,%r72; mov.u64 %r155,-1; div.u64 %r61,%r155,%r62; rem.u64 %r158,%r155,%r62; cvt.u32.u64 %r65,%r158; bra $L7; $L1: .loc 1 118 1 mov.u64 %value,%r68; st.param.u64 [%value_out],%value; ret; } lib_a-strupr.o/ 1591654539 399 399 100644 1588 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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_ptr__ .extern .global .align 8 .u64 __ctype_ptr__[1]; // 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 %r27; .reg .u64 %r29; .reg .u64 %r31; .reg .pred %r32; .reg .u64 %r34; .reg .u32 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .u16 %r40; .reg .u16 %r41; .reg .u16 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .pred %r45; .reg .u16 %r46; .reg .u16 %r47; .reg .u32 %r48; .reg .u32 %r49; .reg .pred %r50; .reg .u16 %r51; mov.u64 %r31,%ar0; .loc 1 41 11 ld.u8 %r27,[%r31]; .loc 1 41 3 setp.ne.u32 %r32,%r27,0; @ ! %r32 bra $L7; mov.u64 %r29,%r31; $L2: .loc 1 43 14 cvt.u32.u32 %r35,%r27; cvt.u64.u8 %r34,%r35; ld.global.u64 %r36,[__ctype_ptr__]; add.u64 %r37,%r36,%r34; ld.u8 %r51,[%r37+1]; mov.u16 %r41,%r51; and.b16 %r40,%r41,3; cvt.u32.u16 %r44,%r40; cvt.s32.s8 %r43,%r44; cvt.u16.u32 %r42,%r43; setp.ne.u16 %r45,%r42,2; @ %r45 bra $L3; cvt.u16.u32 %r47,%r27; add.u16 %r46,%r47,-32; cvt.u32.u16 %r48,%r46; cvt.u32.u8 %r27,%r48; $L3: .loc 1 43 12 cvt.u32.u32 %r49,%r27; st.u8 [%r29],%r49; .loc 1 41 28 add.u64 %r29,%r29,1; .loc 1 41 11 ld.u8 %r27,[%r29]; .loc 1 41 3 setp.ne.u32 %r50,%r27,0; @ %r50 bra $L2; $L7: .loc 1 46 1 mov.u64 %value,%r31; st.param.u64 [%value_out],%value; ret; } lib_a-strxfrm.o/1591654539 399 399 100644 2011 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .pred %r34; .reg .u32 %r35; .reg .pred %r36; .reg .u64 %r37; .reg .u32 %r38; .reg .pred %r39; .reg .pred %r40; .reg .pred %r41; .reg .u64 %r42; .reg .u16 %r43; .reg .u32 %r44; .reg .pred %r45; mov.u64 %r31,%ar0; mov.u64 %r32,%ar1; mov.u64 %r33,%ar2; ld.s8 %r25,[%r32]; .loc 1 62 9 setp.eq.u64 %r34,%r33,0; @ %r34 bra $L7; .loc 1 64 23 add.u64 %r32,%r32,1; .loc 1 64 18 cvt.u32.u32 %r35,%r25; st.u8 [%r31],%r35; .loc 1 64 10 setp.ne.u32 %r36,%r25,0; @ %r36 bra $L8; .loc 1 61 7 mov.u64 %r30,0; bra $L1; $L5: .loc 1 64 23 add.u64 %r32,%r32,1; .loc 1 64 18 add.u64 %r37,%r31,%r26; cvt.u32.u32 %r38,%r25; st.u8 [%r37],%r38; .loc 1 64 10 setp.eq.u32 %r39,%r25,0; @ ! %r39 bra $L3; bra $L9; $L8: .loc 1 61 7 mov.u64 %r26,0; $L3: .loc 1 65 9 add.u64 %r26,%r26,1; ld.s8 %r25,[%r32]; .loc 1 62 9 setp.ne.u64 %r40,%r33,%r26; @ %r40 bra $L5; bra $L2; $L7: .loc 1 61 7 mov.u64 %r26,%r33; $L2: .loc 1 69 9 setp.eq.u32 %r41,%r25,0; @ %r41 bra $L10; mov.u64 %r27,%r32; $L6: .loc 1 71 7 add.u64 %r27,%r27,1; add.u64 %r42,%r27,%r26; sub.u64 %r30,%r42,%r32; .loc 1 69 9 ld.s8 %r44,[%r27]; cvt.u16.u32 %r43,%r44; setp.ne.u16 %r45,%r43,0; @ %r45 bra $L6; bra $L1; $L9: .loc 1 65 9 mov.u64 %r30,%r26; bra $L1; $L10: .loc 1 69 9 mov.u64 %r30,%r26; $L1: .loc 1 76 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } /827 1591654539 399 399 100644 46279 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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_os_r .extern .func (.param .u64 %value_out) _realloc_os_r (.param .u64 %in_ar0, .param .u64 %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 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$4098 .const .align 1 .u8 zeroes$4098[16] = {48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48 }; // BEGIN VAR DEF: blanks$4097 .const .align 1 .u8 blanks$4097[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 .u32 %r26; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r34; .reg .u64 %r39; .reg .u64 %r41; .reg .u64 %r47; .reg .u32 %r50; .reg .u64 %r51; .reg .u32 %r52; .reg .u32 %r55; .reg .u64 %r57; .reg .u64 %r58; .reg .u64 %r61; .reg .u32 %r62; .reg .u64 %r63; .reg .u64 %r64; .reg .u64 %r65; .reg .u64 %r66; .reg .pred %r67; .reg .u32 %r68; .reg .pred %r69; .reg .pred %r70; .reg .u16 %r71; .reg .u16 %r72; .reg .pred %r73; .reg .u32 %r74; .reg .u32 %r76; .reg .u32 %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .u64 %r81; .reg .u64 %r82; .reg .pred %r83; .reg .u32 %r84; .reg .u32 %r85; .reg .u16 %r87; .reg .u16 %r88; .reg .pred %r89; .reg .u64 %r92; .reg .pred %r93; .reg .u32 %r94; .reg .u64 %r98; .reg .u64 %r99; .reg .u16 %r100; .reg .u16 %r101; .reg .u16 %r102; .reg .u64 %r107; .reg .u64 %r108; .reg .pred %r109; .reg .u64 %r112; .reg .u32 %r113; .reg .u32 %r114; .reg .pred %r115; .reg .u64 %r119; .reg .u32 %r120; .reg .u64 %r121; .reg .u64 %r122; .reg .pred %r123; .reg .u16 %r124; .reg .u16 %r125; .reg .u64 %r126; .reg .u32 %r127; mov.u64 %r63,%ar0; mov.u64 %r64,%ar1; mov.u64 %r65,%ar2; .loc 1 283 5 ld.u64 %r66,[%r65+16]; setp.eq.u64 %r67,%r66,0; @ %r67 bra $L2; .loc 1 280 6 ld.u64 %r39,[%r65]; ld.u64 %r61,[%r64]; ld.u32 %r50,[%r64+12]; .loc 1 278 24 mov.u64 %r34,0; .loc 1 281 6 mov.u64 %r41,%r34; bra $L3; $L2: .loc 1 284 19 mov.u32 %r68,0; st.u32 [%r65+8],%r68; .loc 1 285 10 mov.u32 %r62,%r68; bra $L1; $L5: .loc 1 290 6 ld.u64 %r34,[%r39]; .loc 1 291 8 ld.u64 %r41,[%r39+8]; .loc 1 292 7 add.u64 %r39,%r39,16; $L3: .loc 1 289 9 setp.eq.u64 %r69,%r41,0; @ %r69 bra $L5; cvt.s64.s32 %r58,%r50; .loc 1 295 6 setp.lt.u64 %r70,%r41,%r58; @ %r70 bra $L6; .loc 1 295 21 ld.s16 %r23,[%r64+16]; .loc 1 295 16 cvt.u16.u32 %r72,%r23; and.b16 %r71,%r72,1152; setp.ne.u16 %r73,%r71,0; @ %r73 bra $L7; cvt.u32.u64 %r74,%r41; cvt.s64.s32 %r57,%r74; bra $L8; $L7: .loc 1 298 34 ld.u64 %r24,[%r64+24]; .loc 1 298 25 sub.u64 %r25,%r61,%r24; .loc 1 298 8 cvt.u32.u64 %r55,%r25; .loc 1 306 25 ld.u32 %r26,[%r64+32]; .loc 1 306 32 add.u32 %r76,%r26,%r26; add.u32 %r77,%r76,%r26; .loc 1 306 8 shr.u32 %r78,%r77,31; add.u32 %r79,%r78,%r77; shr.s32 %r52,%r79,1; .loc 1 307 16 cvt.s64.s32 %r28,%r52; .loc 1 307 25 cvt.s64.s32 %r29,%r55; .loc 1 307 31 add.u64 %r81,%r41,1; add.u64 %r82,%r81,%r29; .loc 1 307 7 setp.ge.u64 %r83,%r28,%r82; @ %r83 bra $L9; .loc 1 308 28 cvt.u32.u64 %r85,%r41; add.u32 %r84,%r85,1; add.u32 %r52,%r84,%r55; cvt.s64.s32 %r28,%r52; $L9: .loc 1 309 7 cvt.u16.u32 %r88,%r23; and.b16 %r87,%r88,1024; setp.eq.u16 %r89,%r87,0; @ %r89 bra $L10; .loc 1 312 28 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r63; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r28; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r92,[%value_in]; } mov.u64 %r51,%r92; .loc 1 313 8 setp.ne.u64 %r93,%r92,0; @ %r93 bra $L11; .loc 1 315 18 mov.u32 %r94,12; st.u32 [%r63],%r94; .loc 1 316 6 bra $L12; $L11: .loc 1 318 5 ld.u64 %r98,[%r64+24]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r51; .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 319 16 ld.u16 %r101,[%r64+16]; and.b16 %r100,%r101,-1153; or.b16 %r102,%r100,128; st.u16 [%r64+16],%r102; bra $L13; $L10: .loc 1 323 28 cvt.s64.s32 %r107,%r26; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r63; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r28; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r107; call (%value_in),_realloc_os_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r108,[%value_in]; } mov.u64 %r51,%r108; .loc 1 325 8 setp.ne.u64 %r109,%r108,0; @ %r109 bra $L13; .loc 1 327 6 ld.u64 %r112,[%r64+24]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r63; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r112; call _free_r,(%out_arg1,%out_arg2); } .loc 1 330 18 mov.u32 %r113,12; st.u32 [%r63],%r113; .loc 1 331 6 bra $L12; $L13: .loc 1 334 18 st.u64 [%r64+24],%r51; .loc 1 335 17 add.u64 %r61,%r51,%r29; .loc 1 335 11 st.u64 [%r64],%r61; .loc 1 336 18 st.u32 [%r64+32],%r52; .loc 1 337 6 cvt.u32.u64 %r50,%r41; .loc 1 338 21 sub.u32 %r114,%r52,%r55; .loc 1 338 11 st.u32 [%r64+12],%r114; .loc 1 340 11 cvt.s64.s32 %r58,%r50; .loc 1 340 6 setp.le.u64 %r115,%r58,%r41; @ %r115 bra $L15; $L6: .loc 1 341 6 cvt.u32.u64 %r50,%r41; cvt.s64.s32 %r58,%r50; mov.u64 %r57,%r58; bra $L8; $L15: mov.u64 %r57,%r58; $L8: .loc 1 342 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r61; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r34; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r58; call (%value_in),memmove,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r119,[%value_in]; } .loc 1 343 10 ld.u32 %r120,[%r64+12]; sub.u32 %r50,%r120,%r50; st.u32 [%r64+12],%r50; .loc 1 344 10 ld.u64 %r121,[%r64]; add.u64 %r61,%r121,%r58; st.u64 [%r64],%r61; .loc 1 346 5 add.u64 %r34,%r34,%r57; .loc 1 347 7 sub.u64 %r41,%r41,%r57; .loc 1 348 34 ld.u64 %r122,[%r65+16]; sub.u64 %r47,%r122,%r57; st.u64 [%r65+16],%r47; .loc 1 348 9 setp.ne.u64 %r123,%r47,0; @ %r123 bra $L3; bra $L2; $L12: .loc 1 355 14 ld.u16 %r125,[%r64+16]; or.b16 %r124,%r125,64; st.u16 [%r64+16],%r124; .loc 1 356 18 mov.u64 %r126,0; st.u64 [%r65+16],%r126; .loc 1 357 19 cvt.u32.u64 %r127,%r126; st.u32 [%r65+8],%r127; .loc 1 358 10 mov.u32 %r62,-1; $L1: .loc 1 359 1 mov.u32 %value,%r62; 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 %r25; .reg .u64 %r30; .reg .u32 %r34; .reg .u64 %r38; .reg .u64 %r50; .reg .u32 %r88; .reg .u32 %r100; .reg .u32 %r101; .reg .u64 %r102; .reg .u64 %r104; .reg .u32 %r109; .reg .u64 %r111; .reg .u32 %r113; .reg .u64 %r115; .reg .u64 %r117; .reg .u32 %r120; .reg .u64 %r122; .reg .u32 %r123; .reg .u64 %r128; .reg .u64 %r130; .reg .u32 %r131; .reg .u64 %r132; .reg .u32 %r134; .reg .u32 %r135; .reg .u32 %r136; .reg .u64 %r138; .reg .u32 %r139; .reg .u32 %r140; .reg .u32 %r141; .reg .u64 %r142; .reg .u32 %r146; .reg .u64 %r147; .reg .u32 %r148; .reg .u64 %r149; .reg .u64 %r151; .reg .u32 %r154; .reg .u32 %r155; .reg .u32 %r156; .reg .u32 %r157; .reg .u64 %r159; .reg .u64 %r160; .reg .u32 %r163; .reg .u32 %r164; .reg .u64 %r166; .reg .u64 %r170; .reg .u64 %r172; .reg .u64 %r173; .reg .u64 %r176; .reg .u64 %r177; .reg .u64 %r178; .reg .u64 %r179; .reg .u64 %r180; .reg .u64 %r181; .reg .u64 %r182; .reg .u32 %r183; .reg .u64 %r184; .reg .u64 %r185; .reg .u64 %r186; .reg .u64 %r187; .reg .u64 %r188; .reg .u64 %r189; .reg .u64 %r192; .reg .u64 %r194; .reg .u32 %r196; .reg .u32 %r197; .reg .u64 %r199; .reg .u64 %r200; .reg .u64 %r202; .reg .u64 %r205; .reg .u32 %r206; .reg .u32 %r207; .reg .u64 %r208; .reg .u32 %r210; .reg .u64 %r212; .reg .u64 %r214; .reg .u32 %r215; .reg .u64 %r216; .reg .u64 %r217; .reg .u64 %r222; .reg .u32 %r223; .reg .u32 %r224; .reg .u32 %r225; .reg .u32 %r226; .reg .u64 %r227; .reg .u64 %r228; .reg .u64 %r229; .reg .u64 %r230; .reg .u16 %r239; .reg .u16 %r240; .reg .pred %r241; .reg .u64 %r242; .reg .pred %r243; .reg .u64 %r245; .reg .u64 %r246; .reg .pred %r247; .reg .u32 %r248; .reg .u32 %r249; .reg .u64 %r250; .reg .u32 %r251; .reg .u16 %r253; .reg .u32 %r254; .reg .u32 %r255; .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 .u16 %r267; .reg .u32 %r268; .reg .u32 %r269; .reg .u32 %r272; .reg .u32 %r273; .reg .u16 %r274; .reg .u16 %r275; .reg .u16 %r276; .reg .u32 %r277; .reg .u16 %r278; .reg .pred %r279; .reg .u64 %r280; .reg .pred %r281; .reg .u64 %r282; .reg .u64 %r283; .reg .u32 %r284; .reg .pred %r285; .reg .u32 %r290; .reg .pred %r291; .reg .pred %r292; .reg .u32 %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 .pred %r311; .reg .pred %r312; .reg .pred %r313; .reg .pred %r314; .reg .pred %r315; .reg .pred %r316; .reg .pred %r317; .reg .pred %r318; .reg .pred %r319; .reg .pred %r320; .reg .pred %r321; .reg .pred %r322; .reg .pred %r323; .reg .pred %r324; .reg .pred %r325; .reg .u32 %r326; .reg .pred %r327; .reg .pred %r328; .reg .pred %r329; .reg .pred %r330; .reg .u32 %r331; .reg .u32 %r333; .reg .u32 %r334; .reg .u32 %r335; .reg .pred %r336; .reg .u32 %r338; .reg .u32 %r339; .reg .u32 %r340; .reg .pred %r343; .reg .u16 %r344; .reg .pred %r345; .reg .u32 %r346; .reg .u32 %r347; .reg .pred %r348; .reg .u32 %r349; .reg .u32 %r350; .reg .pred %r351; .reg .pred %r352; .reg .u32 %r353; .reg .u32 %r354; .reg .pred %r355; .reg .u32 %r356; .reg .pred %r357; .reg .u32 %r358; .reg .pred %r359; .reg .pred %r364; .reg .u32 %r365; .reg .pred %r366; .reg .u32 %r367; .reg .u64 %r368; .reg .u32 %r369; .reg .pred %r370; .reg .u64 %r371; .reg .u32 %r372; .reg .pred %r373; .reg .u64 %r374; .reg .u32 %r375; .reg .pred %r376; .reg .pred %r377; .reg .u32 %r378; .reg .u32 %r379; .reg .pred %r380; .reg .pred %r381; .reg .u32 %r382; .reg .u32 %r383; .reg .pred %r384; .reg .u32 %r385; .reg .pred %r386; .reg .u32 %r387; .reg .pred %r388; .reg .u16 %r389; .reg .u32 %r390; .reg .u32 %r391; .reg .u32 %r392; .reg .pred %r393; .reg .pred %r394; .reg .u32 %r396; .reg .u64 %r398; .reg .u64 %r399; .reg .pred %r400; .reg .u64 %r401; .reg .u32 %r402; .reg .u64 %r404; .reg .pred %r405; .reg .u32 %r406; .reg .u32 %r407; .reg .pred %r408; .reg .pred %r409; .reg .u32 %r410; .reg .u32 %r411; .reg .pred %r412; .reg .u32 %r413; .reg .pred %r414; .reg .u32 %r415; .reg .pred %r416; .reg .u16 %r417; .reg .pred %r418; .reg .u32 %r419; .reg .u32 %r420; .reg .pred %r421; .reg .u32 %r422; .reg .pred %r423; .reg .u32 %r424; .reg .pred %r425; .reg .u16 %r426; .reg .u32 %r427; .reg .pred %r428; .reg .pred %r429; .reg .u32 %r430; .reg .u32 %r431; .reg .pred %r432; .reg .u32 %r434; .reg .u32 %r435; .reg .u32 %r437; .reg .u32 %r438; .reg .u16 %r439; .reg .u16 %r440; .reg .u16 %r441; .reg .u32 %r442; .reg .u16 %r443; .reg .pred %r444; .reg .u16 %r445; .reg .pred %r446; .reg .pred %r448; .reg .u16 %r450; .reg .u16 %r451; .reg .u16 %r453; .reg .u32 %r455; .reg .pred %r457; .reg .u16 %r459; .reg .u32 %r460; .reg .u32 %r461; .reg .u16 %r463; .reg .u16 %r464; .reg .u16 %r466; .reg .u16 %r467; .reg .u32 %r469; .reg .u16 %r470; .reg .pred %r471; .reg .u64 %r474; .reg .u32 %r475; .reg .u64 %r478; .reg .u16 %r481; .reg .u16 %r482; .reg .u32 %r483; .reg .u64 %r485; .reg .u16 %r487; .reg .u16 %r488; .reg .u32 %r489; .reg .u64 %r493; .reg .u64 %r494; .reg .u64 %r495; .reg .u32 %r496; .reg .pred %r497; .reg .u64 %r500; .reg .pred %r501; .reg .pred %r502; .reg .u32 %r503; .reg .pred %r504; .reg .u32 %r505; .reg .pred %r506; .reg .u32 %r507; .reg .pred %r508; .reg .pred %r510; .reg .pred %r511; .reg .pred %r512; .reg .u64 %r514; .reg .pred %r515; .reg .u32 %r520; .reg .pred %r521; .reg .pred %r522; .reg .pred %r524; .reg .u32 %r529; .reg .pred %r530; .reg .u16 %r531; .reg .u32 %r532; .reg .pred %r533; .reg .u64 %r535; .reg .pred %r536; .reg .u32 %r541; .reg .pred %r542; .reg .u64 %r545; .reg .pred %r546; .reg .u32 %r551; .reg .pred %r552; .reg .pred %r553; .reg .pred %r554; .reg .pred %r555; .reg .u64 %r557; .reg .pred %r558; .reg .u32 %r563; .reg .pred %r564; .reg .pred %r565; .reg .pred %r567; .reg .u32 %r572; .reg .pred %r573; .reg .pred %r574; .reg .pred %r575; .reg .u64 %r577; .reg .pred %r578; .reg .u32 %r583; .reg .pred %r584; .reg .pred %r585; .reg .pred %r587; .reg .u32 %r592; .reg .pred %r593; .reg .u32 %r594; .reg .pred %r595; .reg .u32 %r600; .reg .pred %r601; .reg .u32 %r602; .reg .pred %r603; .reg .pred %r604; .reg .pred %r605; .reg .u64 %r607; .reg .pred %r608; .reg .u32 %r613; .reg .pred %r614; .reg .pred %r615; .reg .pred %r617; .reg .u32 %r622; .reg .pred %r623; .reg .u32 %r624; .reg .pred %r625; .reg .u32 %r626; .reg .u32 %r631; .reg .pred %r632; .reg .u64 %r633; .reg .pred %r634; .reg .u64 %r638; .reg .u32 %r639; .reg .u16 %r640; .reg .u16 %r641; .reg .pred %r642; .reg .pred %r644; .reg .u32 %r646; .reg .u32 %r647; .reg .u32 %r649; .reg .u32 %r650; .reg .u16 %r651; .reg .u16 %r652; .reg .u16 %r653; .reg .u32 %r654; .reg .u16 %r655; .reg .pred %r656; .reg .u64 %r657; .reg .u64 %r658; .reg .u32 %r659; .reg .pred %r660; .reg .pred %r662; .reg .u32 %r688; .reg .u64 %r689; .reg .u64 %r690; .reg .u64 %r691; mov.u64 %r227,%ar0; mov.u64 %r228,%ar1; mov.u64 %r229,%ar2; mov.u64 %r230,%ar3; .loc 1 880 12 ld.u16 %r240,[%r228+16]; and.b16 %r239,%r240,128; setp.eq.u16 %r241,%r239,0; @ %r241 bra $L20; .loc 1 880 33 ld.u64 %r242,[%r228+24]; setp.ne.u64 %r243,%r242,0; @ %r243 bra $L20; .loc 1 882 28 mov.u64 %r245,64; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r227; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r245; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r246,[%value_in]; } .loc 1 882 26 st.u64 [%r228],%r246; .loc 1 882 17 st.u64 [%r228+24],%r246; .loc 1 883 6 setp.ne.u64 %r247,%r246,0; @ %r247 bra $L21; .loc 1 885 17 mov.u32 %r248,12; st.u32 [%r227],%r248; .loc 1 886 11 mov.u32 %r226,-1; bra $L19; $L21: .loc 1 888 17 cvt.u32.u64 %r249,%r245; st.u32 [%r228+32],%r249; $L20: .loc 1 894 14 st.u64 [%frame+168],%frame; .loc 1 895 16 mov.u64 %r250,0; st.u64 [%frame+184],%r250; .loc 1 896 17 cvt.u32.u64 %r251,%r250; st.u32 [%frame+176],%r251; .loc 1 894 21 mov.u64 %r142,%frame; .loc 1 718 8 mov.u64 %r25,%r250; .loc 1 898 6 cvt.u32.u64 %r226,%r25; .loc 1 929 4 add.u64 %r689,%frame,168; .loc 1 1694 4 add.u64 %r690,%frame,192; .loc 1 1692 4 add.u64 %r691,%frame,194; $L23: .loc 1 925 24 ld.s8 %r146,[%r229]; .loc 1 925 37 cvt.u16.u32 %r253,%r146; set.u32.ne.u16 %r254,%r253,37; neg.s32 %r255,%r254; set.u32.ne.u16 %r258,%r253,0; neg.s32 %r259,%r258; cvt.u16.u32 %r261,%r255; cvt.u16.u32 %r262,%r259; and.b16 %r260,%r261,%r262; .loc 1 925 23 cvt.u32.u16 %r263,%r260; cvt.u16.u8 %r264,%r263; setp.eq.u16 %r265,%r264,0; @ %r265 bra $L155; mov.u64 %r172,%r229; bra $L25; $L156: mov.u64 %r172,%r147; $L25: .loc 1 926 25 add.u64 %r147,%r172,1; .loc 1 925 24 ld.s8 %r146,[%r147]; .loc 1 925 37 cvt.u16.u32 %r267,%r146; set.u32.ne.u16 %r268,%r267,0; neg.s32 %r269,%r268; set.u32.ne.u16 %r272,%r267,37; neg.s32 %r273,%r272; cvt.u16.u32 %r275,%r269; cvt.u16.u32 %r276,%r273; and.b16 %r274,%r275,%r276; .loc 1 925 23 cvt.u32.u16 %r277,%r274; cvt.u16.u8 %r278,%r277; setp.ne.u16 %r279,%r278,0; @ %r279 bra $L156; .loc 1 928 16 sub.u64 %r280,%r147,%r229; .loc 1 928 10 cvt.u32.u64 %r148,%r280; .loc 1 928 6 setp.eq.u32 %r281,%r148,0; @ %r281 bra $L24; .loc 1 929 4 st.u64 [%r142],%r229; cvt.s64.s32 %r30,%r148; st.u64 [%r142+8],%r30; ld.u64 %r283,[%frame+184]; add.u64 %r282,%r283,%r30; st.u64 [%frame+184],%r282; ld.u32 %r284,[%frame+176]; add.u32 %r34,%r284,1; st.u32 [%frame+176],%r34; setp.gt.s32 %r285,%r34,7; @ %r285 bra $L26; add.u64 %r142,%r142,16; bra $L27; $L26: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r227; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r228; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r689; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r290,[%value_in]; } setp.ne.u32 %r291,%r290,0; @ %r291 bra $L28; mov.u64 %r142,%frame; $L27: .loc 1 930 8 add.u32 %r226,%r226,%r148; ld.s8 %r146,[%r172+1]; bra $L24; $L155: .loc 1 925 23 mov.u64 %r147,%r229; $L24: .loc 1 936 20 setp.eq.u32 %r292,%r146,0; @ %r292 bra $L29; .loc 1 940 6 add.u64 %r229,%r147,1; .loc 1 946 8 mov.u32 %r293,0; st.u8 [%frame+194],%r293; ld.s8 %r225,[%r147+1]; mov.u32 %r163,0; mov.u32 %r183,%r163; .loc 1 945 8 mov.u32 %r136,-1; .loc 1 944 9 mov.u32 %r135,%r163; .loc 1 942 9 mov.u32 %r134,%r163; .loc 1 1071 6 mov.u32 %r688,%r163; bra $L30; $L158: .loc 1 1018 10 mov.u64 %r230,%r128; $L30: .loc 1 958 18 add.u64 %r229,%r229,1; .loc 1 958 12 mov.u32 %r131,%r225; $L31: setp.eq.u32 %r294,%r131,88; @ %r294 bra $L32; setp.gt.s32 %r295,%r131,88; @ %r295 bra $L33; setp.eq.u32 %r296,%r131,46; @ %r296 bra $L34; setp.gt.s32 %r297,%r131,46; @ %r297 bra $L35; setp.eq.u32 %r298,%r131,42; @ %r298 bra $L36; setp.gt.s32 %r299,%r131,42; @ %r299 bra $L37; setp.eq.u32 %r300,%r131,32; @ %r300 bra $L38; setp.eq.u32 %r301,%r131,35; @ %r301 bra $L39; bra $L40; $L37: setp.eq.u32 %r302,%r131,43; @ %r302 bra $L41; setp.eq.u32 %r303,%r131,45; @ %r303 bra $L42; bra $L40; $L35: setp.gt.s32 %r304,%r131,57; @ %r304 bra $L43; setp.ge.s32 %r305,%r131,49; @ %r305 bra $L44; setp.eq.u32 %r306,%r131,48; @ %r306 bra $L45; bra $L40; $L43: setp.eq.u32 %r307,%r131,79; @ %r307 bra $L46; setp.eq.u32 %r308,%r131,85; @ %r308 bra $L47; setp.eq.u32 %r309,%r131,68; @ ! %r309 bra $L40; bra $L48; $L33: setp.eq.u32 %r310,%r131,110; @ %r310 bra $L49; setp.gt.s32 %r311,%r131,110; @ %r311 bra $L50; setp.eq.u32 %r312,%r131,104; @ %r312 bra $L51; setp.gt.s32 %r313,%r131,104; @ %r313 bra $L52; setp.eq.u32 %r314,%r131,99; @ %r314 bra $L53; setp.eq.u32 %r315,%r131,100; @ %r315 bra $L54; bra $L40; $L52: setp.eq.u32 %r316,%r131,105; @ %r316 bra $L54; setp.eq.u32 %r317,%r131,108; @ %r317 bra $L55; bra $L40; $L50: setp.eq.u32 %r318,%r131,113; @ %r318 bra $L56; setp.gt.s32 %r319,%r131,113; @ %r319 bra $L57; setp.eq.u32 %r320,%r131,111; @ %r320 bra $L58; setp.eq.u32 %r321,%r131,112; @ %r321 bra $L59; bra $L40; $L57: setp.eq.u32 %r322,%r131,117; @ %r322 bra $L60; setp.eq.u32 %r323,%r131,120; @ %r323 bra $L61; setp.eq.u32 %r324,%r131,115; @ ! %r324 bra $L40; bra $L62; $L42: ld.s8 %r225,[%r229]; bra $L63; $L61: setp.eq.u32 %r325,%r163,0; @ %r325 bra $L64; cvt.u32.u32 %r326,%r183; st.u8 [%frame+194],%r326; $L64: .loc 1 1545 10 cvta.const.u64 %r25,$LC1; bra $L65; $L38: ld.s8 %r225,[%r229]; .loc 1 975 7 setp.eq.u32 %r327,%r183,0; selp.u32 %r163,1,%r163,%r327; selp.u32 %r183,32,%r183,%r327; bra $L30; $L39: .loc 1 979 10 or.b32 %r134,%r134,1; ld.s8 %r225,[%r229]; .loc 1 980 4 bra $L30; $L36: .loc 1 1018 10 add.u64 %r128,%r230,4; ld.u32 %r135,[%r230]; ld.s8 %r225,[%r229]; .loc 1 1022 7 setp.ge.s32 %r328,%r135,0; @ %r328 bra $L158; .loc 1 1024 10 neg.s32 %r135,%r135; .loc 1 1018 10 mov.u64 %r230,%r128; $L63: .loc 1 1027 10 or.b32 %r134,%r134,4; .loc 1 1028 4 bra $L30; $L41: ld.s8 %r225,[%r229]; .loc 1 1031 4 mov.u32 %r163,1; .loc 1 1030 9 mov.u32 %r183,%r131; .loc 1 1031 4 bra $L30; $L34: .loc 1 1033 18 add.u64 %r149,%r229,1; .loc 1 1033 12 ld.s8 %r131,[%r229]; .loc 1 1033 7 setp.eq.u32 %r329,%r131,42; @ %r329 bra $L68; .loc 1 1072 11 add.u32 %r659,%r131,-48; .loc 1 1072 10 setp.le.u32 %r330,%r659,9; @ %r330 bra $L69; .loc 1 1033 18 mov.u64 %r229,%r149; .loc 1 1071 6 mov.u32 %r136,%r688; bra $L31; $L68: ld.u32 %r331,[%r230]; max.s32 %r136,%r331,-1; ld.s8 %r225,[%r229+1]; .loc 1 1063 10 add.u64 %r230,%r230,4; .loc 1 1033 18 mov.u64 %r229,%r149; bra $L30; $L69: mov.u64 %r222,%r149; .loc 1 1071 6 mov.u32 %r136,%r688; $L71: .loc 1 1073 12 shl.b32 %r333,%r136,2; add.u32 %r334,%r333,%r136; add.u32 %r335,%r334,%r334; .loc 1 1073 7 add.u32 %r136,%r335,%r659; add.u64 %r229,%r222,1; .loc 1 1074 8 ld.s8 %r131,[%r222]; .loc 1 1072 11 add.u32 %r659,%r131,-48; mov.u64 %r222,%r229; .loc 1 1072 10 setp.le.u32 %r336,%r659,9; @ %r336 bra $L71; bra $L31; $L45: .loc 1 1084 10 or.b32 %r134,%r134,128; ld.s8 %r225,[%r229]; .loc 1 1085 4 bra $L30; $L44: mov.u64 %r187,%r229; .loc 1 1088 6 mov.u32 %r135,0; add.u32 %r659,%r131,-48; $L72: .loc 1 1090 12 shl.b32 %r338,%r135,2; add.u32 %r339,%r338,%r135; add.u32 %r340,%r339,%r339; .loc 1 1090 7 add.u32 %r135,%r659,%r340; add.u64 %r229,%r229,1; .loc 1 1091 8 ld.s8 %r131,[%r187]; mov.u64 %r187,%r229; .loc 1 1092 13 add.u32 %r659,%r131,-48; .loc 1 1092 4 setp.le.u32 %r343,%r659,9; @ %r343 bra $L72; bra $L31; $L51: .loc 1 1118 11 or.b32 %r134,%r134,64; ld.s8 %r225,[%r229]; .loc 1 1119 4 bra $L30; $L55: .loc 1 1122 8 ld.s8 %r225,[%r229]; .loc 1 1122 7 cvt.u16.u32 %r344,%r225; setp.ne.u16 %r345,%r344,108; @ %r345 bra $L73; .loc 1 1124 11 or.b32 %r134,%r134,32; ld.s8 %r225,[%r229+1]; .loc 1 1123 8 add.u64 %r229,%r229,1; bra $L30; $L73: .loc 1 1127 11 or.b32 %r134,%r134,16; bra $L30; $L56: .loc 1 1130 10 or.b32 %r134,%r134,32; ld.s8 %r225,[%r229]; .loc 1 1131 4 bra $L30; $L53: .loc 1 1189 9 ld.u32 %r346,[%r230]; st.u8 [%frame+128],%r346; .loc 1 1192 9 mov.u32 %r347,0; st.u8 [%frame+194],%r347; .loc 1 1189 11 add.u64 %r230,%r230,4; .loc 1 1193 4 mov.u32 %r140,1; .loc 1 1190 10 mov.u32 %r141,%r140; .loc 1 1173 7 add.u64 %r130,%frame,128; .loc 1 1193 4 bra $L74; $L48: setp.eq.u32 %r348,%r163,0; @ %r348 bra $L75; cvt.u32.u32 %r349,%r183; st.u8 [%frame+194],%r349; $L75: .loc 1 1195 10 or.b32 %r113,%r134,16; .loc 1 1199 13 and.b32 %r350,%r134,32; setp.ne.u32 %r351,%r350,0; @ ! %r351 bra $L77; bra $L76; $L54: setp.eq.u32 %r352,%r163,0; @ %r352 bra $L78; cvt.u32.u32 %r353,%r183; st.u8 [%frame+194],%r353; $L78: and.b32 %r354,%r134,32; setp.eq.u32 %r355,%r354,0; @ %r355 bra $L79; mov.u32 %r113,%r134; $L76: add.u64 %r185,%r230,7; and.b64 %r166,%r185,-8; add.u64 %r230,%r166,8; ld.u64 %r50,[%r166]; mov.u64 %r138,%r50; bra $L80; $L79: and.b32 %r356,%r134,16; setp.eq.u32 %r357,%r356,0; @ %r357 bra $L81; mov.u32 %r113,%r134; $L77: add.u64 %r160,%r230,7; and.b64 %r184,%r160,-8; add.u64 %r230,%r184,8; ld.u64 %r50,[%r184]; mov.u64 %r138,%r50; bra $L80; $L81: add.u64 %r202,%r230,4; and.b32 %r358,%r134,64; setp.eq.u32 %r359,%r358,0; @ %r359 bra $L82; ld.s16 %r138,[%r230]; mov.u64 %r50,%r138; mov.u32 %r113,%r134; mov.u64 %r230,%r202; bra $L80; $L82: ld.s32 %r138,[%r230]; mov.u64 %r50,%r138; mov.u32 %r113,%r134; mov.u64 %r230,%r202; $L80: .loc 1 1201 7 setp.ge.s64 %r364,%r50,0; @ %r364 bra $L83; .loc 1 1207 12 neg.s64 %r138,%r138; .loc 1 1208 10 mov.u32 %r365,45; st.u8 [%frame+194],%r365; mov.u32 %r134,%r113; mov.u32 %r223,45; .loc 1 1210 9 mov.u32 %r139,1; bra $L84; $L49: setp.eq.u32 %r366,%r163,0; @ %r366 bra $L85; cvt.u32.u32 %r367,%r183; st.u8 [%frame+194],%r367; $L85: add.u64 %r368,%r230,7; and.b64 %r199,%r368,-8; ld.u64 %r200,[%r199]; add.u64 %r230,%r199,8; .loc 1 1392 14 and.b32 %r369,%r134,32; .loc 1 1392 7 setp.eq.u32 %r370,%r369,0; @ %r370 bra $L86; .loc 1 1393 34 cvt.s64.s32 %r371,%r226; st.u64 [%r200],%r371; bra $L23; $L86: .loc 1 1396 14 and.b32 %r372,%r134,16; .loc 1 1396 7 setp.eq.u32 %r373,%r372,0; @ %r373 bra $L88; .loc 1 1397 34 cvt.s64.s32 %r374,%r226; st.u64 [%r200],%r374; bra $L23; $L88: .loc 1 1398 19 and.b32 %r375,%r134,64; .loc 1 1398 12 setp.eq.u32 %r376,%r375,0; @ %r376 bra $L89; .loc 1 1399 35 st.u16 [%r200],%r226; bra $L23; $L89: .loc 1 1405 33 st.u32 [%r200],%r226; bra $L23; $L46: setp.eq.u32 %r377,%r163,0; @ %r377 bra $L90; cvt.u32.u32 %r378,%r183; st.u8 [%frame+194],%r378; $L90: .loc 1 1408 10 or.b32 %r120,%r134,16; .loc 1 1411 13 and.b32 %r379,%r134,32; setp.ne.u32 %r380,%r379,0; @ ! %r380 bra $L92; bra $L159; $L58: setp.eq.u32 %r381,%r163,0; @ %r381 bra $L93; cvt.u32.u32 %r382,%r183; st.u8 [%frame+194],%r382; $L93: and.b32 %r383,%r134,32; setp.eq.u32 %r384,%r383,0; @ %r384 bra $L94; bra $L91; $L159: .loc 1 1408 10 mov.u32 %r134,%r120; $L91: .loc 1 1411 13 add.u64 %r102,%r230,7; and.b64 %r170,%r102,-8; add.u64 %r230,%r170,8; ld.u64 %r138,[%r170]; .loc 1 1412 9 mov.u32 %r139,0; bra $L95; $L94: .loc 1 1411 13 and.b32 %r385,%r134,16; setp.eq.u32 %r386,%r385,0; @ %r386 bra $L96; mov.u32 %r120,%r134; $L92: add.u64 %r151,%r230,7; and.b64 %r173,%r151,-8; add.u64 %r230,%r173,8; ld.u64 %r138,[%r173]; mov.u32 %r134,%r120; .loc 1 1412 9 mov.u32 %r139,0; bra $L95; $L96: ld.u32 %r197,[%r230]; add.u64 %r230,%r230,4; .loc 1 1411 13 and.b32 %r387,%r134,64; setp.eq.u32 %r388,%r387,0; @ %r388 bra $L97; cvt.u16.u32 %r389,%r197; cvt.u64.u16 %r138,%r389; .loc 1 1412 9 mov.u32 %r139,%r385; bra $L95; $L97: .loc 1 1411 13 cvt.u64.u32 %r138,%r197; .loc 1 1412 9 mov.u32 %r139,%r387; bra $L95; $L59: .loc 1 1426 25 add.u64 %r189,%r230,7; and.b64 %r182,%r189,-8; add.u64 %r230,%r182,8; .loc 1 1426 11 ld.u64 %r138,[%r182]; .loc 1 1429 10 or.b32 %r134,%r134,2; .loc 1 1430 10 mov.u32 %r390,48; st.u8 [%frame+192],%r390; .loc 1 1431 10 mov.u32 %r391,120; st.u8 [%frame+193],%r391; .loc 1 1428 10 cvta.const.u64 %r25,$LC1; .loc 1 1427 9 mov.u32 %r139,2; .loc 1 1432 4 bra $L95; $L62: .loc 1 1437 7 add.u64 %r180,%r230,7; and.b64 %r181,%r180,-8; add.u64 %r230,%r181,8; ld.u64 %r130,[%r181]; .loc 1 1441 9 mov.u32 %r392,0; st.u8 [%frame+194],%r392; .loc 1 1447 7 setp.ne.u64 %r393,%r130,0; @ %r393 bra $L98; .loc 1 1449 39 min.u32 %r141,%r136,6; mov.u32 %r140,%r141; .loc 1 1448 8 cvta.const.u64 %r130,$LC2; bra $L74; $L98: .loc 1 1516 7 setp.eq.u32 %r394,%r136,-1; @ %r394 bra $L99; .loc 1 1522 15 cvt.s64.s32 %r398,%r136; mov.u32 %r396,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r130; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r396; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r398; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r399,[%value_in]; } .loc 1 1524 8 setp.eq.u64 %r400,%r399,0; @ %r400 bra $L100; .loc 1 1525 15 sub.u64 %r401,%r399,%r130; cvt.u32.u64 %r402,%r401; min.s32 %r141,%r136,%r402; ld.s8 %r223,[%frame+194]; mov.u32 %r109,%r134; .loc 1 943 9 mov.u32 %r136,%r396; bra $L101; $L99: .loc 1 1531 12 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r130; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r404,[%value_in]; } .loc 1 1531 10 cvt.u32.u64 %r141,%r404; ld.s8 %r223,[%frame+194]; mov.u32 %r109,%r134; .loc 1 943 9 mov.u32 %r136,0; bra $L101; $L47: setp.eq.u32 %r405,%r163,0; @ %r405 bra $L102; cvt.u32.u32 %r406,%r183; st.u8 [%frame+194],%r406; $L102: .loc 1 1535 10 or.b32 %r155,%r134,16; .loc 1 1538 13 and.b32 %r407,%r134,32; setp.ne.u32 %r408,%r407,0; @ ! %r408 bra $L104; bra $L160; $L60: setp.eq.u32 %r409,%r163,0; @ %r409 bra $L105; cvt.u32.u32 %r410,%r183; st.u8 [%frame+194],%r410; $L105: and.b32 %r411,%r134,32; setp.eq.u32 %r412,%r411,0; @ %r412 bra $L106; bra $L103; $L160: .loc 1 1535 10 mov.u32 %r134,%r155; $L103: .loc 1 1538 13 add.u64 %r188,%r230,7; and.b64 %r186,%r188,-8; add.u64 %r230,%r186,8; ld.u64 %r138,[%r186]; .loc 1 1539 9 mov.u32 %r139,1; bra $L95; $L106: .loc 1 1538 13 and.b32 %r413,%r134,16; setp.eq.u32 %r414,%r413,0; @ %r414 bra $L107; mov.u32 %r155,%r134; $L104: add.u64 %r194,%r230,7; and.b64 %r192,%r194,-8; add.u64 %r230,%r192,8; ld.u64 %r138,[%r192]; mov.u32 %r134,%r155; .loc 1 1539 9 mov.u32 %r139,1; bra $L95; $L107: ld.u32 %r196,[%r230]; add.u64 %r230,%r230,4; .loc 1 1538 13 and.b32 %r415,%r134,64; setp.eq.u32 %r416,%r415,0; @ %r416 bra $L108; cvt.u16.u32 %r417,%r196; cvt.u64.u16 %r138,%r417; .loc 1 1539 9 mov.u32 %r139,1; bra $L95; $L108: .loc 1 1538 13 cvt.u64.u32 %r138,%r196; .loc 1 1539 9 mov.u32 %r139,1; bra $L95; $L32: setp.eq.u32 %r418,%r163,0; @ %r418 bra $L109; cvt.u32.u32 %r419,%r183; st.u8 [%frame+194],%r419; $L109: .loc 1 1542 10 cvta.const.u64 %r25,$LC0; $L65: .loc 1 1546 17 and.b32 %r420,%r134,32; setp.eq.u32 %r421,%r420,0; @ %r421 bra $L110; add.u64 %r179,%r230,7; and.b64 %r178,%r179,-8; add.u64 %r230,%r178,8; ld.u64 %r138,[%r178]; bra $L111; $L110: and.b32 %r422,%r134,16; setp.eq.u32 %r423,%r422,0; @ %r423 bra $L112; add.u64 %r177,%r230,7; and.b64 %r176,%r177,-8; add.u64 %r230,%r176,8; ld.u64 %r138,[%r176]; bra $L111; $L112: ld.u32 %r224,[%r230]; add.u64 %r230,%r230,4; and.b32 %r424,%r134,64; setp.eq.u32 %r425,%r424,0; @ %r425 bra $L113; cvt.u16.u32 %r426,%r224; cvt.u64.u16 %r138,%r426; bra $L111; $L113: cvt.u64.u32 %r138,%r224; $L111: .loc 1 1549 14 and.b32 %r427,%r134,1; .loc 1 1549 7 setp.eq.u32 %r428,%r427,0; @ %r428 bra $L161; .loc 1 1549 20 setp.eq.u64 %r429,%r138,0; @ %r429 bra $L162; .loc 1 1550 11 mov.u32 %r430,48; st.u8 [%frame+192],%r430; .loc 1 1551 11 st.u8 [%frame+193],%r131; .loc 1 1552 11 or.b32 %r134,%r134,2; .loc 1 1547 9 mov.u32 %r139,2; bra $L95; $L161: mov.u32 %r139,2; bra $L95; $L162: mov.u32 %r139,2; $L95: .loc 1 1559 16 mov.u32 %r431,0; st.u8 [%frame+194],%r431; mov.u32 %r223,0; $L84: .loc 1 1565 14 setp.eq.u32 %r432,%r136,-1; @ %r432 bra $L114; .loc 1 1566 11 and.b32 %r109,%r134,-129; .loc 1 1574 15 set.u32.ne.u64 %r434,%r138,0; neg.s32 %r435,%r434; .loc 1 1574 28 set.u32.ne.u32 %r437,%r136,0; neg.s32 %r438,%r437; .loc 1 1574 20 cvt.u16.u32 %r440,%r435; cvt.u16.u32 %r441,%r438; or.b16 %r439,%r440,%r441; .loc 1 1574 7 cvt.u32.u16 %r442,%r439; cvt.u16.u8 %r443,%r442; setp.eq.u16 %r444,%r443,0; @ %r444 bra $L115; .loc 1 1566 11 mov.u32 %r134,%r109; $L114: cvt.u16.u32 %r445,%r139; setp.eq.u16 %r446,%r445,1; @ %r446 bra $L116; setp.eq.u16 %r448,%r445,2; @ %r448 bra $L163; .loc 1 1573 7 mov.u64 %r132,%r689; bra $L118; $L164: .loc 1 1581 5 mov.u64 %r132,%r130; $L118: .loc 1 1583 13 add.u64 %r130,%r132,-1; .loc 1 1583 15 cvt.u16.u64 %r451,%r138; and.b16 %r450,%r451,7; add.u16 %r453,%r450,48; cvt.u32.u16 %r455,%r453; cvt.s32.s8 %r88,%r455; .loc 1 1583 13 st.u8 [%r130],%r455; .loc 1 1584 14 shr.u64 %r138,%r138,3; .loc 1 1585 6 setp.ne.u64 %r457,%r138,0; @ %r457 bra $L164; .loc 1 1587 22 cvt.u16.u32 %r459,%r88; set.u32.ne.u16 %r460,%r459,48; neg.s32 %r461,%r460; .loc 1 1587 9 cvt.u16.u32 %r464,%r134; and.b16 %r463,%r464,1; .loc 1 1587 22 cvt.u16.u32 %r467,%r461; and.b16 %r466,%r467,%r463; cvt.u32.u16 %r469,%r466; cvt.u16.u8 %r470,%r469; setp.ne.u16 %r471,%r470,0; @ %r471 bra $L119; sub.u64 %r474,%r689,%r130; cvt.u32.u64 %r141,%r474; mov.u32 %r109,%r134; bra $L101; $L119: .loc 1 1588 13 add.u64 %r159,%r132,-2; mov.u32 %r475,48; st.u8 [%r130+-1],%r475; sub.u64 %r478,%r689,%r159; cvt.u32.u64 %r141,%r478; mov.u32 %r109,%r134; mov.u64 %r130,%r159; bra $L101; $L171: .loc 1 1565 14 mov.u32 %r134,%r113; bra $L116; $L172: .loc 1 1566 11 mov.u32 %r134,%r109; $L116: .loc 1 1593 9 setp.gt.u64 %r662,%r138,9; @ %r662 bra $L165; .loc 1 1594 15 cvt.u16.u64 %r482,%r138; add.u16 %r481,%r482,48; .loc 1 1594 13 cvt.u32.u16 %r483,%r481; st.u8 [%frame+167],%r483; .loc 1 1595 7 mov.u32 %r109,%r134; mov.u32 %r141,1; .loc 1 1594 13 add.u64 %r130,%frame,167; .loc 1 1595 7 bra $L101; $L165: .loc 1 1573 7 mov.u64 %r130,%r689; bra $L121; $L166: .loc 1 1622 15 mov.u64 %r138,%r38; setp.gt.u64 %r662,%r138,9; $L121: .loc 1 1601 14 add.u64 %r130,%r130,-1; .loc 1 1601 16 rem.u64 %r485,%r138,10; cvt.u16.u64 %r488,%r485; add.u16 %r487,%r488,48; .loc 1 1601 14 cvt.u32.u16 %r489,%r487; st.u8 [%r130],%r489; .loc 1 1622 15 div.u64 %r38,%r138,10; .loc 1 1623 6 @ %r662 bra $L166; sub.u64 %r493,%r689,%r130; cvt.u32.u64 %r141,%r493; mov.u32 %r109,%r134; bra $L101; $L163: .loc 1 1573 7 mov.u64 %r130,%r689; $L117: .loc 1 1628 13 add.u64 %r130,%r130,-1; .loc 1 1628 28 and.b64 %r494,%r138,15; .loc 1 1628 20 add.u64 %r495,%r25,%r494; .loc 1 1628 13 ld.u8 %r496,[%r495]; st.u8 [%r130],%r496; .loc 1 1629 14 shr.u64 %r138,%r138,4; .loc 1 1630 6 setp.ne.u64 %r497,%r138,0; @ %r497 bra $L117; sub.u64 %r500,%r689,%r130; cvt.u32.u64 %r141,%r500; mov.u32 %r109,%r134; bra $L101; $L115: .loc 1 1648 32 setp.ne.u32 %r501,%r139,0; @ %r501 bra $L167; .loc 1 1648 55 and.b32 %r141,%r134,1; .loc 1 1648 45 setp.eq.u32 %r502,%r141,0; @ %r502 bra $L168; .loc 1 1649 32 mov.u32 %r503,48; st.u8 [%frame+167],%r503; mov.u32 %r136,%r139; add.u64 %r130,%frame,167; bra $L101; $L167: mov.u32 %r136,0; mov.u32 %r141,%r136; .loc 1 1573 7 add.u64 %r130,%frame,168; bra $L101; $L168: mov.u32 %r136,%r139; add.u64 %r130,%frame,168; bra $L101; $L40: setp.eq.u32 %r504,%r163,0; @ %r504 bra $L122; cvt.u32.u32 %r505,%r183; st.u8 [%frame+194],%r505; $L122: .loc 1 1655 7 setp.eq.u32 %r506,%r131,0; @ %r506 bra $L29; .loc 1 1659 8 st.u8 [%frame+128],%r131; .loc 1 1661 9 mov.u32 %r507,0; st.u8 [%frame+194],%r507; .loc 1 1662 4 mov.u32 %r140,1; .loc 1 1660 9 mov.u32 %r141,%r140; .loc 1 1658 7 add.u64 %r130,%frame,128; .loc 1 1662 4 bra $L74; $L100: ld.s8 %r223,[%frame+194]; .loc 1 1524 8 mov.u32 %r141,%r136; mov.u32 %r109,%r134; .loc 1 943 9 cvt.u32.u64 %r136,%r399; $L101: .loc 1 1680 10 max.s32 %r140,%r136,%r141; .loc 1 1681 6 setp.eq.u32 %r508,%r223,0; @ %r508 bra $L123; .loc 1 1682 10 add.u32 %r140,%r140,1; $L123: .loc 1 1683 13 and.b32 %r100,%r109,2; .loc 1 1683 6 setp.eq.u32 %r660,%r100,0; @ %r660 bra $L124; .loc 1 1684 10 add.u32 %r140,%r140,2; $L124: .loc 1 1687 14 and.b32 %r101,%r109,132; ld.u64 %r205,[%frame+184]; ld.u32 %r206,[%frame+176]; .loc 1 1687 6 setp.ne.u32 %r510,%r101,0; @ %r510 bra $L125; .loc 1 1688 4 sub.u32 %r156,%r135,%r140; setp.le.s32 %r511,%r156,0; @ %r511 bra $L125; setp.le.s32 %r512,%r156,16; @ ! %r512 bra $L254; cvta.const.u64 %r657,blanks$4097; bra $L126; $L254: cvta.const.u64 %r657,blanks$4097; $L129: st.u64 [%r142],%r657; mov.u64 %r514,16; st.u64 [%r142+8],%r514; add.u64 %r205,%r205,16; st.u64 [%frame+184],%r205; add.u32 %r206,%r206,1; st.u32 [%frame+176],%r206; setp.gt.s32 %r515,%r206,7; @ %r515 bra $L127; add.u64 %r142,%r142,16; bra $L128; $L127: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r227; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r228; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r689; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r520,[%value_in]; } setp.ne.u32 %r521,%r520,0; @ %r521 bra $L28; ld.u64 %r205,[%frame+184]; ld.u32 %r206,[%frame+176]; mov.u64 %r142,%frame; $L128: add.u32 %r156,%r156,-16; setp.gt.s32 %r522,%r156,16; @ %r522 bra $L129; $L126: st.u64 [%r142],%r657; cvt.s64.s32 %r104,%r156; st.u64 [%r142+8],%r104; add.u64 %r205,%r205,%r104; st.u64 [%frame+184],%r205; add.u32 %r206,%r206,1; st.u32 [%frame+176],%r206; setp.gt.s32 %r524,%r206,7; @ %r524 bra $L130; add.u64 %r142,%r142,16; bra $L125; $L130: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r227; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r228; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r689; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r529,[%value_in]; } setp.ne.u32 %r530,%r529,0; @ %r530 bra $L28; ld.u64 %r205,[%frame+184]; ld.u32 %r206,[%frame+176]; mov.u64 %r142,%frame; $L125: add.u32 %r210,%r206,1; add.u64 %r212,%r142,16; .loc 1 1691 6 ld.s8 %r532,[%frame+194]; cvt.u16.u32 %r531,%r532; setp.eq.u16 %r533,%r531,0; @ %r533 bra $L131; .loc 1 1692 4 st.u64 [%r142],%r691; mov.u64 %r535,1; st.u64 [%r142+8],%r535; add.u64 %r205,%r205,1; st.u64 [%frame+184],%r205; st.u32 [%frame+176],%r210; setp.gt.s32 %r536,%r210,7; @ %r536 bra $L132; add.u32 %r207,%r206,2; add.u64 %r208,%r142,32; mov.u32 %r206,%r210; mov.u32 %r210,%r207; mov.u64 %r142,%r212; mov.u64 %r212,%r208; bra $L131; $L132: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r227; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r228; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r689; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r541,[%value_in]; } setp.ne.u32 %r542,%r541,0; @ %r542 bra $L28; ld.u64 %r205,[%frame+184]; ld.u32 %r206,[%frame+176]; add.u32 %r210,%r206,1; add.u64 %r212,%frame,16; mov.u64 %r142,%frame; $L131: .loc 1 1693 6 @ %r660 bra $L133; .loc 1 1694 4 st.u64 [%r142],%r690; mov.u64 %r545,2; st.u64 [%r142+8],%r545; add.u64 %r205,%r205,2; st.u64 [%frame+184],%r205; st.u32 [%frame+176],%r210; setp.gt.s32 %r546,%r210,7; @ %r546 bra $L134; mov.u32 %r206,%r210; add.u32 %r210,%r210,1; mov.u64 %r142,%r212; add.u64 %r212,%r212,16; bra $L133; $L134: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r227; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r228; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r689; 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 $L28; ld.u64 %r205,[%frame+184]; ld.u32 %r206,[%frame+176]; add.u32 %r210,%r206,1; add.u64 %r212,%frame,16; mov.u64 %r142,%frame; $L133: .loc 1 1697 6 setp.ne.u32 %r553,%r101,128; @ %r553 bra $L135; .loc 1 1698 4 sub.u32 %r157,%r135,%r140; setp.le.s32 %r554,%r157,0; @ %r554 bra $L135; setp.le.s32 %r555,%r157,16; @ %r555 bra $L169; cvta.const.u64 %r658,zeroes$4098; $L139: st.u64 [%r142],%r658; mov.u64 %r557,16; st.u64 [%r142+8],%r557; add.u64 %r205,%r205,16; st.u64 [%frame+184],%r205; add.u32 %r206,%r206,1; st.u32 [%frame+176],%r206; setp.gt.s32 %r558,%r206,7; @ %r558 bra $L137; add.u64 %r142,%r142,16; bra $L138; $L137: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r227; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r228; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r689; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r563,[%value_in]; } setp.ne.u32 %r564,%r563,0; @ %r564 bra $L28; ld.u64 %r205,[%frame+184]; ld.u32 %r206,[%frame+176]; mov.u64 %r142,%frame; $L138: add.u32 %r157,%r157,-16; setp.gt.s32 %r565,%r157,16; @ %r565 bra $L139; add.u32 %r206,%r206,1; add.u64 %r217,%r142,16; bra $L136; $L169: mov.u64 %r217,%r212; mov.u32 %r206,%r210; cvta.const.u64 %r658,zeroes$4098; $L136: st.u64 [%r142],%r658; cvt.s64.s32 %r111,%r157; st.u64 [%r142+8],%r111; add.u64 %r205,%r205,%r111; st.u64 [%frame+184],%r205; st.u32 [%frame+176],%r206; setp.gt.s32 %r567,%r206,7; @ %r567 bra $L140; add.u32 %r210,%r206,1; add.u64 %r212,%r217,16; mov.u64 %r142,%r217; bra $L135; $L140: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r227; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r228; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r689; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r572,[%value_in]; } setp.ne.u32 %r573,%r572,0; @ %r573 bra $L28; ld.u64 %r205,[%frame+184]; ld.u32 %r206,[%frame+176]; add.u32 %r210,%r206,1; add.u64 %r212,%frame,16; mov.u64 %r142,%frame; $L135: .loc 1 1701 3 sub.u32 %r154,%r136,%r141; setp.le.s32 %r574,%r154,0; @ %r574 bra $L141; setp.le.s32 %r575,%r154,16; @ %r575 bra $L170; cvta.const.u64 %r658,zeroes$4098; $L145: st.u64 [%r142],%r658; mov.u64 %r577,16; st.u64 [%r142+8],%r577; add.u64 %r205,%r205,16; st.u64 [%frame+184],%r205; add.u32 %r206,%r206,1; st.u32 [%frame+176],%r206; setp.gt.s32 %r578,%r206,7; @ %r578 bra $L143; add.u64 %r142,%r142,16; bra $L144; $L143: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r227; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r228; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r689; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r583,[%value_in]; } setp.ne.u32 %r584,%r583,0; @ %r584 bra $L28; ld.u64 %r205,[%frame+184]; ld.u32 %r206,[%frame+176]; mov.u64 %r142,%frame; $L144: add.u32 %r154,%r154,-16; setp.gt.s32 %r585,%r154,16; @ %r585 bra $L145; add.u32 %r210,%r206,1; add.u64 %r216,%r142,16; bra $L142; $L170: mov.u64 %r216,%r212; cvta.const.u64 %r658,zeroes$4098; $L142: st.u64 [%r142],%r658; cvt.s64.s32 %r115,%r154; st.u64 [%r142+8],%r115; add.u64 %r205,%r205,%r115; st.u64 [%frame+184],%r205; st.u32 [%frame+176],%r210; setp.gt.s32 %r587,%r210,7; @ %r587 bra $L146; add.u32 %r210,%r210,1; add.u64 %r212,%r216,16; mov.u64 %r142,%r216; bra $L141; $L146: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r227; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r228; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r689; 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 $L28; ld.u64 %r205,[%frame+184]; ld.u32 %r594,[%frame+176]; add.u32 %r210,%r594,1; add.u64 %r212,%frame,16; mov.u64 %r142,%frame; $L141: .loc 1 1767 3 st.u64 [%r142],%r130; cvt.s64.s32 %r117,%r141; st.u64 [%r142+8],%r117; add.u64 %r214,%r117,%r205; st.u64 [%frame+184],%r214; st.u32 [%frame+176],%r210; setp.le.s32 %r595,%r210,7; @ %r595 bra $L147; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r227; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r228; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r689; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r600,[%value_in]; } setp.ne.u32 %r601,%r600,0; @ %r601 bra $L28; ld.u64 %r214,[%frame+184]; mov.u64 %r212,%frame; $L147: .loc 1 1770 13 and.b32 %r602,%r109,4; .loc 1 1770 6 setp.eq.u32 %r603,%r602,0; @ %r603 bra $L148; .loc 1 1771 4 sub.u32 %r164,%r135,%r140; setp.le.s32 %r604,%r164,0; @ %r604 bra $L148; ld.u32 %r215,[%frame+176]; setp.le.s32 %r605,%r164,16; @ ! %r605 bra $L255; cvta.const.u64 %r657,blanks$4097; bra $L149; $L255: cvta.const.u64 %r657,blanks$4097; $L152: st.u64 [%r212],%r657; mov.u64 %r607,16; st.u64 [%r212+8],%r607; add.u64 %r214,%r214,16; st.u64 [%frame+184],%r214; add.u32 %r215,%r215,1; st.u32 [%frame+176],%r215; setp.gt.s32 %r608,%r215,7; @ %r608 bra $L150; add.u64 %r212,%r212,16; bra $L151; $L150: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r227; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r228; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r689; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r613,[%value_in]; } setp.ne.u32 %r614,%r613,0; @ %r614 bra $L28; ld.u64 %r214,[%frame+184]; ld.u32 %r215,[%frame+176]; mov.u64 %r212,%frame; $L151: add.u32 %r164,%r164,-16; setp.gt.s32 %r615,%r164,16; @ %r615 bra $L152; $L149: st.u64 [%r212],%r657; cvt.s64.s32 %r122,%r164; st.u64 [%r212+8],%r122; add.u64 %r214,%r214,%r122; st.u64 [%frame+184],%r214; add.u32 %r123,%r215,1; st.u32 [%frame+176],%r123; setp.le.s32 %r617,%r123,7; @ %r617 bra $L148; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r227; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r228; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r689; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r622,[%value_in]; } setp.ne.u32 %r623,%r622,0; @ %r623 bra $L28; ld.u64 %r214,[%frame+184]; $L148: .loc 1 1774 33 max.s32 %r624,%r135,%r140; .loc 1 1774 7 add.u32 %r226,%r226,%r624; .loc 1 1776 3 setp.ne.u64 %r625,%r214,0; @ %r625 bra $L153; $L154: mov.u32 %r626,0; st.u32 [%frame+176],%r626; mov.u64 %r142,%frame; bra $L23; $L153: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r227; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r228; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r689; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r631,[%value_in]; } setp.ne.u32 %r632,%r631,0; @ ! %r632 bra $L154; bra $L28; $L29: .loc 1 1784 2 ld.u64 %r633,[%frame+184]; setp.eq.u64 %r634,%r633,0; @ %r634 bra $L28; add.u64 %r638,%frame,168; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r227; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r228; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r638; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r639,[%value_in]; } $L28: .loc 1 1791 31 ld.u16 %r641,[%r228+16]; and.b16 %r640,%r641,64; setp.eq.u16 %r642,%r640,0; selp.u32 %r226,%r226,-1,%r642; bra $L19; $L74: .loc 1 943 9 mov.u32 %r109,%r134; mov.u32 %r136,0; bra $L123; $L83: ld.s8 %r223,[%frame+194]; .loc 1 1565 14 setp.eq.u32 %r644,%r136,-1; @ %r644 bra $L171; .loc 1 1566 11 and.b32 %r109,%r113,-129; .loc 1 1574 28 set.u32.ne.u32 %r646,%r136,0; neg.s32 %r647,%r646; .loc 1 1574 15 set.u32.ne.u64 %r649,%r138,0; neg.s32 %r650,%r649; .loc 1 1574 20 cvt.u16.u32 %r652,%r647; cvt.u16.u32 %r653,%r650; or.b16 %r651,%r652,%r653; .loc 1 1574 7 cvt.u32.u16 %r654,%r651; cvt.u16.u8 %r655,%r654; setp.ne.u16 %r656,%r655,0; @ %r656 bra $L172; mov.u32 %r136,0; mov.u32 %r141,%r136; .loc 1 1573 7 add.u64 %r130,%frame,168; bra $L101; $L19: .loc 1 1793 1 mov.u32 %value,%r226; st.param.u32 [%value_out],%value; ret; } /847 1591654539 399 399 100644 78525 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0); // 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); // 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$4154 .const .align 1 .u8 zeroes$4154[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 VAR DEF: blanks$4153 .const .align 1 .u8 blanks$4153[16] = {32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32 }; // 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 .u64 %r26; .reg .u32 %r27; .reg .u64 %r32; .reg .u32 %r36; .reg .u32 %r38; .reg .u64 %r52; .reg .f64 %r60; .reg .u32 %r61; .reg .u64 %r62; .reg .u32 %r97; .reg .u64 %r109; .reg .u32 %r111; .reg .u32 %r112; .reg .u64 %r114; .reg .u32 %r115; .reg .u32 %r119; .reg .u32 %r122; .reg .u64 %r125; .reg .u32 %r127; .reg .u64 %r130; .reg .u32 %r131; .reg .u64 %r134; .reg .u32 %r136; .reg .u32 %r140; .reg .u64 %r143; .reg .u32 %r147; .reg .u64 %r150; .reg .u32 %r151; .reg .u32 %r153; .reg .u32 %r155; .reg .u64 %r161; .reg .u64 %r163; .reg .u64 %r164; .reg .u32 %r165; .reg .u64 %r167; .reg .u32 %r169; .reg .u32 %r172; .reg .u64 %r174; .reg .u32 %r175; .reg .u32 %r179; .reg .u32 %r180; .reg .u32 %r183; .reg .u32 %r186; .reg .u64 %r187; .reg .u32 %r189; .reg .u32 %r191; .reg .u32 %r192; .reg .u64 %r194; .reg .u32 %r196; .reg .u64 %r200; .reg .u64 %r202; .reg .u64 %r203; .reg .u64 %r207; .reg .u64 %r211; .reg .u64 %r215; .reg .u32 %r216; .reg .u32 %r222; .reg .u32 %r223; .reg .u32 %r224; .reg .u64 %r226; .reg .u64 %r227; .reg .u32 %r228; .reg .u32 %r229; .reg .u32 %r230; .reg .u32 %r231; .reg .u32 %r232; .reg .u64 %r233; .reg .u32 %r234; .reg .u32 %r235; .reg .u32 %r236; .reg .u64 %r237; .reg .u64 %r238; .reg .u64 %r239; .reg .u32 %r241; .reg .u32 %r242; .reg .u64 %r244; .reg .u32 %r249; .reg .u64 %r250; .reg .u32 %r251; .reg .u32 %r252; .reg .f64 %r253; .reg .u64 %r256; .reg .u32 %r258; .reg .u32 %r259; .reg .u32 %r260; .reg .u32 %r263; .reg .u32 %r265; .reg .u64 %r266; .reg .u32 %r268; .reg .u64 %r269; .reg .u32 %r272; .reg .u32 %r273; .reg .u32 %r274; .reg .u32 %r275; .reg .u32 %r276; .reg .u64 %r277; .reg .u64 %r278; .reg .u32 %r279; .reg .u32 %r283; .reg .u32 %r286; .reg .u64 %r287; .reg .u64 %r296; .reg .u64 %r303; .reg .u32 %r305; .reg .u64 %r312; .reg .u64 %r313; .reg .u64 %r314; .reg .u64 %r315; .reg .u64 %r316; .reg .u64 %r317; .reg .u64 %r319; .reg .u64 %r320; .reg .u64 %r321; .reg .u64 %r322; .reg .u64 %r323; .reg .u64 %r324; .reg .u64 %r325; .reg .u64 %r326; .reg .u64 %r327; .reg .u64 %r328; .reg .u64 %r331; .reg .u64 %r333; .reg .u32 %r336; .reg .u64 %r342; .reg .u64 %r345; .reg .u64 %r347; .reg .u32 %r352; .reg .u32 %r353; .reg .u64 %r355; .reg .u64 %r356; .reg .u64 %r358; .reg .u64 %r360; .reg .u32 %r361; .reg .u32 %r364; .reg .u32 %r367; .reg .u32 %r368; .reg .u64 %r369; .reg .u32 %r370; .reg .u32 %r374; .reg .u32 %r375; .reg .u32 %r376; .reg .u64 %r377; .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 %r391; .reg .u32 %r392; .reg .u32 %r395; .reg .u32 %r397; .reg .u64 %r398; .reg .u32 %r400; .reg .u32 %r401; .reg .u64 %r402; .reg .u64 %r403; .reg .u64 %r404; .reg .u64 %r405; .reg .u64 %r416; .reg .u64 %r418; .reg .u16 %r419; .reg .u16 %r420; .reg .pred %r421; .reg .u64 %r422; .reg .pred %r423; .reg .u64 %r425; .reg .u64 %r426; .reg .pred %r427; .reg .u32 %r428; .reg .u32 %r429; .reg .u64 %r430; .reg .u32 %r431; .reg .u16 %r433; .reg .u32 %r434; .reg .u32 %r435; .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 .u16 %r447; .reg .u32 %r448; .reg .u32 %r449; .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 .u64 %r460; .reg .pred %r461; .reg .u64 %r462; .reg .u64 %r463; .reg .u32 %r464; .reg .pred %r465; .reg .u32 %r470; .reg .pred %r471; .reg .pred %r472; .reg .u32 %r473; .reg .pred %r474; .reg .pred %r475; .reg .pred %r476; .reg .pred %r477; .reg .pred %r478; .reg .pred %r479; .reg .pred %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 .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 .u32 %r510; .reg .pred %r511; .reg .pred %r512; .reg .pred %r513; .reg .pred %r514; .reg .u32 %r515; .reg .u32 %r517; .reg .u32 %r518; .reg .u32 %r519; .reg .pred %r520; .reg .u32 %r522; .reg .u32 %r523; .reg .u32 %r524; .reg .pred %r527; .reg .u16 %r528; .reg .pred %r529; .reg .u32 %r530; .reg .u32 %r531; .reg .pred %r532; .reg .u32 %r533; .reg .u32 %r534; .reg .pred %r535; .reg .pred %r536; .reg .u32 %r537; .reg .u32 %r538; .reg .pred %r539; .reg .u32 %r540; .reg .pred %r541; .reg .u32 %r542; .reg .pred %r543; .reg .pred %r548; .reg .u32 %r549; .reg .pred %r550; .reg .u32 %r551; .reg .u64 %r552; .reg .u32 %r556; .reg .pred %r557; .reg .pred %r558; .reg .u32 %r559; .reg .pred %r560; .reg .u32 %r562; .reg .pred %r563; .reg .pred %r564; .reg .pred %r565; .reg .u32 %r567; .reg .u32 %r568; .reg .u32 %r570; .reg .u32 %r571; .reg .u16 %r572; .reg .u16 %r573; .reg .u16 %r574; .reg .u32 %r575; .reg .u16 %r576; .reg .pred %r577; .reg .u64 %r578; .reg .u64 %r579; .reg .u32 %r580; .reg .pred %r581; .reg .pred %r582; .reg .pred %r583; .reg .u32 %r586; .reg .u64 %r594; .reg .u64 %r595; .reg .u64 %r596; .reg .u32 %r597; .reg .u64 %r598; .reg .u64 %r599; .reg .pred %r600; .reg .u64 %r601; .reg .u32 %r602; .reg .pred %r603; .reg .pred %r604; .reg .u64 %r605; .reg .u32 %r608; .reg .u32 %r609; .reg .u32 %r611; .reg .u32 %r612; .reg .u16 %r613; .reg .u16 %r614; .reg .u16 %r615; .reg .u32 %r616; .reg .u16 %r617; .reg .pred %r618; .reg .pred %r619; .reg .pred %r620; .reg .u32 %r621; .reg .u32 %r622; .reg .pred %r623; .reg .u32 %r625; .reg .u16 %r627; .reg .u16 %r628; .reg .u32 %r629; .reg .pred %r630; .reg .u16 %r632; .reg .u16 %r633; .reg .u32 %r634; .reg .pred %r638; .reg .u32 %r640; .reg .pred %r643; .reg .u64 %r649; .reg .u64 %r650; .reg .u64 %r652; .reg .u32 %r653; .reg .u16 %r655; .reg .u16 %r656; .reg .u32 %r657; .reg .pred %r658; .reg .pred %r659; .reg .u32 %r660; .reg .pred %r661; .reg .pred %r662; .reg .u32 %r663; .reg .pred %r664; .reg .pred %r665; .reg .u32 %r666; .reg .pred %r667; .reg .pred %r668; .reg .u32 %r669; .reg .pred %r670; .reg .u32 %r671; .reg .pred %r672; .reg .u32 %r673; .reg .u64 %r674; .reg .u32 %r675; .reg .pred %r676; .reg .u64 %r677; .reg .u32 %r678; .reg .pred %r679; .reg .u64 %r680; .reg .u32 %r681; .reg .pred %r682; .reg .pred %r683; .reg .u32 %r684; .reg .u32 %r685; .reg .pred %r686; .reg .pred %r687; .reg .u32 %r688; .reg .u32 %r689; .reg .pred %r690; .reg .u32 %r691; .reg .pred %r692; .reg .u32 %r693; .reg .pred %r694; .reg .u16 %r695; .reg .u32 %r696; .reg .u32 %r697; .reg .u32 %r698; .reg .pred %r699; .reg .pred %r700; .reg .u32 %r702; .reg .u64 %r704; .reg .u64 %r705; .reg .pred %r706; .reg .u64 %r707; .reg .u32 %r708; .reg .u64 %r710; .reg .pred %r711; .reg .u32 %r712; .reg .u32 %r713; .reg .pred %r714; .reg .pred %r715; .reg .u32 %r716; .reg .u32 %r717; .reg .pred %r718; .reg .u32 %r719; .reg .pred %r720; .reg .u32 %r721; .reg .pred %r722; .reg .u16 %r723; .reg .pred %r724; .reg .u32 %r725; .reg .u32 %r726; .reg .pred %r727; .reg .u32 %r728; .reg .pred %r729; .reg .u32 %r730; .reg .pred %r731; .reg .u16 %r732; .reg .u32 %r733; .reg .pred %r734; .reg .pred %r735; .reg .u32 %r736; .reg .u32 %r737; .reg .pred %r738; .reg .u32 %r740; .reg .u32 %r741; .reg .u32 %r743; .reg .u32 %r744; .reg .u16 %r745; .reg .u16 %r746; .reg .u16 %r747; .reg .u32 %r748; .reg .u16 %r749; .reg .pred %r750; .reg .u16 %r751; .reg .pred %r752; .reg .pred %r754; .reg .u16 %r756; .reg .u16 %r757; .reg .u16 %r759; .reg .u32 %r761; .reg .pred %r763; .reg .u16 %r765; .reg .u32 %r766; .reg .u32 %r767; .reg .u16 %r769; .reg .u16 %r770; .reg .u16 %r772; .reg .u16 %r773; .reg .u32 %r775; .reg .u16 %r776; .reg .pred %r777; .reg .u64 %r780; .reg .u32 %r781; .reg .u64 %r784; .reg .u16 %r787; .reg .u16 %r788; .reg .u32 %r789; .reg .u64 %r791; .reg .u16 %r793; .reg .u16 %r794; .reg .u32 %r795; .reg .u64 %r799; .reg .u64 %r800; .reg .u64 %r801; .reg .u32 %r802; .reg .pred %r803; .reg .u64 %r806; .reg .pred %r807; .reg .pred %r808; .reg .u32 %r809; .reg .pred %r810; .reg .u32 %r811; .reg .pred %r812; .reg .u32 %r813; .reg .pred %r814; .reg .pred %r816; .reg .pred %r817; .reg .pred %r818; .reg .u64 %r820; .reg .pred %r821; .reg .u32 %r826; .reg .pred %r827; .reg .pred %r828; .reg .pred %r830; .reg .u32 %r835; .reg .pred %r836; .reg .u16 %r837; .reg .u32 %r838; .reg .pred %r839; .reg .u64 %r841; .reg .u32 %r842; .reg .pred %r843; .reg .u32 %r848; .reg .pred %r849; .reg .u64 %r852; .reg .u32 %r853; .reg .pred %r854; .reg .u32 %r859; .reg .pred %r860; .reg .pred %r861; .reg .pred %r862; .reg .pred %r863; .reg .u64 %r865; .reg .pred %r866; .reg .u32 %r871; .reg .pred %r872; .reg .pred %r873; .reg .pred %r875; .reg .u32 %r880; .reg .pred %r881; .reg .pred %r882; .reg .pred %r883; .reg .u64 %r885; .reg .pred %r886; .reg .u32 %r891; .reg .pred %r892; .reg .pred %r893; .reg .pred %r895; .reg .u32 %r900; .reg .pred %r901; .reg .u32 %r902; .reg .pred %r903; .reg .u32 %r904; .reg .pred %r905; .reg .u32 %r910; .reg .pred %r911; .reg .pred %r912; .reg .pred %r913; .reg .u64 %r914; .reg .u64 %r915; .reg .u64 %r916; .reg .u32 %r917; .reg .pred %r918; .reg .u32 %r923; .reg .pred %r924; .reg .u32 %r925; .reg .pred %r926; .reg .u32 %r927; .reg .pred %r928; .reg .u64 %r929; .reg .u32 %r930; .reg .pred %r931; .reg .u32 %r936; .reg .pred %r937; .reg .pred %r938; .reg .pred %r939; .reg .u64 %r941; .reg .pred %r942; .reg .u32 %r947; .reg .pred %r948; .reg .pred %r949; .reg .pred %r951; .reg .u32 %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 .u32 %r973; .reg .pred %r974; .reg .u32 %r979; .reg .pred %r980; .reg .pred %r981; .reg .pred %r982; .reg .u64 %r984; .reg .pred %r985; .reg .u32 %r990; .reg .pred %r991; .reg .pred %r992; .reg .pred %r994; .reg .u32 %r999; .reg .pred %r1000; .reg .pred %r1001; .reg .u32 %r1006; .reg .pred %r1007; .reg .pred %r1008; .reg .u32 %r1009; .reg .pred %r1010; .reg .u32 %r1015; .reg .pred %r1016; .reg .pred %r1017; .reg .pred %r1018; .reg .u64 %r1020; .reg .pred %r1021; .reg .u32 %r1026; .reg .pred %r1027; .reg .pred %r1028; .reg .pred %r1030; .reg .u32 %r1035; .reg .pred %r1036; .reg .pred %r1037; .reg .u32 %r1038; .reg .pred %r1039; .reg .u32 %r1040; .reg .pred %r1041; .reg .u32 %r1046; .reg .pred %r1047; .reg .pred %r1048; .reg .u64 %r1049; .reg .u64 %r1050; .reg .u32 %r1051; .reg .pred %r1052; .reg .u32 %r1057; .reg .pred %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 .pred %r1080; .reg .u32 %r1081; .reg .pred %r1082; .reg .u64 %r1083; .reg .pred %r1084; .reg .u32 %r1089; .reg .pred %r1090; .reg .pred %r1091; .reg .u32 %r1096; .reg .pred %r1097; .reg .pred %r1098; .reg .u64 %r1099; .reg .pred %r1100; .reg .u32 %r1105; .reg .pred %r1106; .reg .u32 %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 .u32 %r1128; .reg .u64 %r1129; .reg .pred %r1130; .reg .u32 %r1135; .reg .pred %r1136; .reg .u32 %r1137; .reg .pred %r1139; .reg .u32 %r1144; .reg .pred %r1145; .reg .u32 %r1146; .reg .pred %r1147; .reg .pred %r1148; .reg .pred %r1149; .reg .u64 %r1151; .reg .pred %r1152; .reg .u32 %r1157; .reg .pred %r1158; .reg .pred %r1159; .reg .pred %r1161; .reg .u32 %r1166; .reg .pred %r1167; .reg .u32 %r1168; .reg .pred %r1169; .reg .u32 %r1170; .reg .u32 %r1175; .reg .pred %r1176; .reg .u64 %r1177; .reg .pred %r1178; .reg .u64 %r1182; .reg .u32 %r1183; .reg .u16 %r1184; .reg .u16 %r1185; .reg .pred %r1186; .reg .u32 %r1188; .reg .pred %r1189; .reg .pred %r1190; .reg .u64 %r1191; .reg .u32 %r1194; .reg .u64 %r1202; .reg .u32 %r1206; .reg .u64 %r1214; .reg .u16 %r1216; .reg .u32 %r1217; .reg .u32 %r1218; .reg .u32 %r1219; .reg .u32 %r1221; .reg .u32 %r1222; .reg .u16 %r1223; .reg .u16 %r1224; .reg .u16 %r1225; .reg .u32 %r1226; .reg .u16 %r1227; .reg .pred %r1228; .reg .u32 %r1230; .reg .u32 %r1231; .reg .u32 %r1233; .reg .u32 %r1234; .reg .u16 %r1235; .reg .u16 %r1236; .reg .u16 %r1237; .reg .u32 %r1238; .reg .u16 %r1239; .reg .pred %r1240; .reg .u64 %r1241; .reg .u32 %r1242; .reg .pred %r1243; .reg .u64 %r1244; .reg .u64 %r1245; .reg .u32 %r1246; .reg .pred %r1247; .reg .u32 %r1250; .reg .u32 %r1251; .reg .u64 %r1258; .reg .pred %r1259; .reg .u64 %r1260; .reg .u32 %r1262; .reg .pred %r1265; .reg .u32 %r1266; .reg .u64 %r1267; .reg .pred %r1268; .reg .u32 %r1301; .reg .u64 %r1302; .reg .u64 %r1303; .reg .u64 %r1304; .reg .u64 %r1305; .reg .u64 %r1306; .reg .u64 %r1307; .reg .u64 %r1308; .reg .u64 %r1309; .reg .u64 %r1310; .reg .u64 %r1311; mov.u64 %r402,%ar0; mov.u64 %r403,%ar1; mov.u64 %r404,%ar2; mov.u64 %r405,%ar3; .loc 1 696 24 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; call (%value_in),_localeconv_r,(%out_arg1); ld.param.u64 %r416,[%value_in]; } .loc 1 696 8 ld.u64 %r244,[%r416]; .loc 1 697 20 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r244; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r418,[%value_in]; } .loc 1 880 12 ld.u16 %r420,[%r403+16]; and.b16 %r419,%r420,128; setp.eq.u16 %r421,%r419,0; @ %r421 bra $L2; .loc 1 880 33 ld.u64 %r422,[%r403+24]; setp.ne.u64 %r423,%r422,0; @ %r423 bra $L2; .loc 1 882 28 mov.u64 %r425,64; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r426,[%value_in]; } .loc 1 882 26 st.u64 [%r403],%r426; .loc 1 882 17 st.u64 [%r403+24],%r426; .loc 1 883 6 setp.ne.u64 %r427,%r426,0; @ %r427 bra $L3; .loc 1 885 17 mov.u32 %r428,12; st.u32 [%r402],%r428; .loc 1 886 11 mov.u32 %r401,-1; bra $L1; $L3: .loc 1 888 17 cvt.u32.u64 %r429,%r425; st.u32 [%r403+32],%r429; $L2: .loc 1 894 14 st.u64 [%frame+168],%frame; .loc 1 895 16 mov.u64 %r430,0; st.u64 [%frame+184],%r430; .loc 1 896 17 cvt.u32.u64 %r431,%r430; st.u32 [%frame+176],%r431; .loc 1 707 6 cvt.u32.u64 %r272,%r430; .loc 1 699 42 mov.f64 %r253,0d0000000000000000; .loc 1 894 21 mov.u64 %r237,%frame; .loc 1 718 8 mov.u64 %r26,%r430; .loc 1 702 6 cvt.u32.u64 %r27,%r26; .loc 1 898 6 cvt.u32.u64 %r401,%r26; .loc 1 929 4 add.u64 %r1302,%frame,168; .loc 1 1763 5 add.u64 %r1303,%frame,200; .loc 1 1694 4 add.u64 %r1304,%frame,216; .loc 1 1692 4 add.u64 %r1305,%frame,218; .loc 1 1917 4 add.u64 %r1306,%frame,199; add.u64 %r1307,%frame,202; add.u64 %r1308,%frame,201; .loc 1 1880 11 add.u64 %r1309,%frame,192; add.u64 %r1310,%frame,208; add.u64 %r1311,%frame,212; $L5: .loc 1 925 24 ld.s8 %r249,[%r404]; .loc 1 925 37 cvt.u16.u32 %r433,%r249; set.u32.ne.u16 %r434,%r433,0; neg.s32 %r435,%r434; set.u32.ne.u16 %r438,%r433,37; neg.s32 %r439,%r438; cvt.u16.u32 %r441,%r435; cvt.u16.u32 %r442,%r439; and.b16 %r440,%r441,%r442; .loc 1 925 23 cvt.u32.u16 %r443,%r440; cvt.u16.u8 %r444,%r443; setp.eq.u16 %r445,%r444,0; @ %r445 bra $L247; mov.u64 %r269,%r404; bra $L7; $L248: mov.u64 %r269,%r250; $L7: .loc 1 926 25 add.u64 %r250,%r269,1; .loc 1 925 24 ld.s8 %r249,[%r250]; .loc 1 925 37 cvt.u16.u32 %r447,%r249; set.u32.ne.u16 %r448,%r447,0; neg.s32 %r449,%r448; set.u32.ne.u16 %r452,%r447,37; neg.s32 %r453,%r452; cvt.u16.u32 %r455,%r449; cvt.u16.u32 %r456,%r453; and.b16 %r454,%r455,%r456; .loc 1 925 23 cvt.u32.u16 %r457,%r454; cvt.u16.u8 %r458,%r457; setp.ne.u16 %r459,%r458,0; @ %r459 bra $L248; .loc 1 928 16 sub.u64 %r460,%r250,%r404; .loc 1 928 10 cvt.u32.u64 %r251,%r460; .loc 1 928 6 setp.eq.u32 %r461,%r251,0; @ %r461 bra $L6; .loc 1 929 4 st.u64 [%r237],%r404; cvt.s64.s32 %r32,%r251; st.u64 [%r237+8],%r32; ld.u64 %r463,[%frame+184]; add.u64 %r462,%r463,%r32; st.u64 [%frame+184],%r462; ld.u32 %r464,[%frame+176]; add.u32 %r36,%r464,1; st.u32 [%frame+176],%r36; setp.gt.s32 %r465,%r36,7; @ %r465 bra $L8; add.u64 %r237,%r237,16; bra $L9; $L8: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r470,[%value_in]; } setp.ne.u32 %r471,%r470,0; @ %r471 bra $L10; mov.u64 %r237,%frame; $L9: .loc 1 930 8 add.u32 %r401,%r401,%r251; ld.s8 %r249,[%r269+1]; bra $L6; $L247: .loc 1 925 23 mov.u64 %r250,%r404; $L6: .loc 1 936 20 setp.eq.u32 %r472,%r249,0; @ %r472 bra $L11; .loc 1 940 6 add.u64 %r404,%r250,1; .loc 1 946 8 mov.u32 %r473,0; st.u8 [%frame+218],%r473; ld.s8 %r395,[%r250+1]; mov.u32 %r222,0; mov.u32 %r224,%r222; .loc 1 945 8 mov.u32 %r231,-1; .loc 1 944 9 mov.u32 %r230,%r222; .loc 1 942 9 mov.u32 %r228,%r222; .loc 1 1071 6 mov.u32 %r1301,%r222; bra $L12; $L250: .loc 1 1018 10 mov.u64 %r405,%r333; $L12: .loc 1 958 18 add.u64 %r404,%r404,1; .loc 1 958 12 mov.u32 %r223,%r395; $L13: setp.eq.u32 %r474,%r223,85; @ %r474 bra $L14; setp.gt.s32 %r475,%r223,85; @ %r475 bra $L15; setp.eq.u32 %r476,%r223,48; @ %r476 bra $L16; setp.gt.s32 %r477,%r223,48; @ %r477 bra $L17; setp.eq.u32 %r478,%r223,42; @ %r478 bra $L18; setp.gt.s32 %r479,%r223,42; @ %r479 bra $L19; setp.eq.u32 %r480,%r223,32; @ %r480 bra $L20; setp.eq.u32 %r481,%r223,35; @ %r481 bra $L21; bra $L22; $L19: setp.eq.u32 %r482,%r223,45; @ %r482 bra $L23; setp.eq.u32 %r483,%r223,46; @ %r483 bra $L24; setp.eq.u32 %r484,%r223,43; @ ! %r484 bra $L22; bra $L25; $L17: setp.eq.u32 %r485,%r223,69; @ %r485 bra $L26; setp.gt.s32 %r486,%r223,69; @ %r486 bra $L27; setp.le.s32 %r487,%r223,57; @ %r487 bra $L28; setp.eq.u32 %r488,%r223,68; @ %r488 bra $L29; bra $L22; $L27: setp.eq.u32 %r489,%r223,76; @ %r489 bra $L30; setp.eq.u32 %r490,%r223,79; @ %r490 bra $L31; setp.eq.u32 %r491,%r223,71; @ ! %r491 bra $L22; bra $L26; $L15: setp.eq.u32 %r492,%r223,108; @ %r492 bra $L32; setp.gt.s32 %r493,%r223,108; @ %r493 bra $L33; setp.gt.s32 %r494,%r223,103; @ %r494 bra $L34; setp.ge.s32 %r495,%r223,101; @ %r495 bra $L26; setp.eq.u32 %r496,%r223,99; @ %r496 bra $L35; setp.gt.s32 %r497,%r223,99; @ %r497 bra $L36; setp.eq.u32 %r498,%r223,88; @ %r498 bra $L37; bra $L22; $L34: setp.eq.u32 %r499,%r223,104; @ %r499 bra $L38; setp.eq.u32 %r500,%r223,105; @ %r500 bra $L36; bra $L22; $L33: setp.eq.u32 %r501,%r223,113; @ %r501 bra $L39; setp.gt.s32 %r502,%r223,113; @ %r502 bra $L40; setp.eq.u32 %r503,%r223,111; @ %r503 bra $L41; setp.gt.s32 %r504,%r223,111; @ %r504 bra $L42; setp.eq.u32 %r505,%r223,110; @ %r505 bra $L43; bra $L22; $L40: setp.eq.u32 %r506,%r223,117; @ %r506 bra $L44; setp.eq.u32 %r507,%r223,120; @ %r507 bra $L45; setp.eq.u32 %r508,%r223,115; @ ! %r508 bra $L22; bra $L46; $L23: ld.s8 %r395,[%r404]; bra $L47; $L45: setp.eq.u32 %r509,%r222,0; @ %r509 bra $L48; cvt.u32.u32 %r510,%r224; st.u8 [%frame+218],%r510; $L48: .loc 1 1545 10 cvta.const.u64 %r26,$LC5; bra $L49; $L20: ld.s8 %r395,[%r404]; .loc 1 975 7 setp.eq.u32 %r511,%r224,0; selp.u32 %r222,1,%r222,%r511; selp.u32 %r224,32,%r224,%r511; bra $L12; $L21: .loc 1 979 10 or.b32 %r228,%r228,1; ld.s8 %r395,[%r404]; .loc 1 980 4 bra $L12; $L18: .loc 1 1018 10 add.u64 %r333,%r405,4; ld.u32 %r230,[%r405]; ld.s8 %r395,[%r404]; .loc 1 1022 7 setp.ge.s32 %r512,%r230,0; @ %r512 bra $L250; .loc 1 1024 10 neg.s32 %r230,%r230; .loc 1 1018 10 mov.u64 %r405,%r333; $L47: .loc 1 1027 10 or.b32 %r228,%r228,4; .loc 1 1028 4 bra $L12; $L25: ld.s8 %r395,[%r404]; .loc 1 1031 4 mov.u32 %r222,1; .loc 1 1030 9 mov.u32 %r224,%r223; .loc 1 1031 4 bra $L12; $L24: .loc 1 1033 18 add.u64 %r256,%r404,1; .loc 1 1033 12 ld.s8 %r223,[%r404]; .loc 1 1033 7 setp.eq.u32 %r513,%r223,42; @ %r513 bra $L52; .loc 1 1072 11 add.u32 %r1262,%r223,-48; .loc 1 1072 10 setp.le.u32 %r514,%r1262,9; @ %r514 bra $L53; .loc 1 1033 18 mov.u64 %r404,%r256; .loc 1 1071 6 mov.u32 %r231,%r1301; bra $L13; $L52: ld.u32 %r515,[%r405]; max.s32 %r231,%r515,-1; ld.s8 %r395,[%r404+1]; .loc 1 1063 10 add.u64 %r405,%r405,4; .loc 1 1033 18 mov.u64 %r404,%r256; bra $L12; $L53: mov.u64 %r345,%r256; .loc 1 1071 6 mov.u32 %r231,%r1301; $L55: .loc 1 1073 12 shl.b32 %r517,%r231,2; add.u32 %r518,%r517,%r231; add.u32 %r519,%r518,%r518; .loc 1 1073 7 add.u32 %r231,%r519,%r1262; add.u64 %r404,%r345,1; .loc 1 1074 8 ld.s8 %r223,[%r345]; .loc 1 1072 11 add.u32 %r1262,%r223,-48; mov.u64 %r345,%r404; .loc 1 1072 10 setp.le.u32 %r520,%r1262,9; @ %r520 bra $L55; bra $L13; $L16: .loc 1 1084 10 or.b32 %r228,%r228,128; ld.s8 %r395,[%r404]; .loc 1 1085 4 bra $L12; $L28: mov.u64 %r342,%r404; .loc 1 1088 6 mov.u32 %r230,0; add.u32 %r1262,%r223,-48; $L56: .loc 1 1090 12 shl.b32 %r522,%r230,2; add.u32 %r523,%r522,%r230; add.u32 %r524,%r523,%r523; .loc 1 1090 7 add.u32 %r230,%r1262,%r524; add.u64 %r404,%r404,1; .loc 1 1091 8 ld.s8 %r223,[%r342]; mov.u64 %r342,%r404; .loc 1 1092 13 add.u32 %r1262,%r223,-48; .loc 1 1092 4 setp.le.u32 %r527,%r1262,9; @ %r527 bra $L56; bra $L13; $L30: .loc 1 1108 10 or.b32 %r228,%r228,8; ld.s8 %r395,[%r404]; .loc 1 1109 4 bra $L12; $L38: .loc 1 1118 11 or.b32 %r228,%r228,64; ld.s8 %r395,[%r404]; .loc 1 1119 4 bra $L12; $L32: .loc 1 1122 8 ld.s8 %r395,[%r404]; .loc 1 1122 7 cvt.u16.u32 %r528,%r395; setp.ne.u16 %r529,%r528,108; @ %r529 bra $L57; .loc 1 1124 11 or.b32 %r228,%r228,32; ld.s8 %r395,[%r404+1]; .loc 1 1123 8 add.u64 %r404,%r404,1; bra $L12; $L57: .loc 1 1127 11 or.b32 %r228,%r228,16; bra $L12; $L39: .loc 1 1130 10 or.b32 %r228,%r228,32; ld.s8 %r395,[%r404]; .loc 1 1131 4 bra $L12; $L35: .loc 1 1189 9 ld.u32 %r530,[%r405]; st.u8 [%frame+128],%r530; .loc 1 1192 9 mov.u32 %r531,0; st.u8 [%frame+218],%r531; .loc 1 1189 11 add.u64 %r405,%r405,4; .loc 1 1193 4 mov.u32 %r235,1; .loc 1 1190 10 mov.u32 %r236,%r235; .loc 1 1173 7 add.u64 %r227,%frame,128; .loc 1 1193 4 bra $L58; $L29: setp.eq.u32 %r532,%r222,0; @ %r532 bra $L59; cvt.u32.u32 %r533,%r224; st.u8 [%frame+218],%r533; $L59: .loc 1 1195 10 or.b32 %r191,%r228,16; .loc 1 1199 13 and.b32 %r534,%r228,32; setp.ne.u32 %r535,%r534,0; @ ! %r535 bra $L61; bra $L60; $L36: setp.eq.u32 %r536,%r222,0; @ %r536 bra $L62; cvt.u32.u32 %r537,%r224; st.u8 [%frame+218],%r537; $L62: and.b32 %r538,%r228,32; setp.eq.u32 %r539,%r538,0; @ %r539 bra $L63; mov.u32 %r191,%r228; $L60: add.u64 %r328,%r405,7; and.b64 %r316,%r328,-8; add.u64 %r405,%r316,8; ld.u64 %r52,[%r316]; mov.u64 %r233,%r52; bra $L64; $L63: and.b32 %r540,%r228,16; setp.eq.u32 %r541,%r540,0; @ %r541 bra $L65; mov.u32 %r191,%r228; $L61: add.u64 %r326,%r405,7; and.b64 %r324,%r326,-8; add.u64 %r405,%r324,8; ld.u64 %r52,[%r324]; mov.u64 %r233,%r52; bra $L64; $L65: add.u64 %r358,%r405,4; and.b32 %r542,%r228,64; setp.eq.u32 %r543,%r542,0; @ %r543 bra $L66; ld.s16 %r233,[%r405]; mov.u64 %r52,%r233; mov.u32 %r191,%r228; mov.u64 %r405,%r358; bra $L64; $L66: ld.s32 %r233,[%r405]; mov.u64 %r52,%r233; mov.u32 %r191,%r228; mov.u64 %r405,%r358; $L64: .loc 1 1201 7 setp.ge.s64 %r548,%r52,0; @ %r548 bra $L67; .loc 1 1207 12 neg.s64 %r233,%r233; .loc 1 1208 10 mov.u32 %r549,45; st.u8 [%frame+218],%r549; mov.u32 %r228,%r191; mov.u32 %r391,45; .loc 1 1210 9 mov.u32 %r234,1; bra $L68; $L26: setp.eq.u32 %r550,%r222,0; @ %r550 bra $L69; cvt.u32.u32 %r551,%r224; st.u8 [%frame+218],%r551; $L69: add.u64 %r552,%r405,7; and.b64 %r360,%r552,-8; add.u64 %r405,%r360,8; .loc 1 1225 25 ld.f64 %r253,[%r360]; .loc 1 1236 8 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r253; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r556,[%value_in]; } .loc 1 1236 7 setp.ne.u32 %r557,%r556,1; @ %r557 bra $L72; .loc 1 1237 8 setp.lt.f64 %r558,%r253,0d0000000000000000; @ %r558 bra $L73; ld.s8 %r391,[%frame+218]; bra $L74; $L73: .loc 1 1238 11 mov.u32 %r559,45; st.u8 [%frame+218],%r559; mov.u32 %r391,45; $L74: .loc 1 1239 8 setp.le.s32 %r560,%r223,71; @ %r560 bra $L251; .loc 1 1242 9 cvta.const.u64 %r227,$LC1; bra $L75; $L251: .loc 1 1240 9 cvta.const.u64 %r227,$LC0; $L75: .loc 1 1244 11 and.b32 %r229,%r228,-129; .loc 1 1245 5 mov.u32 %r235,3; .loc 1 1243 10 mov.u32 %r236,%r235; .loc 1 943 9 mov.u32 %r231,0; .loc 1 948 8 mov.u32 %r180,%r231; .loc 1 1245 5 bra $L76; $L72: .loc 1 1247 8 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r253; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r562,[%value_in]; } mov.u32 %r180,%r562; .loc 1 1247 7 setp.ne.u32 %r563,%r562,0; @ %r563 bra $L77; .loc 1 1248 8 setp.le.s32 %r564,%r223,71; @ %r564 bra $L252; .loc 1 1251 9 cvta.const.u64 %r227,$LC3; bra $L78; $L252: .loc 1 1249 9 cvta.const.u64 %r227,$LC2; $L78: .loc 1 1253 11 and.b32 %r229,%r228,-129; ld.s8 %r391,[%frame+218]; .loc 1 943 9 mov.u32 %r231,%r562; .loc 1 1254 5 mov.u32 %r235,3; .loc 1 1252 10 mov.u32 %r236,%r235; .loc 1 1254 5 bra $L76; $L77: and.b32 %r361,%r223,-33; .loc 1 1309 7 setp.eq.u32 %r565,%r231,-1; @ %r565 bra $L253; .loc 1 1311 40 set.u32.eq.u32 %r567,%r231,0; neg.s32 %r568,%r567; set.u32.eq.u32 %r570,%r361,71; neg.s32 %r571,%r570; cvt.u16.u32 %r573,%r568; cvt.u16.u32 %r574,%r571; and.b16 %r572,%r573,%r574; cvt.u32.u16 %r575,%r572; cvt.u16.u8 %r576,%r575; setp.ne.u16 %r577,%r576,0; @ %r577 bra $L80; bra $L79; $L253: .loc 1 1310 10 mov.u32 %r231,6; $L79: .loc 1 1315 10 or.b32 %r229,%r228,256; .loc 1 1814 6 mov.b64 %r578,%r253; shr.u64 %r579,%r578,32; .loc 1 1814 5 cvt.u32.u64 %r580,%r579; setp.ge.s32 %r581,%r580,0; @ %r581 bra $L254; bra $L246; $L275: .loc 1 1312 10 mov.u32 %r231,1; $L246: .loc 1 1815 9 neg.f64 %r60,%r253; .loc 1 1816 9 mov.u32 %r274,45; bra $L81; $L254: .loc 1 1814 5 mov.f64 %r60,%r253; .loc 1 1818 9 mov.u32 %r274,0; $L81: .loc 1 1867 5 setp.eq.u32 %r582,%r361,70; @ %r582 bra $L82; .loc 1 1874 6 setp.ne.u32 %r583,%r361,69; @ %r583 bra $L83; .loc 1 1875 11 add.u32 %r38,%r231,1; .loc 1 1880 11 mov.u32 %r586,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r60; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r586; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r38; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r1311; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r1310; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r1309; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r594,[%value_in]; } mov.u64 %r227,%r594; setp.eq.u32 %r1268,1,1; bra $L84; $L387: .loc 1 1894 16 ld.u64 %r596,[%frame+192]; sub.u64 %r595,%r596,%r227; .loc 1 1894 10 cvt.u32.u64 %r272,%r595; ld.u32 %r180,[%frame+212]; bra $L85; $L386: ld.u32 %r368,[%frame+212]; bra $L86; $L242: .loc 1 1886 23 mov.u32 %r597,1; sub.u32 %r368,%r597,%r231; .loc 1 1886 12 st.u32 [%frame+212],%r368; $L86: .loc 1 1887 10 cvt.s64.s32 %r598,%r368; .loc 1 1887 7 add.u64 %r599,%r598,%r143; add.u64 %r296,%r1214,%r599; setp.eq.u32 %r1268,1,1; $L240: .loc 1 1889 6 setp.eq.f64 %r600,%r60,0d0000000000000000; @ %r600 bra $L255; bra $L376; $L89: .loc 1 1892 8 add.u64 %r601,%r203,1; st.u64 [%frame+192],%r601; .loc 1 1892 11 st.u8 [%r203],%r602; .loc 1 1891 14 ld.u64 %r203,[%frame+192]; .loc 1 1891 9 setp.gt.u64 %r603,%r296,%r203; @ %r603 bra $L89; bra $L87; $L376: .loc 1 1891 14 ld.u64 %r203,[%frame+192]; .loc 1 1891 9 setp.lt.u64 %r604,%r203,%r296; @ ! %r604 bra $L87; .loc 1 1892 11 mov.u32 %r602,48; bra $L89; $L255: .loc 1 1889 6 mov.u64 %r203,%r296; $L87: .loc 1 1894 16 sub.u64 %r605,%r203,%r227; .loc 1 1894 10 cvt.u32.u64 %r272,%r605; ld.u32 %r180,[%frame+212]; .loc 1 1320 7 @ %r1268 bra $L90; $L85: .loc 1 1321 8 set.u32.lt.s32 %r608,%r180,-3; neg.s32 %r609,%r608; .loc 1 1321 20 set.u32.gt.s32 %r611,%r180,%r231; neg.s32 %r612,%r611; cvt.u16.u32 %r614,%r609; cvt.u16.u32 %r615,%r612; or.b16 %r613,%r614,%r615; cvt.u32.u16 %r616,%r613; cvt.u16.u8 %r617,%r616; setp.eq.u16 %r618,%r617,0; @ %r618 bra $L91; .loc 1 1322 9 add.u32 %r223,%r223,-2; bra $L92; $L90: .loc 1 1330 7 setp.eq.u32 %r619,%r223,102; @ %r619 bra $L93; $L92: .loc 1 1331 5 add.u32 %r61,%r180,-1; st.u32 [%frame+212],%r61; .loc 1 1910 7 st.u8 [%frame+200],%r223; .loc 1 1911 5 setp.ge.s32 %r620,%r61,0; @ %r620 bra $L256; .loc 1 1912 7 mov.u32 %r621,1; sub.u32 %r61,%r621,%r180; .loc 1 1913 8 mov.u32 %r275,45; bra $L94; $L256: .loc 1 1916 8 mov.u32 %r275,43; $L94: cvt.u32.u32 %r622,%r275; st.u8 [%frame+201],%r622; .loc 1 1918 5 setp.le.s32 %r623,%r61,9; @ %r623 bra $L95; .loc 1 1917 4 mov.u64 %r303,%r1306; bra $L96; $L257: .loc 1 1921 3 mov.u64 %r303,%r163; .loc 1 1921 17 mov.u32 %r61,%r305; $L96: .loc 1 1920 9 add.u64 %r163,%r303,-1; .loc 1 1920 11 rem.s32 %r625,%r61,10; cvt.u16.u32 %r628,%r625; add.u16 %r627,%r628,48; .loc 1 1920 9 cvt.u32.u16 %r629,%r627; st.u8 [%r163],%r629; .loc 1 1921 17 div.s32 %r305,%r61,10; .loc 1 1921 3 setp.gt.s32 %r630,%r61,99; @ %r630 bra $L257; .loc 1 1922 8 add.u64 %r287,%r303,-2; .loc 1 1922 10 cvt.u16.u32 %r633,%r305; add.u16 %r632,%r633,48; cvt.u32.u16 %r634,%r632; cvt.s32.s8 %r364,%r634; .loc 1 1922 8 st.u8 [%r163+-1],%r634; .loc 1 1923 3 setp.ge.u64 %r638,%r287,%r1306; @ %r638 bra $L258; mov.u64 %r347,%r1307; $L99: .loc 1 1923 43 add.u64 %r287,%r287,1; .loc 1 1923 39 cvt.u32.u32 %r640,%r364; st.u8 [%r347],%r640; add.u64 %r347,%r347,1; .loc 1 1923 3 setp.ne.u64 %r643,%r287,%r1306; @ %r643 bra $L98; sub.u64 %r649,%r1308,%r303; add.u64 %r650,%r1307,%r649; sub.u64 %r652,%r650,%r1303; cvt.u32.u64 %r27,%r652; bra $L97; $L98: ld.s8 %r364,[%r287]; bra $L99; $L95: .loc 1 1927 9 mov.u32 %r653,48; st.u8 [%frame+202],%r653; .loc 1 1928 10 cvt.u16.u32 %r656,%r61; add.u16 %r655,%r656,48; .loc 1 1928 8 cvt.u32.u16 %r657,%r655; st.u8 [%frame+203],%r657; mov.u32 %r27,4; bra $L97; $L258: .loc 1 1923 3 mov.u32 %r27,2; $L97: .loc 1 1333 10 add.u32 %r236,%r27,%r272; .loc 1 1334 8 setp.gt.s32 %r658,%r272,1; @ %r658 bra $L100; and.b32 %r180,%r228,1; .loc 1 1334 18 setp.ne.u32 %r659,%r180,0; @ %r659 bra $L100; max.s32 %r235,%r236,0; bra $L101; $L100: .loc 1 1335 6 add.u32 %r236,%r236,1; max.s32 %r235,%r236,0; .loc 1 948 8 mov.u32 %r180,0; bra $L101; $L93: and.b32 %r660,%r228,1; or.b32 %r367,%r660,%r231; .loc 1 1341 9 setp.le.s32 %r661,%r180,0; @ %r661 bra $L102; .loc 1 1343 16 setp.eq.u32 %r662,%r367,0; @ %r662 bra $L259; .loc 1 1344 21 add.u32 %r663,%r231,1; .loc 1 1344 13 add.u32 %r236,%r663,%r180; mov.u32 %r235,%r236; bra $L101; $L102: .loc 1 1346 20 setp.eq.u32 %r664,%r367,0; @ %r664 bra $L260; .loc 1 1348 10 add.u32 %r236,%r231,2; mov.u32 %r235,%r236; bra $L101; $L91: .loc 1 1349 15 setp.gt.s32 %r665,%r272,%r180; @ %r665 bra $L104; .loc 1 1351 9 and.b32 %r666,%r228,1; setp.ne.u32 %r667,%r666,0; @ %r667 bra $L105; max.s32 %r235,%r180,0; mov.u32 %r236,%r180; mov.u32 %r223,103; bra $L101; $L105: .loc 1 1352 7 add.u32 %r236,%r180,1; max.s32 %r235,%r236,0; mov.u32 %r223,103; bra $L101; $L104: .loc 1 1355 9 setp.gt.s32 %r668,%r180,0; @ %r668 bra $L261; mov.u32 %r669,2; sub.u32 %r241,%r669,%r180; bra $L106; $L261: mov.u32 %r241,1; $L106: .loc 1 1354 11 add.u32 %r236,%r241,%r272; max.s32 %r235,%r236,0; mov.u32 %r223,103; bra $L101; $L259: mov.u32 %r235,%r180; mov.u32 %r236,%r180; bra $L101; $L260: mov.u32 %r235,1; .loc 1 1348 10 mov.u32 %r236,%r235; $L101: .loc 1 1377 7 setp.eq.u32 %r670,%r274,0; @ %r670 bra $L107; .loc 1 1378 10 mov.u32 %r671,45; st.u8 [%frame+218],%r671; .loc 1 943 9 mov.u32 %r231,0; bra $L108; $L43: setp.eq.u32 %r672,%r222,0; @ %r672 bra $L109; cvt.u32.u32 %r673,%r224; st.u8 [%frame+218],%r673; $L109: add.u64 %r674,%r405,7; and.b64 %r355,%r674,-8; ld.u64 %r356,[%r355]; add.u64 %r405,%r355,8; .loc 1 1392 14 and.b32 %r675,%r228,32; .loc 1 1392 7 setp.eq.u32 %r676,%r675,0; @ %r676 bra $L110; .loc 1 1393 34 cvt.s64.s32 %r677,%r401; st.u64 [%r356],%r677; bra $L5; $L110: .loc 1 1396 14 and.b32 %r678,%r228,16; .loc 1 1396 7 setp.eq.u32 %r679,%r678,0; @ %r679 bra $L112; .loc 1 1397 34 cvt.s64.s32 %r680,%r401; st.u64 [%r356],%r680; bra $L5; $L112: .loc 1 1398 19 and.b32 %r681,%r228,64; .loc 1 1398 12 setp.eq.u32 %r682,%r681,0; @ %r682 bra $L113; .loc 1 1399 35 st.u16 [%r356],%r401; bra $L5; $L113: .loc 1 1405 33 st.u32 [%r356],%r401; bra $L5; $L31: setp.eq.u32 %r683,%r222,0; @ %r683 bra $L114; cvt.u32.u32 %r684,%r224; st.u8 [%frame+218],%r684; $L114: .loc 1 1408 10 or.b32 %r265,%r228,16; .loc 1 1411 13 and.b32 %r685,%r228,32; setp.ne.u32 %r686,%r685,0; @ ! %r686 bra $L116; bra $L262; $L41: setp.eq.u32 %r687,%r222,0; @ %r687 bra $L117; cvt.u32.u32 %r688,%r224; st.u8 [%frame+218],%r688; $L117: and.b32 %r689,%r228,32; setp.eq.u32 %r690,%r689,0; @ ! %r690 bra $L115; bra $L118; $L262: .loc 1 1408 10 mov.u32 %r228,%r265; $L115: .loc 1 1411 13 add.u64 %r331,%r405,7; and.b64 %r321,%r331,-8; add.u64 %r405,%r321,8; ld.u64 %r233,[%r321]; .loc 1 1412 9 mov.u32 %r234,0; bra $L119; $L118: .loc 1 1411 13 and.b32 %r691,%r228,16; setp.eq.u32 %r692,%r691,0; @ %r692 bra $L120; mov.u32 %r265,%r228; $L116: add.u64 %r327,%r405,7; and.b64 %r315,%r327,-8; add.u64 %r405,%r315,8; ld.u64 %r233,[%r315]; mov.u32 %r228,%r265; .loc 1 1412 9 mov.u32 %r234,0; bra $L119; $L120: ld.u32 %r353,[%r405]; add.u64 %r405,%r405,4; .loc 1 1411 13 and.b32 %r693,%r228,64; setp.eq.u32 %r694,%r693,0; @ %r694 bra $L121; cvt.u16.u32 %r695,%r353; cvt.u64.u16 %r233,%r695; .loc 1 1412 9 mov.u32 %r234,%r691; bra $L119; $L121: .loc 1 1411 13 cvt.u64.u32 %r233,%r353; .loc 1 1412 9 mov.u32 %r234,%r693; bra $L119; $L42: .loc 1 1426 25 add.u64 %r109,%r405,7; and.b64 %r314,%r109,-8; add.u64 %r405,%r314,8; .loc 1 1426 11 ld.u64 %r233,[%r314]; .loc 1 1429 10 or.b32 %r228,%r228,2; .loc 1 1430 10 mov.u32 %r696,48; st.u8 [%frame+216],%r696; .loc 1 1431 10 mov.u32 %r697,120; st.u8 [%frame+217],%r697; .loc 1 1428 10 cvta.const.u64 %r26,$LC5; .loc 1 1427 9 mov.u32 %r234,2; .loc 1 1431 15 mov.u32 %r223,120; .loc 1 1432 4 bra $L119; $L46: .loc 1 1437 7 add.u64 %r325,%r405,7; and.b64 %r320,%r325,-8; add.u64 %r405,%r320,8; ld.u64 %r227,[%r320]; .loc 1 1441 9 mov.u32 %r698,0; st.u8 [%frame+218],%r698; .loc 1 1447 7 setp.ne.u64 %r699,%r227,0; @ %r699 bra $L122; .loc 1 1449 39 min.u32 %r236,%r231,6; mov.u32 %r235,%r236; .loc 1 1448 8 cvta.const.u64 %r227,$LC6; bra $L58; $L122: .loc 1 1516 7 setp.eq.u32 %r700,%r231,-1; @ %r700 bra $L123; .loc 1 1522 15 cvt.s64.s32 %r704,%r231; mov.u32 %r702,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r227; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r702; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r704; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r705,[%value_in]; } .loc 1 1524 8 setp.ne.u64 %r706,%r705,0; @ %r706 bra $L124; ld.s8 %r391,[%frame+218]; mov.u32 %r235,%r231; mov.u32 %r236,%r231; mov.u32 %r229,%r228; .loc 1 943 9 cvt.u32.u64 %r231,%r705; .loc 1 948 8 mov.u32 %r180,%r231; bra $L76; $L124: .loc 1 1525 15 sub.u64 %r707,%r705,%r227; cvt.u32.u64 %r708,%r707; min.s32 %r236,%r231,%r708; ld.s8 %r391,[%frame+218]; max.s32 %r235,%r236,0; mov.u32 %r229,%r228; .loc 1 943 9 mov.u32 %r231,%r702; .loc 1 948 8 mov.u32 %r180,%r231; bra $L76; $L123: .loc 1 1531 12 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r227; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r710,[%value_in]; } .loc 1 1531 10 cvt.u32.u64 %r236,%r710; ld.s8 %r391,[%frame+218]; max.s32 %r235,%r236,0; mov.u32 %r229,%r228; .loc 1 943 9 mov.u32 %r231,0; .loc 1 948 8 mov.u32 %r180,%r231; bra $L76; $L14: setp.eq.u32 %r711,%r222,0; @ %r711 bra $L125; cvt.u32.u32 %r712,%r224; st.u8 [%frame+218],%r712; $L125: .loc 1 1535 10 or.b32 %r273,%r228,16; .loc 1 1538 13 and.b32 %r713,%r228,32; setp.ne.u32 %r714,%r713,0; @ ! %r714 bra $L127; bra $L263; $L44: setp.eq.u32 %r715,%r222,0; @ %r715 bra $L128; cvt.u32.u32 %r716,%r224; st.u8 [%frame+218],%r716; $L128: and.b32 %r717,%r228,32; setp.eq.u32 %r718,%r717,0; @ ! %r718 bra $L126; bra $L129; $L263: .loc 1 1535 10 mov.u32 %r228,%r273; $L126: .loc 1 1538 13 add.u64 %r323,%r405,7; and.b64 %r319,%r323,-8; add.u64 %r405,%r319,8; ld.u64 %r233,[%r319]; .loc 1 1539 9 mov.u32 %r234,1; bra $L119; $L129: .loc 1 1538 13 and.b32 %r719,%r228,16; setp.eq.u32 %r720,%r719,0; @ %r720 bra $L130; mov.u32 %r273,%r228; $L127: add.u64 %r266,%r405,7; and.b64 %r313,%r266,-8; add.u64 %r405,%r313,8; ld.u64 %r233,[%r313]; mov.u32 %r228,%r273; .loc 1 1539 9 mov.u32 %r234,1; bra $L119; $L130: ld.u32 %r352,[%r405]; add.u64 %r405,%r405,4; .loc 1 1538 13 and.b32 %r721,%r228,64; setp.eq.u32 %r722,%r721,0; @ %r722 bra $L131; cvt.u16.u32 %r723,%r352; cvt.u64.u16 %r233,%r723; .loc 1 1539 9 mov.u32 %r234,1; bra $L119; $L131: .loc 1 1538 13 cvt.u64.u32 %r233,%r352; .loc 1 1539 9 mov.u32 %r234,1; bra $L119; $L37: setp.eq.u32 %r724,%r222,0; @ %r724 bra $L132; cvt.u32.u32 %r725,%r224; st.u8 [%frame+218],%r725; $L132: .loc 1 1542 10 cvta.const.u64 %r26,$LC4; $L49: .loc 1 1546 17 and.b32 %r726,%r228,32; setp.eq.u32 %r727,%r726,0; @ %r727 bra $L133; add.u64 %r322,%r405,7; and.b64 %r317,%r322,-8; add.u64 %r405,%r317,8; ld.u64 %r233,[%r317]; bra $L134; $L133: and.b32 %r728,%r228,16; setp.eq.u32 %r729,%r728,0; @ %r729 bra $L135; add.u64 %r62,%r405,7; and.b64 %r312,%r62,-8; add.u64 %r405,%r312,8; ld.u64 %r233,[%r312]; bra $L134; $L135: ld.u32 %r392,[%r405]; add.u64 %r405,%r405,4; and.b32 %r730,%r228,64; setp.eq.u32 %r731,%r730,0; @ %r731 bra $L136; cvt.u16.u32 %r732,%r392; cvt.u64.u16 %r233,%r732; bra $L134; $L136: cvt.u64.u32 %r233,%r392; $L134: .loc 1 1549 14 and.b32 %r733,%r228,1; .loc 1 1549 7 setp.eq.u32 %r734,%r733,0; @ %r734 bra $L264; .loc 1 1549 20 setp.eq.u64 %r735,%r233,0; @ %r735 bra $L265; .loc 1 1550 11 mov.u32 %r736,48; st.u8 [%frame+216],%r736; .loc 1 1551 11 st.u8 [%frame+217],%r223; .loc 1 1552 11 or.b32 %r228,%r228,2; .loc 1 1547 9 mov.u32 %r234,2; bra $L119; $L264: mov.u32 %r234,2; bra $L119; $L265: mov.u32 %r234,2; $L119: .loc 1 1559 16 mov.u32 %r737,0; st.u8 [%frame+218],%r737; mov.u32 %r391,0; $L68: .loc 1 1565 14 setp.eq.u32 %r738,%r231,-1; @ %r738 bra $L137; .loc 1 1566 11 and.b32 %r229,%r228,-129; .loc 1 1574 15 set.u32.ne.u64 %r740,%r233,0; neg.s32 %r741,%r740; .loc 1 1574 28 set.u32.ne.u32 %r743,%r231,0; neg.s32 %r744,%r743; .loc 1 1574 20 cvt.u16.u32 %r746,%r741; cvt.u16.u32 %r747,%r744; or.b16 %r745,%r746,%r747; .loc 1 1574 7 cvt.u32.u16 %r748,%r745; cvt.u16.u8 %r749,%r748; setp.eq.u16 %r750,%r749,0; @ %r750 bra $L138; .loc 1 1566 11 mov.u32 %r228,%r229; $L137: cvt.u16.u32 %r751,%r234; setp.eq.u16 %r752,%r751,1; @ %r752 bra $L139; setp.eq.u16 %r754,%r751,2; @ %r754 bra $L266; .loc 1 1573 7 mov.u64 %r226,%r1302; bra $L141; $L267: .loc 1 1581 5 mov.u64 %r226,%r227; $L141: .loc 1 1583 13 add.u64 %r227,%r226,-1; .loc 1 1583 15 cvt.u16.u64 %r757,%r233; and.b16 %r756,%r757,7; add.u16 %r759,%r756,48; cvt.u32.u16 %r761,%r759; cvt.s32.s8 %r97,%r761; .loc 1 1583 13 st.u8 [%r227],%r761; .loc 1 1584 14 shr.u64 %r233,%r233,3; .loc 1 1585 6 setp.ne.u64 %r763,%r233,0; @ %r763 bra $L267; .loc 1 1587 22 cvt.u16.u32 %r765,%r97; set.u32.ne.u16 %r766,%r765,48; neg.s32 %r767,%r766; .loc 1 1587 9 cvt.u16.u32 %r770,%r228; and.b16 %r769,%r770,1; .loc 1 1587 22 cvt.u16.u32 %r773,%r767; and.b16 %r772,%r773,%r769; cvt.u32.u16 %r775,%r772; cvt.u16.u8 %r776,%r775; setp.ne.u16 %r777,%r776,0; @ %r777 bra $L142; sub.u64 %r780,%r1302,%r227; cvt.u32.u64 %r236,%r780; mov.u32 %r229,%r228; bra $L143; $L142: .loc 1 1588 13 add.u64 %r277,%r226,-2; mov.u32 %r781,48; st.u8 [%r227+-1],%r781; sub.u64 %r784,%r1302,%r277; cvt.u32.u64 %r236,%r784; mov.u32 %r229,%r228; mov.u64 %r227,%r277; bra $L143; $L274: .loc 1 1566 11 mov.u32 %r228,%r229; $L139: .loc 1 1593 9 setp.gt.u64 %r1265,%r233,9; @ %r1265 bra $L268; .loc 1 1594 15 cvt.u16.u64 %r788,%r233; add.u16 %r787,%r788,48; .loc 1 1594 13 cvt.u32.u16 %r789,%r787; st.u8 [%frame+167],%r789; .loc 1 1595 7 mov.u32 %r229,%r228; mov.u32 %r236,1; .loc 1 1594 13 add.u64 %r227,%frame,167; .loc 1 1595 7 bra $L143; $L268: .loc 1 1573 7 mov.u64 %r227,%r1302; bra $L144; $L269: .loc 1 1622 15 mov.u64 %r233,%r278; setp.gt.u64 %r1265,%r233,9; $L144: .loc 1 1601 14 add.u64 %r227,%r227,-1; .loc 1 1601 16 rem.u64 %r791,%r233,10; cvt.u16.u64 %r794,%r791; add.u16 %r793,%r794,48; .loc 1 1601 14 cvt.u32.u16 %r795,%r793; st.u8 [%r227],%r795; .loc 1 1622 15 div.u64 %r278,%r233,10; .loc 1 1623 6 @ %r1265 bra $L269; sub.u64 %r799,%r1302,%r227; cvt.u32.u64 %r236,%r799; mov.u32 %r229,%r228; bra $L143; $L266: .loc 1 1573 7 mov.u64 %r227,%r1302; $L140: .loc 1 1628 13 add.u64 %r227,%r227,-1; .loc 1 1628 28 and.b64 %r800,%r233,15; .loc 1 1628 20 add.u64 %r801,%r26,%r800; .loc 1 1628 13 ld.u8 %r802,[%r801]; st.u8 [%r227],%r802; .loc 1 1629 14 shr.u64 %r233,%r233,4; .loc 1 1630 6 setp.ne.u64 %r803,%r233,0; @ %r803 bra $L140; sub.u64 %r806,%r1302,%r227; cvt.u32.u64 %r236,%r806; mov.u32 %r229,%r228; bra $L143; $L138: .loc 1 1648 32 setp.ne.u32 %r807,%r234,0; @ %r807 bra $L270; .loc 1 1648 55 and.b32 %r236,%r228,1; .loc 1 1648 45 setp.eq.u32 %r808,%r236,0; @ %r808 bra $L271; .loc 1 1649 32 mov.u32 %r809,48; st.u8 [%frame+167],%r809; mov.u32 %r231,%r234; add.u64 %r227,%frame,167; bra $L143; $L270: mov.u32 %r231,0; mov.u32 %r236,%r231; .loc 1 1573 7 add.u64 %r227,%frame,168; bra $L143; $L271: mov.u32 %r231,%r234; add.u64 %r227,%frame,168; $L143: max.s32 %r235,%r236,%r231; .loc 1 948 8 mov.u32 %r180,0; bra $L76; $L22: setp.eq.u32 %r810,%r222,0; @ %r810 bra $L145; cvt.u32.u32 %r811,%r224; st.u8 [%frame+218],%r811; $L145: .loc 1 1655 7 setp.eq.u32 %r812,%r223,0; @ %r812 bra $L11; .loc 1 1659 8 st.u8 [%frame+128],%r223; .loc 1 1661 9 mov.u32 %r813,0; st.u8 [%frame+218],%r813; .loc 1 1662 4 mov.u32 %r235,1; .loc 1 1660 9 mov.u32 %r236,%r235; .loc 1 1658 7 add.u64 %r227,%frame,128; .loc 1 1662 4 bra $L58; $L107: ld.s8 %r391,[%frame+218]; .loc 1 943 9 mov.u32 %r231,%r274; $L76: .loc 1 1681 6 setp.eq.u32 %r814,%r391,0; @ %r814 bra $L146; $L108: .loc 1 1682 10 add.u32 %r235,%r235,1; $L146: .loc 1 1683 13 and.b32 %r111,%r229,2; .loc 1 1683 6 setp.eq.u32 %r1259,%r111,0; @ %r1259 bra $L147; .loc 1 1684 10 add.u32 %r235,%r235,2; $L147: .loc 1 1687 14 and.b32 %r112,%r229,132; ld.u64 %r369,[%frame+184]; .loc 1 1687 6 setp.ne.u32 %r816,%r112,0; @ %r816 bra $L148; .loc 1 1688 4 sub.u32 %r260,%r230,%r235; setp.le.s32 %r817,%r260,0; @ %r817 bra $L148; ld.u32 %r386,[%frame+176]; setp.le.s32 %r818,%r260,16; @ ! %r818 bra $L377; cvta.const.u64 %r1260,blanks$4153; bra $L149; $L377: cvta.const.u64 %r1260,blanks$4153; $L152: st.u64 [%r237],%r1260; mov.u64 %r820,16; st.u64 [%r237+8],%r820; add.u64 %r369,%r369,16; st.u64 [%frame+184],%r369; add.u32 %r386,%r386,1; st.u32 [%frame+176],%r386; setp.gt.s32 %r821,%r386,7; @ %r821 bra $L150; add.u64 %r237,%r237,16; bra $L151; $L150: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r826,[%value_in]; } setp.ne.u32 %r827,%r826,0; @ %r827 bra $L10; ld.u64 %r369,[%frame+184]; ld.u32 %r386,[%frame+176]; mov.u64 %r237,%frame; $L151: add.u32 %r260,%r260,-16; setp.gt.s32 %r828,%r260,16; @ %r828 bra $L152; $L149: st.u64 [%r237],%r1260; cvt.s64.s32 %r114,%r260; st.u64 [%r237+8],%r114; add.u64 %r369,%r369,%r114; st.u64 [%frame+184],%r369; add.u32 %r115,%r386,1; st.u32 [%frame+176],%r115; setp.gt.s32 %r830,%r115,7; @ %r830 bra $L153; add.u64 %r237,%r237,16; bra $L148; $L153: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r835,[%value_in]; } setp.ne.u32 %r836,%r835,0; @ %r836 bra $L10; ld.u64 %r369,[%frame+184]; mov.u64 %r237,%frame; $L148: .loc 1 1691 6 ld.s8 %r838,[%frame+218]; cvt.u16.u32 %r837,%r838; setp.eq.u16 %r839,%r837,0; @ %r839 bra $L154; .loc 1 1692 4 st.u64 [%r237],%r1305; mov.u64 %r841,1; st.u64 [%r237+8],%r841; add.u64 %r369,%r369,1; st.u64 [%frame+184],%r369; ld.u32 %r842,[%frame+176]; add.u32 %r119,%r842,1; st.u32 [%frame+176],%r119; setp.gt.s32 %r843,%r119,7; @ %r843 bra $L155; add.u64 %r237,%r237,16; bra $L154; $L155: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r848,[%value_in]; } setp.ne.u32 %r849,%r848,0; @ %r849 bra $L10; ld.u64 %r369,[%frame+184]; mov.u64 %r237,%frame; $L154: .loc 1 1693 6 @ %r1259 bra $L156; .loc 1 1694 4 st.u64 [%r237],%r1304; mov.u64 %r852,2; st.u64 [%r237+8],%r852; add.u64 %r369,%r369,2; st.u64 [%frame+184],%r369; ld.u32 %r853,[%frame+176]; add.u32 %r122,%r853,1; st.u32 [%frame+176],%r122; setp.gt.s32 %r854,%r122,7; @ %r854 bra $L157; add.u64 %r237,%r237,16; bra $L156; $L157: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r859,[%value_in]; } setp.ne.u32 %r860,%r859,0; @ %r860 bra $L10; ld.u64 %r369,[%frame+184]; mov.u64 %r237,%frame; $L156: .loc 1 1697 6 setp.ne.u32 %r861,%r112,128; @ %r861 bra $L158; .loc 1 1698 4 sub.u32 %r258,%r230,%r235; setp.le.s32 %r862,%r258,0; @ %r862 bra $L158; ld.u32 %r385,[%frame+176]; setp.le.s32 %r863,%r258,16; @ ! %r863 bra $L378; cvta.const.u64 %r1267,zeroes$4154; bra $L159; $L378: cvta.const.u64 %r1267,zeroes$4154; $L162: st.u64 [%r237],%r1267; mov.u64 %r865,16; st.u64 [%r237+8],%r865; add.u64 %r369,%r369,16; st.u64 [%frame+184],%r369; add.u32 %r385,%r385,1; st.u32 [%frame+176],%r385; setp.gt.s32 %r866,%r385,7; @ %r866 bra $L160; add.u64 %r237,%r237,16; bra $L161; $L160: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r871,[%value_in]; } setp.ne.u32 %r872,%r871,0; @ %r872 bra $L10; ld.u64 %r369,[%frame+184]; ld.u32 %r385,[%frame+176]; mov.u64 %r237,%frame; $L161: add.u32 %r258,%r258,-16; setp.gt.s32 %r873,%r258,16; @ %r873 bra $L162; $L159: st.u64 [%r237],%r1267; cvt.s64.s32 %r125,%r258; st.u64 [%r237+8],%r125; add.u64 %r369,%r369,%r125; st.u64 [%frame+184],%r369; add.u32 %r127,%r385,1; st.u32 [%frame+176],%r127; setp.gt.s32 %r875,%r127,7; @ %r875 bra $L163; add.u64 %r237,%r237,16; bra $L158; $L163: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r880,[%value_in]; } setp.ne.u32 %r881,%r880,0; @ %r881 bra $L10; ld.u64 %r369,[%frame+184]; mov.u64 %r237,%frame; $L158: .loc 1 1701 3 sub.u32 %r279,%r231,%r236; setp.le.s32 %r882,%r279,0; @ %r882 bra $L164; ld.u32 %r384,[%frame+176]; setp.le.s32 %r883,%r279,16; @ ! %r883 bra $L379; cvta.const.u64 %r1267,zeroes$4154; bra $L165; $L379: cvta.const.u64 %r1267,zeroes$4154; $L168: st.u64 [%r237],%r1267; mov.u64 %r885,16; st.u64 [%r237+8],%r885; add.u64 %r369,%r369,16; st.u64 [%frame+184],%r369; add.u32 %r384,%r384,1; st.u32 [%frame+176],%r384; setp.gt.s32 %r886,%r384,7; @ %r886 bra $L166; add.u64 %r237,%r237,16; bra $L167; $L166: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r891,[%value_in]; } setp.ne.u32 %r892,%r891,0; @ %r892 bra $L10; ld.u64 %r369,[%frame+184]; ld.u32 %r384,[%frame+176]; mov.u64 %r237,%frame; $L167: add.u32 %r279,%r279,-16; setp.gt.s32 %r893,%r279,16; @ %r893 bra $L168; $L165: st.u64 [%r237],%r1267; cvt.s64.s32 %r130,%r279; st.u64 [%r237+8],%r130; add.u64 %r369,%r369,%r130; st.u64 [%frame+184],%r369; add.u32 %r131,%r384,1; st.u32 [%frame+176],%r131; setp.gt.s32 %r895,%r131,7; @ %r895 bra $L169; add.u64 %r237,%r237,16; bra $L164; $L169: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r900,[%value_in]; } setp.ne.u32 %r901,%r900,0; @ %r901 bra $L10; ld.u64 %r369,[%frame+184]; mov.u64 %r237,%frame; $L164: .loc 1 1705 14 and.b32 %r902,%r229,256; .loc 1 1705 6 setp.ne.u32 %r903,%r902,0; @ %r903 bra $L170; .loc 1 1706 4 st.u64 [%r237],%r227; cvt.s64.s32 %r134,%r236; st.u64 [%r237+8],%r134; add.u64 %r369,%r369,%r134; st.u64 [%frame+184],%r369; ld.u32 %r904,[%frame+176]; add.u32 %r136,%r904,1; st.u32 [%frame+176],%r136; setp.gt.s32 %r905,%r136,7; @ %r905 bra $L171; add.u64 %r237,%r237,16; bra $L172; $L171: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r910,[%value_in]; } setp.ne.u32 %r911,%r910,0; @ %r911 bra $L10; ld.u64 %r369,[%frame+184]; mov.u64 %r237,%frame; bra $L172; $L170: .loc 1 1708 7 setp.le.s32 %r912,%r223,101; @ %r912 bra $L173; .loc 1 1709 8 setp.neu.f64 %r913,%r253,0d0000000000000000; @ %r913 bra $L174; .loc 1 1711 6 cvta.const.u64 %r914,$LC7; st.u64 [%r237],%r914; mov.u64 %r915,1; st.u64 [%r237+8],%r915; add.u64 %r916,%r369,1; st.u64 [%frame+184],%r916; ld.u32 %r917,[%frame+176]; add.u32 %r140,%r917,1; st.u32 [%frame+176],%r140; setp.gt.s32 %r918,%r140,7; @ %r918 bra $L175; add.u64 %r237,%r237,16; bra $L176; $L175: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; 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 $L10; mov.u64 %r237,%frame; $L176: .loc 1 1712 9 ld.u32 %r925,[%frame+212]; setp.lt.s32 %r926,%r925,%r272; @ %r926 bra $L177; .loc 1 1712 31 and.b32 %r927,%r229,1; .loc 1 1712 22 setp.ne.u32 %r928,%r927,0; @ %r928 bra $L177; ld.u64 %r369,[%frame+184]; bra $L172; $L177: .loc 1 1713 7 st.u64 [%r237],%r244; st.u64 [%r237+8],%r418; ld.u64 %r929,[%frame+184]; add.u64 %r369,%r418,%r929; st.u64 [%frame+184],%r369; ld.u32 %r930,[%frame+176]; add.u32 %r147,%r930,1; st.u32 [%frame+176],%r147; setp.gt.s32 %r931,%r147,7; @ %r931 bra $L178; add.u64 %r237,%r237,16; bra $L179; $L178: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r936,[%value_in]; } setp.ne.u32 %r937,%r936,0; @ %r937 bra $L10; ld.u64 %r369,[%frame+184]; mov.u64 %r237,%frame; $L179: .loc 1 1714 7 add.u32 %r259,%r272,-1; setp.le.s32 %r938,%r259,0; @ %r938 bra $L172; ld.u32 %r383,[%frame+176]; setp.le.s32 %r939,%r259,16; @ ! %r939 bra $L380; cvta.const.u64 %r1267,zeroes$4154; bra $L180; $L380: cvta.const.u64 %r1267,zeroes$4154; $L183: st.u64 [%r237],%r1267; mov.u64 %r941,16; st.u64 [%r237+8],%r941; add.u64 %r369,%r369,16; st.u64 [%frame+184],%r369; add.u32 %r383,%r383,1; st.u32 [%frame+176],%r383; setp.gt.s32 %r942,%r383,7; @ %r942 bra $L181; add.u64 %r237,%r237,16; bra $L182; $L181: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r947,[%value_in]; } setp.ne.u32 %r948,%r947,0; @ %r948 bra $L10; ld.u64 %r369,[%frame+184]; ld.u32 %r383,[%frame+176]; mov.u64 %r237,%frame; $L182: add.u32 %r259,%r259,-16; setp.gt.s32 %r949,%r259,16; @ %r949 bra $L183; $L180: st.u64 [%r237],%r1267; cvt.s64.s32 %r150,%r259; st.u64 [%r237+8],%r150; add.u64 %r369,%r369,%r150; st.u64 [%frame+184],%r369; add.u32 %r151,%r383,1; st.u32 [%frame+176],%r151; setp.gt.s32 %r951,%r151,7; @ %r951 bra $L184; add.u64 %r237,%r237,16; bra $L172; $L184: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r956,[%value_in]; } setp.ne.u32 %r957,%r956,0; @ %r957 bra $L10; ld.u64 %r369,[%frame+184]; mov.u64 %r237,%frame; bra $L172; $L174: .loc 1 1716 21 ld.u32 %r153,[%frame+212]; .loc 1 1716 15 setp.gt.s32 %r958,%r153,0; @ %r958 bra $L185; .loc 1 1717 6 cvta.const.u64 %r959,$LC7; st.u64 [%r237],%r959; mov.u64 %r960,1; st.u64 [%r237+8],%r960; add.u64 %r369,%r369,1; st.u64 [%frame+184],%r369; ld.u32 %r961,[%frame+176]; add.u32 %r155,%r961,1; st.u32 [%frame+176],%r155; setp.gt.s32 %r962,%r155,7; @ %r962 bra $L186; add.u64 %r237,%r237,16; bra $L187; $L186: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; 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 $L10; ld.u32 %r153,[%frame+212]; ld.u64 %r369,[%frame+184]; mov.u64 %r237,%frame; $L187: .loc 1 1718 15 or.b32 %r969,%r272,%r153; setp.ne.u32 %r970,%r969,0; @ %r970 bra $L188; .loc 1 1718 32 and.b32 %r971,%r229,1; .loc 1 1718 23 setp.ne.u32 %r972,%r971,0; @ %r972 bra $L189; bra $L172; $L188: .loc 1 1719 7 st.u64 [%r237],%r244; st.u64 [%r237+8],%r418; add.u64 %r381,%r418,%r369; st.u64 [%frame+184],%r381; ld.u32 %r973,[%frame+176]; add.u32 %r382,%r973,1; st.u32 [%frame+176],%r382; setp.gt.s32 %r974,%r382,7; @ %r974 bra $L190; add.u64 %r238,%r237,16; bra $L191; $L190: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r979,[%value_in]; } setp.ne.u32 %r980,%r979,0; @ %r980 bra $L10; ld.u32 %r153,[%frame+212]; ld.u64 %r381,[%frame+184]; ld.u32 %r382,[%frame+176]; mov.u64 %r238,%frame; $L191: .loc 1 1720 7 setp.ge.s32 %r981,%r153,0; @ %r981 bra $L192; neg.s32 %r283,%r153; setp.ge.s32 %r982,%r153,-16; @ ! %r982 bra $L381; cvta.const.u64 %r1267,zeroes$4154; bra $L193; $L381: cvta.const.u64 %r1267,zeroes$4154; $L196: st.u64 [%r238],%r1267; mov.u64 %r984,16; st.u64 [%r238+8],%r984; add.u64 %r381,%r381,16; st.u64 [%frame+184],%r381; add.u32 %r382,%r382,1; st.u32 [%frame+176],%r382; setp.gt.s32 %r985,%r382,7; @ %r985 bra $L194; add.u64 %r238,%r238,16; bra $L195; $L194: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r990,[%value_in]; } setp.ne.u32 %r991,%r990,0; @ %r991 bra $L10; ld.u64 %r381,[%frame+184]; ld.u32 %r382,[%frame+176]; mov.u64 %r238,%frame; $L195: add.u32 %r283,%r283,-16; setp.gt.s32 %r992,%r283,16; @ %r992 bra $L196; $L193: st.u64 [%r238],%r1267; cvt.s64.s32 %r161,%r283; st.u64 [%r238+8],%r161; add.u64 %r381,%r381,%r161; st.u64 [%frame+184],%r381; add.u32 %r382,%r382,1; st.u32 [%frame+176],%r382; setp.gt.s32 %r994,%r382,7; @ %r994 bra $L197; add.u64 %r238,%r238,16; bra $L192; $L197: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r999,[%value_in]; } setp.ne.u32 %r1000,%r999,0; @ %r1000 bra $L10; ld.u64 %r381,[%frame+184]; ld.u32 %r382,[%frame+176]; mov.u64 %r238,%frame; $L192: .loc 1 1721 7 st.u64 [%r238],%r227; cvt.s64.s32 %r164,%r272; st.u64 [%r238+8],%r164; add.u64 %r369,%r164,%r381; st.u64 [%frame+184],%r369; add.u32 %r165,%r382,1; st.u32 [%frame+176],%r165; setp.gt.s32 %r1001,%r165,7; @ %r1001 bra $L198; add.u64 %r237,%r238,16; bra $L172; $L198: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1006,[%value_in]; } setp.ne.u32 %r1007,%r1006,0; @ %r1007 bra $L10; ld.u64 %r369,[%frame+184]; mov.u64 %r237,%frame; bra $L172; $L185: min.s32 %r252,%r272,%r180; .loc 1 1725 6 setp.le.s32 %r1008,%r252,0; @ %r1008 bra $L199; st.u64 [%r237],%r227; cvt.s64.s32 %r167,%r252; st.u64 [%r237+8],%r167; add.u64 %r369,%r369,%r167; st.u64 [%frame+184],%r369; ld.u32 %r1009,[%frame+176]; add.u32 %r169,%r1009,1; st.u32 [%frame+176],%r169; setp.gt.s32 %r1010,%r169,7; @ %r1010 bra $L200; add.u64 %r237,%r237,16; bra $L199; $L200: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1015,[%value_in]; } setp.ne.u32 %r1016,%r1015,0; @ %r1016 bra $L10; ld.u64 %r369,[%frame+184]; mov.u64 %r237,%frame; $L199: max.s32 %r172,%r252,0; sub.u32 %r242,%r180,%r172; setp.le.s32 %r1017,%r242,0; @ %r1017 bra $L201; ld.u32 %r380,[%frame+176]; setp.le.s32 %r1018,%r242,16; @ ! %r1018 bra $L382; cvta.const.u64 %r1267,zeroes$4154; bra $L202; $L382: cvta.const.u64 %r1267,zeroes$4154; $L205: st.u64 [%r237],%r1267; mov.u64 %r1020,16; st.u64 [%r237+8],%r1020; add.u64 %r369,%r369,16; st.u64 [%frame+184],%r369; add.u32 %r380,%r380,1; st.u32 [%frame+176],%r380; setp.gt.s32 %r1021,%r380,7; @ %r1021 bra $L203; add.u64 %r237,%r237,16; bra $L204; $L203: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1026,[%value_in]; } setp.ne.u32 %r1027,%r1026,0; @ %r1027 bra $L10; ld.u64 %r369,[%frame+184]; ld.u32 %r380,[%frame+176]; mov.u64 %r237,%frame; $L204: add.u32 %r242,%r242,-16; setp.gt.s32 %r1028,%r242,16; @ %r1028 bra $L205; $L202: st.u64 [%r237],%r1267; cvt.s64.s32 %r174,%r242; st.u64 [%r237+8],%r174; add.u64 %r369,%r369,%r174; st.u64 [%frame+184],%r369; add.u32 %r175,%r380,1; st.u32 [%frame+176],%r175; setp.gt.s32 %r1030,%r175,7; @ %r1030 bra $L206; add.u64 %r237,%r237,16; bra $L201; $L206: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1035,[%value_in]; } setp.ne.u32 %r1036,%r1035,0; @ %r1036 bra $L10; ld.u64 %r369,[%frame+184]; mov.u64 %r237,%frame; $L201: .loc 1 1746 15 ld.u32 %r179,[%frame+212]; .loc 1 1746 9 setp.lt.s32 %r1037,%r179,%r272; @ %r1037 bra $L207; .loc 1 1746 31 and.b32 %r1038,%r229,1; .loc 1 1746 22 setp.eq.u32 %r1039,%r1038,0; @ %r1039 bra $L208; $L207: .loc 1 1747 10 st.u64 [%r237],%r244; st.u64 [%r237+8],%r418; add.u64 %r369,%r369,%r418; st.u64 [%frame+184],%r369; ld.u32 %r1040,[%frame+176]; add.u32 %r183,%r1040,1; st.u32 [%frame+176],%r183; setp.gt.s32 %r1041,%r183,7; @ %r1041 bra $L209; add.u64 %r237,%r237,16; bra $L210; $L209: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1046,[%value_in]; } setp.ne.u32 %r1047,%r1046,0; @ %r1047 bra $L10; ld.u32 %r179,[%frame+212]; ld.u64 %r369,[%frame+184]; mov.u64 %r237,%frame; $L210: .loc 1 1748 6 sub.u32 %r286,%r272,%r180; sub.u32 %r186,%r272,%r179; min.s32 %r276,%r186,%r286; setp.le.s32 %r1048,%r276,0; @ %r1048 bra $L211; .loc 1 1727 9 cvt.s64.s32 %r1049,%r180; add.u64 %r1050,%r227,%r1049; .loc 1 1748 6 st.u64 [%r237],%r1050; cvt.s64.s32 %r187,%r276; st.u64 [%r237+8],%r187; add.u64 %r369,%r369,%r187; st.u64 [%frame+184],%r369; ld.u32 %r1051,[%frame+176]; add.u32 %r189,%r1051,1; st.u32 [%frame+176],%r189; setp.gt.s32 %r1052,%r189,7; @ %r1052 bra $L212; add.u64 %r237,%r237,16; bra $L211; $L212: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1057,[%value_in]; } setp.ne.u32 %r1058,%r1057,0; @ %r1058 bra $L10; ld.u32 %r1059,[%frame+212]; sub.u32 %r186,%r272,%r1059; ld.u64 %r369,[%frame+184]; mov.u64 %r237,%frame; $L211: max.s32 %r192,%r276,0; sub.u32 %r263,%r186,%r192; setp.le.s32 %r1060,%r263,0; @ %r1060 bra $L172; ld.u32 %r379,[%frame+176]; setp.le.s32 %r1061,%r263,16; @ ! %r1061 bra $L383; cvta.const.u64 %r1267,zeroes$4154; bra $L213; $L383: cvta.const.u64 %r1267,zeroes$4154; $L216: st.u64 [%r237],%r1267; mov.u64 %r1063,16; st.u64 [%r237+8],%r1063; add.u64 %r369,%r369,16; st.u64 [%frame+184],%r369; add.u32 %r379,%r379,1; st.u32 [%frame+176],%r379; setp.gt.s32 %r1064,%r379,7; @ %r1064 bra $L214; add.u64 %r237,%r237,16; bra $L215; $L214: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; 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 %r369,[%frame+184]; ld.u32 %r379,[%frame+176]; mov.u64 %r237,%frame; $L215: add.u32 %r263,%r263,-16; setp.gt.s32 %r1071,%r263,16; @ %r1071 bra $L216; $L213: st.u64 [%r237],%r1267; cvt.s64.s32 %r194,%r263; st.u64 [%r237+8],%r194; add.u64 %r369,%r369,%r194; st.u64 [%frame+184],%r369; add.u32 %r196,%r379,1; st.u32 [%frame+176],%r196; setp.gt.s32 %r1073,%r196,7; @ %r1073 bra $L217; add.u64 %r237,%r237,16; bra $L172; $L217: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; 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; ld.u64 %r369,[%frame+184]; mov.u64 %r237,%frame; bra $L172; $L173: add.u64 %r200,%r369,1; ld.u32 %r397,[%frame+176]; add.u32 %r374,%r397,1; add.u64 %r239,%r237,16; .loc 1 1752 8 setp.gt.s32 %r1080,%r272,1; @ %r1080 bra $L218; .loc 1 1752 27 and.b32 %r1081,%r229,1; .loc 1 1752 18 setp.eq.u32 %r1082,%r1081,0; @ %r1082 bra $L219; $L218: .loc 1 1753 6 st.u64 [%r237],%r227; mov.u64 %r1083,1; st.u64 [%r237+8],%r1083; st.u64 [%frame+184],%r200; st.u32 [%frame+176],%r374; setp.le.s32 %r1084,%r374,7; @ %r1084 bra $L220; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1089,[%value_in]; } setp.ne.u32 %r1090,%r1089,0; @ %r1090 bra $L10; ld.u64 %r200,[%frame+184]; ld.u32 %r374,[%frame+176]; mov.u64 %r239,%frame; $L220: .loc 1 1755 6 st.u64 [%r239],%r244; st.u64 [%r239+8],%r418; add.u64 %r200,%r200,%r418; st.u64 [%frame+184],%r200; add.u32 %r376,%r374,1; st.u32 [%frame+176],%r376; setp.gt.s32 %r1091,%r376,7; @ %r1091 bra $L221; add.u64 %r239,%r239,16; bra $L222; $L221: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1096,[%value_in]; } setp.ne.u32 %r1097,%r1096,0; @ %r1097 bra $L10; ld.u64 %r200,[%frame+184]; ld.u32 %r376,[%frame+176]; mov.u64 %r239,%frame; $L222: add.u32 %r375,%r376,1; mov.u32 %r1266,%r375; add.u64 %r237,%r239,16; add.u32 %r232,%r272,-1; .loc 1 1756 9 setp.eq.f64 %r1098,%r253,0d0000000000000000; @ %r1098 bra $L223; .loc 1 1754 8 add.u64 %r1099,%r227,1; .loc 1 1757 7 st.u64 [%r239],%r1099; cvt.s64.s32 %r202,%r232; st.u64 [%r239+8],%r202; add.u64 %r200,%r200,%r202; st.u64 [%frame+184],%r200; st.u32 [%frame+176],%r375; setp.gt.s32 %r1100,%r375,7; @ %r1100 bra $L224; add.u32 %r375,%r376,2; add.u64 %r398,%r239,32; mov.u64 %r239,%r237; mov.u64 %r237,%r398; bra $L225; $L224: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1105,[%value_in]; } setp.ne.u32 %r1106,%r1105,0; @ %r1106 bra $L10; ld.u64 %r200,[%frame+184]; ld.u32 %r1107,[%frame+176]; add.u32 %r375,%r1107,1; add.u64 %r237,%frame,16; mov.u64 %r239,%frame; bra $L225; $L223: .loc 1 1760 7 setp.le.s32 %r1108,%r232,0; @ %r1108 bra $L225; setp.le.s32 %r1109,%r232,16; @ %r1109 bra $L272; cvta.const.u64 %r1267,zeroes$4154; $L229: st.u64 [%r239],%r1267; mov.u64 %r1111,16; st.u64 [%r239+8],%r1111; add.u64 %r200,%r200,16; st.u64 [%frame+184],%r200; mov.u32 %r376,%r1266; st.u32 [%frame+176],%r376; setp.gt.s32 %r1112,%r376,7; @ %r1112 bra $L227; add.u64 %r239,%r239,16; bra $L228; $L227: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; 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 %r200,[%frame+184]; ld.u32 %r376,[%frame+176]; mov.u64 %r239,%frame; $L228: add.u32 %r232,%r232,-16; setp.gt.s32 %r1119,%r232,16; @ ! %r1119 bra $L384; add.u32 %r1266,%r376,1; bra $L229; $L384: add.u32 %r375,%r376,1; add.u64 %r377,%r239,16; bra $L226; $L272: mov.u64 %r377,%r237; cvta.const.u64 %r1267,zeroes$4154; $L226: st.u64 [%r239],%r1267; cvt.s64.s32 %r207,%r232; st.u64 [%r239+8],%r207; add.u64 %r200,%r200,%r207; st.u64 [%frame+184],%r200; st.u32 [%frame+176],%r375; setp.gt.s32 %r1121,%r375,7; @ %r1121 bra $L230; add.u32 %r375,%r375,1; add.u64 %r237,%r377,16; mov.u64 %r239,%r377; bra $L225; $L230: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; 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; ld.u64 %r200,[%frame+184]; ld.u32 %r1128,[%frame+176]; add.u32 %r375,%r1128,1; add.u64 %r237,%frame,16; mov.u64 %r239,%frame; bra $L225; $L219: .loc 1 1762 6 st.u64 [%r237],%r227; mov.u64 %r1129,1; st.u64 [%r237+8],%r1129; st.u64 [%frame+184],%r200; st.u32 [%frame+176],%r374; setp.gt.s32 %r1130,%r374,7; @ %r1130 bra $L231; add.u32 %r375,%r397,2; add.u64 %r237,%r237,32; bra $L225; $L231: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1135,[%value_in]; } setp.ne.u32 %r1136,%r1135,0; @ %r1136 bra $L10; ld.u64 %r200,[%frame+184]; ld.u32 %r1137,[%frame+176]; add.u32 %r375,%r1137,1; add.u64 %r237,%frame,16; mov.u64 %r239,%frame; $L225: .loc 1 1763 5 st.u64 [%r239],%r1303; cvt.s64.s32 %r211,%r27; st.u64 [%r239+8],%r211; add.u64 %r369,%r211,%r200; st.u64 [%frame+184],%r369; st.u32 [%frame+176],%r375; setp.le.s32 %r1139,%r375,7; @ %r1139 bra $L172; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1144,[%value_in]; } setp.ne.u32 %r1145,%r1144,0; @ %r1145 bra $L10; ld.u64 %r369,[%frame+184]; mov.u64 %r237,%frame; $L172: .loc 1 1770 13 and.b32 %r1146,%r229,4; .loc 1 1770 6 setp.eq.u32 %r1147,%r1146,0; @ %r1147 bra $L232; .loc 1 1771 4 sub.u32 %r268,%r230,%r235; setp.le.s32 %r1148,%r268,0; @ %r1148 bra $L232; ld.u32 %r370,[%frame+176]; setp.le.s32 %r1149,%r268,16; @ ! %r1149 bra $L385; cvta.const.u64 %r1260,blanks$4153; bra $L233; $L385: cvta.const.u64 %r1260,blanks$4153; $L236: st.u64 [%r237],%r1260; mov.u64 %r1151,16; st.u64 [%r237+8],%r1151; add.u64 %r369,%r369,16; st.u64 [%frame+184],%r369; add.u32 %r370,%r370,1; st.u32 [%frame+176],%r370; setp.gt.s32 %r1152,%r370,7; @ %r1152 bra $L234; add.u64 %r237,%r237,16; bra $L235; $L234: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1157,[%value_in]; } setp.ne.u32 %r1158,%r1157,0; @ %r1158 bra $L10; ld.u64 %r369,[%frame+184]; ld.u32 %r370,[%frame+176]; mov.u64 %r237,%frame; $L235: add.u32 %r268,%r268,-16; setp.gt.s32 %r1159,%r268,16; @ %r1159 bra $L236; $L233: st.u64 [%r237],%r1260; cvt.s64.s32 %r215,%r268; st.u64 [%r237+8],%r215; add.u64 %r369,%r369,%r215; st.u64 [%frame+184],%r369; add.u32 %r216,%r370,1; st.u32 [%frame+176],%r216; setp.le.s32 %r1161,%r216,7; @ %r1161 bra $L232; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1166,[%value_in]; } setp.ne.u32 %r1167,%r1166,0; @ %r1167 bra $L10; ld.u64 %r369,[%frame+184]; $L232: .loc 1 1774 33 max.s32 %r1168,%r230,%r235; .loc 1 1774 7 add.u32 %r401,%r401,%r1168; .loc 1 1776 3 setp.ne.u64 %r1169,%r369,0; @ %r1169 bra $L237; $L238: mov.u32 %r1170,0; st.u32 [%frame+176],%r1170; mov.u64 %r237,%frame; bra $L5; $L237: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1175,[%value_in]; } setp.ne.u32 %r1176,%r1175,0; @ ! %r1176 bra $L238; bra $L10; $L11: .loc 1 1784 2 ld.u64 %r1177,[%frame+184]; setp.eq.u64 %r1178,%r1177,0; @ %r1178 bra $L10; add.u64 %r1182,%frame,168; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1182; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1183,[%value_in]; } $L10: .loc 1 1791 31 ld.u16 %r1185,[%r403+16]; and.b16 %r1184,%r1185,64; setp.eq.u16 %r1186,%r1184,0; selp.u32 %r401,%r401,-1,%r1186; bra $L1; $L189: .loc 1 1719 7 st.u64 [%r237],%r244; st.u64 [%r237+8],%r418; add.u64 %r381,%r418,%r369; st.u64 [%frame+184],%r381; ld.u32 %r1188,[%frame+176]; add.u32 %r382,%r1188,1; st.u32 [%frame+176],%r382; setp.gt.s32 %r1189,%r382,7; @ %r1189 bra $L190; add.u64 %r238,%r237,16; bra $L192; $L58: .loc 1 943 9 mov.u32 %r229,%r228; mov.u32 %r231,0; mov.u32 %r180,%r231; bra $L146; $L67: ld.s8 %r391,[%frame+218]; .loc 1 1565 14 setp.ne.u32 %r1190,%r231,-1; @ %r1190 bra $L239; mov.u32 %r228,%r191; bra $L139; $L273: .loc 1 1882 5 mov.u32 %r38,%r231; $L84: .loc 1 1883 15 cvt.s64.s32 %r1191,%r38; .loc 1 1883 6 add.u64 %r296,%r227,%r1191; bra $L240; $L83: .loc 1 1880 11 mov.u32 %r1194,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r60; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r1194; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r231; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r1311; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r1310; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r1309; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r1202,[%value_in]; } mov.u64 %r227,%r1202; .loc 1 1882 5 setp.ne.u32 %r1268,%r361,71; @ %r1268 bra $L273; mov.u32 %r400,%r231; bra $L241; $L82: .loc 1 1880 11 mov.u32 %r1206,3; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r60; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r1206; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r231; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r1311; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r1310; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r1309; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r1214,[%value_in]; } mov.u64 %r227,%r1214; .loc 1 1883 15 cvt.s64.s32 %r143,%r231; .loc 1 1885 7 ld.s8 %r1217,[%r1214]; cvt.u16.u32 %r1216,%r1217; set.u32.eq.u16 %r1218,%r1216,48; neg.s32 %r1219,%r1218; .loc 1 1885 23 set.u32.neu.f64 %r1221,%r60,0d0000000000000000; neg.s32 %r1222,%r1221; cvt.u16.u32 %r1224,%r1219; cvt.u16.u32 %r1225,%r1222; and.b16 %r1223,%r1224,%r1225; cvt.u32.u16 %r1226,%r1223; cvt.u16.u8 %r1227,%r1226; setp.ne.u16 %r1228,%r1227,0; @ ! %r1228 bra $L386; bra $L242; $L208: .loc 1 1748 6 sub.u32 %r336,%r272,%r180; sub.u32 %r186,%r272,%r179; min.s32 %r276,%r186,%r336; bra $L211; $L239: .loc 1 1566 11 and.b32 %r229,%r191,-129; .loc 1 1574 28 set.u32.ne.u32 %r1230,%r231,0; neg.s32 %r1231,%r1230; .loc 1 1574 15 set.u32.ne.u64 %r1233,%r233,0; neg.s32 %r1234,%r1233; .loc 1 1574 20 cvt.u16.u32 %r1236,%r1231; cvt.u16.u32 %r1237,%r1234; or.b16 %r1235,%r1236,%r1237; .loc 1 1574 7 cvt.u32.u16 %r1238,%r1235; cvt.u16.u8 %r1239,%r1238; setp.ne.u16 %r1240,%r1239,0; @ %r1240 bra $L274; mov.u32 %r231,0; mov.u32 %r236,%r231; .loc 1 1573 7 add.u64 %r227,%frame,168; bra $L143; $L244: .loc 1 1883 15 cvt.s64.s32 %r1241,%r400; .loc 1 1883 6 add.u64 %r296,%r227,%r1241; setp.ne.u32 %r1268,%r361,71; bra $L240; $L241: .loc 1 1882 31 and.b32 %r1242,%r228,1; setp.ne.u32 %r1243,%r1242,0; @ %r1243 bra $L244; bra $L387; $L80: .loc 1 1315 10 or.b32 %r229,%r228,256; .loc 1 1814 6 mov.b64 %r1244,%r253; shr.u64 %r1245,%r1244,32; .loc 1 1814 5 cvt.u32.u64 %r1246,%r1245; setp.lt.s32 %r1247,%r1246,0; @ %r1247 bra $L275; .loc 1 1880 11 mov.u32 %r1251,1; mov.u32 %r1250,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r253; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r1250; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r1251; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r1311; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r1310; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r1309; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r1258,[%value_in]; } mov.u64 %r227,%r1258; mov.f64 %r60,%r253; .loc 1 1312 10 mov.u32 %r231,%r1251; mov.u32 %r400,%r231; .loc 1 1818 9 mov.u32 %r274,0; bra $L241; $L1: .loc 1 1793 1 mov.u32 %value,%r401; st.param.u32 [%value_out],%value; ret; } lib_a-swab.o/ 1591654539 399 399 100644 1650 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r33; .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 35 3 setp.le.s64 %r43,%r42,1; @ %r43 bra $L5; mov.u64 %r33,0; .loc 1 35 12 mov.u64 %r30,1; $L3: .loc 1 37 12 add.u64 %r44,%r40,%r30; .loc 1 38 12 add.u64 %r45,%r40,%r33; ld.s8 %r29,[%r45]; .loc 1 39 17 add.u64 %r46,%r41,%r33; ld.u8 %r47,[%r44]; st.u8 [%r46],%r47; .loc 1 40 17 add.u64 %r48,%r41,%r30; cvt.u32.u32 %r49,%r29; st.u8 [%r48],%r49; .loc 1 35 35 add.u64 %r30,%r30,2; add.u64 %r33,%r33,2; .loc 1 35 3 setp.gt.s64 %r50,%r42,%r30; @ %r50 bra $L3; add.u64 %r51,%r42,-2; and.b64 %r53,%r51,-2; add.u64 %r32,%r53,3; bra $L2; $L5: .loc 1 35 12 mov.u64 %r32,1; $L2: .loc 1 42 6 setp.ne.u64 %r54,%r42,%r32; @ %r54 bra $L1; .loc 1 43 15 add.u64 %r55,%r41,%r42; add.u64 %r56,%r55,-1; mov.u32 %r57,0; st.u8 [%r56],%r57; $L1: .loc 1 44 1 ret; } /866 1591654539 399 399 100644 7289 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __get_current_time_locale .visible .func (.param .u64 %value_out) __get_current_time_locale; .file 1 "../../../../../newlib/libc/locale/timelocal.c" // BEGIN GLOBAL FUNCTION DECL: __time_load_locale .visible .func (.param .u32 %value_out) __time_load_locale (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __part_load_locale .extern .func (.param .u32 %value_out) __part_load_locale (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u32 %in_ar4, .param .u32 %in_ar5, .param .u64 %in_ar6); // BEGIN VAR DEF: _time_locale .global .align 8 .u64 _time_locale[63]; // BEGIN VAR DEF: $LC3 .const .align 1 .u8 $LC3[4] = {77,97,114,0 }; // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[8] = {76,67,95,84,73,77,69,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[4] = {74,97,110,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[4] = {70,101,98,0 }; // BEGIN VAR DEF: $LC4 .const .align 1 .u8 $LC4[4] = {65,112,114,0 }; // BEGIN VAR DEF: $LC5 .const .align 1 .u8 $LC5[4] = {77,97,121,0 }; // BEGIN VAR DEF: $LC6 .const .align 1 .u8 $LC6[4] = {74,117,110,0 }; // BEGIN VAR DEF: $LC7 .const .align 1 .u8 $LC7[4] = {74,117,108,0 }; // BEGIN VAR DEF: $LC8 .const .align 1 .u8 $LC8[4] = {65,117,103,0 }; // BEGIN VAR DEF: $LC9 .const .align 1 .u8 $LC9[4] = {83,101,112,0 }; // BEGIN VAR DEF: $LC10 .const .align 1 .u8 $LC10[4] = {79,99,116,0 }; // BEGIN VAR DEF: $LC11 .const .align 1 .u8 $LC11[4] = {78,111,118,0 }; // BEGIN VAR DEF: $LC12 .const .align 1 .u8 $LC12[4] = {68,101,99,0 }; // BEGIN VAR DEF: $LC13 .const .align 1 .u8 $LC13[8] = {74,97,110,117,97,114,121,0 }; // BEGIN VAR DEF: $LC14 .const .align 1 .u8 $LC14[9] = {70,101,98,114,117,97,114,121,0 }; // BEGIN VAR DEF: $LC15 .const .align 1 .u8 $LC15[6] = {77,97,114,99,104,0 }; // BEGIN VAR DEF: $LC16 .const .align 1 .u8 $LC16[6] = {65,112,114,105,108,0 }; // BEGIN VAR DEF: $LC17 .const .align 1 .u8 $LC17[5] = {74,117,110,101,0 }; // BEGIN VAR DEF: $LC18 .const .align 1 .u8 $LC18[5] = {74,117,108,121,0 }; // BEGIN VAR DEF: $LC19 .const .align 1 .u8 $LC19[7] = {65,117,103,117,115,116,0 }; // BEGIN VAR DEF: $LC20 .const .align 1 .u8 $LC20[10] = {83,101,112,116,101,109,98,101,114,0 }; // BEGIN VAR DEF: $LC21 .const .align 1 .u8 $LC21[8] = {79,99,116,111,98,101,114,0 }; // BEGIN VAR DEF: $LC22 .const .align 1 .u8 $LC22[9] = {78,111,118,101,109,98,101,114,0 }; // BEGIN VAR DEF: $LC23 .const .align 1 .u8 $LC23[9] = {68,101,99,101,109,98,101,114,0 }; // BEGIN VAR DEF: $LC24 .const .align 1 .u8 $LC24[4] = {83,117,110,0 }; // BEGIN VAR DEF: $LC25 .const .align 1 .u8 $LC25[4] = {77,111,110,0 }; // BEGIN VAR DEF: $LC26 .const .align 1 .u8 $LC26[4] = {84,117,101,0 }; // BEGIN VAR DEF: $LC27 .const .align 1 .u8 $LC27[4] = {87,101,100,0 }; // BEGIN VAR DEF: $LC28 .const .align 1 .u8 $LC28[4] = {84,104,117,0 }; // BEGIN VAR DEF: $LC29 .const .align 1 .u8 $LC29[4] = {70,114,105,0 }; // BEGIN VAR DEF: $LC30 .const .align 1 .u8 $LC30[4] = {83,97,116,0 }; // BEGIN VAR DEF: $LC31 .const .align 1 .u8 $LC31[7] = {83,117,110,100,97,121,0 }; // BEGIN VAR DEF: $LC32 .const .align 1 .u8 $LC32[7] = {77,111,110,100,97,121,0 }; // BEGIN VAR DEF: $LC33 .const .align 1 .u8 $LC33[8] = {84,117,101,115,100,97,121,0 }; // BEGIN VAR DEF: $LC34 .const .align 1 .u8 $LC34[10] = {87,101,100,110,101,115,100,97,121,0 }; // BEGIN VAR DEF: $LC35 .const .align 1 .u8 $LC35[9] = {84,104,117,114,115,100,97,121,0 }; // BEGIN VAR DEF: $LC36 .const .align 1 .u8 $LC36[7] = {70,114,105,100,97,121,0 }; // BEGIN VAR DEF: $LC37 .const .align 1 .u8 $LC37[9] = {83,97,116,117,114,100,97,121,0 }; // BEGIN VAR DEF: $LC38 .const .align 1 .u8 $LC38[9] = {37,72,58,37,77,58,37,83,0 }; // BEGIN VAR DEF: $LC39 .const .align 1 .u8 $LC39[9] = {37,109,47,37,100,47,37,121,0 }; // BEGIN VAR DEF: $LC40 .const .align 1 .u8 $LC40[21] = {37,97,32,37,98,32,37,101,32,37,72,58,37,77,58,37,83,32,37,89,0 }; // BEGIN VAR DEF: $LC41 .const .align 1 .u8 $LC41[3] = {65,77,0 }; // BEGIN VAR DEF: $LC42 .const .align 1 .u8 $LC42[3] = {80,77,0 }; // BEGIN VAR DEF: $LC43 .const .align 1 .u8 $LC43[24] = {37,97,32,37,98,32,37,101,32,37,72,58,37,77,58,37,83,32,37,90,32,37,89,0 }; // BEGIN VAR DEF: $LC44 .const .align 1 .u8 $LC44[3] = {109,100,0 }; // BEGIN VAR DEF: $LC45 .const .align 1 .u8 $LC45[12] = {37,73,58,37,77,58,37,83,32,37,112,0 }; // BEGIN VAR DEF: $LC46 .const .align 1 .u8 $LC46[1] = {0 }; // BEGIN VAR DEF: _C_time_locale .const .align 8 .u64 _C_time_locale[63] = {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($LC5),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($LC13),generic($LC14),generic($LC15),generic($LC16),generic($LC5),generic($LC17),generic($LC18),generic($LC19),generic($LC20),generic($LC21),generic($LC22),generic($LC23),generic($LC44),generic($LC45),generic($LC46),generic($LC46),generic($LC46),generic($LC46),generic($LC46) }; // BEGIN VAR DEF: _time_using_locale .global .align 4 .u32 _time_using_locale[1]; // BEGIN GLOBAL FUNCTION DEF: __get_current_time_locale .visible .func (.param .u64 %value_out) __get_current_time_locale { .reg .u64 %value; .reg .u64 %r23; .reg .u32 %r24; .reg .pred %r25; .loc 1 156 3 ld.global.u32 %r24,[_time_using_locale]; setp.ne.u32 %r25,%r24,0; @ %r25 bra $L3; cvta.const.u64 %r23,_C_time_locale; bra $L1; $L3: cvta.global.u64 %r23,_time_locale; $L1: .loc 1 157 1 mov.u64 %value,%r23; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __time_load_locale .visible .func (.param .u32 %value_out) __time_load_locale (.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 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .u32 %r31; .reg .u64 %r32; .reg .u32 %r33; mov.u64 %r23,%ar0; .loc 1 182 8 cvta.global.u64 %r32,_time_locale; mov.u32 %r31,63; cvta.const.u64 %r29,$LC0; mov.u64 %r28,0; cvta.global.u64 %r27,_time_using_locale; { .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 .u64 %out_arg3; st.param.u64 [%out_arg3],%r28; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r29; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r31; .param .u32 %out_arg6; st.param.u32 [%out_arg6],%r31; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r32; call (%value_in),__part_load_locale,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u32 %r33,[%value_in]; } .loc 1 188 1 mov.u32 %value,%r33; st.param.u32 [%value_out],%value; ret; } lib_a-tolower.o/1591654539 399 399 100644 1078 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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_ptr__ .extern .global .align 8 .u64 __ctype_ptr__[1]; // 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 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u16 %r35; .reg .u16 %r36; .reg .u16 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .pred %r40; .reg .u16 %r42; mov.u32 %r29,%ar0; .loc 1 74 10 cvt.s64.s32 %r30,%r29; ld.global.u64 %r31,[__ctype_ptr__]; add.u64 %r32,%r31,%r30; .loc 1 74 39 ld.u8 %r42,[%r32+1]; mov.u16 %r36,%r42; and.b16 %r35,%r36,3; cvt.u32.u16 %r39,%r35; cvt.s32.s8 %r38,%r39; cvt.u16.u32 %r37,%r38; setp.ne.u16 %r40,%r37,1; @ %r40 bra $L2; add.u32 %r29,%r29,32; $L2: .loc 1 76 1 mov.u32 %value,%r29; st.param.u32 [%value_out],%value; ret; } lib_a-toupper.o/1591654539 399 399 100644 1079 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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_ptr__ .extern .global .align 8 .u64 __ctype_ptr__[1]; // 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 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u16 %r35; .reg .u16 %r36; .reg .u16 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .pred %r40; .reg .u16 %r42; mov.u32 %r29,%ar0; .loc 1 73 10 cvt.s64.s32 %r30,%r29; ld.global.u64 %r31,[__ctype_ptr__]; add.u64 %r32,%r31,%r30; .loc 1 73 38 ld.u8 %r42,[%r32+1]; mov.u16 %r36,%r42; and.b16 %r35,%r36,3; cvt.u32.u16 %r39,%r35; cvt.s32.s8 %r38,%r39; cvt.u16.u32 %r37,%r38; setp.ne.u16 %r40,%r37,2; @ %r40 bra $L2; add.u32 %r29,%r29,-32; $L2: .loc 1 75 1 mov.u32 %value,%r29; st.param.u32 [%value_out],%value; ret; } /885 1591654539 399 399 100644 701 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 9 10 mov.u64 %value,0; .loc 1 10 1 st.param.u64 [%value_out],%value; ret; } /903 1591654539 399 399 100644 83729 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0); // 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$4169 .const .align 1 .u8 zeroes$4169[16] = {48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48 }; // BEGIN VAR DEF: blanks$4168 .const .align 1 .u8 blanks$4168[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 .u64 %r25; .reg .u64 %r36; .reg .u32 %r40; .reg .u32 %r42; .reg .u64 %r56; .reg .f64 %r65; .reg .u32 %r66; .reg .u64 %r68; .reg .u32 %r101; .reg .u32 %r114; .reg .u32 %r115; .reg .u64 %r117; .reg .u32 %r118; .reg .u32 %r122; .reg .u32 %r125; .reg .u64 %r128; .reg .u32 %r129; .reg .u64 %r133; .reg .u32 %r134; .reg .u64 %r137; .reg .u32 %r139; .reg .u32 %r143; .reg .u32 %r149; .reg .u64 %r152; .reg .u32 %r153; .reg .u32 %r155; .reg .u32 %r157; .reg .u64 %r159; .reg .u64 %r164; .reg .u64 %r166; .reg .u64 %r167; .reg .u32 %r168; .reg .u64 %r170; .reg .u32 %r172; .reg .u32 %r174; .reg .u64 %r177; .reg .u32 %r179; .reg .u32 %r182; .reg .u32 %r185; .reg .u32 %r187; .reg .u32 %r189; .reg .u64 %r190; .reg .u32 %r192; .reg .u32 %r194; .reg .u64 %r196; .reg .u32 %r197; .reg .u64 %r202; .reg .u64 %r204; .reg .u64 %r205; .reg .u64 %r209; .reg .u64 %r212; .reg .u64 %r217; .reg .u32 %r218; .reg .u32 %r224; .reg .u64 %r225; .reg .u32 %r226; .reg .u32 %r227; .reg .u64 %r228; .reg .u64 %r229; .reg .u32 %r230; .reg .u32 %r231; .reg .u32 %r232; .reg .u32 %r233; .reg .u32 %r234; .reg .u32 %r235; .reg .u64 %r237; .reg .u32 %r238; .reg .u32 %r239; .reg .u32 %r240; .reg .u64 %r241; .reg .u64 %r242; .reg .u64 %r243; .reg .u32 %r245; .reg .u32 %r246; .reg .u64 %r248; .reg .u32 %r252; .reg .u64 %r253; .reg .u32 %r254; .reg .f64 %r256; .reg .u64 %r258; .reg .u64 %r260; .reg .u32 %r261; .reg .u32 %r263; .reg .u32 %r264; .reg .u64 %r267; .reg .u32 %r269; .reg .u32 %r272; .reg .u32 %r273; .reg .u32 %r274; .reg .u32 %r275; .reg .u32 %r276; .reg .u64 %r277; .reg .u64 %r278; .reg .u32 %r279; .reg .u32 %r280; .reg .u32 %r284; .reg .u64 %r288; .reg .u32 %r289; .reg .u32 %r296; .reg .u64 %r299; .reg .u64 %r306; .reg .u32 %r308; .reg .u32 %r315; .reg .u32 %r316; .reg .u64 %r317; .reg .u64 %r318; .reg .u64 %r319; .reg .u64 %r320; .reg .u64 %r321; .reg .u64 %r322; .reg .u64 %r324; .reg .u64 %r325; .reg .u64 %r326; .reg .u64 %r327; .reg .u64 %r328; .reg .u64 %r329; .reg .u64 %r330; .reg .u64 %r331; .reg .u64 %r333; .reg .u64 %r334; .reg .u64 %r336; .reg .u64 %r338; .reg .u32 %r339; .reg .u64 %r345; .reg .u64 %r348; .reg .u64 %r350; .reg .u32 %r355; .reg .u32 %r356; .reg .u64 %r358; .reg .u64 %r359; .reg .u64 %r361; .reg .u64 %r363; .reg .u32 %r364; .reg .u32 %r367; .reg .u32 %r370; .reg .u32 %r371; .reg .u64 %r372; .reg .u32 %r373; .reg .u32 %r377; .reg .u32 %r378; .reg .u32 %r379; .reg .u64 %r380; .reg .u32 %r382; .reg .u32 %r383; .reg .u64 %r384; .reg .u32 %r385; .reg .u32 %r386; .reg .u32 %r387; .reg .u32 %r388; .reg .u32 %r389; .reg .u32 %r395; .reg .u32 %r396; .reg .u32 %r399; .reg .u32 %r401; .reg .u64 %r402; .reg .u32 %r406; .reg .u32 %r407; .reg .u64 %r408; .reg .u64 %r409; .reg .u64 %r410; .reg .u64 %r411; .reg .u64 %r422; .reg .u64 %r424; .reg .pred %r425; .reg .u32 %r426; .reg .pred %r427; .reg .u16 %r429; .reg .u16 %r430; .reg .pred %r431; .reg .u16 %r432; .reg .u32 %r435; .reg .u32 %r436; .reg .u16 %r437; .reg .u16 %r438; .reg .pred %r439; .reg .u64 %r440; .reg .pred %r441; .reg .u32 %r444; .reg .pred %r445; .reg .u16 %r446; .reg .u16 %r447; .reg .pred %r448; .reg .u16 %r449; .reg .pred %r450; .reg .u32 %r455; .reg .u64 %r456; .reg .u32 %r457; .reg .u16 %r459; .reg .u32 %r460; .reg .u32 %r461; .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 .u16 %r473; .reg .u32 %r474; .reg .u32 %r475; .reg .u32 %r478; .reg .u32 %r479; .reg .u16 %r480; .reg .u16 %r481; .reg .u16 %r482; .reg .u32 %r483; .reg .u16 %r484; .reg .pred %r485; .reg .u64 %r486; .reg .pred %r487; .reg .u64 %r488; .reg .u64 %r489; .reg .u32 %r490; .reg .pred %r491; .reg .u32 %r496; .reg .pred %r497; .reg .pred %r498; .reg .u32 %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 .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 .pred %r530; .reg .pred %r531; .reg .pred %r532; .reg .pred %r533; .reg .pred %r534; .reg .pred %r535; .reg .u32 %r536; .reg .pred %r537; .reg .pred %r538; .reg .pred %r539; .reg .pred %r540; .reg .u32 %r541; .reg .u32 %r543; .reg .u32 %r544; .reg .u32 %r545; .reg .pred %r546; .reg .u32 %r548; .reg .u32 %r549; .reg .u32 %r550; .reg .pred %r553; .reg .u16 %r554; .reg .pred %r555; .reg .u32 %r556; .reg .u32 %r557; .reg .pred %r558; .reg .u32 %r559; .reg .u32 %r560; .reg .pred %r561; .reg .pred %r562; .reg .u32 %r563; .reg .u32 %r564; .reg .pred %r565; .reg .u32 %r566; .reg .pred %r567; .reg .u32 %r568; .reg .pred %r569; .reg .pred %r574; .reg .u32 %r575; .reg .pred %r576; .reg .u32 %r577; .reg .u64 %r578; .reg .u32 %r582; .reg .pred %r583; .reg .pred %r584; .reg .u32 %r585; .reg .pred %r586; .reg .u32 %r588; .reg .pred %r589; .reg .pred %r590; .reg .pred %r591; .reg .u32 %r593; .reg .u32 %r594; .reg .u32 %r596; .reg .u32 %r597; .reg .u16 %r598; .reg .u16 %r599; .reg .u16 %r600; .reg .u32 %r601; .reg .u16 %r602; .reg .pred %r603; .reg .u64 %r604; .reg .u64 %r605; .reg .u32 %r606; .reg .pred %r607; .reg .pred %r608; .reg .pred %r609; .reg .u32 %r612; .reg .u64 %r620; .reg .u64 %r621; .reg .u64 %r622; .reg .u32 %r623; .reg .u64 %r624; .reg .u64 %r625; .reg .pred %r626; .reg .u64 %r627; .reg .u32 %r628; .reg .pred %r629; .reg .pred %r630; .reg .u64 %r631; .reg .u32 %r634; .reg .u32 %r635; .reg .u32 %r637; .reg .u32 %r638; .reg .u16 %r639; .reg .u16 %r640; .reg .u16 %r641; .reg .u32 %r642; .reg .u16 %r643; .reg .pred %r644; .reg .pred %r645; .reg .pred %r646; .reg .u32 %r647; .reg .u32 %r648; .reg .pred %r649; .reg .u32 %r651; .reg .u16 %r653; .reg .u16 %r654; .reg .u32 %r655; .reg .pred %r656; .reg .u16 %r658; .reg .u16 %r659; .reg .u32 %r660; .reg .pred %r664; .reg .u32 %r666; .reg .pred %r669; .reg .u64 %r675; .reg .u64 %r676; .reg .u64 %r678; .reg .u32 %r679; .reg .u16 %r681; .reg .u16 %r682; .reg .u32 %r683; .reg .pred %r684; .reg .pred %r685; .reg .u32 %r686; .reg .pred %r687; .reg .pred %r688; .reg .u32 %r689; .reg .pred %r690; .reg .pred %r691; .reg .u32 %r692; .reg .pred %r693; .reg .pred %r694; .reg .u32 %r695; .reg .pred %r696; .reg .u32 %r697; .reg .pred %r698; .reg .u32 %r699; .reg .u64 %r700; .reg .u32 %r701; .reg .pred %r702; .reg .u64 %r703; .reg .u32 %r704; .reg .pred %r705; .reg .u64 %r706; .reg .u32 %r707; .reg .pred %r708; .reg .pred %r709; .reg .u32 %r710; .reg .u32 %r711; .reg .pred %r712; .reg .pred %r713; .reg .u32 %r714; .reg .u32 %r715; .reg .pred %r716; .reg .u32 %r717; .reg .pred %r718; .reg .u32 %r719; .reg .pred %r720; .reg .u16 %r721; .reg .u32 %r722; .reg .u32 %r723; .reg .u32 %r724; .reg .pred %r725; .reg .pred %r726; .reg .u32 %r728; .reg .u64 %r730; .reg .u64 %r731; .reg .pred %r732; .reg .u64 %r733; .reg .u32 %r734; .reg .u64 %r736; .reg .pred %r737; .reg .u32 %r738; .reg .u32 %r739; .reg .pred %r740; .reg .pred %r741; .reg .u32 %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 %r766; .reg .u32 %r767; .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 .u16 %r777; .reg .pred %r778; .reg .pred %r780; .reg .u16 %r782; .reg .u16 %r783; .reg .u16 %r785; .reg .u32 %r787; .reg .pred %r789; .reg .u16 %r791; .reg .u32 %r792; .reg .u32 %r793; .reg .u16 %r795; .reg .u16 %r796; .reg .u16 %r798; .reg .u16 %r799; .reg .u32 %r801; .reg .u16 %r802; .reg .pred %r803; .reg .u64 %r806; .reg .u32 %r807; .reg .u64 %r810; .reg .u16 %r813; .reg .u16 %r814; .reg .u32 %r815; .reg .u64 %r817; .reg .u16 %r819; .reg .u16 %r820; .reg .u32 %r821; .reg .u64 %r825; .reg .u64 %r826; .reg .u64 %r827; .reg .u32 %r828; .reg .pred %r829; .reg .u64 %r832; .reg .pred %r833; .reg .pred %r834; .reg .u32 %r835; .reg .pred %r836; .reg .u32 %r837; .reg .pred %r838; .reg .u32 %r839; .reg .pred %r840; .reg .pred %r842; .reg .pred %r843; .reg .pred %r844; .reg .u64 %r846; .reg .pred %r847; .reg .u32 %r852; .reg .pred %r853; .reg .pred %r854; .reg .pred %r856; .reg .u32 %r861; .reg .pred %r862; .reg .u16 %r863; .reg .u32 %r864; .reg .pred %r865; .reg .u64 %r867; .reg .u32 %r868; .reg .pred %r869; .reg .u32 %r874; .reg .pred %r875; .reg .u64 %r878; .reg .u32 %r879; .reg .pred %r880; .reg .u32 %r885; .reg .pred %r886; .reg .pred %r887; .reg .pred %r888; .reg .pred %r889; .reg .u64 %r891; .reg .pred %r892; .reg .u32 %r897; .reg .pred %r898; .reg .pred %r899; .reg .pred %r901; .reg .u32 %r906; .reg .pred %r907; .reg .pred %r908; .reg .pred %r909; .reg .u64 %r911; .reg .pred %r912; .reg .u32 %r917; .reg .pred %r918; .reg .pred %r919; .reg .pred %r921; .reg .u32 %r926; .reg .pred %r927; .reg .u32 %r928; .reg .pred %r929; .reg .u32 %r930; .reg .pred %r931; .reg .u32 %r936; .reg .pred %r937; .reg .pred %r938; .reg .pred %r939; .reg .u64 %r940; .reg .u64 %r941; .reg .u64 %r942; .reg .u32 %r943; .reg .pred %r944; .reg .u32 %r949; .reg .pred %r950; .reg .u32 %r951; .reg .pred %r952; .reg .u32 %r953; .reg .pred %r954; .reg .u64 %r955; .reg .u32 %r956; .reg .pred %r957; .reg .u32 %r962; .reg .pred %r963; .reg .pred %r964; .reg .pred %r965; .reg .u64 %r967; .reg .pred %r968; .reg .u32 %r973; .reg .pred %r974; .reg .pred %r975; .reg .pred %r977; .reg .u32 %r982; .reg .pred %r983; .reg .pred %r984; .reg .u64 %r985; .reg .u64 %r986; .reg .u32 %r987; .reg .pred %r988; .reg .u32 %r993; .reg .pred %r994; .reg .u32 %r995; .reg .pred %r996; .reg .u32 %r997; .reg .pred %r998; .reg .u32 %r999; .reg .pred %r1000; .reg .u32 %r1005; .reg .pred %r1006; .reg .pred %r1007; .reg .pred %r1008; .reg .u64 %r1010; .reg .pred %r1011; .reg .u32 %r1016; .reg .pred %r1017; .reg .pred %r1018; .reg .pred %r1020; .reg .u32 %r1025; .reg .pred %r1026; .reg .pred %r1027; .reg .u32 %r1032; .reg .pred %r1033; .reg .pred %r1034; .reg .u32 %r1035; .reg .pred %r1036; .reg .u32 %r1041; .reg .pred %r1042; .reg .pred %r1043; .reg .pred %r1044; .reg .u64 %r1046; .reg .pred %r1047; .reg .u32 %r1052; .reg .pred %r1053; .reg .pred %r1054; .reg .pred %r1056; .reg .u32 %r1061; .reg .pred %r1062; .reg .pred %r1063; .reg .u32 %r1064; .reg .pred %r1065; .reg .u32 %r1066; .reg .pred %r1067; .reg .u32 %r1072; .reg .pred %r1073; .reg .pred %r1074; .reg .u64 %r1075; .reg .u64 %r1076; .reg .u32 %r1077; .reg .pred %r1078; .reg .u32 %r1083; .reg .pred %r1084; .reg .u32 %r1085; .reg .pred %r1086; .reg .pred %r1087; .reg .u64 %r1089; .reg .pred %r1090; .reg .u32 %r1095; .reg .pred %r1096; .reg .pred %r1097; .reg .pred %r1099; .reg .u32 %r1104; .reg .pred %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 .u32 %r1133; .reg .pred %r1134; .reg .pred %r1135; .reg .u64 %r1137; .reg .pred %r1138; .reg .u32 %r1143; .reg .pred %r1144; .reg .pred %r1145; .reg .pred %r1147; .reg .u32 %r1152; .reg .pred %r1153; .reg .u32 %r1154; .reg .u64 %r1155; .reg .pred %r1156; .reg .u32 %r1161; .reg .pred %r1162; .reg .u32 %r1163; .reg .pred %r1165; .reg .u32 %r1170; .reg .pred %r1171; .reg .u32 %r1172; .reg .pred %r1173; .reg .pred %r1174; .reg .pred %r1175; .reg .u64 %r1177; .reg .pred %r1178; .reg .u32 %r1183; .reg .pred %r1184; .reg .pred %r1185; .reg .pred %r1187; .reg .u32 %r1192; .reg .pred %r1193; .reg .u32 %r1194; .reg .pred %r1195; .reg .u32 %r1196; .reg .u32 %r1201; .reg .pred %r1202; .reg .u64 %r1203; .reg .pred %r1204; .reg .u64 %r1208; .reg .u32 %r1209; .reg .u16 %r1210; .reg .u16 %r1211; .reg .pred %r1212; .reg .u32 %r1214; .reg .pred %r1215; .reg .pred %r1216; .reg .u64 %r1217; .reg .u32 %r1220; .reg .u64 %r1228; .reg .u32 %r1232; .reg .u64 %r1240; .reg .u16 %r1242; .reg .u32 %r1243; .reg .u32 %r1244; .reg .u32 %r1245; .reg .u32 %r1247; .reg .u32 %r1248; .reg .u16 %r1249; .reg .u16 %r1250; .reg .u16 %r1251; .reg .u32 %r1252; .reg .u16 %r1253; .reg .pred %r1254; .reg .u32 %r1256; .reg .u32 %r1257; .reg .u32 %r1259; .reg .u32 %r1260; .reg .u16 %r1261; .reg .u16 %r1262; .reg .u16 %r1263; .reg .u32 %r1264; .reg .u16 %r1265; .reg .pred %r1266; .reg .u64 %r1267; .reg .u32 %r1268; .reg .pred %r1269; .reg .u64 %r1270; .reg .u64 %r1271; .reg .u32 %r1272; .reg .pred %r1273; .reg .u32 %r1276; .reg .u32 %r1277; .reg .u64 %r1284; .reg .pred %r1285; .reg .u32 %r1287; .reg .u64 %r1290; .reg .pred %r1291; .reg .u32 %r1292; .reg .pred %r1293; .reg .u64 %r1294; .reg .u32 %r1327; .reg .u64 %r1328; .reg .u64 %r1329; .reg .u64 %r1330; .reg .u64 %r1331; .reg .u64 %r1332; .reg .u64 %r1333; .reg .u64 %r1334; .reg .u64 %r1335; .reg .u64 %r1336; .reg .u64 %r1337; mov.u64 %r408,%ar0; mov.u64 %r409,%ar1; mov.u64 %r410,%ar2; mov.u64 %r411,%ar3; .loc 1 696 24 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; call (%value_in),_localeconv_r,(%out_arg1); ld.param.u64 %r422,[%value_in]; } .loc 1 696 8 ld.u64 %r248,[%r422]; .loc 1 697 20 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r248; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r424,[%value_in]; } .loc 1 859 2 setp.eq.u64 %r425,%r408,0; @ %r425 bra $L2; ld.u32 %r426,[%r408+80]; setp.ne.u32 %r427,%r426,0; @ %r427 bra $L2; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; call __sinit,(%out_arg1); } $L2: .loc 1 862 2 ld.s16 %r24,[%r409+16]; cvt.u16.u32 %r430,%r24; and.b16 %r429,%r430,8192; setp.ne.u16 %r431,%r429,0; @ %r431 bra $L3; or.b16 %r432,%r430,8192; cvt.s32.s16 %r24,%r432; st.u16 [%r409+16],%r432; ld.u32 %r436,[%r409+172]; and.b32 %r435,%r436,-8193; st.u32 [%r409+172],%r435; $L3: .loc 1 865 5 cvt.u16.u32 %r438,%r24; and.b16 %r437,%r438,8; setp.eq.u16 %r439,%r437,0; @ %r439 bra $L4; .loc 1 865 6 ld.u64 %r440,[%r409+24]; setp.ne.u64 %r441,%r440,0; @ %r441 bra $L5; $L4: { .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),__swsetup_r,(%out_arg1,%out_arg2); ld.param.u32 %r444,[%value_in]; } setp.eq.u32 %r445,%r444,0; @ %r445 bra $L6; $L243: .loc 1 867 10 mov.u32 %r407,-1; bra $L1; $L6: ld.s16 %r24,[%r409+16]; $L5: .loc 1 872 5 cvt.u16.u32 %r447,%r24; and.b16 %r446,%r447,26; setp.ne.u16 %r448,%r446,10; @ %r448 bra $L8; .loc 1 872 60 ld.u16 %r449,[%r409+18]; setp.lt.s16 %r450,%r449,0; @ %r450 bra $L8; .loc 1 875 11 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r410; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r411; call (%value_in),__sbprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r455,[%value_in]; } mov.u32 %r407,%r455; bra $L1; $L8: .loc 1 894 14 st.u64 [%frame+168],%frame; .loc 1 895 16 mov.u64 %r456,0; st.u64 [%frame+184],%r456; .loc 1 896 17 cvt.u32.u64 %r457,%r456; st.u32 [%frame+176],%r457; .loc 1 707 6 cvt.u32.u64 %r272,%r456; .loc 1 699 42 mov.f64 %r256,0d0000000000000000; .loc 1 894 21 mov.u64 %r241,%frame; .loc 1 718 8 mov.u64 %r25,%r456; .loc 1 702 6 cvt.u32.u64 %r234,%r25; .loc 1 898 6 cvt.u32.u64 %r407,%r25; .loc 1 929 4 add.u64 %r1328,%frame,168; .loc 1 1763 5 add.u64 %r1329,%frame,200; .loc 1 1694 4 add.u64 %r1330,%frame,216; .loc 1 1692 4 add.u64 %r1331,%frame,218; .loc 1 1917 4 add.u64 %r1332,%frame,199; add.u64 %r1333,%frame,202; add.u64 %r1334,%frame,201; .loc 1 1880 11 add.u64 %r1335,%frame,192; add.u64 %r1336,%frame,208; add.u64 %r1337,%frame,212; $L9: .loc 1 925 24 ld.s8 %r252,[%r410]; .loc 1 925 37 cvt.u16.u32 %r459,%r252; set.u32.ne.u16 %r460,%r459,0; neg.s32 %r461,%r460; set.u32.ne.u16 %r464,%r459,37; neg.s32 %r465,%r464; cvt.u16.u32 %r467,%r461; cvt.u16.u32 %r468,%r465; and.b16 %r466,%r467,%r468; .loc 1 925 23 cvt.u32.u16 %r469,%r466; cvt.u16.u8 %r470,%r469; setp.eq.u16 %r471,%r470,0; @ %r471 bra $L252; mov.u64 %r225,%r410; bra $L11; $L253: mov.u64 %r225,%r253; $L11: .loc 1 926 25 add.u64 %r253,%r225,1; .loc 1 925 24 ld.s8 %r252,[%r253]; .loc 1 925 37 cvt.u16.u32 %r473,%r252; set.u32.ne.u16 %r474,%r473,0; neg.s32 %r475,%r474; set.u32.ne.u16 %r478,%r473,37; neg.s32 %r479,%r478; cvt.u16.u32 %r481,%r475; cvt.u16.u32 %r482,%r479; and.b16 %r480,%r481,%r482; .loc 1 925 23 cvt.u32.u16 %r483,%r480; cvt.u16.u8 %r484,%r483; setp.ne.u16 %r485,%r484,0; @ %r485 bra $L253; .loc 1 928 16 sub.u64 %r486,%r253,%r410; .loc 1 928 10 cvt.u32.u64 %r254,%r486; .loc 1 928 6 setp.eq.u32 %r487,%r254,0; @ %r487 bra $L10; .loc 1 929 4 st.u64 [%r241],%r410; cvt.s64.s32 %r36,%r254; st.u64 [%r241+8],%r36; ld.u64 %r489,[%frame+184]; add.u64 %r488,%r489,%r36; st.u64 [%frame+184],%r488; ld.u32 %r490,[%frame+176]; add.u32 %r40,%r490,1; st.u32 [%frame+176],%r40; setp.gt.s32 %r491,%r40,7; @ %r491 bra $L12; add.u64 %r241,%r241,16; bra $L13; $L12: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r496,[%value_in]; } setp.ne.u32 %r497,%r496,0; @ %r497 bra $L14; mov.u64 %r241,%frame; $L13: .loc 1 930 8 add.u32 %r407,%r407,%r254; ld.s8 %r252,[%r225+1]; bra $L10; $L252: .loc 1 925 23 mov.u64 %r253,%r410; $L10: .loc 1 936 20 setp.eq.u32 %r498,%r252,0; @ %r498 bra $L15; .loc 1 940 6 add.u64 %r410,%r253,1; .loc 1 946 8 mov.u32 %r499,0; st.u8 [%frame+218],%r499; ld.s8 %r399,[%r253+1]; mov.u32 %r227,0; mov.u32 %r315,%r227; .loc 1 945 8 mov.u32 %r233,-1; .loc 1 944 9 mov.u32 %r232,%r227; .loc 1 942 9 mov.u32 %r230,%r227; .loc 1 1071 6 mov.u32 %r1327,%r227; bra $L16; $L255: .loc 1 1018 10 mov.u64 %r411,%r338; $L16: .loc 1 958 18 add.u64 %r410,%r410,1; .loc 1 958 12 mov.u32 %r226,%r399; $L17: setp.eq.u32 %r500,%r226,85; @ %r500 bra $L18; setp.gt.s32 %r501,%r226,85; @ %r501 bra $L19; setp.eq.u32 %r502,%r226,48; @ %r502 bra $L20; setp.gt.s32 %r503,%r226,48; @ %r503 bra $L21; setp.eq.u32 %r504,%r226,42; @ %r504 bra $L22; setp.gt.s32 %r505,%r226,42; @ %r505 bra $L23; setp.eq.u32 %r506,%r226,32; @ %r506 bra $L24; setp.eq.u32 %r507,%r226,35; @ %r507 bra $L25; bra $L26; $L23: setp.eq.u32 %r508,%r226,45; @ %r508 bra $L27; setp.eq.u32 %r509,%r226,46; @ %r509 bra $L28; setp.eq.u32 %r510,%r226,43; @ ! %r510 bra $L26; bra $L29; $L21: setp.eq.u32 %r511,%r226,69; @ %r511 bra $L30; setp.gt.s32 %r512,%r226,69; @ %r512 bra $L31; setp.le.s32 %r513,%r226,57; @ %r513 bra $L32; setp.eq.u32 %r514,%r226,68; @ %r514 bra $L33; bra $L26; $L31: setp.eq.u32 %r515,%r226,76; @ %r515 bra $L34; setp.eq.u32 %r516,%r226,79; @ %r516 bra $L35; setp.eq.u32 %r517,%r226,71; @ ! %r517 bra $L26; bra $L30; $L19: setp.eq.u32 %r518,%r226,108; @ %r518 bra $L36; setp.gt.s32 %r519,%r226,108; @ %r519 bra $L37; setp.gt.s32 %r520,%r226,103; @ %r520 bra $L38; setp.ge.s32 %r521,%r226,101; @ %r521 bra $L30; setp.eq.u32 %r522,%r226,99; @ %r522 bra $L39; setp.gt.s32 %r523,%r226,99; @ %r523 bra $L40; setp.eq.u32 %r524,%r226,88; @ %r524 bra $L41; bra $L26; $L38: setp.eq.u32 %r525,%r226,104; @ %r525 bra $L42; setp.eq.u32 %r526,%r226,105; @ %r526 bra $L40; bra $L26; $L37: setp.eq.u32 %r527,%r226,113; @ %r527 bra $L43; setp.gt.s32 %r528,%r226,113; @ %r528 bra $L44; setp.eq.u32 %r529,%r226,111; @ %r529 bra $L45; setp.gt.s32 %r530,%r226,111; @ %r530 bra $L46; setp.eq.u32 %r531,%r226,110; @ %r531 bra $L47; bra $L26; $L44: setp.eq.u32 %r532,%r226,117; @ %r532 bra $L48; setp.eq.u32 %r533,%r226,120; @ %r533 bra $L49; setp.eq.u32 %r534,%r226,115; @ ! %r534 bra $L26; bra $L50; $L27: ld.s8 %r399,[%r410]; bra $L51; $L49: setp.eq.u32 %r535,%r227,0; @ %r535 bra $L52; cvt.u32.u32 %r536,%r315; st.u8 [%frame+218],%r536; $L52: .loc 1 1545 10 cvta.const.u64 %r25,$LC5; bra $L53; $L24: ld.s8 %r399,[%r410]; .loc 1 975 7 setp.eq.u32 %r537,%r315,0; selp.u32 %r227,1,%r227,%r537; selp.u32 %r315,32,%r315,%r537; bra $L16; $L25: .loc 1 979 10 or.b32 %r230,%r230,1; ld.s8 %r399,[%r410]; .loc 1 980 4 bra $L16; $L22: .loc 1 1018 10 add.u64 %r338,%r411,4; ld.u32 %r232,[%r411]; ld.s8 %r399,[%r410]; .loc 1 1022 7 setp.ge.s32 %r538,%r232,0; @ %r538 bra $L255; .loc 1 1024 10 neg.s32 %r232,%r232; .loc 1 1018 10 mov.u64 %r411,%r338; $L51: .loc 1 1027 10 or.b32 %r230,%r230,4; .loc 1 1028 4 bra $L16; $L29: ld.s8 %r399,[%r410]; .loc 1 1031 4 mov.u32 %r227,1; .loc 1 1030 9 mov.u32 %r315,%r226; .loc 1 1031 4 bra $L16; $L28: .loc 1 1033 18 add.u64 %r258,%r410,1; .loc 1 1033 12 ld.s8 %r226,[%r410]; .loc 1 1033 7 setp.eq.u32 %r539,%r226,42; @ %r539 bra $L56; .loc 1 1072 11 add.u32 %r1287,%r226,-48; .loc 1 1072 10 setp.le.u32 %r540,%r1287,9; @ %r540 bra $L57; .loc 1 1033 18 mov.u64 %r410,%r258; .loc 1 1071 6 mov.u32 %r233,%r1327; bra $L17; $L56: ld.u32 %r541,[%r411]; max.s32 %r233,%r541,-1; ld.s8 %r399,[%r410+1]; .loc 1 1063 10 add.u64 %r411,%r411,4; .loc 1 1033 18 mov.u64 %r410,%r258; bra $L16; $L57: mov.u64 %r348,%r258; .loc 1 1071 6 mov.u32 %r233,%r1327; $L59: .loc 1 1073 12 shl.b32 %r543,%r233,2; add.u32 %r544,%r543,%r233; add.u32 %r545,%r544,%r544; .loc 1 1073 7 add.u32 %r233,%r545,%r1287; add.u64 %r410,%r348,1; .loc 1 1074 8 ld.s8 %r226,[%r348]; .loc 1 1072 11 add.u32 %r1287,%r226,-48; mov.u64 %r348,%r410; .loc 1 1072 10 setp.le.u32 %r546,%r1287,9; @ %r546 bra $L59; bra $L17; $L20: .loc 1 1084 10 or.b32 %r230,%r230,128; ld.s8 %r399,[%r410]; .loc 1 1085 4 bra $L16; $L32: mov.u64 %r345,%r410; .loc 1 1088 6 mov.u32 %r232,0; add.u32 %r1287,%r226,-48; $L60: .loc 1 1090 12 shl.b32 %r548,%r232,2; add.u32 %r549,%r548,%r232; add.u32 %r550,%r549,%r549; .loc 1 1090 7 add.u32 %r232,%r1287,%r550; add.u64 %r410,%r410,1; .loc 1 1091 8 ld.s8 %r226,[%r345]; mov.u64 %r345,%r410; .loc 1 1092 13 add.u32 %r1287,%r226,-48; .loc 1 1092 4 setp.le.u32 %r553,%r1287,9; @ %r553 bra $L60; bra $L17; $L34: .loc 1 1108 10 or.b32 %r230,%r230,8; ld.s8 %r399,[%r410]; .loc 1 1109 4 bra $L16; $L42: .loc 1 1118 11 or.b32 %r230,%r230,64; ld.s8 %r399,[%r410]; .loc 1 1119 4 bra $L16; $L36: .loc 1 1122 8 ld.s8 %r399,[%r410]; .loc 1 1122 7 cvt.u16.u32 %r554,%r399; setp.ne.u16 %r555,%r554,108; @ %r555 bra $L61; .loc 1 1124 11 or.b32 %r230,%r230,32; ld.s8 %r399,[%r410+1]; .loc 1 1123 8 add.u64 %r410,%r410,1; bra $L16; $L61: .loc 1 1127 11 or.b32 %r230,%r230,16; bra $L16; $L43: .loc 1 1130 10 or.b32 %r230,%r230,32; ld.s8 %r399,[%r410]; .loc 1 1131 4 bra $L16; $L39: .loc 1 1189 9 ld.u32 %r556,[%r411]; st.u8 [%frame+128],%r556; .loc 1 1192 9 mov.u32 %r557,0; st.u8 [%frame+218],%r557; .loc 1 1189 11 add.u64 %r411,%r411,4; .loc 1 1193 4 mov.u32 %r239,1; .loc 1 1190 10 mov.u32 %r240,%r239; .loc 1 1173 7 add.u64 %r229,%frame,128; .loc 1 1193 4 bra $L62; $L33: setp.eq.u32 %r558,%r227,0; @ %r558 bra $L63; cvt.u32.u32 %r559,%r315; st.u8 [%frame+218],%r559; $L63: .loc 1 1195 10 or.b32 %r187,%r230,16; .loc 1 1199 13 and.b32 %r560,%r230,32; setp.ne.u32 %r561,%r560,0; @ ! %r561 bra $L65; bra $L64; $L40: setp.eq.u32 %r562,%r227,0; @ %r562 bra $L66; cvt.u32.u32 %r563,%r315; st.u8 [%frame+218],%r563; $L66: and.b32 %r564,%r230,32; setp.eq.u32 %r565,%r564,0; @ %r565 bra $L67; mov.u32 %r187,%r230; $L64: add.u64 %r334,%r411,7; and.b64 %r321,%r334,-8; add.u64 %r411,%r321,8; ld.u64 %r56,[%r321]; mov.u64 %r237,%r56; bra $L68; $L67: and.b32 %r566,%r230,16; setp.eq.u32 %r567,%r566,0; @ %r567 bra $L69; mov.u32 %r187,%r230; $L65: add.u64 %r331,%r411,7; and.b64 %r329,%r331,-8; add.u64 %r411,%r329,8; ld.u64 %r56,[%r329]; mov.u64 %r237,%r56; bra $L68; $L69: add.u64 %r361,%r411,4; and.b32 %r568,%r230,64; setp.eq.u32 %r569,%r568,0; @ %r569 bra $L70; ld.s16 %r237,[%r411]; mov.u64 %r56,%r237; mov.u32 %r187,%r230; mov.u64 %r411,%r361; bra $L68; $L70: ld.s32 %r237,[%r411]; mov.u64 %r56,%r237; mov.u32 %r187,%r230; mov.u64 %r411,%r361; $L68: .loc 1 1201 7 setp.ge.s64 %r574,%r56,0; @ %r574 bra $L71; .loc 1 1207 12 neg.s64 %r237,%r237; .loc 1 1208 10 mov.u32 %r575,45; st.u8 [%frame+218],%r575; mov.u32 %r230,%r187; mov.u32 %r395,45; .loc 1 1210 9 mov.u32 %r238,1; bra $L72; $L30: setp.eq.u32 %r576,%r227,0; @ %r576 bra $L73; cvt.u32.u32 %r577,%r315; st.u8 [%frame+218],%r577; $L73: add.u64 %r578,%r411,7; and.b64 %r363,%r578,-8; add.u64 %r411,%r363,8; .loc 1 1225 25 ld.f64 %r256,[%r363]; .loc 1 1236 8 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r256; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r582,[%value_in]; } .loc 1 1236 7 setp.ne.u32 %r583,%r582,1; @ %r583 bra $L76; .loc 1 1237 8 setp.lt.f64 %r584,%r256,0d0000000000000000; @ %r584 bra $L77; ld.s8 %r395,[%frame+218]; bra $L78; $L77: .loc 1 1238 11 mov.u32 %r585,45; st.u8 [%frame+218],%r585; mov.u32 %r395,45; $L78: .loc 1 1239 8 setp.le.s32 %r586,%r226,71; @ %r586 bra $L256; .loc 1 1242 9 cvta.const.u64 %r229,$LC1; bra $L79; $L256: .loc 1 1240 9 cvta.const.u64 %r229,$LC0; $L79: .loc 1 1244 11 and.b32 %r231,%r230,-129; .loc 1 1245 5 mov.u32 %r239,3; .loc 1 1243 10 mov.u32 %r240,%r239; .loc 1 943 9 mov.u32 %r233,0; .loc 1 948 8 mov.u32 %r235,%r233; .loc 1 1245 5 bra $L80; $L76: .loc 1 1247 8 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r256; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r588,[%value_in]; } mov.u32 %r235,%r588; .loc 1 1247 7 setp.ne.u32 %r589,%r588,0; @ %r589 bra $L81; .loc 1 1248 8 setp.le.s32 %r590,%r226,71; @ %r590 bra $L257; .loc 1 1251 9 cvta.const.u64 %r229,$LC3; bra $L82; $L257: .loc 1 1249 9 cvta.const.u64 %r229,$LC2; $L82: .loc 1 1253 11 and.b32 %r231,%r230,-129; ld.s8 %r395,[%frame+218]; .loc 1 943 9 mov.u32 %r233,%r588; .loc 1 1254 5 mov.u32 %r239,3; .loc 1 1252 10 mov.u32 %r240,%r239; .loc 1 1254 5 bra $L80; $L81: and.b32 %r364,%r226,-33; .loc 1 1309 7 setp.eq.u32 %r591,%r233,-1; @ %r591 bra $L258; .loc 1 1311 40 set.u32.eq.u32 %r593,%r233,0; neg.s32 %r594,%r593; set.u32.eq.u32 %r596,%r364,71; neg.s32 %r597,%r596; cvt.u16.u32 %r599,%r594; cvt.u16.u32 %r600,%r597; and.b16 %r598,%r599,%r600; cvt.u32.u16 %r601,%r598; cvt.u16.u8 %r602,%r601; setp.ne.u16 %r603,%r602,0; @ %r603 bra $L84; bra $L83; $L258: .loc 1 1310 10 mov.u32 %r233,6; $L83: .loc 1 1315 10 or.b32 %r231,%r230,256; .loc 1 1814 6 mov.b64 %r604,%r256; shr.u64 %r605,%r604,32; .loc 1 1814 5 cvt.u32.u64 %r606,%r605; setp.ge.s32 %r607,%r606,0; @ %r607 bra $L259; bra $L251; $L280: .loc 1 1312 10 mov.u32 %r233,1; $L251: .loc 1 1815 9 neg.f64 %r65,%r256; .loc 1 1816 9 mov.u32 %r316,45; bra $L85; $L259: .loc 1 1814 5 mov.f64 %r65,%r256; .loc 1 1818 9 mov.u32 %r316,0; $L85: .loc 1 1867 5 setp.eq.u32 %r608,%r364,70; @ %r608 bra $L86; .loc 1 1874 6 setp.ne.u32 %r609,%r364,69; @ %r609 bra $L87; .loc 1 1875 11 add.u32 %r296,%r233,1; .loc 1 1880 11 mov.u32 %r612,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r65; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r612; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r296; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r1337; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r1336; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r1335; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r620,[%value_in]; } mov.u64 %r229,%r620; setp.eq.u32 %r1293,1,1; bra $L88; $L393: .loc 1 1894 16 ld.u64 %r622,[%frame+192]; sub.u64 %r621,%r622,%r229; .loc 1 1894 10 cvt.u32.u64 %r272,%r621; ld.u32 %r235,[%frame+212]; bra $L89; $L392: ld.u32 %r371,[%frame+212]; bra $L90; $L247: .loc 1 1886 23 mov.u32 %r623,1; sub.u32 %r371,%r623,%r233; .loc 1 1886 12 st.u32 [%frame+212],%r371; $L90: .loc 1 1887 10 cvt.s64.s32 %r624,%r371; .loc 1 1887 7 add.u64 %r625,%r624,%r166; add.u64 %r299,%r1240,%r625; setp.eq.u32 %r1293,1,1; $L245: .loc 1 1889 6 setp.eq.f64 %r626,%r65,0d0000000000000000; @ %r626 bra $L260; bra $L382; $L93: .loc 1 1892 8 add.u64 %r627,%r205,1; st.u64 [%frame+192],%r627; .loc 1 1892 11 st.u8 [%r205],%r628; .loc 1 1891 14 ld.u64 %r205,[%frame+192]; .loc 1 1891 9 setp.gt.u64 %r629,%r299,%r205; @ %r629 bra $L93; bra $L91; $L382: .loc 1 1891 14 ld.u64 %r205,[%frame+192]; .loc 1 1891 9 setp.lt.u64 %r630,%r205,%r299; @ ! %r630 bra $L91; .loc 1 1892 11 mov.u32 %r628,48; bra $L93; $L260: .loc 1 1889 6 mov.u64 %r205,%r299; $L91: .loc 1 1894 16 sub.u64 %r631,%r205,%r229; .loc 1 1894 10 cvt.u32.u64 %r272,%r631; ld.u32 %r235,[%frame+212]; .loc 1 1320 7 @ %r1293 bra $L94; $L89: .loc 1 1321 8 set.u32.lt.s32 %r634,%r235,-3; neg.s32 %r635,%r634; .loc 1 1321 20 set.u32.gt.s32 %r637,%r235,%r233; neg.s32 %r638,%r637; cvt.u16.u32 %r640,%r635; cvt.u16.u32 %r641,%r638; or.b16 %r639,%r640,%r641; cvt.u32.u16 %r642,%r639; cvt.u16.u8 %r643,%r642; setp.eq.u16 %r644,%r643,0; @ %r644 bra $L95; .loc 1 1322 9 add.u32 %r226,%r226,-2; bra $L96; $L94: .loc 1 1330 7 setp.eq.u32 %r645,%r226,102; @ %r645 bra $L97; $L96: .loc 1 1331 5 add.u32 %r66,%r235,-1; st.u32 [%frame+212],%r66; .loc 1 1910 7 st.u8 [%frame+200],%r226; .loc 1 1911 5 setp.ge.s32 %r646,%r66,0; @ %r646 bra $L261; .loc 1 1912 7 mov.u32 %r647,1; sub.u32 %r66,%r647,%r235; .loc 1 1913 8 mov.u32 %r274,45; bra $L98; $L261: .loc 1 1916 8 mov.u32 %r274,43; $L98: cvt.u32.u32 %r648,%r274; st.u8 [%frame+201],%r648; .loc 1 1918 5 setp.le.s32 %r649,%r66,9; @ %r649 bra $L99; .loc 1 1917 4 mov.u64 %r306,%r1332; bra $L100; $L262: .loc 1 1921 3 mov.u64 %r306,%r159; .loc 1 1921 17 mov.u32 %r66,%r308; $L100: .loc 1 1920 9 add.u64 %r159,%r306,-1; .loc 1 1920 11 rem.s32 %r651,%r66,10; cvt.u16.u32 %r654,%r651; add.u16 %r653,%r654,48; .loc 1 1920 9 cvt.u32.u16 %r655,%r653; st.u8 [%r159],%r655; .loc 1 1921 17 div.s32 %r308,%r66,10; .loc 1 1921 3 setp.gt.s32 %r656,%r66,99; @ %r656 bra $L262; .loc 1 1922 8 add.u64 %r288,%r306,-2; .loc 1 1922 10 cvt.u16.u32 %r659,%r308; add.u16 %r658,%r659,48; cvt.u32.u16 %r660,%r658; cvt.s32.s8 %r367,%r660; .loc 1 1922 8 st.u8 [%r159+-1],%r660; .loc 1 1923 3 setp.ge.u64 %r664,%r288,%r1332; @ %r664 bra $L263; mov.u64 %r350,%r1333; $L103: .loc 1 1923 43 add.u64 %r288,%r288,1; .loc 1 1923 39 cvt.u32.u32 %r666,%r367; st.u8 [%r350],%r666; add.u64 %r350,%r350,1; .loc 1 1923 3 setp.ne.u64 %r669,%r288,%r1332; @ %r669 bra $L102; sub.u64 %r675,%r1334,%r306; add.u64 %r676,%r1333,%r675; sub.u64 %r678,%r676,%r1329; cvt.u32.u64 %r234,%r678; bra $L101; $L102: ld.s8 %r367,[%r288]; bra $L103; $L99: .loc 1 1927 9 mov.u32 %r679,48; st.u8 [%frame+202],%r679; .loc 1 1928 10 cvt.u16.u32 %r682,%r66; add.u16 %r681,%r682,48; .loc 1 1928 8 cvt.u32.u16 %r683,%r681; st.u8 [%frame+203],%r683; mov.u32 %r234,4; bra $L101; $L263: .loc 1 1923 3 mov.u32 %r234,2; $L101: .loc 1 1333 10 add.u32 %r240,%r234,%r272; .loc 1 1334 8 setp.gt.s32 %r684,%r272,1; @ %r684 bra $L104; and.b32 %r235,%r230,1; .loc 1 1334 18 setp.ne.u32 %r685,%r235,0; @ %r685 bra $L104; max.s32 %r239,%r240,0; bra $L105; $L104: .loc 1 1335 6 add.u32 %r240,%r240,1; max.s32 %r239,%r240,0; .loc 1 948 8 mov.u32 %r235,0; bra $L105; $L97: and.b32 %r686,%r230,1; or.b32 %r370,%r686,%r233; .loc 1 1341 9 setp.le.s32 %r687,%r235,0; @ %r687 bra $L106; .loc 1 1343 16 setp.eq.u32 %r688,%r370,0; @ %r688 bra $L264; .loc 1 1344 21 add.u32 %r689,%r233,1; .loc 1 1344 13 add.u32 %r240,%r689,%r235; mov.u32 %r239,%r240; bra $L105; $L106: .loc 1 1346 20 setp.eq.u32 %r690,%r370,0; @ %r690 bra $L265; .loc 1 1348 10 add.u32 %r240,%r233,2; mov.u32 %r239,%r240; bra $L105; $L95: .loc 1 1349 15 setp.gt.s32 %r691,%r272,%r235; @ %r691 bra $L108; .loc 1 1351 9 and.b32 %r692,%r230,1; setp.ne.u32 %r693,%r692,0; @ %r693 bra $L109; max.s32 %r239,%r235,0; mov.u32 %r240,%r235; mov.u32 %r226,103; bra $L105; $L109: .loc 1 1352 7 add.u32 %r240,%r235,1; max.s32 %r239,%r240,0; mov.u32 %r226,103; bra $L105; $L108: .loc 1 1355 9 setp.gt.s32 %r694,%r235,0; @ %r694 bra $L266; mov.u32 %r695,2; sub.u32 %r245,%r695,%r235; bra $L110; $L266: mov.u32 %r245,1; $L110: .loc 1 1354 11 add.u32 %r240,%r245,%r272; max.s32 %r239,%r240,0; mov.u32 %r226,103; bra $L105; $L264: mov.u32 %r239,%r235; mov.u32 %r240,%r235; bra $L105; $L265: mov.u32 %r239,1; .loc 1 1348 10 mov.u32 %r240,%r239; $L105: .loc 1 1377 7 setp.eq.u32 %r696,%r316,0; @ %r696 bra $L111; .loc 1 1378 10 mov.u32 %r697,45; st.u8 [%frame+218],%r697; .loc 1 943 9 mov.u32 %r233,0; bra $L112; $L47: setp.eq.u32 %r698,%r227,0; @ %r698 bra $L113; cvt.u32.u32 %r699,%r315; st.u8 [%frame+218],%r699; $L113: add.u64 %r700,%r411,7; and.b64 %r358,%r700,-8; ld.u64 %r359,[%r358]; add.u64 %r411,%r358,8; .loc 1 1392 14 and.b32 %r701,%r230,32; .loc 1 1392 7 setp.eq.u32 %r702,%r701,0; @ %r702 bra $L114; .loc 1 1393 34 cvt.s64.s32 %r703,%r407; st.u64 [%r359],%r703; bra $L9; $L114: .loc 1 1396 14 and.b32 %r704,%r230,16; .loc 1 1396 7 setp.eq.u32 %r705,%r704,0; @ %r705 bra $L116; .loc 1 1397 34 cvt.s64.s32 %r706,%r407; st.u64 [%r359],%r706; bra $L9; $L116: .loc 1 1398 19 and.b32 %r707,%r230,64; .loc 1 1398 12 setp.eq.u32 %r708,%r707,0; @ %r708 bra $L117; .loc 1 1399 35 st.u16 [%r359],%r407; bra $L9; $L117: .loc 1 1405 33 st.u32 [%r359],%r407; bra $L9; $L35: setp.eq.u32 %r709,%r227,0; @ %r709 bra $L118; cvt.u32.u32 %r710,%r315; st.u8 [%frame+218],%r710; $L118: .loc 1 1408 10 or.b32 %r269,%r230,16; .loc 1 1411 13 and.b32 %r711,%r230,32; setp.ne.u32 %r712,%r711,0; @ ! %r712 bra $L120; bra $L267; $L45: setp.eq.u32 %r713,%r227,0; @ %r713 bra $L121; cvt.u32.u32 %r714,%r315; st.u8 [%frame+218],%r714; $L121: and.b32 %r715,%r230,32; setp.eq.u32 %r716,%r715,0; @ ! %r716 bra $L119; bra $L122; $L267: .loc 1 1408 10 mov.u32 %r230,%r269; $L119: .loc 1 1411 13 add.u64 %r336,%r411,7; and.b64 %r326,%r336,-8; add.u64 %r411,%r326,8; ld.u64 %r237,[%r326]; .loc 1 1412 9 mov.u32 %r238,0; bra $L123; $L122: .loc 1 1411 13 and.b32 %r717,%r230,16; setp.eq.u32 %r718,%r717,0; @ %r718 bra $L124; mov.u32 %r269,%r230; $L120: add.u64 %r333,%r411,7; and.b64 %r320,%r333,-8; add.u64 %r411,%r320,8; ld.u64 %r237,[%r320]; mov.u32 %r230,%r269; .loc 1 1412 9 mov.u32 %r238,0; bra $L123; $L124: ld.u32 %r356,[%r411]; add.u64 %r411,%r411,4; .loc 1 1411 13 and.b32 %r719,%r230,64; setp.eq.u32 %r720,%r719,0; @ %r720 bra $L125; cvt.u16.u32 %r721,%r356; cvt.u64.u16 %r237,%r721; .loc 1 1412 9 mov.u32 %r238,%r717; bra $L123; $L125: .loc 1 1411 13 cvt.u64.u32 %r237,%r356; .loc 1 1412 9 mov.u32 %r238,%r719; bra $L123; $L46: .loc 1 1426 25 add.u64 %r68,%r411,7; and.b64 %r319,%r68,-8; add.u64 %r411,%r319,8; .loc 1 1426 11 ld.u64 %r237,[%r319]; .loc 1 1429 10 or.b32 %r230,%r230,2; .loc 1 1430 10 mov.u32 %r722,48; st.u8 [%frame+216],%r722; .loc 1 1431 10 mov.u32 %r723,120; st.u8 [%frame+217],%r723; .loc 1 1428 10 cvta.const.u64 %r25,$LC5; .loc 1 1427 9 mov.u32 %r238,2; .loc 1 1431 15 mov.u32 %r226,120; .loc 1 1432 4 bra $L123; $L50: .loc 1 1437 7 add.u64 %r330,%r411,7; and.b64 %r325,%r330,-8; add.u64 %r411,%r325,8; ld.u64 %r229,[%r325]; .loc 1 1441 9 mov.u32 %r724,0; st.u8 [%frame+218],%r724; .loc 1 1447 7 setp.ne.u64 %r725,%r229,0; @ %r725 bra $L126; .loc 1 1449 39 min.u32 %r240,%r233,6; mov.u32 %r239,%r240; .loc 1 1448 8 cvta.const.u64 %r229,$LC6; bra $L62; $L126: .loc 1 1516 7 setp.eq.u32 %r726,%r233,-1; @ %r726 bra $L127; .loc 1 1522 15 cvt.s64.s32 %r730,%r233; mov.u32 %r728,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r229; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r728; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r730; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r731,[%value_in]; } .loc 1 1524 8 setp.ne.u64 %r732,%r731,0; @ %r732 bra $L128; ld.s8 %r395,[%frame+218]; mov.u32 %r239,%r233; mov.u32 %r240,%r233; mov.u32 %r231,%r230; .loc 1 943 9 cvt.u32.u64 %r233,%r731; .loc 1 948 8 mov.u32 %r235,%r233; bra $L80; $L128: .loc 1 1525 15 sub.u64 %r733,%r731,%r229; cvt.u32.u64 %r734,%r733; min.s32 %r240,%r233,%r734; ld.s8 %r395,[%frame+218]; max.s32 %r239,%r240,0; mov.u32 %r231,%r230; .loc 1 943 9 mov.u32 %r233,%r728; .loc 1 948 8 mov.u32 %r235,%r233; bra $L80; $L127: .loc 1 1531 12 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r229; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r736,[%value_in]; } .loc 1 1531 10 cvt.u32.u64 %r240,%r736; ld.s8 %r395,[%frame+218]; max.s32 %r239,%r240,0; mov.u32 %r231,%r230; .loc 1 943 9 mov.u32 %r233,0; .loc 1 948 8 mov.u32 %r235,%r233; bra $L80; $L18: setp.eq.u32 %r737,%r227,0; @ %r737 bra $L129; cvt.u32.u32 %r738,%r315; st.u8 [%frame+218],%r738; $L129: .loc 1 1535 10 or.b32 %r273,%r230,16; .loc 1 1538 13 and.b32 %r739,%r230,32; setp.ne.u32 %r740,%r739,0; @ ! %r740 bra $L131; bra $L268; $L48: setp.eq.u32 %r741,%r227,0; @ %r741 bra $L132; cvt.u32.u32 %r742,%r315; st.u8 [%frame+218],%r742; $L132: and.b32 %r743,%r230,32; setp.eq.u32 %r744,%r743,0; @ ! %r744 bra $L130; bra $L133; $L268: .loc 1 1535 10 mov.u32 %r230,%r273; $L130: .loc 1 1538 13 add.u64 %r328,%r411,7; and.b64 %r324,%r328,-8; add.u64 %r411,%r324,8; ld.u64 %r237,[%r324]; .loc 1 1539 9 mov.u32 %r238,1; bra $L123; $L133: .loc 1 1538 13 and.b32 %r745,%r230,16; setp.eq.u32 %r746,%r745,0; @ %r746 bra $L134; mov.u32 %r273,%r230; $L131: add.u64 %r267,%r411,7; and.b64 %r318,%r267,-8; add.u64 %r411,%r318,8; ld.u64 %r237,[%r318]; mov.u32 %r230,%r273; .loc 1 1539 9 mov.u32 %r238,1; bra $L123; $L134: ld.u32 %r355,[%r411]; add.u64 %r411,%r411,4; .loc 1 1538 13 and.b32 %r747,%r230,64; setp.eq.u32 %r748,%r747,0; @ %r748 bra $L135; cvt.u16.u32 %r749,%r355; cvt.u64.u16 %r237,%r749; .loc 1 1539 9 mov.u32 %r238,1; bra $L123; $L135: .loc 1 1538 13 cvt.u64.u32 %r237,%r355; .loc 1 1539 9 mov.u32 %r238,1; bra $L123; $L41: setp.eq.u32 %r750,%r227,0; @ %r750 bra $L136; cvt.u32.u32 %r751,%r315; st.u8 [%frame+218],%r751; $L136: .loc 1 1542 10 cvta.const.u64 %r25,$LC4; $L53: .loc 1 1546 17 and.b32 %r752,%r230,32; setp.eq.u32 %r753,%r752,0; @ %r753 bra $L137; add.u64 %r327,%r411,7; and.b64 %r322,%r327,-8; add.u64 %r411,%r322,8; ld.u64 %r237,[%r322]; bra $L138; $L137: and.b32 %r754,%r230,16; setp.eq.u32 %r755,%r754,0; @ %r755 bra $L139; add.u64 %r260,%r411,7; and.b64 %r317,%r260,-8; add.u64 %r411,%r317,8; ld.u64 %r237,[%r317]; bra $L138; $L139: ld.u32 %r396,[%r411]; add.u64 %r411,%r411,4; and.b32 %r756,%r230,64; setp.eq.u32 %r757,%r756,0; @ %r757 bra $L140; cvt.u16.u32 %r758,%r396; cvt.u64.u16 %r237,%r758; bra $L138; $L140: cvt.u64.u32 %r237,%r396; $L138: .loc 1 1549 14 and.b32 %r759,%r230,1; .loc 1 1549 7 setp.eq.u32 %r760,%r759,0; @ %r760 bra $L269; .loc 1 1549 20 setp.eq.u64 %r761,%r237,0; @ %r761 bra $L270; .loc 1 1550 11 mov.u32 %r762,48; st.u8 [%frame+216],%r762; .loc 1 1551 11 st.u8 [%frame+217],%r226; .loc 1 1552 11 or.b32 %r230,%r230,2; .loc 1 1547 9 mov.u32 %r238,2; bra $L123; $L269: mov.u32 %r238,2; bra $L123; $L270: mov.u32 %r238,2; $L123: .loc 1 1559 16 mov.u32 %r763,0; st.u8 [%frame+218],%r763; mov.u32 %r395,0; $L72: .loc 1 1565 14 setp.eq.u32 %r764,%r233,-1; @ %r764 bra $L141; .loc 1 1566 11 and.b32 %r231,%r230,-129; .loc 1 1574 15 set.u32.ne.u64 %r766,%r237,0; neg.s32 %r767,%r766; .loc 1 1574 28 set.u32.ne.u32 %r769,%r233,0; neg.s32 %r770,%r769; .loc 1 1574 20 cvt.u16.u32 %r772,%r767; cvt.u16.u32 %r773,%r770; or.b16 %r771,%r772,%r773; .loc 1 1574 7 cvt.u32.u16 %r774,%r771; cvt.u16.u8 %r775,%r774; setp.eq.u16 %r776,%r775,0; @ %r776 bra $L142; .loc 1 1566 11 mov.u32 %r230,%r231; $L141: cvt.u16.u32 %r777,%r238; setp.eq.u16 %r778,%r777,1; @ %r778 bra $L143; setp.eq.u16 %r780,%r777,2; @ %r780 bra $L271; .loc 1 1573 7 mov.u64 %r228,%r1328; bra $L145; $L272: .loc 1 1581 5 mov.u64 %r228,%r229; $L145: .loc 1 1583 13 add.u64 %r229,%r228,-1; .loc 1 1583 15 cvt.u16.u64 %r783,%r237; and.b16 %r782,%r783,7; add.u16 %r785,%r782,48; cvt.u32.u16 %r787,%r785; cvt.s32.s8 %r101,%r787; .loc 1 1583 13 st.u8 [%r229],%r787; .loc 1 1584 14 shr.u64 %r237,%r237,3; .loc 1 1585 6 setp.ne.u64 %r789,%r237,0; @ %r789 bra $L272; .loc 1 1587 22 cvt.u16.u32 %r791,%r101; set.u32.ne.u16 %r792,%r791,48; neg.s32 %r793,%r792; .loc 1 1587 9 cvt.u16.u32 %r796,%r230; and.b16 %r795,%r796,1; .loc 1 1587 22 cvt.u16.u32 %r799,%r793; and.b16 %r798,%r799,%r795; cvt.u32.u16 %r801,%r798; cvt.u16.u8 %r802,%r801; setp.ne.u16 %r803,%r802,0; @ %r803 bra $L146; sub.u64 %r806,%r1328,%r229; cvt.u32.u64 %r240,%r806; mov.u32 %r231,%r230; bra $L147; $L146: .loc 1 1588 13 add.u64 %r277,%r228,-2; mov.u32 %r807,48; st.u8 [%r229+-1],%r807; sub.u64 %r810,%r1328,%r277; cvt.u32.u64 %r240,%r810; mov.u32 %r231,%r230; mov.u64 %r229,%r277; bra $L147; $L279: .loc 1 1566 11 mov.u32 %r230,%r231; $L143: .loc 1 1593 9 setp.gt.u64 %r1291,%r237,9; @ %r1291 bra $L273; .loc 1 1594 15 cvt.u16.u64 %r814,%r237; add.u16 %r813,%r814,48; .loc 1 1594 13 cvt.u32.u16 %r815,%r813; st.u8 [%frame+167],%r815; .loc 1 1595 7 mov.u32 %r231,%r230; mov.u32 %r240,1; .loc 1 1594 13 add.u64 %r229,%frame,167; .loc 1 1595 7 bra $L147; $L273: .loc 1 1573 7 mov.u64 %r229,%r1328; bra $L148; $L274: .loc 1 1622 15 mov.u64 %r237,%r278; setp.gt.u64 %r1291,%r237,9; $L148: .loc 1 1601 14 add.u64 %r229,%r229,-1; .loc 1 1601 16 rem.u64 %r817,%r237,10; cvt.u16.u64 %r820,%r817; add.u16 %r819,%r820,48; .loc 1 1601 14 cvt.u32.u16 %r821,%r819; st.u8 [%r229],%r821; .loc 1 1622 15 div.u64 %r278,%r237,10; .loc 1 1623 6 @ %r1291 bra $L274; sub.u64 %r825,%r1328,%r229; cvt.u32.u64 %r240,%r825; mov.u32 %r231,%r230; bra $L147; $L271: .loc 1 1573 7 mov.u64 %r229,%r1328; $L144: .loc 1 1628 13 add.u64 %r229,%r229,-1; .loc 1 1628 28 and.b64 %r826,%r237,15; .loc 1 1628 20 add.u64 %r827,%r25,%r826; .loc 1 1628 13 ld.u8 %r828,[%r827]; st.u8 [%r229],%r828; .loc 1 1629 14 shr.u64 %r237,%r237,4; .loc 1 1630 6 setp.ne.u64 %r829,%r237,0; @ %r829 bra $L144; sub.u64 %r832,%r1328,%r229; cvt.u32.u64 %r240,%r832; mov.u32 %r231,%r230; bra $L147; $L142: .loc 1 1648 32 setp.ne.u32 %r833,%r238,0; @ %r833 bra $L275; .loc 1 1648 55 and.b32 %r240,%r230,1; .loc 1 1648 45 setp.eq.u32 %r834,%r240,0; @ %r834 bra $L276; .loc 1 1649 32 mov.u32 %r835,48; st.u8 [%frame+167],%r835; mov.u32 %r233,%r238; add.u64 %r229,%frame,167; bra $L147; $L275: mov.u32 %r233,0; mov.u32 %r240,%r233; .loc 1 1573 7 add.u64 %r229,%frame,168; bra $L147; $L276: mov.u32 %r233,%r238; add.u64 %r229,%frame,168; $L147: max.s32 %r239,%r233,%r240; .loc 1 948 8 mov.u32 %r235,0; bra $L80; $L26: setp.eq.u32 %r836,%r227,0; @ %r836 bra $L149; cvt.u32.u32 %r837,%r315; st.u8 [%frame+218],%r837; $L149: .loc 1 1655 7 setp.eq.u32 %r838,%r226,0; @ %r838 bra $L15; .loc 1 1659 8 st.u8 [%frame+128],%r226; .loc 1 1661 9 mov.u32 %r839,0; st.u8 [%frame+218],%r839; .loc 1 1662 4 mov.u32 %r239,1; .loc 1 1660 9 mov.u32 %r240,%r239; .loc 1 1658 7 add.u64 %r229,%frame,128; .loc 1 1662 4 bra $L62; $L111: ld.s8 %r395,[%frame+218]; .loc 1 943 9 mov.u32 %r233,%r316; $L80: .loc 1 1681 6 setp.eq.u32 %r840,%r395,0; @ %r840 bra $L150; $L112: .loc 1 1682 10 add.u32 %r239,%r239,1; $L150: .loc 1 1683 13 and.b32 %r114,%r231,2; .loc 1 1683 6 setp.eq.u32 %r1285,%r114,0; @ %r1285 bra $L151; .loc 1 1684 10 add.u32 %r239,%r239,2; $L151: .loc 1 1687 14 and.b32 %r115,%r231,132; ld.u64 %r372,[%frame+184]; .loc 1 1687 6 setp.ne.u32 %r842,%r115,0; @ %r842 bra $L152; .loc 1 1688 4 sub.u32 %r276,%r232,%r239; setp.le.s32 %r843,%r276,0; @ %r843 bra $L152; ld.u32 %r389,[%frame+176]; setp.le.s32 %r844,%r276,16; @ ! %r844 bra $L383; cvta.const.u64 %r1294,blanks$4168; bra $L153; $L383: cvta.const.u64 %r1294,blanks$4168; $L156: st.u64 [%r241],%r1294; mov.u64 %r846,16; st.u64 [%r241+8],%r846; add.u64 %r372,%r372,16; st.u64 [%frame+184],%r372; add.u32 %r389,%r389,1; st.u32 [%frame+176],%r389; setp.gt.s32 %r847,%r389,7; @ %r847 bra $L154; add.u64 %r241,%r241,16; bra $L155; $L154: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r852,[%value_in]; } setp.ne.u32 %r853,%r852,0; @ %r853 bra $L14; ld.u64 %r372,[%frame+184]; ld.u32 %r389,[%frame+176]; mov.u64 %r241,%frame; $L155: add.u32 %r276,%r276,-16; setp.gt.s32 %r854,%r276,16; @ %r854 bra $L156; $L153: st.u64 [%r241],%r1294; cvt.s64.s32 %r117,%r276; st.u64 [%r241+8],%r117; add.u64 %r372,%r372,%r117; st.u64 [%frame+184],%r372; add.u32 %r118,%r389,1; st.u32 [%frame+176],%r118; setp.gt.s32 %r856,%r118,7; @ %r856 bra $L157; add.u64 %r241,%r241,16; bra $L152; $L157: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r861,[%value_in]; } setp.ne.u32 %r862,%r861,0; @ %r862 bra $L14; ld.u64 %r372,[%frame+184]; mov.u64 %r241,%frame; $L152: .loc 1 1691 6 ld.s8 %r864,[%frame+218]; cvt.u16.u32 %r863,%r864; setp.eq.u16 %r865,%r863,0; @ %r865 bra $L158; .loc 1 1692 4 st.u64 [%r241],%r1331; mov.u64 %r867,1; st.u64 [%r241+8],%r867; add.u64 %r372,%r372,1; st.u64 [%frame+184],%r372; ld.u32 %r868,[%frame+176]; add.u32 %r122,%r868,1; st.u32 [%frame+176],%r122; setp.gt.s32 %r869,%r122,7; @ %r869 bra $L159; add.u64 %r241,%r241,16; bra $L158; $L159: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r874,[%value_in]; } setp.ne.u32 %r875,%r874,0; @ %r875 bra $L14; ld.u64 %r372,[%frame+184]; mov.u64 %r241,%frame; $L158: .loc 1 1693 6 @ %r1285 bra $L160; .loc 1 1694 4 st.u64 [%r241],%r1330; mov.u64 %r878,2; st.u64 [%r241+8],%r878; add.u64 %r372,%r372,2; st.u64 [%frame+184],%r372; ld.u32 %r879,[%frame+176]; add.u32 %r125,%r879,1; st.u32 [%frame+176],%r125; setp.gt.s32 %r880,%r125,7; @ %r880 bra $L161; add.u64 %r241,%r241,16; bra $L160; $L161: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r885,[%value_in]; } setp.ne.u32 %r886,%r885,0; @ %r886 bra $L14; ld.u64 %r372,[%frame+184]; mov.u64 %r241,%frame; $L160: .loc 1 1697 6 setp.ne.u32 %r887,%r115,128; @ %r887 bra $L162; .loc 1 1698 4 sub.u32 %r279,%r232,%r239; setp.le.s32 %r888,%r279,0; @ %r888 bra $L162; ld.u32 %r388,[%frame+176]; setp.le.s32 %r889,%r279,16; @ ! %r889 bra $L384; cvta.const.u64 %r1290,zeroes$4169; bra $L163; $L384: cvta.const.u64 %r1290,zeroes$4169; $L166: st.u64 [%r241],%r1290; mov.u64 %r891,16; st.u64 [%r241+8],%r891; add.u64 %r372,%r372,16; st.u64 [%frame+184],%r372; add.u32 %r388,%r388,1; st.u32 [%frame+176],%r388; setp.gt.s32 %r892,%r388,7; @ %r892 bra $L164; add.u64 %r241,%r241,16; bra $L165; $L164: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r897,[%value_in]; } setp.ne.u32 %r898,%r897,0; @ %r898 bra $L14; ld.u64 %r372,[%frame+184]; ld.u32 %r388,[%frame+176]; mov.u64 %r241,%frame; $L165: add.u32 %r279,%r279,-16; setp.gt.s32 %r899,%r279,16; @ %r899 bra $L166; $L163: st.u64 [%r241],%r1290; cvt.s64.s32 %r128,%r279; st.u64 [%r241+8],%r128; add.u64 %r372,%r372,%r128; st.u64 [%frame+184],%r372; add.u32 %r129,%r388,1; st.u32 [%frame+176],%r129; setp.gt.s32 %r901,%r129,7; @ %r901 bra $L167; add.u64 %r241,%r241,16; bra $L162; $L167: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r906,[%value_in]; } setp.ne.u32 %r907,%r906,0; @ %r907 bra $L14; ld.u64 %r372,[%frame+184]; mov.u64 %r241,%frame; $L162: .loc 1 1701 3 sub.u32 %r280,%r233,%r240; setp.le.s32 %r908,%r280,0; @ %r908 bra $L168; ld.u32 %r387,[%frame+176]; setp.le.s32 %r909,%r280,16; @ ! %r909 bra $L385; cvta.const.u64 %r1290,zeroes$4169; bra $L169; $L385: cvta.const.u64 %r1290,zeroes$4169; $L172: st.u64 [%r241],%r1290; mov.u64 %r911,16; st.u64 [%r241+8],%r911; add.u64 %r372,%r372,16; st.u64 [%frame+184],%r372; add.u32 %r387,%r387,1; st.u32 [%frame+176],%r387; setp.gt.s32 %r912,%r387,7; @ %r912 bra $L170; add.u64 %r241,%r241,16; bra $L171; $L170: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r917,[%value_in]; } setp.ne.u32 %r918,%r917,0; @ %r918 bra $L14; ld.u64 %r372,[%frame+184]; ld.u32 %r387,[%frame+176]; mov.u64 %r241,%frame; $L171: add.u32 %r280,%r280,-16; setp.gt.s32 %r919,%r280,16; @ %r919 bra $L172; $L169: st.u64 [%r241],%r1290; cvt.s64.s32 %r133,%r280; st.u64 [%r241+8],%r133; add.u64 %r372,%r372,%r133; st.u64 [%frame+184],%r372; add.u32 %r134,%r387,1; st.u32 [%frame+176],%r134; setp.gt.s32 %r921,%r134,7; @ %r921 bra $L173; add.u64 %r241,%r241,16; bra $L168; $L173: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r926,[%value_in]; } setp.ne.u32 %r927,%r926,0; @ %r927 bra $L14; ld.u64 %r372,[%frame+184]; mov.u64 %r241,%frame; $L168: .loc 1 1705 14 and.b32 %r928,%r231,256; .loc 1 1705 6 setp.ne.u32 %r929,%r928,0; @ %r929 bra $L174; .loc 1 1706 4 st.u64 [%r241],%r229; cvt.s64.s32 %r137,%r240; st.u64 [%r241+8],%r137; add.u64 %r372,%r372,%r137; st.u64 [%frame+184],%r372; ld.u32 %r930,[%frame+176]; add.u32 %r139,%r930,1; st.u32 [%frame+176],%r139; setp.gt.s32 %r931,%r139,7; @ %r931 bra $L175; add.u64 %r241,%r241,16; bra $L176; $L175: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r936,[%value_in]; } setp.ne.u32 %r937,%r936,0; @ %r937 bra $L14; ld.u64 %r372,[%frame+184]; mov.u64 %r241,%frame; bra $L176; $L174: .loc 1 1708 7 setp.le.s32 %r938,%r226,101; @ %r938 bra $L177; .loc 1 1709 8 setp.neu.f64 %r939,%r256,0d0000000000000000; @ %r939 bra $L178; .loc 1 1711 6 cvta.const.u64 %r940,$LC7; st.u64 [%r241],%r940; mov.u64 %r941,1; st.u64 [%r241+8],%r941; add.u64 %r942,%r372,1; st.u64 [%frame+184],%r942; ld.u32 %r943,[%frame+176]; add.u32 %r143,%r943,1; st.u32 [%frame+176],%r143; setp.gt.s32 %r944,%r143,7; @ %r944 bra $L179; add.u64 %r241,%r241,16; bra $L180; $L179: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r949,[%value_in]; } setp.ne.u32 %r950,%r949,0; @ %r950 bra $L14; mov.u64 %r241,%frame; $L180: .loc 1 1712 9 ld.u32 %r951,[%frame+212]; setp.lt.s32 %r952,%r951,%r272; @ %r952 bra $L181; .loc 1 1712 31 and.b32 %r953,%r231,1; .loc 1 1712 22 setp.ne.u32 %r954,%r953,0; @ %r954 bra $L181; ld.u64 %r372,[%frame+184]; bra $L176; $L181: .loc 1 1713 7 st.u64 [%r241],%r248; st.u64 [%r241+8],%r424; ld.u64 %r955,[%frame+184]; add.u64 %r372,%r424,%r955; st.u64 [%frame+184],%r372; ld.u32 %r956,[%frame+176]; add.u32 %r149,%r956,1; st.u32 [%frame+176],%r149; setp.gt.s32 %r957,%r149,7; @ %r957 bra $L182; add.u64 %r241,%r241,16; bra $L183; $L182: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r962,[%value_in]; } setp.ne.u32 %r963,%r962,0; @ %r963 bra $L14; ld.u64 %r372,[%frame+184]; mov.u64 %r241,%frame; $L183: .loc 1 1714 7 add.u32 %r275,%r272,-1; setp.le.s32 %r964,%r275,0; @ %r964 bra $L176; ld.u32 %r386,[%frame+176]; setp.le.s32 %r965,%r275,16; @ ! %r965 bra $L386; cvta.const.u64 %r1290,zeroes$4169; bra $L184; $L386: cvta.const.u64 %r1290,zeroes$4169; $L187: st.u64 [%r241],%r1290; mov.u64 %r967,16; st.u64 [%r241+8],%r967; add.u64 %r372,%r372,16; st.u64 [%frame+184],%r372; add.u32 %r386,%r386,1; st.u32 [%frame+176],%r386; setp.gt.s32 %r968,%r386,7; @ %r968 bra $L185; add.u64 %r241,%r241,16; bra $L186; $L185: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r973,[%value_in]; } setp.ne.u32 %r974,%r973,0; @ %r974 bra $L14; ld.u64 %r372,[%frame+184]; ld.u32 %r386,[%frame+176]; mov.u64 %r241,%frame; $L186: add.u32 %r275,%r275,-16; setp.gt.s32 %r975,%r275,16; @ %r975 bra $L187; $L184: st.u64 [%r241],%r1290; cvt.s64.s32 %r152,%r275; st.u64 [%r241+8],%r152; add.u64 %r372,%r372,%r152; st.u64 [%frame+184],%r372; add.u32 %r153,%r386,1; st.u32 [%frame+176],%r153; setp.gt.s32 %r977,%r153,7; @ %r977 bra $L188; add.u64 %r241,%r241,16; bra $L176; $L188: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r982,[%value_in]; } setp.ne.u32 %r983,%r982,0; @ %r983 bra $L14; ld.u64 %r372,[%frame+184]; mov.u64 %r241,%frame; bra $L176; $L178: .loc 1 1716 21 ld.u32 %r155,[%frame+212]; .loc 1 1716 15 setp.gt.s32 %r984,%r155,0; @ %r984 bra $L189; .loc 1 1717 6 cvta.const.u64 %r985,$LC7; st.u64 [%r241],%r985; mov.u64 %r986,1; st.u64 [%r241+8],%r986; add.u64 %r372,%r372,1; st.u64 [%frame+184],%r372; ld.u32 %r987,[%frame+176]; add.u32 %r157,%r987,1; st.u32 [%frame+176],%r157; setp.gt.s32 %r988,%r157,7; @ %r988 bra $L190; add.u64 %r241,%r241,16; bra $L191; $L190: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r993,[%value_in]; } setp.ne.u32 %r994,%r993,0; @ %r994 bra $L14; ld.u32 %r155,[%frame+212]; ld.u64 %r372,[%frame+184]; mov.u64 %r241,%frame; $L191: .loc 1 1718 15 or.b32 %r995,%r272,%r155; setp.ne.u32 %r996,%r995,0; @ %r996 bra $L192; .loc 1 1718 32 and.b32 %r997,%r231,1; .loc 1 1718 23 setp.ne.u32 %r998,%r997,0; @ %r998 bra $L193; bra $L176; $L192: .loc 1 1719 7 st.u64 [%r241],%r248; st.u64 [%r241+8],%r424; add.u64 %r384,%r424,%r372; st.u64 [%frame+184],%r384; ld.u32 %r999,[%frame+176]; add.u32 %r385,%r999,1; st.u32 [%frame+176],%r385; setp.gt.s32 %r1000,%r385,7; @ %r1000 bra $L194; add.u64 %r242,%r241,16; bra $L195; $L194: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1005,[%value_in]; } setp.ne.u32 %r1006,%r1005,0; @ %r1006 bra $L14; ld.u32 %r155,[%frame+212]; ld.u64 %r384,[%frame+184]; ld.u32 %r385,[%frame+176]; mov.u64 %r242,%frame; $L195: .loc 1 1720 7 setp.ge.s32 %r1007,%r155,0; @ %r1007 bra $L196; neg.s32 %r263,%r155; setp.ge.s32 %r1008,%r155,-16; @ ! %r1008 bra $L387; cvta.const.u64 %r1290,zeroes$4169; bra $L197; $L387: cvta.const.u64 %r1290,zeroes$4169; $L200: st.u64 [%r242],%r1290; mov.u64 %r1010,16; st.u64 [%r242+8],%r1010; add.u64 %r384,%r384,16; st.u64 [%frame+184],%r384; add.u32 %r385,%r385,1; st.u32 [%frame+176],%r385; setp.gt.s32 %r1011,%r385,7; @ %r1011 bra $L198; add.u64 %r242,%r242,16; bra $L199; $L198: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1016,[%value_in]; } setp.ne.u32 %r1017,%r1016,0; @ %r1017 bra $L14; ld.u64 %r384,[%frame+184]; ld.u32 %r385,[%frame+176]; mov.u64 %r242,%frame; $L199: add.u32 %r263,%r263,-16; setp.gt.s32 %r1018,%r263,16; @ %r1018 bra $L200; $L197: st.u64 [%r242],%r1290; cvt.s64.s32 %r164,%r263; st.u64 [%r242+8],%r164; add.u64 %r384,%r384,%r164; st.u64 [%frame+184],%r384; add.u32 %r385,%r385,1; st.u32 [%frame+176],%r385; setp.gt.s32 %r1020,%r385,7; @ %r1020 bra $L201; add.u64 %r242,%r242,16; bra $L196; $L201: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1025,[%value_in]; } setp.ne.u32 %r1026,%r1025,0; @ %r1026 bra $L14; ld.u64 %r384,[%frame+184]; ld.u32 %r385,[%frame+176]; mov.u64 %r242,%frame; $L196: .loc 1 1721 7 st.u64 [%r242],%r229; cvt.s64.s32 %r167,%r272; st.u64 [%r242+8],%r167; add.u64 %r372,%r167,%r384; st.u64 [%frame+184],%r372; add.u32 %r168,%r385,1; st.u32 [%frame+176],%r168; setp.gt.s32 %r1027,%r168,7; @ %r1027 bra $L202; add.u64 %r241,%r242,16; bra $L176; $L202: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1032,[%value_in]; } setp.ne.u32 %r1033,%r1032,0; @ %r1033 bra $L14; ld.u64 %r372,[%frame+184]; mov.u64 %r241,%frame; bra $L176; $L189: min.s32 %r42,%r272,%r235; .loc 1 1725 6 setp.le.s32 %r1034,%r42,0; @ %r1034 bra $L203; st.u64 [%r241],%r229; cvt.s64.s32 %r170,%r42; st.u64 [%r241+8],%r170; add.u64 %r372,%r372,%r170; st.u64 [%frame+184],%r372; ld.u32 %r1035,[%frame+176]; add.u32 %r172,%r1035,1; st.u32 [%frame+176],%r172; setp.gt.s32 %r1036,%r172,7; @ %r1036 bra $L204; add.u64 %r241,%r241,16; bra $L203; $L204: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1041,[%value_in]; } setp.ne.u32 %r1042,%r1041,0; @ %r1042 bra $L14; ld.u64 %r372,[%frame+184]; mov.u64 %r241,%frame; $L203: max.s32 %r174,%r42,0; sub.u32 %r246,%r235,%r174; setp.le.s32 %r1043,%r246,0; @ %r1043 bra $L205; ld.u32 %r383,[%frame+176]; setp.le.s32 %r1044,%r246,16; @ ! %r1044 bra $L388; cvta.const.u64 %r1290,zeroes$4169; bra $L206; $L388: cvta.const.u64 %r1290,zeroes$4169; $L209: st.u64 [%r241],%r1290; mov.u64 %r1046,16; st.u64 [%r241+8],%r1046; add.u64 %r372,%r372,16; st.u64 [%frame+184],%r372; add.u32 %r383,%r383,1; st.u32 [%frame+176],%r383; setp.gt.s32 %r1047,%r383,7; @ %r1047 bra $L207; add.u64 %r241,%r241,16; bra $L208; $L207: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1052,[%value_in]; } setp.ne.u32 %r1053,%r1052,0; @ %r1053 bra $L14; ld.u64 %r372,[%frame+184]; ld.u32 %r383,[%frame+176]; mov.u64 %r241,%frame; $L208: add.u32 %r246,%r246,-16; setp.gt.s32 %r1054,%r246,16; @ %r1054 bra $L209; $L206: st.u64 [%r241],%r1290; cvt.s64.s32 %r177,%r246; st.u64 [%r241+8],%r177; add.u64 %r372,%r372,%r177; st.u64 [%frame+184],%r372; add.u32 %r179,%r383,1; st.u32 [%frame+176],%r179; setp.gt.s32 %r1056,%r179,7; @ %r1056 bra $L210; add.u64 %r241,%r241,16; bra $L205; $L210: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1061,[%value_in]; } setp.ne.u32 %r1062,%r1061,0; @ %r1062 bra $L14; ld.u64 %r372,[%frame+184]; mov.u64 %r241,%frame; $L205: .loc 1 1746 15 ld.u32 %r182,[%frame+212]; .loc 1 1746 9 setp.lt.s32 %r1063,%r182,%r272; @ %r1063 bra $L211; .loc 1 1746 31 and.b32 %r1064,%r231,1; .loc 1 1746 22 setp.eq.u32 %r1065,%r1064,0; @ %r1065 bra $L212; $L211: .loc 1 1747 10 st.u64 [%r241],%r248; st.u64 [%r241+8],%r424; add.u64 %r372,%r372,%r424; st.u64 [%frame+184],%r372; ld.u32 %r1066,[%frame+176]; add.u32 %r185,%r1066,1; st.u32 [%frame+176],%r185; setp.gt.s32 %r1067,%r185,7; @ %r1067 bra $L213; add.u64 %r241,%r241,16; bra $L214; $L213: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1072,[%value_in]; } setp.ne.u32 %r1073,%r1072,0; @ %r1073 bra $L14; ld.u32 %r182,[%frame+212]; ld.u64 %r372,[%frame+184]; mov.u64 %r241,%frame; $L214: .loc 1 1748 6 sub.u32 %r284,%r272,%r235; sub.u32 %r189,%r272,%r182; min.s32 %r224,%r189,%r284; setp.le.s32 %r1074,%r224,0; @ %r1074 bra $L215; .loc 1 1727 9 cvt.s64.s32 %r1075,%r235; add.u64 %r1076,%r229,%r1075; .loc 1 1748 6 st.u64 [%r241],%r1076; cvt.s64.s32 %r190,%r224; st.u64 [%r241+8],%r190; add.u64 %r372,%r372,%r190; st.u64 [%frame+184],%r372; ld.u32 %r1077,[%frame+176]; add.u32 %r192,%r1077,1; st.u32 [%frame+176],%r192; setp.gt.s32 %r1078,%r192,7; @ %r1078 bra $L216; add.u64 %r241,%r241,16; bra $L215; $L216: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1083,[%value_in]; } setp.ne.u32 %r1084,%r1083,0; @ %r1084 bra $L14; ld.u32 %r1085,[%frame+212]; sub.u32 %r189,%r272,%r1085; ld.u64 %r372,[%frame+184]; mov.u64 %r241,%frame; $L215: max.s32 %r194,%r224,0; sub.u32 %r264,%r189,%r194; setp.le.s32 %r1086,%r264,0; @ %r1086 bra $L176; ld.u32 %r382,[%frame+176]; setp.le.s32 %r1087,%r264,16; @ ! %r1087 bra $L389; cvta.const.u64 %r1290,zeroes$4169; bra $L217; $L389: cvta.const.u64 %r1290,zeroes$4169; $L220: st.u64 [%r241],%r1290; mov.u64 %r1089,16; st.u64 [%r241+8],%r1089; add.u64 %r372,%r372,16; st.u64 [%frame+184],%r372; add.u32 %r382,%r382,1; st.u32 [%frame+176],%r382; setp.gt.s32 %r1090,%r382,7; @ %r1090 bra $L218; add.u64 %r241,%r241,16; bra $L219; $L218: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1095,[%value_in]; } setp.ne.u32 %r1096,%r1095,0; @ %r1096 bra $L14; ld.u64 %r372,[%frame+184]; ld.u32 %r382,[%frame+176]; mov.u64 %r241,%frame; $L219: add.u32 %r264,%r264,-16; setp.gt.s32 %r1097,%r264,16; @ %r1097 bra $L220; $L217: st.u64 [%r241],%r1290; cvt.s64.s32 %r196,%r264; st.u64 [%r241+8],%r196; add.u64 %r372,%r372,%r196; st.u64 [%frame+184],%r372; add.u32 %r197,%r382,1; st.u32 [%frame+176],%r197; setp.gt.s32 %r1099,%r197,7; @ %r1099 bra $L221; add.u64 %r241,%r241,16; bra $L176; $L221: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1104,[%value_in]; } setp.ne.u32 %r1105,%r1104,0; @ %r1105 bra $L14; ld.u64 %r372,[%frame+184]; mov.u64 %r241,%frame; bra $L176; $L177: add.u64 %r202,%r372,1; ld.u32 %r401,[%frame+176]; add.u32 %r377,%r401,1; add.u64 %r243,%r241,16; .loc 1 1752 8 setp.gt.s32 %r1106,%r272,1; @ %r1106 bra $L222; .loc 1 1752 27 and.b32 %r1107,%r231,1; .loc 1 1752 18 setp.eq.u32 %r1108,%r1107,0; @ %r1108 bra $L223; $L222: .loc 1 1753 6 st.u64 [%r241],%r229; mov.u64 %r1109,1; st.u64 [%r241+8],%r1109; st.u64 [%frame+184],%r202; st.u32 [%frame+176],%r377; setp.le.s32 %r1110,%r377,7; @ %r1110 bra $L224; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; 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; ld.u64 %r202,[%frame+184]; ld.u32 %r377,[%frame+176]; mov.u64 %r243,%frame; $L224: .loc 1 1755 6 st.u64 [%r243],%r248; st.u64 [%r243+8],%r424; add.u64 %r202,%r202,%r424; st.u64 [%frame+184],%r202; add.u32 %r379,%r377,1; st.u32 [%frame+176],%r379; setp.gt.s32 %r1117,%r379,7; @ %r1117 bra $L225; add.u64 %r243,%r243,16; bra $L226; $L225: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; 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; ld.u64 %r202,[%frame+184]; ld.u32 %r379,[%frame+176]; mov.u64 %r243,%frame; $L226: add.u32 %r378,%r379,1; mov.u32 %r1292,%r378; add.u64 %r241,%r243,16; add.u32 %r289,%r272,-1; .loc 1 1756 9 setp.eq.f64 %r1124,%r256,0d0000000000000000; @ %r1124 bra $L227; .loc 1 1754 8 add.u64 %r1125,%r229,1; .loc 1 1757 7 st.u64 [%r243],%r1125; cvt.s64.s32 %r204,%r289; st.u64 [%r243+8],%r204; add.u64 %r202,%r202,%r204; st.u64 [%frame+184],%r202; st.u32 [%frame+176],%r378; setp.gt.s32 %r1126,%r378,7; @ %r1126 bra $L228; add.u32 %r378,%r379,2; add.u64 %r402,%r243,32; mov.u64 %r243,%r241; mov.u64 %r241,%r402; bra $L229; $L228: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; 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; ld.u64 %r202,[%frame+184]; ld.u32 %r1133,[%frame+176]; add.u32 %r378,%r1133,1; add.u64 %r241,%frame,16; mov.u64 %r243,%frame; bra $L229; $L227: .loc 1 1760 7 setp.le.s32 %r1134,%r289,0; @ %r1134 bra $L229; setp.le.s32 %r1135,%r289,16; @ %r1135 bra $L277; cvta.const.u64 %r1290,zeroes$4169; $L233: st.u64 [%r243],%r1290; mov.u64 %r1137,16; st.u64 [%r243+8],%r1137; add.u64 %r202,%r202,16; st.u64 [%frame+184],%r202; mov.u32 %r379,%r1292; st.u32 [%frame+176],%r379; setp.gt.s32 %r1138,%r379,7; @ %r1138 bra $L231; add.u64 %r243,%r243,16; bra $L232; $L231: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1143,[%value_in]; } setp.ne.u32 %r1144,%r1143,0; @ %r1144 bra $L14; ld.u64 %r202,[%frame+184]; ld.u32 %r379,[%frame+176]; mov.u64 %r243,%frame; $L232: add.u32 %r289,%r289,-16; setp.gt.s32 %r1145,%r289,16; @ ! %r1145 bra $L390; add.u32 %r1292,%r379,1; bra $L233; $L390: add.u32 %r378,%r379,1; add.u64 %r380,%r243,16; bra $L230; $L277: mov.u64 %r380,%r241; cvta.const.u64 %r1290,zeroes$4169; $L230: st.u64 [%r243],%r1290; cvt.s64.s32 %r209,%r289; st.u64 [%r243+8],%r209; add.u64 %r202,%r202,%r209; st.u64 [%frame+184],%r202; st.u32 [%frame+176],%r378; setp.gt.s32 %r1147,%r378,7; @ %r1147 bra $L234; add.u32 %r378,%r378,1; add.u64 %r241,%r380,16; mov.u64 %r243,%r380; bra $L229; $L234: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1152,[%value_in]; } setp.ne.u32 %r1153,%r1152,0; @ %r1153 bra $L14; ld.u64 %r202,[%frame+184]; ld.u32 %r1154,[%frame+176]; add.u32 %r378,%r1154,1; add.u64 %r241,%frame,16; mov.u64 %r243,%frame; bra $L229; $L223: .loc 1 1762 6 st.u64 [%r241],%r229; mov.u64 %r1155,1; st.u64 [%r241+8],%r1155; st.u64 [%frame+184],%r202; st.u32 [%frame+176],%r377; setp.gt.s32 %r1156,%r377,7; @ %r1156 bra $L235; add.u32 %r378,%r401,2; add.u64 %r241,%r241,32; bra $L229; $L235: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1161,[%value_in]; } setp.ne.u32 %r1162,%r1161,0; @ %r1162 bra $L14; ld.u64 %r202,[%frame+184]; ld.u32 %r1163,[%frame+176]; add.u32 %r378,%r1163,1; add.u64 %r241,%frame,16; mov.u64 %r243,%frame; $L229: .loc 1 1763 5 st.u64 [%r243],%r1329; cvt.s64.s32 %r212,%r234; st.u64 [%r243+8],%r212; add.u64 %r372,%r212,%r202; st.u64 [%frame+184],%r372; st.u32 [%frame+176],%r378; setp.le.s32 %r1165,%r378,7; @ %r1165 bra $L176; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1170,[%value_in]; } setp.ne.u32 %r1171,%r1170,0; @ %r1171 bra $L14; ld.u64 %r372,[%frame+184]; mov.u64 %r241,%frame; $L176: .loc 1 1770 13 and.b32 %r1172,%r231,4; .loc 1 1770 6 setp.eq.u32 %r1173,%r1172,0; @ %r1173 bra $L236; .loc 1 1771 4 sub.u32 %r261,%r232,%r239; setp.le.s32 %r1174,%r261,0; @ %r1174 bra $L236; ld.u32 %r373,[%frame+176]; setp.le.s32 %r1175,%r261,16; @ ! %r1175 bra $L391; cvta.const.u64 %r1294,blanks$4168; bra $L237; $L391: cvta.const.u64 %r1294,blanks$4168; $L240: st.u64 [%r241],%r1294; mov.u64 %r1177,16; st.u64 [%r241+8],%r1177; add.u64 %r372,%r372,16; st.u64 [%frame+184],%r372; add.u32 %r373,%r373,1; st.u32 [%frame+176],%r373; setp.gt.s32 %r1178,%r373,7; @ %r1178 bra $L238; add.u64 %r241,%r241,16; bra $L239; $L238: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1183,[%value_in]; } setp.ne.u32 %r1184,%r1183,0; @ %r1184 bra $L14; ld.u64 %r372,[%frame+184]; ld.u32 %r373,[%frame+176]; mov.u64 %r241,%frame; $L239: add.u32 %r261,%r261,-16; setp.gt.s32 %r1185,%r261,16; @ %r1185 bra $L240; $L237: st.u64 [%r241],%r1294; cvt.s64.s32 %r217,%r261; st.u64 [%r241+8],%r217; add.u64 %r372,%r372,%r217; st.u64 [%frame+184],%r372; add.u32 %r218,%r373,1; st.u32 [%frame+176],%r218; setp.le.s32 %r1187,%r218,7; @ %r1187 bra $L236; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1192,[%value_in]; } setp.ne.u32 %r1193,%r1192,0; @ %r1193 bra $L14; ld.u64 %r372,[%frame+184]; $L236: .loc 1 1774 33 max.s32 %r1194,%r232,%r239; .loc 1 1774 7 add.u32 %r407,%r407,%r1194; .loc 1 1776 3 setp.ne.u64 %r1195,%r372,0; @ %r1195 bra $L241; $L242: mov.u32 %r1196,0; st.u32 [%frame+176],%r1196; mov.u64 %r241,%frame; bra $L9; $L241: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1201,[%value_in]; } setp.ne.u32 %r1202,%r1201,0; @ ! %r1202 bra $L242; bra $L14; $L15: .loc 1 1784 2 ld.u64 %r1203,[%frame+184]; setp.eq.u64 %r1204,%r1203,0; @ %r1204 bra $L14; add.u64 %r1208,%frame,168; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1208; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1209,[%value_in]; } $L14: .loc 1 1791 31 ld.u16 %r1211,[%r409+16]; and.b16 %r1210,%r1211,64; setp.ne.u16 %r1212,%r1210,0; @ ! %r1212 bra $L1; bra $L243; $L193: .loc 1 1719 7 st.u64 [%r241],%r248; st.u64 [%r241+8],%r424; add.u64 %r384,%r424,%r372; st.u64 [%frame+184],%r384; ld.u32 %r1214,[%frame+176]; add.u32 %r385,%r1214,1; st.u32 [%frame+176],%r385; setp.gt.s32 %r1215,%r385,7; @ %r1215 bra $L194; add.u64 %r242,%r241,16; bra $L196; $L62: .loc 1 943 9 mov.u32 %r231,%r230; mov.u32 %r233,0; mov.u32 %r235,%r233; bra $L150; $L71: ld.s8 %r395,[%frame+218]; .loc 1 1565 14 setp.ne.u32 %r1216,%r233,-1; @ %r1216 bra $L244; mov.u32 %r230,%r187; bra $L143; $L278: .loc 1 1882 5 mov.u32 %r296,%r233; $L88: .loc 1 1883 15 cvt.s64.s32 %r1217,%r296; .loc 1 1883 6 add.u64 %r299,%r229,%r1217; bra $L245; $L87: .loc 1 1880 11 mov.u32 %r1220,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r65; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r1220; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r233; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r1337; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r1336; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r1335; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r1228,[%value_in]; } mov.u64 %r229,%r1228; .loc 1 1882 5 setp.ne.u32 %r1293,%r364,71; @ %r1293 bra $L278; mov.u32 %r406,%r233; bra $L246; $L86: .loc 1 1880 11 mov.u32 %r1232,3; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r65; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r1232; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r233; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r1337; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r1336; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r1335; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r1240,[%value_in]; } mov.u64 %r229,%r1240; .loc 1 1883 15 cvt.s64.s32 %r166,%r233; .loc 1 1885 7 ld.s8 %r1243,[%r1240]; cvt.u16.u32 %r1242,%r1243; set.u32.eq.u16 %r1244,%r1242,48; neg.s32 %r1245,%r1244; .loc 1 1885 23 set.u32.neu.f64 %r1247,%r65,0d0000000000000000; neg.s32 %r1248,%r1247; cvt.u16.u32 %r1250,%r1245; cvt.u16.u32 %r1251,%r1248; and.b16 %r1249,%r1250,%r1251; cvt.u32.u16 %r1252,%r1249; cvt.u16.u8 %r1253,%r1252; setp.ne.u16 %r1254,%r1253,0; @ ! %r1254 bra $L392; bra $L247; $L212: .loc 1 1748 6 sub.u32 %r339,%r272,%r235; sub.u32 %r189,%r272,%r182; min.s32 %r224,%r189,%r339; bra $L215; $L244: .loc 1 1566 11 and.b32 %r231,%r187,-129; .loc 1 1574 15 set.u32.ne.u64 %r1256,%r237,0; neg.s32 %r1257,%r1256; .loc 1 1574 28 set.u32.ne.u32 %r1259,%r233,0; neg.s32 %r1260,%r1259; .loc 1 1574 20 cvt.u16.u32 %r1262,%r1257; cvt.u16.u32 %r1263,%r1260; or.b16 %r1261,%r1262,%r1263; .loc 1 1574 7 cvt.u32.u16 %r1264,%r1261; cvt.u16.u8 %r1265,%r1264; setp.ne.u16 %r1266,%r1265,0; @ %r1266 bra $L279; mov.u32 %r233,0; mov.u32 %r240,%r233; .loc 1 1573 7 add.u64 %r229,%frame,168; bra $L147; $L249: .loc 1 1883 15 cvt.s64.s32 %r1267,%r406; .loc 1 1883 6 add.u64 %r299,%r229,%r1267; setp.ne.u32 %r1293,%r364,71; bra $L245; $L246: .loc 1 1882 31 and.b32 %r1268,%r230,1; setp.ne.u32 %r1269,%r1268,0; @ %r1269 bra $L249; bra $L393; $L84: .loc 1 1315 10 or.b32 %r231,%r230,256; .loc 1 1814 6 mov.b64 %r1270,%r256; shr.u64 %r1271,%r1270,32; .loc 1 1814 5 cvt.u32.u64 %r1272,%r1271; setp.lt.s32 %r1273,%r1272,0; @ %r1273 bra $L280; .loc 1 1880 11 mov.u32 %r1277,1; mov.u32 %r1276,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r256; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r1276; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r1277; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r1337; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r1336; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r1335; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r1284,[%value_in]; } mov.u64 %r229,%r1284; mov.f64 %r65,%r256; .loc 1 1312 10 mov.u32 %r233,%r1277; .loc 1 1818 9 mov.u32 %r316,0; .loc 1 1312 10 mov.u32 %r406,%r233; bra $L246; $L1: .loc 1 1793 1 mov.u32 %value,%r407; 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 657 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 659 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 470 14 ld.u16 %r39,[%r35+16]; and.b16 %r38,%r39,-3; st.u16 [%frame+1040],%r38; .loc 1 471 15 ld.u32 %r40,[%r35+172]; st.u32 [%frame+1196],%r40; .loc 1 472 13 ld.u16 %r41,[%r35+18]; st.u16 [%frame+1042],%r41; .loc 1 473 15 ld.u64 %r42,[%r35+48]; st.u64 [%frame+1072],%r42; .loc 1 474 14 ld.u64 %r43,[%r35+64]; st.u64 [%frame+1088],%r43; .loc 1 477 27 st.u64 [%frame+1024],%frame; .loc 1 477 17 st.u64 [%frame+1048],%frame; .loc 1 478 27 mov.u32 %r44,1024; st.u32 [%frame+1036],%r44; .loc 1 478 17 st.u32 [%frame+1056],%r44; .loc 1 479 16 mov.u32 %r46,0; st.u32 [%frame+1064],%r46; .loc 1 485 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 486 5 setp.lt.s32 %r53,%r33,0; @ %r53 bra $L396; .loc 1 486 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 486 15 setp.eq.u32 %r58,%r57,0; .loc 1 487 7 selp.u32 %r33,%r33,-1,%r58; $L396: .loc 1 488 5 ld.u16 %r60,[%frame+1040]; and.b16 %r59,%r60,64; setp.eq.u16 %r61,%r59,0; @ %r61 bra $L395; .loc 1 489 14 ld.u16 %r63,[%r35+16]; or.b16 %r62,%r63,64; st.u16 [%r35+16],%r62; $L395: .loc 1 495 1 mov.u32 %value,%r33; st.param.u32 [%value_out],%value; ret; } /921 1591654539 399 399 100644 4711 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // 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); .file 1 "../../../../../newlib/libc/stdio/vsnprintf.c" // 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); // 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_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 63 6 setp.le.u64 %r32,%r29,2147483647; @ %r32 bra $L2; .loc 1 65 19 mov.u32 %r33,139; st.u32 [%r27],%r33; .loc 1 66 14 mov.u32 %r26,-1; bra $L1; $L2: .loc 1 68 12 mov.u16 %r34,520; st.u16 [%frame+16],%r34; .loc 1 69 22 st.u64 [%frame],%r28; .loc 1 69 15 st.u64 [%frame+24],%r28; .loc 1 70 22 setp.eq.u64 %r35,%r29,0; @ %r35 bra $L4; .loc 1 70 41 cvt.u32.u64 %r36,%r29; add.u32 %r25,%r36,-1; .loc 1 70 22 st.u32 [%frame+12],%r25; .loc 1 70 15 st.u32 [%frame+32],%r25; .loc 1 71 11 mov.u16 %r37,-1; st.u16 [%frame+18],%r37; .loc 1 72 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 73 6 setp.lt.s32 %r43,%r26,-1; @ %r43 bra $L5; $L7: .loc 1 76 7 ld.u64 %r24,[%frame]; .loc 1 76 11 mov.u32 %r44,0; st.u8 [%r24],%r44; bra $L1; $L4: .loc 1 70 22 cvt.u32.u64 %r46,%r29; st.u32 [%frame+12],%r46; .loc 1 70 15 st.u32 [%frame+32],%r46; .loc 1 71 11 mov.u16 %r48,-1; st.u16 [%frame+18],%r48; .loc 1 72 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 73 6 setp.lt.s32 %r54,%r26,-1; @ ! %r54 bra $L1; bra $L6; $L5: .loc 1 74 17 mov.u32 %r55,139; st.u32 [%r27],%r55; bra $L7; $L6: mov.u32 %r56,139; st.u32 [%r27],%r56; $L1: .loc 1 78 1 mov.u32 %value,%r26; st.param.u32 [%value_out],%value; ret; } // 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 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r33; .reg .u32 %r34; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; mov.u64 %r27,%ar3; .loc 1 41 10 ld.global.u64 %r33,[_impure_ptr]; { .param .u32 %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),_vsnprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u32 %r34,[%value_in]; } .loc 1 42 1 mov.u32 %value,%r34; st.param.u32 [%value_out],%value; ret; } /940 1591654539 399 399 100644 3080 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // 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); .file 1 "../../../../../newlib/libc/stdio/vsprintf.c" // BEGIN GLOBAL FUNCTION DECL: vsprintf .visible .func (.param .u32 %value_out) vsprintf (.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: _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 61 22 st.u64 [%frame],%r25; .loc 1 61 15 st.u64 [%frame+24],%r25; .loc 1 62 15 mov.u32 %r28,2147483647; st.u32 [%frame+32],%r28; .loc 1 62 22 st.u32 [%frame+12],%r28; .loc 1 60 12 mov.u32 %r30,-65016; st.u32 [%frame+16],%r30; .loc 1 64 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 65 5 ld.u64 %r22,[%frame]; .loc 1 65 9 mov.u32 %r36,0; st.u8 [%r22],%r36; .loc 1 67 1 mov.u32 %value,%r35; st.param.u32 [%value_out],%value; ret; } // 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 %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 39 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),_vsprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 40 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } lib_a-vsscanf.o/1591654539 399 399 100644 3677 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // 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); .file 1 "../../../../../newlib/libc/stdio/vsscanf.c" // BEGIN GLOBAL FUNCTION DECL: vsscanf .visible .func (.param .u32 %value_out) vsscanf (.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: 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_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 63 12 mov.u16 %r29,516; st.u16 [%frame+16],%r29; .loc 1 64 22 st.u64 [%frame],%r26; .loc 1 64 15 st.u64 [%frame+24],%r26; .loc 1 65 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 65 22 cvt.u32.u64 %r23,%r31; st.u32 [%frame+8],%r23; .loc 1 65 15 st.u32 [%frame+32],%r23; .loc 1 66 11 mov.u64 %r32,__seofread; st.u64 [%frame+56],%r32; .loc 1 67 15 mov.u64 %r33,0; st.u64 [%frame+88],%r33; .loc 1 68 15 st.u64 [%frame+120],%r33; .loc 1 69 11 mov.u16 %r35,-1; st.u16 [%frame+18],%r35; .loc 1 70 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 71 1 mov.u32 %value,%r40; st.param.u32 [%value_out],%value; ret; } // 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 %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 43 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),_vsscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 44 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } lib_a-wcstold.o/1591654539 399 399 100644 1016 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcstold .visible .func (.param .f64 %value_out) wcstold (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../newlib/libc/stdlib/wcstold.c" // BEGIN GLOBAL FUNCTION DECL: wcstod .extern .func (.param .f64 %value_out) wcstod (.param .u64 %in_ar0, .param .u64 %in_ar1); // 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 .f64 %r27; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; .loc 1 39 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; call (%value_in),wcstod,(%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-write.o/ 1591654539 399 399 100644 2138 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r27; .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 3 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 %r29,%r32; add.u64 %r27,%r29,%r33; cvta.const.u64 %r45,$LC0; $L6: .loc 1 31 5 ld.s8 %r40,[%r29]; 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]; } add.u64 %r29,%r29,1; .loc 1 30 3 setp.ne.u64 %r43,%r27,%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; } 07070100000071000081a40000000000000000000000025edeb89900000000000000000000000000000000000000000000002200000000./usr/nvptx-none/lib/mgomp/libc.a07070100000071000081a40000000000000000000000025edeb8990011c0e0000000000000000000000000000000000000002200000000./usr/nvptx-none/lib/mgomp/libg.a! // 958 ` lib_a-dtoastub.o/ lib_a-fix_grouping.o/ lib_a-gdtoa-gethex.o/ lib_a-gdtoa-hexnan.o/ lib_a-isxdigit.o/ lib_a-lmessages.o/ lib_a-lmonetary.o/ lib_a-lnumeric.o/ lib_a-nl_langinfo.o/ lib_a-rawmemchr.o/ lib_a-reallocr.o/ lib_a-s_copysign.o/ lib_a-s_finite.o/ lib_a-s_fpclassify.o/ lib_a-s_infconst.o/ lib_a-s_isinfd.o/ lib_a-s_isnand.o/ lib_a-s_scalbn.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-snprintf.o/ lib_a-strcasecmp.o/ lib_a-strcasestr.o/ lib_a-strchrnul.o/ lib_a-strdup_r.o/ lib_a-strerror.o/ lib_a-strerror_r.o/ lib_a-strncasecmp.o/ lib_a-strndup_r.o/ lib_a-strsignal.o/ lib_a-strtok_r.o/ lib_a-strtoll_r.o/ lib_a-strtoull.o/ lib_a-strtoull_r.o/ lib_a-svfiprintf.o/ lib_a-svfprintf.o/ lib_a-timelocal.o/ lib_a-u_strerr.o/ lib_a-vfprintf.o/ lib_a-vsnprintf.o/ lib_a-vsprintf.o/ lib_a-a64l.o/ 1591654536 399 399 100644 2719 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: a64l .visible .func (.param .u64 %value_out) a64l (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/stdlib/a64l.c" // BEGIN GLOBAL FUNCTION DEF: a64l .visible .func (.param .u64 %value_out) a64l (.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; .reg .u32 %r31; .reg .u64 %r35; .reg .u32 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .pred %r39; .reg .u16 %r40; .reg .u32 %r41; .reg .pred %r42; .reg .pred %r43; .reg .pred %r44; .reg .u16 %r45; .reg .pred %r46; .reg .pred %r48; .reg .pred %r50; .reg .pred %r52; .reg .pred %r54; .reg .u16 %r56; .reg .u16 %r58; .reg .u32 %r59; .reg .pred %r60; .reg .u32 %r61; .reg .u32 %r62; .reg .u32 %r63; .reg .pred %r64; .reg .u64 %r65; .reg .pred %r66; .reg .u64 %r68; .reg .u64 %r69; mov.u64 %r38,%ar0; .loc 1 75 6 setp.eq.u64 %r39,%r38,0; @ %r39 bra $L13; mov.u64 %r27,%r38; mov.u32 %r36,6; $L4: .loc 1 84 10 ld.s8 %r41,[%r27]; cvt.u16.u32 %r40,%r41; setp.eq.u16 %r42,%r40,0; @ %r42 bra $L3; .loc 1 85 2 add.u64 %r27,%r27,1; $L3: add.u32 %r36,%r36,-1; .loc 1 82 3 setp.ne.u32 %r43,%r36,0; @ %r43 bra $L4; .loc 1 88 9 setp.le.u64 %r44,%r27,%r38; @ %r44 bra $L14; .loc 1 73 17 mov.u64 %r28,0; .loc 1 104 7 mov.u64 %r68,%r28; mov.u64 %r69,1; $L11: .loc 1 90 10 add.u64 %r27,%r27,-1; ld.s8 %r31,[%r27]; cvt.u16.u32 %r45,%r31; setp.gt.s16 %r46,%r45,90; @ %r46 bra $L6; setp.ge.s16 %r48,%r45,65; @ %r48 bra $L7; setp.eq.u16 %r50,%r45,47; @ %r50 bra $L15; setp.lt.s16 %r52,%r45,47; @ %r52 bra $L16; setp.gt.s16 %r54,%r45,57; @ ! %r54 bra $L24; bra $L17; $L6: add.u16 %r56,%r45,-97; cvt.u32.u16 %r59,%r56; cvt.u16.u8 %r58,%r59; setp.gt.u16 %r60,%r58,25; @ ! %r60 bra $L25; bra $L18; $L24: .loc 1 119 10 add.u32 %r61,%r31,-46; cvt.s64.s32 %r35,%r61; .loc 1 120 4 bra $L8; $L7: .loc 1 147 10 add.u32 %r62,%r31,-53; cvt.s64.s32 %r35,%r62; .loc 1 148 4 bra $L8; $L25: .loc 1 175 10 add.u32 %r63,%r31,-59; cvt.s64.s32 %r35,%r63; .loc 1 176 4 bra $L8; $L15: .loc 1 104 7 mov.u64 %r35,%r69; bra $L8; $L16: mov.u64 %r35,%r68; bra $L8; $L17: mov.u64 %r35,%r68; bra $L8; $L18: mov.u64 %r35,%r68; $L8: .loc 1 183 24 shl.b64 %r24,%r28,6; .loc 1 183 14 add.u64 %r28,%r24,%r35; .loc 1 88 9 setp.ne.u64 %r64,%r38,%r27; @ %r64 bra $L11; .loc 1 188 14 and.b64 %r65,%r28,2147483648; .loc 1 188 6 setp.ne.u64 %r66,%r65,0; @ %r66 bra $L12; mov.u64 %r37,%r28; bra $L1; $L12: .loc 1 189 39 add.u64 %r37,%r28,-4294967296; bra $L1; $L14: .loc 1 88 9 mov.u64 %r37,0; .loc 1 192 10 bra $L1; $L13: .loc 1 76 12 mov.u64 %r37,%r38; $L1: .loc 1 193 1 mov.u64 %value,%r37; st.param.u64 [%value_out],%value; ret; } lib_a-abort.o/ 1591654536 399 399 100644 381 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 { $L2: .loc 1 24 5 // #APP // 24 "../../../../../../../newlib/libc/machine/nvptx/abort.c" 1 exit; // #NO_APP bra $L2; } lib_a-abs.o/ 1591654536 399 399 100644 520 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 42 23 abs.s32 %value,%r23; .loc 1 43 1 st.param.u32 [%value_out],%value; ret; } lib_a-assert.o/ 1591654536 399 399 100644 1225 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/stdlib/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 65 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 65 3 { call abort; trap; // (noreturn) exit; // (noreturn) } } lib_a-atof.o/ 1591654536 399 399 100644 914 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 71 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 72 1 mov.f64 %value,%r26; st.param.f64 [%value_out],%value; ret; } lib_a-atoff.o/ 1591654536 399 399 100644 917 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 8 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 9 1 mov.f32 %value,%r26; st.param.f32 [%value_out],%value; ret; } lib_a-atoi.o/ 1591654536 399 399 100644 2168 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 70 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 71 1 cvt.u32.u64 %value,%r28; 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 79 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 80 1 cvt.u32.u64 %value,%r30; st.param.u32 [%value_out],%value; ret; } lib_a-atol.o/ 1591654536 399 399 100644 2160 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654536 399 399 100644 2173 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 84 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 85 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 93 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 94 1 mov.u64 %value,%r29; st.param.u64 [%value_out],%value; ret; } lib_a-bcmp.o/ 1591654536 399 399 100644 1211 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: bcmp .visible .func (.param .u32 %value_out) bcmp (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/string/bcmp.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 DEF: bcmp .visible .func (.param .u32 %value_out) 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 %r23; .reg .u64 %r24; .reg .u64 %r25; .reg .u32 %r29; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; mov.u64 %r25,%ar2; .loc 1 48 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; call (%value_in),memcmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r29,[%value_in]; } .loc 1 49 1 mov.u32 %value,%r29; st.param.u32 [%value_out],%value; ret; } lib_a-bcopy.o/ 1591654536 399 399 100644 1095 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 38 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 39 1 ret; } lib_a-btowc.o/ 1591654536 399 399 100644 3105 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: btowc .visible .func (.param .u32 %value_out) btowc (.param .u32 %in_ar0); .file 1 "../../../../../../newlib/libc/stdlib/btowc.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL VAR DECL: __mbtowc .extern .global .align 8 .u64 __mbtowc[1]; // 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: __locale_charset .extern .func (.param .u64 %value_out) __locale_charset; // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN GLOBAL FUNCTION DEF: btowc .visible .func (.param .u32 %value_out) btowc (.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 .u64 %r23; .reg .u32 %r29; .reg .u32 %r30; .reg .pred %r31; .reg .u32 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r40; .reg .u64 %r43; .reg .u64 %r44; .reg .u64 %r45; .reg .u32 %r46; .reg .pred %r47; mov.u32 %r30,%ar0; .loc 1 16 6 setp.ne.u32 %r31,%r30,-1; @ %r31 bra $L2; $L4: .loc 1 17 12 mov.u32 %r29,-1; bra $L1; $L2: .loc 1 19 7 st.u8 [%frame+12],%r30; .loc 1 22 3 mov.u64 %r34,8; mov.u32 %r33,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r33; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r34; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r35,[%value_in]; } .loc 1 26 12 ld.global.u64 %r23,[__mbtowc]; .loc 1 27 8 { .param .u64 %value_in; call (%value_in),__locale_charset; ld.param.u64 %r36,[%value_in]; } .loc 1 26 12 add.u64 %r43,%frame,12; add.u64 %r44,%frame,8; ld.global.u64 %r45,[_impure_ptr]; mov.u64 %r40,1; { .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 %in_ar5); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r45; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r44; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r43; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r40; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r36; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%frame; call (%value_in),%r23,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6),$LCT0; ld.param.u32 %r46,[%value_in]; } .loc 1 29 6 setp.gt.u32 %r47,%r46,1; @ %r47 bra $L4; .loc 1 32 10 ld.u32 %r29,[%frame+8]; $L1: .loc 1 33 1 mov.u32 %value,%r29; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } lib_a-bzero.o/ 1591654536 399 399 100644 829 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 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 .u64 %r25; .reg .u64 %r26; .reg .pred %r27; .reg .u32 %r28; .reg .pred %r29; mov.u64 %r25,%ar0; mov.u64 %r26,%ar1; .loc 1 41 9 setp.eq.u64 %r27,%r26,0; @ %r27 bra $L1; mov.u64 %r22,%r25; add.u64 %r23,%r22,%r26; .loc 1 42 12 mov.u32 %r28,0; $L3: st.u8 [%r22],%r28; add.u64 %r22,%r22,1; .loc 1 41 9 setp.ne.u64 %r29,%r22,%r23; @ %r29 bra $L3; $L1: .loc 1 43 1 ret; } lib_a-calloc.o/ 1591654536 399 399 100644 1622 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r29; .reg .u32 %r31; .reg .u64 %r33; 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 %r29,%r23,0; @ %r29 bra $L1; .loc 1 25 10 mov.u32 %r31,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r31; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; call (%value_in),memset,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r33,[%value_in]; } mov.u64 %r23,%r33; $L1: .loc 1 26 1 mov.u64 %value,%r23; st.param.u64 [%value_out],%value; ret; } lib_a-callocr.o/1591654536 399 399 100644 1124 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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-ctype_.o/ 1591654536 399 399 100644 1783 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // BEGIN VAR DEF: _ctype_b .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 }; // BEGIN GLOBAL VAR DEF: __ctype_ptr__ .visible .global .align 8 .u64 __ctype_ptr__[1] = {generic(_ctype_b) + 127 }; lib_a-div.o/ 1591654536 399 399 100644 1167 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 95 15 div.s32 %r22,%r25,%r26; .loc 1 96 14 rem.s32 %r23,%r25,%r26; .loc 1 123 5 setp.lt.s32 %r27,%r25,0; @ %r27 bra $L2; .loc 1 123 15 setp.ge.s32 %r28,%r23,0; @ %r28 bra $L3; .loc 1 124 3 add.u32 %r22,%r22,1; .loc 1 125 9 sub.u32 %r23,%r23,%r26; bra $L3; $L2: .loc 1 127 19 setp.le.s32 %r29,%r23,0; @ %r29 bra $L3; .loc 1 128 3 add.u32 %r22,%r22,-1; .loc 1 129 9 add.u32 %r23,%r23,%r26; $L3: .loc 1 131 9 st.u32 [%r24],%r22; st.u32 [%r24+4],%r23; .loc 1 132 1 ret; } lib_a-drand48.o/1591654536 399 399 100644 1686 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 21 24 add.u64 %r27,%r24,240; .loc 1 21 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 22 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 28 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 21 24 add.u64 %r27,%r22,240; .loc 1 21 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 29 1 mov.f64 %value,%r28; st.param.f64 [%value_out],%value; ret; } lib_a-dtoa.o/ 1591654536 399 399 100644 61770 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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[5]; // BEGIN GLOBAL VAR DECL: __mprec_tens .extern .const .align 8 .u64 __mprec_tens[25]; // 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: __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: $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 %r24; .reg .u32 %r25; .reg .u32 %r27; .reg .u32 %r33; .reg .u32 %r52; .reg .u32 %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .u32 %r72; .reg .u32 %r74; .reg .u64 %r76; .reg .u64 %r78; .reg .u32 %r79; .reg .u32 %r80; .reg .u32 %r81; .reg .u32 %r82; .reg .u32 %r84; .reg .u64 %r85; .reg .u32 %r86; .reg .u32 %r87; .reg .u32 %r89; .reg .u64 %r90; .reg .u64 %r91; .reg .u32 %r92; .reg .u64 %r99; .reg .u64 %r101; .reg .u64 %r106; .reg .u64 %r108; .reg .u32 %r109; .reg .u64 %r110; .reg .u64 %r111; .reg .u32 %r112; .reg .pred %r113; .reg .u64 %r114; .reg .u32 %r116; .reg .pred %r117; .reg .u32 %r118; .reg .u32 %r120; .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 .pred %r133; .reg .u32 %r134; .reg .pred %r135; .reg .pred %r136; .reg .u32 %r137; .reg .pred %r138; .reg .pred %r139; .reg .u32 %r140; .reg .pred %r141; .reg .u32 %r144; .reg .pred %r145; .reg .u32 %r146; .reg .u32 %r147; .reg .u32 %r148; .reg .u32 %r149; .reg .u32 %r150; .reg .u32 %r151; .reg .u32 %r152; .reg .u32 %r153; .reg .u32 %r154; .reg .u32 %r155; .reg .pred %r156; .reg .u64 %r157; .reg .u64 %r158; .reg .u32 %r159; .reg .pred %r160; .reg .pred %r161; .reg .u32 %r162; .reg .pred %r163; .reg .pred %r164; .reg .u32 %r165; .reg .pred %r166; .reg .u64 %r168; .reg .u64 %r169; mov.u64 %r110,%ar0; mov.u64 %r111,%ar1; .loc 1 49 5 ld.u32 %r74,[%r111+20]; .loc 1 54 6 ld.u32 %r112,[%r110+20]; setp.lt.s32 %r113,%r112,%r74; @ %r113 bra $L11; .loc 1 57 7 add.u32 %r92,%r74,-1; .loc 1 57 14 cvt.s64.s32 %r114,%r92; .loc 1 57 12 shl.b64 %r24,%r114,2; .loc 1 56 6 add.u64 %r169,%r111,24; .loc 1 57 7 add.u64 %r76,%r169,%r24; .loc 1 58 6 add.u64 %r168,%r110,24; .loc 1 59 7 add.u64 %r78,%r168,%r24; .loc 1 60 7 ld.u32 %r25,[%r78]; .loc 1 60 20 ld.u32 %r116,[%r76]; add.u32 %r27,%r116,1; .loc 1 60 5 div.u32 %r72,%r25,%r27; .loc 1 65 6 setp.lt.u32 %r117,%r25,%r27; @ %r117 bra $L3; mov.u64 %r101,%r168; mov.u64 %r99,%r169; .loc 1 68 13 mov.u32 %r71,0; .loc 1 67 14 mov.u32 %r69,%r71; $L4: .loc 1 72 7 ld.u32 %r79,[%r99]; .loc 1 73 13 and.b32 %r118,%r79,65535; .loc 1 73 7 mad.lo.u32 %r80,%r118,%r72,%r71; .loc 1 74 13 shr.u32 %r120,%r79,16; .loc 1 74 30 shr.u32 %r122,%r80,16; .loc 1 74 7 mad.lo.u32 %r81,%r120,%r72,%r122; .loc 1 75 10 shr.u32 %r71,%r81,16; .loc 1 76 9 ld.u32 %r33,[%r101]; .loc 1 76 13 and.b32 %r123,%r33,65535; .loc 1 76 39 add.u32 %r124,%r123,%r69; .loc 1 76 29 and.b32 %r125,%r80,65535; .loc 1 76 39 sub.u32 %r82,%r124,%r125; .loc 1 79 13 shr.u32 %r126,%r33,16; .loc 1 79 26 and.b32 %r127,%r81,65535; .loc 1 79 20 sub.u32 %r128,%r126,%r127; .loc 1 77 11 shr.s32 %r129,%r82,16; .loc 1 79 36 add.u32 %r84,%r128,%r129; .loc 1 80 11 shr.s32 %r69,%r84,16; .loc 1 82 4 shl.b32 %r130,%r84,16; and.b32 %r131,%r82,65535; or.b32 %r132,%r130,%r131; st.u32 [%r101],%r132; add.u64 %r101,%r101,4; add.u64 %r99,%r99,4; .loc 1 92 7 setp.ge.u64 %r133,%r76,%r99; @ %r133 bra $L4; .loc 1 93 10 ld.u32 %r134,[%r78]; setp.ne.u32 %r135,%r134,0; @ %r135 bra $L3; .loc 1 96 10 add.u64 %r85,%r78,-4; setp.le.u64 %r136,%r85,%r168; @ %r136 bra $L5; .loc 1 96 22 ld.u32 %r137,[%r78+-4]; setp.ne.u32 %r138,%r137,0; @ %r138 bra $L5; $L6: .loc 1 97 6 add.u32 %r92,%r92,-1; .loc 1 96 10 add.u64 %r85,%r85,-4; setp.le.u64 %r139,%r85,%r168; @ %r139 bra $L5; .loc 1 96 22 ld.u32 %r140,[%r85]; setp.eq.u32 %r141,%r140,0; @ %r141 bra $L6; $L5: .loc 1 98 12 st.u32 [%r110+20],%r92; $L3: .loc 1 101 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r110; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r111; call (%value_in),__mcmp,(%out_arg1,%out_arg2); ld.param.u32 %r144,[%value_in]; } .loc 1 101 6 setp.lt.s32 %r145,%r144,0; @ %r145 bra $L7; .loc 1 103 8 add.u32 %r72,%r72,1; mov.u64 %r108,%r168; mov.u64 %r106,%r169; .loc 1 104 14 mov.u32 %r70,0; $L8: .loc 1 111 7 ld.u32 %r86,[%r106]; .loc 1 115 9 ld.u32 %r52,[%r108]; .loc 1 115 13 and.b32 %r146,%r52,65535; .loc 1 115 39 add.u32 %r147,%r146,%r70; .loc 1 112 13 and.b32 %r148,%r86,65535; .loc 1 115 39 sub.u32 %r87,%r147,%r148; .loc 1 118 13 shr.u32 %r149,%r52,16; .loc 1 113 13 shr.u32 %r150,%r86,16; .loc 1 118 20 sub.u32 %r151,%r149,%r150; .loc 1 116 11 shr.s32 %r152,%r87,16; .loc 1 118 36 add.u32 %r89,%r151,%r152; .loc 1 119 11 shr.s32 %r70,%r89,16; .loc 1 121 4 shl.b32 %r153,%r89,16; and.b32 %r154,%r87,65535; or.b32 %r155,%r153,%r154; st.u32 [%r108],%r155; add.u64 %r108,%r108,4; add.u64 %r106,%r106,4; .loc 1 131 7 setp.ge.u64 %r156,%r76,%r106; @ %r156 bra $L8; .loc 1 133 16 cvt.s64.s32 %r157,%r92; shl.b64 %r158,%r157,2; .loc 1 133 11 add.u64 %r90,%r168,%r158; .loc 1 134 10 ld.u32 %r159,[%r90]; setp.ne.u32 %r160,%r159,0; @ %r160 bra $L7; .loc 1 136 10 add.u64 %r91,%r90,-4; setp.le.u64 %r161,%r91,%r168; @ %r161 bra $L9; .loc 1 136 22 ld.u32 %r162,[%r90+-4]; setp.ne.u32 %r163,%r162,0; @ %r163 bra $L9; $L10: .loc 1 137 6 add.u32 %r92,%r92,-1; .loc 1 136 10 add.u64 %r91,%r91,-4; setp.le.u64 %r164,%r91,%r168; @ %r164 bra $L9; .loc 1 136 22 ld.u32 %r165,[%r91]; setp.eq.u32 %r166,%r165,0; @ %r166 bra $L10; $L9: .loc 1 138 12 st.u32 [%r110+20],%r92; $L7: .loc 1 141 10 mov.u32 %r109,%r72; bra $L1; $L11: .loc 1 55 12 mov.u32 %r109,0; $L1: .loc 1 142 1 mov.u32 %value,%r109; 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 %r25; .reg .f64 %r29; .reg .u32 %r30; .reg .u32 %r35; .reg .f64 %r41; .reg .u64 %r47; .reg .u32 %r50; .reg .u32 %r53; .reg .u64 %r56; .reg .f64 %r62; .reg .u32 %r65; .reg .f64 %r68; .reg .u64 %r72; .reg .f64 %r73; .reg .f64 %r75; .reg .f64 %r76; .reg .f64 %r83; .reg .f64 %r84; .reg .f64 %r85; .reg .f64 %r87; .reg .u32 %r95; .reg .f64 %r96; .reg .u32 %r97; .reg .u64 %r105; .reg .f64 %r106; .reg .f64 %r110; .reg .u32 %r129; .reg .u32 %r160; .reg .u32 %r161; .reg .u32 %r162; .reg .u32 %r163; .reg .u32 %r165; .reg .u32 %r167; .reg .u32 %r170; .reg .u32 %r171; .reg .u32 %r172; .reg .u32 %r173; .reg .u32 %r174; .reg .u32 %r175; .reg .u64 %r176; .reg .u64 %r178; .reg .u64 %r179; .reg .u64 %r180; .reg .f64 %r181; .reg .u64 %r183; .reg .u64 %r184; .reg .u32 %r185; .reg .u32 %r186; .reg .u32 %r188; .reg .f64 %r190; .reg .u64 %r191; .reg .u32 %r192; .reg .f64 %r193; .reg .u32 %r197; .reg .u64 %r199; .reg .u32 %r200; .reg .u32 %r202; .reg .u32 %r203; .reg .u32 %r205; .reg .u32 %r207; .reg .u32 %r208; .reg .f64 %r210; .reg .u32 %r211; .reg .u32 %r213; .reg .u32 %r214; .reg .u32 %r215; .reg .u32 %r217; .reg .u32 %r219; .reg .u32 %r220; .reg .u32 %r221; .reg .u32 %r222; .reg .u32 %r223; .reg .u32 %r227; .reg .u32 %r232; .reg .u64 %r234; .reg .u64 %r235; .reg .u32 %r236; .reg .u64 %r237; .reg .u64 %r239; .reg .u64 %r243; .reg .u64 %r244; .reg .u64 %r251; .reg .u64 %r259; .reg .u64 %r260; .reg .u32 %r265; .reg .u64 %r268; .reg .u64 %r270; .reg .u32 %r272; .reg .u64 %r275; .reg .u64 %r278; .reg .u64 %r279; .reg .u64 %r285; .reg .u64 %r289; .reg .f64 %r291; .reg .f64 %r297; .reg .u32 %r300; .reg .u64 %r301; .reg .u32 %r303; .reg .u32 %r304; .reg .u32 %r305; .reg .u32 %r308; .reg .u32 %r309; .reg .u32 %r311; .reg .u32 %r312; .reg .f64 %r316; .reg .u32 %r317; .reg .f64 %r321; .reg .f64 %r323; .reg .u32 %r326; .reg .u32 %r327; .reg .u32 %r328; .reg .u32 %r329; .reg .u64 %r337; .reg .u64 %r338; .reg .u64 %r339; .reg .u64 %r340; .reg .u64 %r341; .reg .f64 %r342; .reg .u32 %r343; .reg .u32 %r344; .reg .u64 %r345; .reg .u64 %r346; .reg .u64 %r347; .reg .pred %r348; .reg .u32 %r349; .reg .u32 %r350; .reg .u64 %r353; .reg .u64 %r354; .reg .u64 %r355; .reg .pred %r356; .reg .u32 %r357; .reg .u64 %r358; .reg .u64 %r359; .reg .u64 %r360; .reg .u32 %r362; .reg .u32 %r363; .reg .pred %r364; .reg .u32 %r365; .reg .u64 %r366; .reg .u64 %r367; .reg .pred %r368; .reg .pred %r369; .reg .u32 %r370; .reg .pred %r371; .reg .u64 %r372; .reg .u64 %r377; .reg .u64 %r378; .reg .pred %r379; .reg .u64 %r381; .reg .u32 %r382; .reg .u32 %r383; .reg .u32 %r384; .reg .u64 %r385; .reg .u64 %r386; .reg .u64 %r387; .reg .u32 %r389; .reg .pred %r390; .reg .u32 %r391; .reg .u32 %r392; .reg .u32 %r393; .reg .u32 %r394; .reg .u32 %r395; .reg .u32 %r396; .reg .u32 %r397; .reg .u64 %r399; .reg .u32 %r400; .reg .u32 %r401; .reg .u64 %r402; .reg .u64 %r403; .reg .u64 %r404; .reg .f64 %r406; .reg .f64 %r407; .reg .f64 %r408; .reg .f64 %r409; .reg .f64 %r410; .reg .pred %r411; .reg .f64 %r412; .reg .pred %r413; .reg .pred %r414; .reg .u64 %r415; .reg .u64 %r416; .reg .u64 %r417; .reg .u64 %r418; .reg .f64 %r419; .reg .pred %r420; .reg .pred %r421; .reg .u32 %r422; .reg .pred %r423; .reg .pred %r424; .reg .pred %r425; .reg .pred %r426; .reg .u32 %r427; .reg .u32 %r429; .reg .u32 %r430; .reg .u16 %r431; .reg .u16 %r432; .reg .u16 %r433; .reg .u32 %r434; .reg .pred %r435; .reg .u64 %r437; .reg .u64 %r438; .reg .pred %r439; .reg .u64 %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 .u32 %r454; .reg .pred %r455; .reg .f64 %r456; .reg .pred %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 .f64 %r500; .reg .u16 %r502; .reg .u16 %r503; .reg .u32 %r504; .reg .u64 %r505; .reg .u32 %r506; .reg .u64 %r507; .reg .u64 %r508; .reg .u64 %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 .u64 %r519; .reg .u32 %r520; .reg .u64 %r521; .reg .f64 %r522; .reg .pred %r524; .reg .pred %r525; .reg .f64 %r526; .reg .u16 %r528; .reg .u16 %r529; .reg .u32 %r530; .reg .pred %r532; .reg .pred %r534; .reg .f64 %r535; .reg .pred %r536; .reg .f64 %r537; .reg .f64 %r538; .reg .pred %r539; .reg .u16 %r540; .reg .pred %r541; .reg .u32 %r542; .reg .u64 %r543; .reg .f64 %r544; .reg .u16 %r546; .reg .u16 %r547; .reg .u32 %r548; .reg .pred %r549; .reg .u64 %r550; .reg .u32 %r552; .reg .u32 %r553; .reg .u32 %r555; .reg .u32 %r556; .reg .u16 %r558; .reg .u16 %r559; .reg .u16 %r560; .reg .u32 %r561; .reg .u16 %r562; .reg .pred %r563; .reg .u64 %r564; .reg .u64 %r565; .reg .u64 %r566; .reg .u64 %r567; .reg .u32 %r569; .reg .u32 %r571; .reg .u32 %r572; .reg .u16 %r574; .reg .u16 %r575; .reg .u16 %r576; .reg .u32 %r577; .reg .u16 %r578; .reg .pred %r579; .reg .pred %r580; .reg .f64 %r581; .reg .f64 %r582; .reg .pred %r583; .reg .f64 %r584; .reg .f64 %r585; .reg .f64 %r586; .reg .u16 %r588; .reg .u16 %r589; .reg .u32 %r590; .reg .pred %r591; .reg .pred %r592; .reg .u32 %r594; .reg .u64 %r595; .reg .pred %r596; .reg .pred %r597; .reg .u32 %r598; .reg .pred %r599; .reg .pred %r600; .reg .u16 %r601; .reg .pred %r602; .reg .u16 %r604; .reg .u32 %r606; .reg .u32 %r607; .reg .pred %r608; .reg .f64 %r609; .reg .f64 %r610; .reg .f64 %r611; .reg .u16 %r613; .reg .u16 %r614; .reg .u32 %r615; .reg .pred %r616; .reg .pred %r618; .reg .pred %r619; .reg .u32 %r620; .reg .u32 %r621; .reg .pred %r622; .reg .u32 %r623; .reg .pred %r624; .reg .u32 %r626; .reg .u64 %r627; .reg .u32 %r629; .reg .u32 %r630; .reg .u32 %r632; .reg .u32 %r633; .reg .u16 %r634; .reg .u16 %r635; .reg .u16 %r636; .reg .u32 %r637; .reg .u16 %r638; .reg .pred %r639; .reg .pred %r640; .reg .pred %r642; .reg .u64 %r646; .reg .u64 %r650; .reg .pred %r653; .reg .u64 %r657; .reg .u64 %r661; .reg .u32 %r663; .reg .u64 %r664; .reg .pred %r665; .reg .u64 %r669; .reg .pred %r670; .reg .pred %r671; .reg .u64 %r672; .reg .pred %r673; .reg .u64 %r674; .reg .u32 %r675; .reg .u32 %r676; .reg .pred %r677; .reg .pred %r678; .reg .u32 %r679; .reg .u32 %r680; .reg .u32 %r681; .reg .u64 %r682; .reg .u64 %r683; .reg .u64 %r684; .reg .u64 %r685; .reg .u32 %r687; .reg .u32 %r688; .reg .u32 %r689; .reg .pred %r690; .reg .u32 %r691; .reg .pred %r692; .reg .u32 %r693; .reg .pred %r694; .reg .u32 %r695; .reg .pred %r696; .reg .u64 %r700; .reg .pred %r701; .reg .u64 %r705; .reg .u32 %r706; .reg .u32 %r707; .reg .u32 %r708; .reg .pred %r709; .reg .u32 %r712; .reg .pred %r713; .reg .u32 %r716; .reg .u32 %r717; .reg .u64 %r718; .reg .u32 %r720; .reg .u32 %r721; .reg .u16 %r722; .reg .u16 %r723; .reg .u16 %r724; .reg .u32 %r725; .reg .u64 %r731; .reg .pred %r732; .reg .u32 %r734; .reg .u32 %r735; .reg .u16 %r736; .reg .u16 %r737; .reg .u16 %r738; .reg .u32 %r739; .reg .u16 %r740; .reg .pred %r741; .reg .pred %r742; .reg .u32 %r745; .reg .u64 %r747; .reg .u32 %r750; .reg .pred %r751; .reg .u32 %r752; .reg .pred %r754; .reg .u64 %r758; .reg .pred %r759; .reg .u64 %r762; .reg .u64 %r766; .reg .u64 %r767; .reg .u64 %r768; .reg .u64 %r769; .reg .u64 %r770; .reg .u64 %r771; .reg .u32 %r774; .reg .u64 %r775; .reg .u32 %r776; .reg .u64 %r777; .reg .u32 %r780; .reg .u32 %r783; .reg .u64 %r787; .reg .u32 %r788; .reg .pred %r789; .reg .u32 %r792; .reg .u32 %r797; .reg .u32 %r798; .reg .pred %r799; .reg .pred %r800; .reg .pred %r801; .reg .pred %r802; .reg .u32 %r805; .reg .u32 %r806; .reg .pred %r807; .reg .pred %r808; .reg .u32 %r811; .reg .u64 %r812; .reg .u32 %r815; .reg .pred %r816; .reg .pred %r817; .reg .u32 %r818; .reg .pred %r819; .reg .pred %r820; .reg .pred %r821; .reg .pred %r822; .reg .u32 %r823; .reg .u16 %r825; .reg .u16 %r826; .reg .u32 %r827; .reg .pred %r828; .reg .u32 %r831; .reg .u32 %r832; .reg .u64 %r833; .reg .pred %r834; .reg .u64 %r839; .reg .u64 %r844; .reg .u64 %r849; .reg .u32 %r852; .reg .u32 %r853; .reg .u32 %r854; .reg .u32 %r855; .reg .u32 %r856; .reg .u32 %r857; .reg .pred %r858; .reg .u32 %r861; .reg .u32 %r862; .reg .u64 %r863; .reg .u32 %r866; .reg .u64 %r867; .reg .u32 %r870; .reg .pred %r871; .reg .pred %r872; .reg .u32 %r873; .reg .pred %r874; .reg .pred %r875; .reg .u32 %r876; .reg .u16 %r877; .reg .pred %r878; .reg .u16 %r880; .reg .u32 %r882; .reg .u16 %r883; .reg .pred %r884; .reg .pred %r887; .reg .u32 %r889; .reg .u32 %r890; .reg .u32 %r892; .reg .u32 %r893; .reg .u16 %r894; .reg .u16 %r895; .reg .u16 %r896; .reg .u32 %r897; .reg .u16 %r898; .reg .pred %r899; .reg .u32 %r906; .reg .pred %r907; .reg .pred %r909; .reg .pred %r910; .reg .pred %r913; .reg .pred %r914; .reg .f64 %r915; .reg .u64 %r917; .reg .u32 %r918; .reg .u32 %r919; .reg .u64 %r920; .reg .u64 %r921; .reg .u64 %r922; .reg .u32 %r926; .reg .u32 %r927; .reg .u64 %r930; .reg .u32 %r932; .reg .u32 %r933; .reg .u32 %r935; .reg .u32 %r936; .reg .u16 %r938; .reg .u16 %r939; .reg .u16 %r940; .reg .u32 %r941; .reg .u16 %r942; .reg .pred %r943; .reg .pred %r944; .reg .pred %r945; .reg .pred %r946; .reg .pred %r947; .reg .pred %r948; .reg .pred %r949; .reg .u64 %r950; .reg .pred %r951; .reg .u64 %r952; .reg .u32 %r953; .reg .u32 %r954; .reg .pred %r955; .reg .u64 %r956; .reg .u64 %r957; .reg .u64 %r958; .reg .u64 %r959; .reg .u64 %r960; .reg .u64 %r961; .reg .pred %r962; .reg .u32 %r965; .reg .u32 %r966; .reg .f64 %r967; mov.u64 %r341,%ar0; mov.f64 %r342,%ar1; mov.u32 %r343,%ar2; mov.u32 %r344,%ar3; mov.u64 %r345,%ar4; mov.u64 %r346,%ar5; mov.u64 %r347,%ar6; .loc 1 236 7 mov.b64 %r337,%r342; .loc 1 239 7 ld.u64 %r22,[%r341+96]; .loc 1 239 6 setp.eq.u64 %r348,%r22,0; @ %r348 bra $L19; .loc 1 241 35 ld.u32 %r23,[%r341+104]; .loc 1 241 33 st.u32 [%r22+8],%r23; .loc 1 242 42 mov.u32 %r350,1; shl.b32 %r349,%r350,%r23; .loc 1 242 38 st.u32 [%r22+12],%r349; .loc 1 243 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r22; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 244 29 mov.u64 %r353,0; st.u64 [%r341+96],%r353; $L19: mov.b64 %r354,%r342; shr.u64 %r355,%r354,32; cvt.u32.u64 %r197,%r355; .loc 1 247 6 setp.ge.s32 %r356,%r197,0; @ %r356 bra $L20; .loc 1 250 13 mov.u32 %r357,1; st.u32 [%r346],%r357; .loc 1 251 17 and.b32 %r197,%r197,2147483647; cvt.u64.u32 %r358,%r197; shl.b64 %r359,%r358,32; and.b64 %r360,%r337,4294967295; or.b64 %r337,%r360,%r359; mov.b64 %r342,%r337; bra $L21; $L20: .loc 1 254 11 mov.u32 %r362,0; st.u32 [%r346],%r362; $L21: .loc 1 258 18 and.b32 %r363,%r197,2146435072; .loc 1 258 6 setp.ne.u32 %r364,%r363,2146435072; @ %r364 bra $L22; .loc 1 264 14 mov.u32 %r365,9999; st.u32 [%r345],%r365; .loc 1 267 13 mov.b64 %r367,%r342; and.b64 %r366,%r367,4503599627370495; .loc 1 267 52 setp.eq.u64 %r368,%r366,0; @ %r368 bra $L23; bra $L263; $L188: cvta.const.u64 %r340,$LC0; .loc 1 273 17 add.u64 %r184,%r340,8; bra $L147; $L189: .loc 1 267 52 cvta.const.u64 %r340,$LC1; .loc 1 273 17 add.u64 %r184,%r340,3; $L147: .loc 1 271 7 st.u64 [%r347],%r184; bra $L18; $L22: .loc 1 282 6 setp.neu.f64 %r369,%r342,0d0000000000000000; @ %r369 bra $L26; .loc 1 284 14 mov.u32 %r370,1; st.u32 [%r345],%r370; .loc 1 286 10 setp.eq.u64 %r371,%r347,0; @ %r371 bra $L157; .loc 1 287 7 cvta.const.u64 %r372,$LC2+1; st.u64 [%r347],%r372; .loc 1 288 14 cvta.const.u64 %r340,$LC2; bra $L18; $L26: .loc 1 291 7 add.u64 %r377,%frame,4; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r342; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r377; call (%value_in),__d2b,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r378,[%value_in]; } mov.u64 %r176,%r378; .loc 1 295 29 shr.u32 %r30,%r197,20; .loc 1 295 6 setp.eq.u32 %r379,%r30,0; @ %r379 bra $L27; .loc 1 298 12 mov.b64 %r338,%r342; .loc 1 299 18 shr.u64 %r381,%r338,32; cvt.u32.u64 %r383,%r381; and.b32 %r382,%r383,1048575; .loc 1 300 18 or.b32 %r384,%r382,1072693248; cvt.u64.u32 %r385,%r384; shl.b64 %r386,%r385,32; and.b64 %r387,%r338,4294967295; or.b64 %r338,%r387,%r386; .loc 1 328 9 add.u32 %r163,%r30,-1023; ld.u32 %r303,[%frame+4]; .loc 1 334 14 mov.u32 %r175,0; bra $L28; $L27: .loc 1 340 17 ld.u32 %r303,[%frame+4]; ld.u32 %r389,[%frame]; add.u32 %r35,%r303,%r389; .loc 1 340 9 add.u32 %r192,%r35,1074; cvt.u32.u64 %r326,%r337; .loc 1 345 8 setp.le.s32 %r390,%r192,32; @ %r390 bra $L29; .loc 1 344 40 mov.u32 %r392,64; sub.u32 %r391,%r392,%r192; .loc 1 344 33 shl.b32 %r393,%r197,%r391; .loc 1 344 65 add.u32 %r394,%r35,1042; .loc 1 344 59 shr.u32 %r395,%r326,%r394; .loc 1 345 8 or.b32 %r185,%r393,%r395; bra $L30; $L29: .loc 1 345 28 mov.u32 %r397,32; sub.u32 %r396,%r397,%r192; .loc 1 345 8 shl.b32 %r185,%r326,%r396; $L30: .loc 1 347 12 cvt.rn.f64.u32 %r41,%r185; mov.b64 %r338,%r41; .loc 1 348 18 shr.u64 %r399,%r338,32; cvt.u32.u64 %r401,%r399; add.u32 %r400,%r401,-32505856; cvt.u64.u32 %r402,%r400; shl.b64 %r403,%r402,32; and.b64 %r404,%r338,4294967295; or.b64 %r338,%r404,%r403; .loc 1 349 9 add.u32 %r163,%r35,-1; .loc 1 350 14 mov.u32 %r175,1; $L28: .loc 1 356 63 cvt.rn.f64.s32 %r406,%r163; .loc 1 356 14 mov.b64 %r408,%r338; mov.f64 %r409,0d3ff8000000000000; sub.f64 %r407,%r408,%r409; .loc 1 356 41 fma.rn.f64 %r410,%r407,0d3fd287a7636f4361,0d3fc68a288b60c8b3; .loc 1 356 6 fma.rn.f64 %r193,%r406,0d3fd34413509f79fb,%r410; .loc 1 358 5 cvt.rzi.s32.f64 %r167,%r193; .loc 1 359 6 setp.lt.f64 %r411,%r193,0d0000000000000000; @ ! %r411 bra $L31; .loc 1 359 21 cvt.rn.f64.s32 %r412,%r167; .loc 1 359 15 setp.eq.f64 %r413,%r412,%r193; @ %r413 bra $L31; .loc 1 360 6 add.u32 %r167,%r167,-1; $L31: sub.u32 %r327,%r303,%r163; add.u32 %r173,%r327,-1; .loc 1 362 6 setp.gt.u32 %r414,%r167,22; @ %r414 bra $L158; .loc 1 364 21 cvta.const.u64 %r415,__mprec_tens; cvt.s64.s32 %r416,%r167; shl.b64 %r417,%r416,3; add.u64 %r418,%r415,%r417; .loc 1 364 10 ld.f64 %r419,[%r418]; setp.gt.f64 %r420,%r419,%r342; @ ! %r420 bra $L264; .loc 1 365 3 add.u32 %r167,%r167,-1; .loc 1 366 15 mov.u32 %r170,0; bra $L33; $L158: .loc 1 361 11 mov.u32 %r170,1; $L33: .loc 1 369 6 setp.ge.s32 %r421,%r173,0; @ %r421 bra $L159; $L155: .loc 1 376 10 mov.u32 %r422,1; sub.u32 %r160,%r422,%r327; .loc 1 377 10 mov.u32 %r173,0; bra $L36; $L159: .loc 1 371 10 mov.u32 %r160,0; $L36: .loc 1 379 6 setp.lt.s32 %r423,%r167,0; @ ! %r423 bra $L154; bra $L37; $L195: .loc 1 366 15 mov.u32 %r170,0; .loc 1 371 10 mov.u32 %r160,%r170; $L154: .loc 1 383 10 add.u32 %r173,%r173,%r167; mov.u32 %r328,%r167; .loc 1 381 10 mov.u32 %r161,0; bra $L38; $L37: .loc 1 387 10 sub.u32 %r160,%r160,%r167; .loc 1 388 10 neg.s32 %r161,%r167; mov.u32 %r328,%r167; .loc 1 389 10 mov.u32 %r167,0; $L38: .loc 1 391 6 setp.gt.u32 %r424,%r343,9; @ %r424 bra $L160; .loc 1 394 6 setp.le.s32 %r425,%r343,5; @ %r425 bra $L161; .loc 1 396 12 add.u32 %r343,%r343,-4; mov.u32 %r304,0; bra $L40; $L192: .loc 1 409 17 mov.u32 %r265,0; bra $L152; $L193: .loc 1 399 13 mov.u32 %r265,1; $L152: .loc 1 412 10 setp.le.s32 %r426,%r344,0; @ %r426 bra $L162; mov.u32 %r272,%r344; mov.u32 %r236,%r344; mov.u32 %r65,%r344; bra $L41; $L191: .loc 1 417 17 mov.u32 %r265,0; bra $L150; $L194: .loc 1 399 13 mov.u32 %r265,1; $L150: .loc 1 420 19 add.u32 %r272,%r344,%r328; .loc 1 420 9 add.u32 %r236,%r272,1; max.s32 %r65,%r236,1; $L41: .loc 1 427 32 mov.u32 %r427,0; st.u32 [%r341+104],%r427; .loc 1 427 77 cvt.s64.s32 %r289,%r65; set.u32.le.u32 %r429,%r236,14; neg.s32 %r430,%r429; cvt.u16.u32 %r432,%r430; cvt.u16.u32 %r433,%r304; and.b16 %r431,%r432,%r433; cvt.u32.u16 %r434,%r431; cvt.u32.u8 %r304,%r434; .loc 1 427 3 setp.le.s32 %r435,%r65,31; @ %r435 bra $L163; mov.u32 %r50,1; .loc 1 426 5 mov.u32 %r188,4; $L43: .loc 1 429 28 mov.u32 %r53,%r50; .loc 1 428 10 add.u32 %r188,%r188,%r188; add.u32 %r50,%r53,1; .loc 1 427 73 cvt.s64.s32 %r437,%r188; add.u64 %r438,%r437,28; .loc 1 427 3 setp.le.u64 %r439,%r438,%r289; @ %r439 bra $L43; st.u32 [%r341+104],%r53; bra $L42; $L163: mov.u32 %r53,%r427; $L42: .loc 1 430 27 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r53; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r442,[%value_in]; } mov.u64 %r56,%r442; .loc 1 430 25 st.u64 [%r341+96],%r442; .loc 1 433 6 setp.eq.u32 %r443,%r304,0; @ %r443 bra $L44; .loc 1 442 10 setp.le.s32 %r444,%r328,0; @ %r444 bra $L45; .loc 1 444 7 cvta.const.u64 %r445,__mprec_tens; .loc 1 444 16 and.b32 %r446,%r328,15; .loc 1 444 7 cvt.s64.s32 %r447,%r446; shl.b64 %r448,%r447,3; add.u64 %r449,%r445,%r448; ld.f64 %r181,[%r449]; .loc 1 445 6 shr.s32 %r200,%r328,4; .loc 1 446 10 and.b32 %r450,%r200,16; .loc 1 446 7 setp.eq.u32 %r451,%r450,0; @ %r451 bra $L46; .loc 1 449 10 and.b32 %r200,%r200,15; .loc 1 450 22 cvta.const.u64 %r452,__mprec_bigtens; .loc 1 450 12 ld.f64 %r453,[%r452+32]; div.rn.f64 %r62,%r342,%r453; .loc 1 451 12 mov.u32 %r165,3; bra $L47; $L51: cvta.const.u64 %r235,__mprec_bigtens; $L49: .loc 1 454 12 and.b32 %r454,%r200,1; .loc 1 454 9 setp.eq.u32 %r455,%r454,0; @ %r455 bra $L48; .loc 1 456 7 add.u32 %r165,%r165,1; .loc 1 457 6 ld.f64 %r456,[%r235]; mul.f64 %r181,%r181,%r456; $L48: .loc 1 453 16 shr.s32 %r200,%r200,1; add.u64 %r235,%r235,8; .loc 1 453 4 setp.ne.u32 %r457,%r200,0; @ %r457 bra $L49; bra $L50; $L46: mov.b64 %r62,%r337; .loc 1 441 12 mov.u32 %r165,2; $L47: .loc 1 453 4 setp.ne.u32 %r458,%r200,0; @ %r458 bra $L51; $L50: .loc 1 459 8 div.rn.f64 %r316,%r62,%r181; bra $L52; $L45: .loc 1 461 15 setp.ne.u32 %r459,%r328,0; @ %r459 bra $L53; mov.b64 %r316,%r337; .loc 1 441 12 mov.u32 %r165,2; bra $L52; $L53: .loc 1 461 20 neg.s32 %r202,%r328; .loc 1 463 15 cvta.const.u64 %r460,__mprec_tens; .loc 1 463 19 and.b32 %r461,%r202,15; .loc 1 463 15 cvt.s64.s32 %r462,%r461; shl.b64 %r463,%r462,3; add.u64 %r464,%r460,%r463; .loc 1 463 8 ld.f64 %r465,[%r464]; mul.f64 %r68,%r342,%r465; .loc 1 464 11 shr.s32 %r203,%r202,4; .loc 1 464 4 setp.eq.u32 %r466,%r203,0; @ %r466 bra $L164; cvta.const.u64 %r199,__mprec_bigtens; mov.f64 %r316,%r68; mov.u32 %r25,0; .loc 1 441 12 mov.u32 %r165,2; $L55: .loc 1 465 12 and.b32 %r467,%r203,1; .loc 1 465 9 setp.eq.u32 %r468,%r467,0; @ %r468 bra $L54; .loc 1 467 7 add.u32 %r165,%r165,1; .loc 1 468 7 ld.f64 %r469,[%r199]; mul.f64 %r316,%r316,%r469; mov.u32 %r25,%r304; $L54: .loc 1 464 27 shr.s32 %r203,%r203,1; add.u64 %r199,%r199,8; .loc 1 464 4 setp.ne.u32 %r470,%r203,0; @ %r470 bra $L55; setp.eq.u32 %r471,%r25,0; selp.f64 %r316,%r68,%r316,%r471; bra $L52; $L164: mov.f64 %r316,%r68; .loc 1 441 12 mov.u32 %r165,2; $L52: .loc 1 471 10 setp.eq.u32 %r472,%r170,0; @ %r472 bra $L57; .loc 1 471 19 setp.lt.f64 %r473,%r316,0d3ff0000000000000; @ ! %r473 bra $L57; .loc 1 471 31 setp.eq.u32 %r474,%r236,0; @ %r474 bra $L59; .loc 1 473 7 setp.le.s32 %r475,%r272,0; @ %r475 bra $L60; .loc 1 476 5 add.u32 %r205,%r328,-1; .loc 1 477 8 mul.f64 %r316,%r316,0d4024000000000000; .loc 1 478 8 add.u32 %r476,%r165,1; .loc 1 480 20 cvt.rn.f64.s32 %r477,%r476; .loc 1 480 26 fma.rn.f64 %r297,%r316,%r477,0d401c000000000000; .loc 1 480 13 mov.b64 %r339,%r297; .loc 1 481 19 shr.u64 %r479,%r339,32; cvt.u32.u64 %r481,%r479; add.u32 %r480,%r481,-54525952; cvt.u64.u32 %r482,%r480; shl.b64 %r483,%r482,32; and.b64 %r484,%r339,4294967295; or.b64 %r339,%r484,%r483; mov.u32 %r300,%r272; bra $L61; $L57: .loc 1 480 20 cvt.rn.f64.s32 %r486,%r165; .loc 1 480 26 fma.rn.f64 %r73,%r486,%r316,0d401c000000000000; .loc 1 480 13 mov.b64 %r339,%r73; .loc 1 481 19 shr.u64 %r488,%r339,32; cvt.u32.u64 %r490,%r488; add.u32 %r489,%r490,-54525952; cvt.u64.u32 %r491,%r489; shl.b64 %r492,%r491,32; and.b64 %r493,%r339,4294967295; or.b64 %r339,%r493,%r492; .loc 1 482 10 setp.ne.u32 %r495,%r236,0; @ %r495 bra $L166; $L148: .loc 1 485 8 mov.f64 %r496,0d4014000000000000; sub.f64 %r75,%r316,%r496; .loc 1 486 17 mov.b64 %r76,%r339; .loc 1 486 7 setp.gt.f64 %r497,%r75,%r76; @ %r497 bra $L167; .loc 1 488 14 neg.f64 %r498,%r76; .loc 1 488 7 setp.lt.f64 %r499,%r75,%r498; @ %r499 bra $L168; bra $L60; $L166: mov.u32 %r205,%r328; mov.u32 %r300,%r236; $L61: cvt.rzi.s32.f64 %r317,%r316; cvt.rn.f64.s32 %r500,%r317; sub.f64 %r87,%r316,%r500; add.u64 %r268,%r442,1; cvt.u16.u32 %r503,%r317; add.u16 %r502,%r503,48; cvt.u32.u16 %r504,%r502; cvt.s32.s8 %r305,%r504; mov.b64 %r321,%r339; cvta.const.u64 %r505,__mprec_tens; add.u32 %r506,%r300,-1; cvt.s64.s32 %r507,%r506; shl.b64 %r508,%r507,3; add.u64 %r509,%r505,%r508; ld.f64 %r323,[%r509]; .loc 1 493 10 setp.eq.u32 %r510,%r265,0; @ %r510 bra $L64; .loc 1 498 16 mov.f64 %r512,0d3fe0000000000000; div.rn.f64 %r511,%r512,%r323; .loc 1 498 33 sub.f64 %r83,%r511,%r321; .loc 1 503 13 st.u8 [%r442],%r504; .loc 1 504 11 setp.gt.f64 %r514,%r83,%r87; @ ! %r514 bra $L265; add.u32 %r328,%r205,1; mov.u64 %r340,%r442; .loc 1 503 10 mov.u64 %r56,%r268; bra $L67; $L265: .loc 1 506 15 mov.f64 %r516,0d3ff0000000000000; sub.f64 %r515,%r516,%r87; .loc 1 506 11 setp.gt.f64 %r517,%r83,%r515; @ %r517 bra $L68; .loc 1 508 11 setp.eq.u32 %r518,%r300,1; @ %r518 bra $L60; mov.u64 %r191,%r268; add.u64 %r519,%r442,2; add.u32 %r520,%r300,-2; cvt.u64.u32 %r521,%r520; add.u64 %r244,%r519,%r521; .loc 1 506 15 mov.f64 %r967,%r516; bra $L69; $L267: sub.f64 %r522,%r967,%r87; .loc 1 506 11 setp.lt.f64 %r524,%r522,%r83; @ ! %r524 bra $L266; add.u32 %r328,%r205,1; mov.u64 %r340,%r442; mov.u64 %r56,%r251; bra $L72; $L266: mov.u64 %r191,%r251; .loc 1 508 11 setp.eq.u64 %r525,%r244,%r191; @ %r525 bra $L60; $L69: .loc 1 510 14 mul.f64 %r83,%r83,0d4024000000000000; .loc 1 511 12 mul.f64 %r84,%r87,0d4024000000000000; .loc 1 501 10 cvt.rzi.s32.f64 %r207,%r84; .loc 1 502 12 cvt.rn.f64.s32 %r526,%r207; sub.f64 %r87,%r84,%r526; add.u64 %r251,%r191,1; .loc 1 503 19 cvt.u16.u32 %r529,%r207; add.u16 %r528,%r529,48; cvt.u32.u16 %r530,%r528; cvt.s32.s8 %r305,%r530; .loc 1 503 13 st.u8 [%r191],%r530; .loc 1 504 11 setp.lt.f64 %r532,%r87,%r83; @ ! %r532 bra $L267; add.u32 %r328,%r205,1; mov.u64 %r340,%r442; mov.u64 %r56,%r251; bra $L67; $L64: .loc 1 518 10 mul.f64 %r85,%r321,%r323; .loc 1 523 13 st.u8 [%r442],%r504; .loc 1 524 11 setp.ne.u32 %r534,%r300,1; @ %r534 bra $L75; $L81: .loc 1 526 19 add.f64 %r535,%r85,0d3fe0000000000000; .loc 1 526 8 setp.lt.f64 %r536,%r535,%r87; @ ! %r536 bra $L268; ld.s8 %r305,[%r268+-1]; add.u32 %r328,%r205,1; mov.u64 %r340,%r442; mov.u64 %r56,%r268; bra $L72; $L268: .loc 1 528 24 mov.f64 %r538,0d3fe0000000000000; sub.f64 %r537,%r538,%r85; .loc 1 528 13 setp.gt.f64 %r539,%r537,%r87; @ ! %r539 bra $L60; bra $L79; $L169: mov.u64 %r268,%r47; $L79: .loc 1 530 15 add.u64 %r47,%r268,-1; .loc 1 530 16 ld.s8 %r95,[%r47]; .loc 1 530 15 cvt.u16.u32 %r540,%r95; setp.eq.u16 %r541,%r540,48; @ %r541 bra $L169; add.u32 %r328,%r205,1; mov.u64 %r340,%r442; mov.u64 %r56,%r268; bra $L67; $L75: mov.u64 %r243,%r268; add.u32 %r542,%r300,-2; cvt.u64.u32 %r239,%r542; add.u64 %r543,%r442,2; add.u64 %r237,%r543,%r239; $L80: .loc 1 519 26 mul.f64 %r96,%r87,0d4024000000000000; .loc 1 521 10 cvt.rzi.s32.f64 %r208,%r96; .loc 1 522 12 cvt.rn.f64.s32 %r544,%r208; sub.f64 %r87,%r96,%r544; .loc 1 523 19 cvt.u16.u32 %r547,%r208; add.u16 %r546,%r547,48; .loc 1 523 13 cvt.u32.u16 %r548,%r546; st.u8 [%r243],%r548; add.u64 %r243,%r243,1; .loc 1 524 11 setp.ne.u64 %r549,%r237,%r243; @ %r549 bra $L80; add.u64 %r550,%r239,1; add.u64 %r268,%r268,%r550; bra $L81; $L60: .loc 1 542 11 mov.b64 %r337,%r342; $L44: .loc 1 549 10 ld.u32 %r97,[%frame]; .loc 1 549 6 not.b32 %r552,%r97; shr.u32 %r553,%r552,31; .loc 1 549 15 set.u32.le.s32 %r555,%r328,14; neg.s32 %r556,%r555; cvt.u16.u32 %r559,%r553; cvt.u16.u32 %r560,%r556; and.b16 %r558,%r559,%r560; cvt.u32.u16 %r561,%r558; cvt.u16.u8 %r562,%r561; setp.eq.u16 %r563,%r562,0; @ %r563 bra $L82; .loc 1 552 10 cvta.const.u64 %r564,__mprec_tens; cvt.s64.s32 %r565,%r328; shl.b64 %r566,%r565,3; add.u64 %r567,%r564,%r566; ld.f64 %r210,[%r567]; .loc 1 553 19 shr.u32 %r569,%r344,31; .loc 1 553 31 set.u32.le.s32 %r571,%r236,0; neg.s32 %r572,%r571; .loc 1 553 23 cvt.u16.u32 %r575,%r569; cvt.u16.u32 %r576,%r572; and.b16 %r574,%r575,%r576; .loc 1 553 10 cvt.u32.u16 %r577,%r574; cvt.u16.u8 %r578,%r577; setp.eq.u16 %r579,%r578,0; @ %r579 bra $L83; .loc 1 556 7 setp.ne.u32 %r580,%r236,0; @ %r580 bra $L170; .loc 1 556 29 mul.f64 %r581,%r210,0d4014000000000000; .loc 1 556 17 mov.b64 %r582,%r337; setp.ge.f64 %r583,%r581,%r582; @ %r583 bra $L171; .loc 1 555 6 mov.u64 %r270,0; .loc 1 555 12 mov.u64 %r179,%r270; bra $L62; $L83: .loc 1 562 9 mov.b64 %r29,%r337; .loc 1 562 12 div.rn.f64 %r584,%r29,%r210; .loc 1 562 6 cvt.rzi.s32.f64 %r211,%r584; .loc 1 563 13 cvt.rn.f64.s32 %r585,%r211; .loc 1 563 8 neg.f64 %r586,%r585; fma.rn.f64 %r106,%r586,%r210,%r29; .loc 1 572 6 add.u64 %r234,%r56,1; .loc 1 572 15 cvt.u16.u32 %r589,%r211; add.u16 %r588,%r589,48; .loc 1 572 9 cvt.u32.u16 %r590,%r588; st.u8 [%r56],%r590; add.u32 %r328,%r328,1; .loc 1 573 7 setp.eq.u32 %r591,%r236,1; @ %r591 bra $L84; .loc 1 590 14 mul.f64 %r190,%r106,0d4024000000000000; .loc 1 590 7 setp.eq.f64 %r592,%r190,0d0000000000000000; @ %r592 bra $L172; mov.u64 %r105,%r234; add.u32 %r594,%r236,-2; cvt.u64.u32 %r595,%r594; add.u64 %r279,%r105,%r595; bra $L85; $L84: .loc 1 575 12 add.f64 %r110,%r106,%r106; .loc 1 576 17 setp.gt.f64 %r596,%r110,%r210; @ ! %r596 bra $L269; ld.s8 %r305,[%r234+-1]; mov.u64 %r340,%r56; mov.u64 %r56,%r234; bra $L72; $L269: .loc 1 576 29 setp.neu.f64 %r597,%r110,%r210; @ %r597 bra $L173; .loc 1 576 51 and.b32 %r598,%r211,1; .loc 1 576 45 setp.eq.u32 %r599,%r598,0; @ %r599 bra $L174; ld.s8 %r305,[%r234+-1]; mov.u64 %r340,%r56; mov.u64 %r56,%r234; bra $L72; $L91: add.u64 %r301,%r301,-1; .loc 1 580 10 setp.eq.u64 %r600,%r340,%r960; @ %r600 bra $L88; ld.s8 %r305,[%r301]; mov.u64 %r56,%r960; add.u64 %r960,%r960,-1; bra $L89; $L88: add.u32 %r328,%r328,1; .loc 1 584 4 mov.u32 %r308,49; bra $L90; $L68: add.u32 %r328,%r205,1; .loc 1 506 11 mov.u64 %r340,%r442; .loc 1 503 10 mov.u64 %r56,%r268; $L72: add.u64 %r960,%r56,-1; mov.u64 %r301,%r960; $L89: .loc 1 579 11 cvt.u16.u32 %r601,%r305; setp.eq.u16 %r602,%r601,57; @ %r602 bra $L91; add.u16 %r604,%r601,1; cvt.u32.u16 %r606,%r604; cvt.s32.s8 %r308,%r606; $L90: .loc 1 586 5 cvt.u32.u32 %r607,%r308; st.u8 [%r960],%r607; bra $L67; $L270: .loc 1 590 14 mul.f64 %r190,%r106,0d4024000000000000; mov.u64 %r105,%r285; .loc 1 590 7 setp.eq.f64 %r608,%r190,0d0000000000000000; @ %r608 bra $L175; $L85: .loc 1 562 12 div.rn.f64 %r609,%r190,%r210; .loc 1 562 6 cvt.rzi.s32.f64 %r211,%r609; .loc 1 563 13 cvt.rn.f64.s32 %r610,%r211; .loc 1 563 8 neg.f64 %r611,%r610; fma.rn.f64 %r106,%r611,%r210,%r190; add.u64 %r285,%r105,1; mov.u64 %r234,%r285; .loc 1 572 15 cvt.u16.u32 %r614,%r211; add.u16 %r613,%r614,48; .loc 1 572 9 cvt.u32.u16 %r615,%r613; st.u8 [%r105],%r615; .loc 1 573 7 setp.eq.u64 %r616,%r105,%r279; @ ! %r616 bra $L270; bra $L84; $L82: .loc 1 599 6 setp.eq.u32 %r962,%r265,0; @ %r962 bra $L176; $L271: .loc 1 601 10 setp.gt.s32 %r618,%r343,1; @ %r618 bra $L94; .loc 1 605 45 setp.eq.u32 %r619,%r175,0; @ %r619 bra $L95; add.u32 %r213,%r97,1075; add.u32 %r173,%r173,%r213; mov.u32 %r172,%r161; .loc 1 596 6 mov.u32 %r171,%r160; add.u32 %r160,%r160,%r213; bra $L96; $L95: .loc 1 605 45 mov.u32 %r620,54; ld.u32 %r621,[%frame+4]; sub.u32 %r214,%r620,%r621; add.u32 %r173,%r173,%r214; mov.u32 %r172,%r161; .loc 1 596 6 mov.u32 %r171,%r160; .loc 1 605 45 add.u32 %r160,%r160,%r214; bra $L96; $L94: .loc 1 615 6 add.u32 %r215,%r236,-1; .loc 1 616 7 setp.lt.s32 %r622,%r161,%r215; @ %r622 bra $L97; .loc 1 617 9 sub.u32 %r172,%r161,%r215; bra $L98; $L97: .loc 1 620 16 sub.u32 %r623,%r215,%r161; .loc 1 620 11 add.u32 %r167,%r167,%r623; mov.u32 %r161,%r215; .loc 1 622 11 mov.u32 %r172,0; $L98: .loc 1 624 7 setp.lt.s32 %r624,%r236,0; @ %r624 bra $L99; add.u32 %r173,%r173,%r236; .loc 1 596 6 mov.u32 %r171,%r160; .loc 1 624 7 add.u32 %r160,%r160,%r236; bra $L96; $L99: .loc 1 626 11 sub.u32 %r171,%r160,%r236; $L96: .loc 1 632 13 mov.u32 %r626,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r626; call (%value_in),__i2b,(%out_arg1,%out_arg2); ld.param.u64 %r627,[%value_in]; } mov.u64 %r179,%r627; bra $L93; $L176: mov.u32 %r172,%r161; .loc 1 596 6 mov.u32 %r171,%r160; .loc 1 598 7 mov.u64 %r179,0; $L93: .loc 1 634 10 set.u32.gt.s32 %r629,%r171,0; neg.s32 %r630,%r629; .loc 1 634 20 set.u32.gt.s32 %r632,%r173,0; neg.s32 %r633,%r632; .loc 1 634 14 cvt.u16.u32 %r635,%r630; cvt.u16.u32 %r636,%r633; and.b16 %r634,%r635,%r636; .loc 1 634 6 cvt.u32.u16 %r637,%r634; cvt.u16.u8 %r638,%r637; setp.eq.u16 %r639,%r638,0; @ %r639 bra $L100; .loc 1 636 9 min.s32 %r217,%r171,%r173; .loc 1 637 10 sub.u32 %r160,%r160,%r217; .loc 1 638 10 sub.u32 %r171,%r171,%r217; .loc 1 639 10 sub.u32 %r173,%r173,%r217; $L100: .loc 1 641 6 setp.eq.u32 %r640,%r161,0; @ %r640 bra $L101; .loc 1 643 10 @ %r962 bra $L102; .loc 1 645 7 setp.le.s32 %r642,%r172,0; @ %r642 bra $L103; .loc 1 647 14 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r179; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r172; call (%value_in),__pow5mult,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r646,[%value_in]; } mov.u64 %r179,%r646; .loc 1 648 13 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r179; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r378; call (%value_in),__multiply,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r650,[%value_in]; } .loc 1 649 8 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r378; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 650 10 mov.u64 %r176,%r650; $L103: .loc 1 652 17 sub.u32 %r219,%r161,%r172; .loc 1 652 13 setp.eq.u32 %r653,%r219,0; @ %r653 bra $L101; .loc 1 653 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r176; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r219; call (%value_in),__pow5mult,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r657,[%value_in]; } mov.u64 %r176,%r657; bra $L101; $L102: .loc 1 656 6 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r378; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r161; call (%value_in),__pow5mult,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r661,[%value_in]; } mov.u64 %r176,%r661; $L101: .loc 1 658 7 mov.u32 %r663,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r663; call (%value_in),__i2b,(%out_arg1,%out_arg2); ld.param.u64 %r664,[%value_in]; } mov.u64 %r270,%r664; .loc 1 659 6 setp.le.s32 %r665,%r167,0; @ %r665 bra $L104; .loc 1 660 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r270; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r167; call (%value_in),__pow5mult,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r669,[%value_in]; } mov.u64 %r270,%r669; .loc 1 665 6 setp.le.s32 %r670,%r343,1; @ %r670 bra $L105; .loc 1 664 13 mov.u32 %r174,0; bra $L106; $L104: .loc 1 665 6 setp.gt.s32 %r671,%r343,1; @ %r671 bra $L177; .loc 1 667 22 and.b64 %r672,%r337,4503599627370495; .loc 1 667 10 setp.ne.u64 %r673,%r672,0; @ %r673 bra $L178; .loc 1 669 7 shr.u64 %r674,%r337,32; .loc 1 669 17 cvt.u32.u64 %r676,%r674; and.b32 %r675,%r676,2146435072; .loc 1 669 4 setp.eq.u32 %r677,%r675,0; @ %r677 bra $L179; $L156: .loc 1 674 7 add.u32 %r160,%r160,1; .loc 1 675 7 add.u32 %r173,%r173,1; .loc 1 676 14 mov.u32 %r174,1; bra $L107; $L177: .loc 1 664 13 mov.u32 %r174,0; bra $L107; $L178: mov.u32 %r174,0; bra $L107; $L179: cvt.u32.u64 %r174,%r672; $L107: .loc 1 689 53 setp.eq.u32 %r678,%r167,0; @ %r678 bra $L180; bra $L106; $L196: .loc 1 664 13 mov.u32 %r174,0; $L106: .loc 1 689 47 ld.u32 %r681,[%r270+20]; add.u32 %r680,%r681,-1; .loc 1 689 24 cvt.s64.s32 %r682,%r680; add.u64 %r683,%r682,4; shl.b64 %r684,%r683,2; add.u64 %r685,%r270,%r684; ld.u32 %r679,[%r685+8]; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r679; call (%value_in),__hi0bits,(%out_arg1); ld.param.u32 %r687,[%value_in]; } .loc 1 689 53 mov.u32 %r688,32; sub.u32 %r186,%r688,%r687; bra $L108; $L180: mov.u32 %r186,1; $L108: .loc 1 689 58 add.u32 %r689,%r186,%r173; .loc 1 689 10 and.b32 %r220,%r689,31; .loc 1 689 6 setp.eq.u32 %r690,%r220,0; @ %r690 bra $L181; .loc 1 690 7 mov.u32 %r691,32; sub.u32 %r221,%r691,%r220; .loc 1 695 6 setp.le.s32 %r692,%r221,4; @ %r692 bra $L110; .loc 1 697 9 mov.u32 %r693,28; sub.u32 %r222,%r693,%r220; .loc 1 698 10 add.u32 %r160,%r160,%r222; .loc 1 699 10 add.u32 %r171,%r171,%r222; .loc 1 700 10 add.u32 %r173,%r173,%r222; bra $L111; $L110: .loc 1 702 11 setp.eq.u32 %r694,%r221,4; @ %r694 bra $L111; mov.u32 %r695,60; sub.u32 %r312,%r695,%r220; bra $L109; $L181: mov.u32 %r312,28; $L109: .loc 1 705 10 add.u32 %r160,%r160,%r312; .loc 1 706 10 add.u32 %r171,%r171,%r312; .loc 1 707 10 add.u32 %r173,%r173,%r312; $L111: .loc 1 709 6 setp.le.s32 %r696,%r160,0; @ %r696 bra $L112; .loc 1 710 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r176; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r160; call (%value_in),__lshift,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r700,[%value_in]; } mov.u64 %r176,%r700; $L112: .loc 1 711 6 setp.le.s32 %r701,%r173,0; @ %r701 bra $L113; .loc 1 712 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r270; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r173; call (%value_in),__lshift,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r705,[%value_in]; } mov.u64 %r270,%r705; $L113: set.u32.gt.s32 %r707,%r343,2; neg.s32 %r708,%r707; cvt.u32.u32 %r706,%r708; cvt.u32.u8 %r329,%r706; .loc 1 713 6 setp.eq.u32 %r709,%r170,0; @ %r709 bra $L114; .loc 1 715 11 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r176; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r270; call (%value_in),__mcmp,(%out_arg1,%out_arg2); ld.param.u32 %r712,[%value_in]; } .loc 1 715 10 setp.ge.s32 %r713,%r712,0; @ %r713 bra $L114; .loc 1 717 5 add.u32 %r223,%r328,-1; .loc 1 718 8 mov.u32 %r717,0; mov.u32 %r716,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r176; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r716; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r717; call (%value_in),__multadd,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r718,[%value_in]; } mov.u64 %r176,%r718; set.u32.le.s32 %r720,%r272,0; neg.s32 %r721,%r720; cvt.u16.u32 %r723,%r721; cvt.u16.u32 %r724,%r329; and.b16 %r722,%r723,%r724; cvt.u32.u16 %r725,%r722; cvt.u32.u8 %r311,%r725; .loc 1 719 7 @ %r962 bra $L115; .loc 1 720 12 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r179; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r716; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r717; call (%value_in),__multadd,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r731,[%value_in]; } mov.u64 %r179,%r731; .loc 1 724 6 setp.ne.u32 %r732,%r311,0; @ %r732 bra $L182; mov.u32 %r236,%r272; bra $L117; $L114: .loc 1 724 12 set.u32.le.s32 %r734,%r236,0; neg.s32 %r735,%r734; .loc 1 724 17 cvt.u16.u32 %r737,%r735; cvt.u16.u32 %r738,%r329; and.b16 %r736,%r737,%r738; .loc 1 724 6 cvt.u32.u16 %r739,%r736; cvt.u16.u8 %r740,%r739; setp.eq.u16 %r741,%r740,0; @ %r741 bra $L118; bra $L116; $L182: .loc 1 717 5 mov.u32 %r328,%r223; .loc 1 724 6 mov.u32 %r236,%r272; bra $L116; $L190: .loc 1 717 5 mov.u32 %r328,%r223; .loc 1 724 6 mov.u32 %r236,%r272; $L116: .loc 1 726 10 setp.ne.u32 %r742,%r236,0; @ %r742 bra $L63; .loc 1 726 35 mov.u32 %r745,5; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r270; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r745; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r236; call (%value_in),__multadd,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r747,[%value_in]; } mov.u64 %r270,%r747; .loc 1 726 23 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r176; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r270; call (%value_in),__mcmp,(%out_arg1,%out_arg2); ld.param.u32 %r750,[%value_in]; } .loc 1 726 20 setp.gt.s32 %r751,%r750,0; @ %r751 bra $L62; bra $L63; $L168: .loc 1 484 6 mov.u64 %r270,0; .loc 1 484 12 mov.u64 %r179,%r270; bra $L63; $L170: .loc 1 555 6 mov.u64 %r270,0; .loc 1 555 12 mov.u64 %r179,%r270; bra $L63; $L171: .loc 1 555 6 mov.u64 %r270,0; .loc 1 555 12 mov.u64 %r179,%r270; $L63: .loc 1 730 6 not.b32 %r232,%r344; .loc 1 731 4 mov.u64 %r340,%r56; bra $L119; $L167: .loc 1 484 6 mov.u64 %r270,0; .loc 1 484 12 mov.u64 %r179,%r270; $L62: .loc 1 734 12 mov.u32 %r752,49; st.u8 [%r56],%r752; .loc 1 735 8 add.u32 %r232,%r328,1; .loc 1 736 7 mov.u64 %r340,%r56; .loc 1 734 9 add.u64 %r56,%r56,1; .loc 1 736 7 bra $L119; $L118: add.u32 %r328,%r328,1; .loc 1 738 6 @ %r962 bra $L120; $L117: .loc 1 740 10 setp.le.s32 %r754,%r171,0; @ %r754 bra $L121; .loc 1 741 8 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r179; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r171; call (%value_in),__lshift,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r758,[%value_in]; } mov.u64 %r179,%r758; $L121: .loc 1 748 10 setp.eq.u32 %r759,%r174,0; @ %r759 bra $L183; .loc 1 750 10 ld.u32 %r129,[%r179+8]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r129; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r762,[%value_in]; } .loc 1 751 4 ld.s32 %r766,[%r179+20]; add.u64 %r767,%r766,2; shl.b64 %r768,%r767,2; add.u64 %r769,%r179,16; add.u64 %r770,%r762,16; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r770; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r769; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r768; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r771,[%value_in]; } .loc 1 752 10 mov.u32 %r774,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r762; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r774; call (%value_in),__lshift,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r775,[%value_in]; } mov.u64 %r180,%r775; bra $L122; $L183: mov.u64 %r180,%r179; $L122: mov.u64 %r72,%r56; add.u32 %r776,%r236,-1; cvt.u64.u32 %r777,%r776; add.u64 %r260,%r777,%r56; .loc 1 766 40 cvt.u32.u64 %r965,%r337; and.b32 %r966,%r965,1; $L138: .loc 1 757 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r176; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r270; call (%value_in),quorem,(%out_arg1,%out_arg2); ld.param.u32 %r780,[%value_in]; } .loc 1 757 8 add.u32 %r162,%r780,48; .loc 1 761 8 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r176; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r179; call (%value_in),__mcmp,(%out_arg1,%out_arg2); ld.param.u32 %r783,[%value_in]; } .loc 1 762 12 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r270; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r180; call (%value_in),__mdiff,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r787,[%value_in]; } .loc 1 763 26 ld.u32 %r788,[%r787+16]; setp.ne.u32 %r789,%r788,0; @ %r789 bra $L123; .loc 1 763 28 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r176; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r787; call (%value_in),__mcmp,(%out_arg1,%out_arg2); ld.param.u32 %r792,[%value_in]; } mov.u32 %r227,%r792; .loc 1 764 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r787; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 766 16 or.b32 %r797,%r792,%r343; .loc 1 766 25 or.b32 %r798,%r966,%r797; setp.ne.u32 %r799,%r798,0; @ %r799 bra $L124; add.u64 %r183,%r72,1; .loc 1 768 11 setp.eq.u32 %r800,%r162,57; @ %r800 bra $L125; .loc 1 770 11 setp.le.s32 %r801,%r783,0; @ %r801 bra $L126; .loc 1 771 6 add.u32 %r162,%r780,49; $L126: .loc 1 772 13 st.u8 [%r72],%r162; .loc 1 773 8 mov.u64 %r178,%r179; mov.u64 %r179,%r180; bra $L127; $L124: add.u64 %r183,%r72,1; .loc 1 776 13 setp.lt.s32 %r802,%r783,0; @ %r802 bra $L128; .loc 1 776 35 or.b32 %r805,%r783,%r343; .loc 1 778 8 or.b32 %r806,%r966,%r805; setp.ne.u32 %r807,%r806,0; @ %r807 bra $L129; $L128: .loc 1 782 11 setp.le.s32 %r808,%r227,0; @ %r808 bra $L130; .loc 1 784 9 mov.u32 %r811,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r176; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r811; call (%value_in),__lshift,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r812,[%value_in]; } mov.u64 %r176,%r812; .loc 1 785 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r176; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r270; call (%value_in),__mcmp,(%out_arg1,%out_arg2); ld.param.u32 %r815,[%value_in]; } .loc 1 786 21 setp.gt.s32 %r816,%r815,0; @ %r816 bra $L131; .loc 1 786 32 setp.ne.u32 %r817,%r815,0; @ %r817 bra $L130; .loc 1 786 54 and.b32 %r818,%r162,1; .loc 1 786 46 setp.eq.u32 %r819,%r818,0; @ %r819 bra $L130; $L131: .loc 1 787 9 setp.eq.u32 %r820,%r162,57; @ %r820 bra $L125; .loc 1 787 15 add.u32 %r162,%r780,49; $L130: .loc 1 790 13 st.u8 [%r72],%r162; .loc 1 791 8 mov.u64 %r178,%r179; mov.u64 %r179,%r180; bra $L127; $L129: .loc 1 793 7 setp.le.s32 %r821,%r227,0; @ %r821 bra $L132; .loc 1 795 11 setp.ne.u32 %r822,%r162,57; @ %r822 bra $L133; $L125: .loc 1 798 10 mov.u32 %r823,57; st.u8 [%r72],%r823; .loc 1 799 5 mov.u64 %r178,%r179; mov.u64 %r179,%r180; mov.u32 %r309,57; bra $L134; $L133: .loc 1 801 19 cvt.u16.u32 %r826,%r162; add.u16 %r825,%r826,1; .loc 1 801 13 cvt.u32.u16 %r827,%r825; st.u8 [%r72],%r827; .loc 1 802 8 mov.u64 %r178,%r179; mov.u64 %r179,%r180; bra $L127; $L132: .loc 1 804 9 st.u8 [%r72],%r162; .loc 1 805 7 setp.eq.u64 %r828,%r260,%r72; @ %r828 bra $L184; .loc 1 807 8 mov.u32 %r832,0; mov.u32 %r831,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r176; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r831; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r832; call (%value_in),__multadd,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r833,[%value_in]; } mov.u64 %r176,%r833; .loc 1 808 7 setp.ne.u64 %r834,%r179,%r180; @ %r834 bra $L136; .loc 1 809 18 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r179; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r831; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r832; call (%value_in),__multadd,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r839,[%value_in]; } mov.u64 %r179,%r839; mov.u64 %r180,%r179; bra $L137; $L136: .loc 1 812 14 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r179; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r831; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r832; call (%value_in),__multadd,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r844,[%value_in]; } mov.u64 %r179,%r844; .loc 1 813 14 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r180; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r831; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r832; call (%value_in),__multadd,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r849,[%value_in]; } mov.u64 %r180,%r849; $L137: mov.u64 %r72,%r183; .loc 1 757 8 bra $L138; $L120: .loc 1 724 6 mov.u64 %r259,%r56; .loc 1 821 5 mov.u32 %r854,1; cvt.u32.u64 %r855,%r56; sub.u32 %r853,%r854,%r855; $L139: .loc 1 820 15 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r176; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r270; call (%value_in),quorem,(%out_arg1,%out_arg2); ld.param.u32 %r852,[%value_in]; } .loc 1 820 13 add.u32 %r162,%r852,48; add.u64 %r183,%r259,1; .loc 1 820 7 st.u8 [%r259],%r162; .loc 1 821 5 cvt.u32.u64 %r857,%r259; add.u32 %r856,%r853,%r857; setp.ge.s32 %r858,%r856,%r236; @ %r858 bra $L185; .loc 1 823 6 mov.u32 %r862,0; mov.u32 %r861,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r176; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r861; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r862; call (%value_in),__multadd,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r863,[%value_in]; } mov.u64 %r176,%r863; mov.u64 %r259,%r183; .loc 1 820 7 bra $L139; $L184: mov.u64 %r178,%r179; mov.u64 %r179,%r180; bra $L135; $L185: .loc 1 598 13 mov.u64 %r178,0; $L135: .loc 1 828 7 mov.u32 %r866,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r176; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r866; call (%value_in),__lshift,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r867,[%value_in]; } mov.u64 %r176,%r867; .loc 1 829 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r176; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r270; call (%value_in),__mcmp,(%out_arg1,%out_arg2); ld.param.u32 %r870,[%value_in]; } .loc 1 830 6 setp.gt.s32 %r871,%r870,0; @ %r871 bra $L140; ld.s8 %r309,[%r183+-1]; .loc 1 830 15 setp.ne.u32 %r872,%r870,0; @ %r872 bra $L141; .loc 1 830 36 and.b32 %r873,%r162,1; .loc 1 830 28 setp.ne.u32 %r874,%r873,0; @ %r874 bra $L134; bra $L141; $L144: add.u64 %r278,%r278,-1; .loc 1 834 5 setp.eq.u64 %r875,%r961,%r56; @ %r875 bra $L142; ld.s8 %r309,[%r278]; mov.u64 %r183,%r961; add.u64 %r961,%r961,-1; bra $L143; $L142: .loc 1 837 11 mov.u32 %r876,49; st.u8 [%r56],%r876; add.u32 %r328,%r328,1; .loc 1 838 6 bra $L127; $L140: ld.s8 %r309,[%r183+-1]; $L134: add.u64 %r961,%r183,-1; mov.u64 %r278,%r961; $L143: .loc 1 833 13 cvt.u16.u32 %r877,%r309; setp.eq.u16 %r878,%r877,57; @ %r878 bra $L144; .loc 1 840 7 add.u16 %r880,%r877,1; cvt.u32.u16 %r882,%r880; st.u8 [%r961],%r882; bra $L127; $L141: add.u64 %r275,%r183,-1; $L145: add.u64 %r183,%r275,1; add.u64 %r275,%r275,-1; .loc 1 844 13 cvt.u16.u32 %r883,%r309; setp.ne.u16 %r884,%r883,48; @ %r884 bra $L127; ld.s8 %r309,[%r275]; bra $L145; $L127: .loc 1 848 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r270; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 849 6 setp.eq.u64 %r887,%r179,0; @ %r887 bra $L186; .loc 1 851 11 set.u32.ne.u64 %r889,%r178,0; neg.s32 %r890,%r889; .loc 1 851 22 set.u32.ne.u64 %r892,%r178,%r179; neg.s32 %r893,%r892; .loc 1 851 15 cvt.u16.u32 %r895,%r890; cvt.u16.u32 %r896,%r893; and.b16 %r894,%r895,%r896; .loc 1 851 10 cvt.u32.u16 %r897,%r894; cvt.u16.u8 %r898,%r897; setp.eq.u16 %r899,%r898,0; @ %r899 bra $L187; .loc 1 852 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r178; call _Bfree,(%out_arg1,%out_arg2); } mov.u64 %r340,%r56; mov.u64 %r56,%r183; bra $L146; $L187: mov.u64 %r340,%r56; mov.u64 %r56,%r183; $L146: .loc 1 853 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r179; call _Bfree,(%out_arg1,%out_arg2); } bra $L67; $L172: .loc 1 590 7 mov.u64 %r340,%r56; .loc 1 572 6 mov.u64 %r56,%r234; bra $L67; $L173: mov.u64 %r340,%r56; mov.u64 %r56,%r234; bra $L67; $L174: mov.u64 %r340,%r56; mov.u64 %r56,%r234; bra $L67; $L175: mov.u64 %r340,%r56; mov.u64 %r56,%r105; bra $L67; $L186: .loc 1 855 1 mov.u64 %r340,%r56; mov.u64 %r56,%r183; $L67: .loc 1 856 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r176; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 857 6 mov.u32 %r906,0; st.u8 [%r56],%r906; .loc 1 858 10 st.u32 [%r345],%r328; .loc 1 859 6 setp.eq.u64 %r907,%r347,0; @ %r907 bra $L18; .loc 1 860 10 st.u64 [%r347],%r56; bra $L18; $L157: .loc 1 288 14 cvta.const.u64 %r340,$LC2; bra $L18; $L23: .loc 1 270 10 setp.ne.u64 %r909,%r347,0; @ %r909 bra $L188; .loc 1 267 52 cvta.const.u64 %r340,$LC0; bra $L18; $L263: .loc 1 270 10 setp.ne.u64 %r910,%r347,0; @ %r910 bra $L189; .loc 1 267 52 cvta.const.u64 %r340,$LC1; bra $L18; $L119: .loc 1 848 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r270; call _Bfree,(%out_arg1,%out_arg2); } add.u32 %r328,%r232,1; .loc 1 849 6 setp.ne.u64 %r913,%r179,0; @ %r913 bra $L146; bra $L67; $L115: .loc 1 724 6 setp.ne.u32 %r914,%r311,0; @ %r914 bra $L190; mov.u32 %r236,%r272; bra $L120; $L59: .loc 1 480 20 cvt.rn.f64.s32 %r915,%r165; .loc 1 480 26 fma.rn.f64 %r291,%r915,%r316,0d401c000000000000; .loc 1 480 13 mov.b64 %r339,%r291; .loc 1 481 19 shr.u64 %r917,%r339,32; cvt.u32.u64 %r919,%r917; add.u32 %r918,%r919,-54525952; cvt.u64.u32 %r920,%r918; shl.b64 %r921,%r920,32; and.b64 %r922,%r339,4294967295; or.b64 %r339,%r922,%r921; bra $L148; $L123: .loc 1 764 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r787; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 763 26 mov.u32 %r227,1; bra $L124; $L160: mov.u32 %r343,0; .loc 1 392 10 mov.u32 %r304,%r343; .loc 1 399 13 mov.u32 %r265,1; .loc 1 400 8 mov.u32 %r236,-1; .loc 1 406 15 mov.u32 %r344,%r343; bra $L39; $L162: .loc 1 413 10 mov.u32 %r344,1; mov.u32 %r236,%r344; $L39: .loc 1 427 32 mov.u32 %r926,0; st.u32 [%r341+104],%r926; mov.u32 %r272,%r236; mov.u32 %r53,%r926; bra $L42; $L153: mov.u32 %r927,0; st.u32 [%r341+104],%r927; .loc 1 430 27 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r341; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r927; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r930,[%value_in]; } mov.u64 %r56,%r930; .loc 1 430 25 st.u64 [%r341+96],%r56; .loc 1 549 10 ld.u32 %r97,[%frame]; .loc 1 549 15 set.u32.le.s32 %r932,%r328,14; neg.s32 %r933,%r932; .loc 1 549 6 not.b32 %r935,%r97; shr.u32 %r936,%r935,31; .loc 1 549 15 cvt.u16.u32 %r939,%r933; cvt.u16.u32 %r940,%r936; and.b16 %r938,%r939,%r940; cvt.u32.u16 %r941,%r938; cvt.u16.u8 %r942,%r941; setp.ne.u16 %r943,%r942,0; @ %r943 bra $L149; .loc 1 406 15 mov.u32 %r344,%r927; .loc 1 400 8 mov.u32 %r236,-1; .loc 1 400 16 mov.u32 %r272,%r236; setp.eq.u32 %r962,1,0; bra $L271; $L161: mov.u32 %r304,1; $L40: setp.eq.u32 %r944,%r343,3; @ %r944 bra $L191; setp.gt.s32 %r945,%r343,3; @ %r945 bra $L151; setp.eq.u32 %r946,%r343,2; @ %r946 bra $L192; bra $L153; $L151: setp.eq.u32 %r947,%r343,4; @ %r947 bra $L193; setp.eq.u32 %r948,%r343,5; @ %r948 bra $L194; bra $L153; $L264: .loc 1 369 6 setp.ge.s32 %r949,%r173,0; @ %r949 bra $L195; .loc 1 366 15 mov.u32 %r170,0; bra $L155; $L105: .loc 1 667 22 and.b64 %r950,%r337,4503599627370495; .loc 1 667 10 setp.ne.u64 %r951,%r950,0; @ %r951 bra $L196; .loc 1 669 7 shr.u64 %r952,%r337,32; .loc 1 669 17 cvt.u32.u64 %r954,%r952; and.b32 %r953,%r954,2146435072; .loc 1 669 4 setp.ne.u32 %r955,%r953,0; @ %r955 bra $L156; .loc 1 664 13 cvt.u32.u64 %r174,%r950; bra $L106; $L149: .loc 1 552 10 cvta.const.u64 %r956,__mprec_tens; cvt.s64.s32 %r957,%r328; shl.b64 %r958,%r957,3; add.u64 %r959,%r956,%r958; ld.f64 %r210,[%r959]; .loc 1 400 8 mov.u32 %r236,-1; bra $L83; $L18: .loc 1 862 1 mov.u64 %value,%r340; st.shared.u64 [%sspslot],%sspprev; st.param.u64 [%value_out],%value; ret; } /0 1591654536 399 399 100644 2066 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 20 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 21 1 mov.u64 %value,%r38; st.param.u64 [%value_out],%value; ret; } lib_a-ecvtbuf.o/1591654536 399 399 100644 36573 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r26; .reg .u64 %r41; .reg .u64 %r42; .reg .u64 %r43; .reg .u64 %r44; .reg .u64 %r46; .reg .u64 %r47; .reg .u32 %r49; .reg .u32 %r50; .reg .u32 %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .f64 %r68; .reg .u32 %r69; .reg .u32 %r70; .reg .u32 %r71; .reg .u32 %r74; .reg .u64 %r79; .reg .u64 %r80; .reg .u32 %r81; .reg .u64 %r82; .reg .pred %r83; .reg .u64 %r86; .reg .u32 %r87; .reg .u32 %r88; .reg .pred %r89; .reg .u32 %r90; .reg .u16 %r92; .reg .u32 %r93; .reg .u32 %r94; .reg .u32 %r96; .reg .u32 %r97; .reg .u16 %r98; .reg .u16 %r99; .reg .u16 %r100; .reg .u32 %r101; .reg .u16 %r102; .reg .pred %r103; .reg .u32 %r104; .reg .u32 %r106; .reg .u32 %r107; .reg .u16 %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 .u16 %r118; .reg .pred %r119; .reg .pred %r121; .reg .u16 %r122; .reg .pred %r123; .reg .pred %r125; .reg .pred %r126; .reg .u64 %r128; .reg .u64 %r129; .reg .u32 %r130; .reg .pred %r131; .reg .u64 %r133; .reg .u64 %r134; .reg .u32 %r135; .reg .pred %r136; .reg .u32 %r137; .reg .u32 %r138; .reg .u32 %r139; .reg .pred %r140; .reg .u16 %r142; .reg .u16 %r143; .reg .u32 %r144; .reg .u16 %r147; .reg .u16 %r148; .reg .u32 %r149; .reg .u32 %r151; .reg .u32 %r152; .reg .u32 %r153; .reg .u32 %r155; .reg .u16 %r157; .reg .u16 %r158; .reg .u32 %r159; .reg .u32 %r160; .reg .u32 %r161; mov.u64 %r66,%ar0; mov.u64 %r67,%ar1; mov.f64 %r68,%ar2; mov.u32 %r69,%ar3; mov.u32 %r70,%ar4; mov.u32 %r71,%ar5; .loc 1 161 7 add.u64 %r79,%frame,12; add.u64 %r80,%frame,8; add.u32 %r81,%r69,1; mov.u32 %r74,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r66; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r68; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r74; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r81; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r80; .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 %r82,[%value_in]; } .loc 1 163 13 ld.u32 %r23,[%frame+8]; .loc 1 163 6 setp.ne.u32 %r83,%r23,9999; @ %r83 bra $L2; .loc 1 165 7 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r67; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r82; call (%value_in),strcpy,(%out_arg1,%out_arg2); ld.param.u64 %r86,[%value_in]; } bra $L1; $L2: .loc 1 169 14 add.u64 %r46,%r82,1; .loc 1 169 10 ld.u8 %r87,[%r82]; st.u8 [%r67],%r87; .loc 1 170 11 or.b32 %r88,%r69,%r71; .loc 1 170 6 setp.eq.u32 %r89,%r88,0; @ %r89 bra $L4; .loc 1 171 9 add.u64 %r41,%r67,2; .loc 1 171 12 mov.u32 %r90,46; st.u8 [%r67+1],%r90; .loc 1 173 10 ld.s8 %r26,[%r82+1]; .loc 1 173 9 cvt.u16.u32 %r92,%r26; set.u32.ne.u16 %r93,%r92,0; neg.s32 %r94,%r93; .loc 1 173 13 set.u32.gt.s32 %r96,%r69,0; neg.s32 %r97,%r96; cvt.u16.u32 %r99,%r94; cvt.u16.u32 %r100,%r97; and.b16 %r98,%r99,%r100; cvt.u32.u16 %r101,%r98; cvt.u16.u8 %r102,%r101; setp.eq.u16 %r103,%r102,0; @ %r103 bra $L5; mov.u64 %r43,%r41; $L6: .loc 1 175 18 add.u64 %r46,%r46,1; add.u64 %r41,%r41,1; .loc 1 175 14 cvt.u32.u32 %r104,%r26; st.u8 [%r43],%r104; .loc 1 176 13 add.u32 %r69,%r69,-1; .loc 1 173 10 ld.s8 %r26,[%r46]; mov.u64 %r43,%r41; .loc 1 173 13 set.u32.gt.s32 %r106,%r69,0; neg.s32 %r107,%r106; .loc 1 173 9 cvt.u16.u32 %r109,%r26; set.u32.ne.u16 %r110,%r109,0; neg.s32 %r111,%r110; .loc 1 173 13 cvt.u16.u32 %r113,%r107; cvt.u16.u32 %r114,%r111; and.b16 %r112,%r113,%r114; cvt.u32.u16 %r115,%r112; cvt.u16.u8 %r116,%r115; setp.ne.u16 %r117,%r116,0; @ %r117 bra $L6; bra $L5; $L4: .loc 1 169 7 add.u64 %r41,%r67,1; .loc 1 182 6 cvt.u16.u32 %r118,%r70; setp.eq.u16 %r119,%r118,103; @ %r119 bra $L12; .loc 1 184 11 setp.eq.u16 %r121,%r118,71; .loc 1 185 10 selp.u32 %r70,69,%r70,%r121; bra $L7; $L5: .loc 1 182 6 cvt.u16.u32 %r122,%r70; setp.eq.u16 %r123,%r122,103; @ %r123 bra $L14; .loc 1 184 11 setp.eq.u16 %r125,%r122,71; @ %r125 bra $L15; .loc 1 188 13 setp.le.s32 %r126,%r69,0; @ %r126 bra $L7; mov.u64 %r47,%r41; add.u32 %r161,%r69,-1; cvt.u64.u32 %r128,%r161; add.u64 %r129,%r41,1; add.u64 %r44,%r128,%r129; .loc 1 190 11 mov.u32 %r130,48; $L8: st.u8 [%r47],%r130; add.u64 %r47,%r47,1; .loc 1 188 13 setp.ne.u64 %r131,%r44,%r47; @ %r131 bra $L8; cvt.s64.s32 %r133,%r161; add.u64 %r134,%r133,1; add.u64 %r41,%r41,%r134; bra $L7; $L12: .loc 1 183 10 mov.u32 %r70,101; bra $L7; $L14: mov.u32 %r70,101; bra $L7; $L15: .loc 1 185 10 mov.u32 %r70,69; $L7: .loc 1 197 10 cvt.u32.u32 %r135,%r70; st.u8 [%r41],%r135; .loc 1 198 8 add.u32 %r65,%r23,-1; add.u64 %r42,%r41,2; .loc 1 199 6 setp.ge.s32 %r136,%r65,0; @ %r136 bra $L9; .loc 1 201 14 mov.u32 %r137,45; st.u8 [%r41+1],%r137; .loc 1 202 15 mov.u32 %r138,1; sub.u32 %r65,%r138,%r23; bra $L10; $L9: .loc 1 206 14 mov.u32 %r139,43; st.u8 [%r41+1],%r139; $L10: .loc 1 208 6 setp.le.s32 %r140,%r65,99; @ %r140 bra $L11; .loc 1 210 11 div.s32 %r49,%r65,100; .loc 1 211 11 add.u64 %r42,%r41,3; .loc 1 211 20 cvt.u16.u32 %r143,%r49; add.u16 %r142,%r143,48; .loc 1 211 14 cvt.u32.u16 %r144,%r142; st.u8 [%r41+2],%r144; .loc 1 212 13 mad.lo.u32 %r65,%r49,-100,%r65; $L11: .loc 1 214 7 div.s32 %r50,%r65,10; .loc 1 215 16 cvt.u16.u32 %r148,%r50; add.u16 %r147,%r148,48; .loc 1 215 10 cvt.u32.u16 %r149,%r147; st.u8 [%r42],%r149; .loc 1 216 16 shl.b32 %r151,%r50,2; add.u32 %r152,%r151,%r50; add.u32 %r153,%r152,%r152; .loc 1 216 9 sub.u32 %r155,%r65,%r153; .loc 1 217 18 cvt.u16.u32 %r158,%r155; add.u16 %r157,%r158,48; .loc 1 217 10 cvt.u32.u16 %r159,%r157; st.u8 [%r42+1],%r159; .loc 1 219 10 mov.u32 %r160,0; st.u8 [%r42+2],%r160; $L1: .loc 1 220 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 %r30; .reg .u64 %r32; .reg .u64 %r33; .reg .u32 %r34; .reg .u64 %r38; .reg .u64 %r43; .reg .u64 %r44; .reg .u64 %r45; .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 .pred %r66; .reg .pred %r67; .reg .u32 %r70; .reg .u64 %r75; .reg .u32 %r78; .reg .u64 %r83; .reg .u32 %r84; .reg .u64 %r85; .reg .pred %r86; .reg .u32 %r87; .reg .u64 %r88; .reg .pred %r89; .reg .pred %r90; .reg .u32 %r91; .reg .u32 %r92; .reg .u64 %r93; .reg .u32 %r94; .reg .pred %r95; .reg .u64 %r96; .reg .u32 %r97; mov.f64 %r51,%ar0; mov.u32 %r52,%ar1; mov.u64 %r53,%ar2; mov.u64 %r54,%ar3; mov.u64 %r55,%ar4; .loc 1 236 18 ld.global.u64 %r32,[_impure_ptr]; .loc 1 242 6 setp.ne.u64 %r56,%r55,0; @ %r56 bra $L22; ld.u64 %r55,[%r32+136]; .loc 1 244 36 add.u32 %r57,%r52,35; .loc 1 244 10 ld.u32 %r58,[%r32+128]; setp.gt.s32 %r59,%r58,%r57; @ %r59 bra $L22; .loc 1 247 20 add.u32 %r24,%r52,36; .loc 1 246 29 cvt.s64.s32 %r63,%r24; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .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 246 7 setp.eq.u64 %r65,%r55,0; @ %r65 bra $L33; .loc 1 249 19 st.u32 [%r32+128],%r24; .loc 1 250 19 st.u64 [%r32+136],%r55; $L22: .loc 1 258 6 setp.lt.f64 %r66,%r51,0d3ff0000000000000; @ ! %r66 bra $L25; .loc 1 258 21 setp.gt.f64 %r67,%r51,0dbff0000000000000; @ ! %r67 bra $L25; .loc 1 260 11 mov.u32 %r70,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r51; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r70; .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 %r75,[%value_in]; } mov.u64 %r30,%r75; .loc 1 260 9 bra $L28; $L25: .loc 1 264 11 mov.u32 %r78,3; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r51; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r78; .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 %r83,[%value_in]; } mov.u64 %r30,%r83; $L28: .loc 1 269 8 ld.u32 %r84,[%r53]; neg.s32 %r34,%r84; .loc 1 270 9 ld.u64 %r85,[%frame]; setp.ge.u64 %r86,%r30,%r85; @ %r86 bra $L34; mov.u64 %r33,%r55; mov.u64 %r45,%r30; $L30: add.u64 %r38,%r33,1; .loc 1 272 19 ld.u8 %r87,[%r45]; st.u8 [%r33],%r87; .loc 1 273 11 add.u32 %r34,%r34,1; add.u64 %r45,%r45,1; mov.u64 %r33,%r38; .loc 1 270 9 ld.u64 %r88,[%frame]; setp.gt.u64 %r89,%r88,%r45; @ %r89 bra $L30; bra $L29; $L34: mov.u64 %r38,%r55; $L29: .loc 1 276 9 setp.le.s32 %r90,%r52,%r34; @ %r90 bra $L31; mov.u64 %r29,%r38; add.u32 %r91,%r52,-1; sub.u32 %r92,%r91,%r34; cvt.u64.u32 %r43,%r92; add.u64 %r93,%r38,1; add.u64 %r44,%r93,%r43; .loc 1 278 19 mov.u32 %r94,48; $L32: st.u8 [%r29],%r94; add.u64 %r29,%r29,1; .loc 1 276 9 setp.ne.u64 %r95,%r29,%r44; @ %r95 bra $L32; add.u64 %r96,%r43,1; add.u64 %r38,%r38,%r96; $L31: .loc 1 281 15 mov.u32 %r97,0; st.u8 [%r38],%r97; .loc 1 282 10 mov.u64 %r50,%r55; bra $L21; $L33: .loc 1 248 13 mov.u64 %r50,%r64; $L21: .loc 1 283 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 %r31; .reg .u32 %r32; .reg .u64 %r35; .reg .u64 %r41; .reg .u64 %r42; .reg .u64 %r43; .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 293 18 ld.global.u64 %r29,[_impure_ptr]; .loc 1 299 6 setp.ne.u64 %r54,%r53,0; @ %r54 bra $L40; ld.u64 %r53,[%r29+136]; .loc 1 301 10 ld.u32 %r55,[%r29+128]; setp.gt.s32 %r56,%r55,%r50; @ %r56 bra $L40; .loc 1 304 20 add.u32 %r23,%r50,1; .loc 1 303 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 303 7 setp.eq.u64 %r62,%r53,0; @ %r62 bra $L47; .loc 1 306 19 st.u32 [%r29+128],%r23; .loc 1 307 19 st.u64 [%r29+136],%r53; $L40: .loc 1 315 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 319 9 ld.u64 %r71,[%frame]; setp.ge.u64 %r72,%r70,%r71; @ %r72 bra $L48; mov.u64 %r31,%r53; mov.u64 %r43,%r70; .loc 1 297 7 mov.u32 %r32,0; $L44: add.u64 %r35,%r31,1; .loc 1 321 19 ld.u8 %r73,[%r43]; st.u8 [%r31],%r73; .loc 1 322 11 add.u32 %r32,%r32,1; add.u64 %r43,%r43,1; mov.u64 %r31,%r35; .loc 1 319 9 ld.u64 %r74,[%frame]; setp.gt.u64 %r75,%r74,%r43; @ %r75 bra $L44; bra $L43; $L48: mov.u64 %r35,%r53; .loc 1 297 7 mov.u32 %r32,0; $L43: .loc 1 325 9 setp.le.s32 %r76,%r50,%r32; @ %r76 bra $L45; mov.u64 %r27,%r35; add.u32 %r77,%r50,-1; sub.u32 %r78,%r77,%r32; cvt.u64.u32 %r41,%r78; add.u64 %r79,%r35,1; add.u64 %r42,%r79,%r41; .loc 1 327 19 mov.u32 %r80,48; $L46: st.u8 [%r27],%r80; add.u64 %r27,%r27,1; .loc 1 325 9 setp.ne.u64 %r81,%r27,%r42; @ %r81 bra $L46; add.u64 %r82,%r41,1; add.u64 %r35,%r35,%r82; $L45: .loc 1 330 15 mov.u32 %r83,0; st.u8 [%r35],%r83; .loc 1 331 10 mov.u64 %r48,%r53; bra $L39; $L47: .loc 1 305 13 mov.u64 %r48,%r61; $L39: .loc 1 332 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 %r24; .reg .u32 %r26; .reg .u32 %r28; .reg .u32 %r29; .reg .u64 %r30; .reg .u32 %r33; .reg .u32 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u64 %r43; .reg .u64 %r46; .reg .u64 %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .u32 %r54; .reg .u32 %r63; .reg .u64 %r68; .reg .u64 %r70; .reg .u32 %r73; .reg .u64 %r75; .reg .u64 %r85; .reg .f64 %r86; .reg .u32 %r87; .reg .u64 %r88; .reg .u32 %r89; .reg .u32 %r90; .reg .pred %r91; .reg .pred %r92; .reg .u32 %r93; .reg .u32 %r94; .reg .pred %r95; .reg .u32 %r102; .reg .f64 %r104; .reg .pred %r105; .reg .pred %r106; .reg .u32 %r109; .reg .u64 %r114; .reg .u64 %r115; .reg .u64 %r116; .reg .u32 %r119; .reg .u64 %r124; .reg .u64 %r125; .reg .u64 %r126; .reg .pred %r127; .reg .pred %r128; .reg .pred %r129; .reg .u64 %r132; .reg .u32 %r133; .reg .u32 %r134; .reg .pred %r135; .reg .u32 %r137; .reg .u32 %r138; .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 .pred %r148; .reg .u32 %r149; .reg .u32 %r151; .reg .u32 %r152; .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 .u16 %r163; .reg .u32 %r164; .reg .pred %r165; .reg .pred %r166; .reg .u32 %r167; .reg .u32 %r168; .reg .u32 %r169; .reg .u32 %r170; .reg .u32 %r171; .reg .u32 %r173; .reg .u16 %r175; .reg .u16 %r176; .reg .u16 %r177; .reg .u32 %r178; .reg .u16 %r179; .reg .pred %r180; .reg .u32 %r181; .reg .u32 %r182; .reg .u32 %r183; .reg .u32 %r184; .reg .u32 %r186; .reg .u16 %r188; .reg .u16 %r189; .reg .u16 %r190; .reg .u32 %r191; .reg .u16 %r192; .reg .pred %r193; .reg .u16 %r195; .reg .u32 %r196; .reg .u32 %r197; .reg .u16 %r198; .reg .u16 %r199; .reg .u16 %r200; .reg .u32 %r201; .reg .u16 %r202; .reg .pred %r203; .reg .u32 %r204; .reg .u16 %r206; .reg .u32 %r207; .reg .u32 %r208; .reg .u32 %r210; .reg .u32 %r211; .reg .u16 %r212; .reg .u16 %r213; .reg .u16 %r214; .reg .u32 %r215; .reg .u16 %r216; .reg .pred %r217; .reg .pred %r218; .reg .pred %r219; .reg .u64 %r221; .reg .u64 %r222; .reg .u32 %r223; .reg .pred %r224; .reg .u64 %r226; .reg .u64 %r227; .reg .u32 %r228; .reg .u32 %r230; mov.u64 %r85,%ar0; mov.f64 %r86,%ar1; mov.u32 %r87,%ar2; mov.u64 %r88,%ar3; mov.u32 %r89,%ar4; mov.u32 %r90,%ar5; .loc 1 347 6 setp.lt.f64 %r91,%r86,0d0000000000000000; @ ! %r91 bra $L52; .loc 1 349 15 neg.f64 %r86,%r86; $L52: .loc 1 352 6 setp.neu.f64 %r92,%r86,0d0000000000000000; @ %r92 bra $L54; .loc 1 354 14 mov.u32 %r93,48; st.u8 [%r88],%r93; .loc 1 355 12 mov.u32 %r94,0; st.u8 [%r88+1],%r94; bra $L55; $L54: .loc 1 363 6 setp.le.f64 %r95,%r86,0d3f1a36e2eb1c432d; @ ! %r95 bra $L97; $L58: .loc 1 372 7 add.u32 %r102,%r87,-1; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r85; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r88; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r86; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r102; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r89; .param .u32 %out_arg6; st.param.u32 [%out_arg6],%r90; call print_e,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); } bra $L55; $L97: .loc 1 363 39 { .param .f64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r87; call (%value_in),_mprec_log10,(%out_arg1); ld.param.f64 %r104,[%value_in]; } .loc 1 363 25 setp.le.f64 %r105,%r104,%r86; @ %r105 bra $L58; .loc 1 381 10 setp.lt.f64 %r106,%r86,0d3ff0000000000000; @ ! %r106 bra $L98; .loc 1 384 8 add.u64 %r114,%frame,8; add.u64 %r115,%frame,12; mov.u32 %r109,3; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r85; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r86; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r109; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r87; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r115; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r114; .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 %r48,%r116; bra $L61; $L98: .loc 1 388 8 add.u64 %r124,%frame,8; add.u64 %r125,%frame,12; mov.u32 %r119,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r85; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r86; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r119; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r87; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r125; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r124; .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 %r48,%r126; $L61: .loc 1 391 17 ld.u32 %r24,[%frame+12]; .loc 1 391 10 setp.eq.u32 %r127,%r24,9999; @ %r127 bra $L62; .loc 1 396 14 ld.s8 %r29,[%r48]; .loc 1 396 13 setp.eq.u32 %r128,%r29,0; @ %r128 bra $L79; .loc 1 396 17 setp.gt.s32 %r129,%r24,0; @ %r129 bra $L64; mov.u64 %r46,%r88; mov.u32 %r26,%r87; bra $L68; $L62: .loc 1 393 4 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r88; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r48; call (%value_in),strcpy,(%out_arg1,%out_arg2); ld.param.u64 %r132,[%value_in]; } bra $L55; $L64: mov.u64 %r50,%r88; .loc 1 396 17 mov.u32 %r28,%r24; $L69: .loc 1 398 15 add.u64 %r48,%r48,1; add.u64 %r46,%r50,1; .loc 1 398 11 cvt.u32.u32 %r133,%r29; st.u8 [%r50],%r133; .loc 1 399 9 add.u32 %r28,%r28,-1; st.u32 [%frame+12],%r28; sub.u32 %r134,%r28,%r24; add.u32 %r26,%r134,%r87; .loc 1 396 14 ld.s8 %r29,[%r48]; .loc 1 396 13 setp.ne.u32 %r135,%r29,0; @ %r135 bra $L66; bra $L63; $L79: mov.u32 %r28,%r24; mov.u64 %r46,%r88; mov.u32 %r26,%r87; $L63: .loc 1 403 24 set.u32.gt.s32 %r137,%r26,0; neg.s32 %r138,%r137; .loc 1 403 13 set.u32.gt.s32 %r140,%r28,0; neg.s32 %r141,%r140; .loc 1 403 24 cvt.u16.u32 %r143,%r138; cvt.u16.u32 %r144,%r141; and.b16 %r142,%r143,%r144; cvt.u32.u16 %r145,%r142; cvt.u16.u8 %r146,%r145; setp.ne.u16 %r147,%r146,0; @ %r147 bra $L67; bra $L68; $L66: mov.u64 %r50,%r46; .loc 1 396 17 setp.ne.u32 %r148,%r28,0; @ %r148 bra $L69; bra $L68; $L67: add.u32 %r73,%r28,-1; mov.u64 %r75,%r46; .loc 1 405 11 mov.u32 %r149,48; $L70: add.u64 %r46,%r46,1; st.u8 [%r75],%r149; .loc 1 406 9 mov.u32 %r33,%r73; .loc 1 407 10 add.u32 %r26,%r26,-1; add.u32 %r73,%r73,-1; mov.u64 %r75,%r46; .loc 1 403 13 set.u32.gt.s32 %r151,%r33,0; neg.s32 %r152,%r151; .loc 1 403 24 set.u32.gt.s32 %r154,%r26,0; neg.s32 %r155,%r154; cvt.u16.u32 %r157,%r152; cvt.u16.u32 %r158,%r155; and.b16 %r156,%r157,%r158; cvt.u32.u16 %r159,%r156; cvt.u16.u8 %r160,%r159; setp.ne.u16 %r161,%r160,0; @ %r161 bra $L70; st.u32 [%frame+12],%r33; $L68: .loc 1 410 10 setp.ne.u32 %r162,%r90,0; @ %r162 bra $L71; .loc 1 410 15 ld.s8 %r164,[%r48]; cvt.u16.u32 %r163,%r164; setp.eq.u16 %r165,%r163,0; @ %r165 bra $L72; $L71: add.u64 %r68,%r46,1; .loc 1 412 7 setp.ne.u64 %r166,%r88,%r46; @ %r166 bra $L73; .loc 1 413 13 mov.u32 %r167,48; st.u8 [%r88],%r167; .loc 1 413 10 mov.u64 %r46,%r68; .loc 1 413 13 add.u64 %r68,%r88,2; $L73: .loc 1 414 11 mov.u32 %r168,46; st.u8 [%r46],%r168; .loc 1 415 17 ld.u32 %r63,[%frame+12]; .loc 1 415 21 set.u32.gt.s32 %r170,%r26,0; neg.s32 %r171,%r170; cvt.u32.u32 %r169,%r171; cvt.u32.u8 %r54,%r169; .loc 1 415 10 shr.u32 %r173,%r63,31; .loc 1 415 21 cvt.u16.u32 %r176,%r173; cvt.u16.u32 %r177,%r54; and.b16 %r175,%r176,%r177; cvt.u32.u16 %r178,%r175; cvt.u16.u8 %r179,%r178; setp.eq.u16 %r180,%r179,0; @ %r180 bra $L80; add.u32 %r37,%r63,1; mov.u64 %r70,%r68; .loc 1 417 15 mov.u32 %r181,48; $L75: add.u64 %r46,%r70,1; st.u8 [%r70],%r181; .loc 1 418 13 mov.u32 %r36,%r37; .loc 1 419 14 add.u32 %r26,%r26,-1; .loc 1 415 21 set.u32.gt.s32 %r183,%r26,0; neg.s32 %r184,%r183; cvt.u32.u32 %r182,%r184; cvt.u32.u8 %r54,%r182; add.u32 %r37,%r37,1; mov.u64 %r70,%r46; .loc 1 415 10 shr.u32 %r186,%r36,31; .loc 1 415 21 cvt.u16.u32 %r189,%r186; cvt.u16.u32 %r190,%r54; and.b16 %r188,%r189,%r190; cvt.u32.u16 %r191,%r188; cvt.u16.u8 %r192,%r191; setp.ne.u16 %r193,%r192,0; @ %r193 bra $L75; st.u32 [%frame+12],%r36; bra $L74; $L80: .loc 1 414 8 mov.u64 %r46,%r68; $L74: .loc 1 423 11 ld.s8 %r38,[%r48]; .loc 1 423 10 cvt.u16.u32 %r195,%r38; set.u32.ne.u16 %r196,%r195,0; neg.s32 %r197,%r196; .loc 1 423 14 cvt.u16.u32 %r199,%r197; cvt.u16.u32 %r200,%r54; and.b16 %r198,%r199,%r200; cvt.u32.u16 %r201,%r198; cvt.u16.u8 %r202,%r201; setp.eq.u16 %r203,%r202,0; @ %r203 bra $L76; mov.u64 %r49,%r46; $L77: .loc 1 425 19 add.u64 %r48,%r48,1; add.u64 %r46,%r46,1; .loc 1 425 15 cvt.u32.u32 %r204,%r38; st.u8 [%r49],%r204; .loc 1 426 14 add.u32 %r26,%r26,-1; .loc 1 423 11 ld.s8 %r38,[%r48]; mov.u64 %r49,%r46; .loc 1 423 10 cvt.u16.u32 %r206,%r38; set.u32.ne.u16 %r207,%r206,0; neg.s32 %r208,%r207; .loc 1 423 14 set.u32.gt.s32 %r210,%r26,0; neg.s32 %r211,%r210; cvt.u16.u32 %r213,%r208; cvt.u16.u32 %r214,%r211; and.b16 %r212,%r213,%r214; cvt.u32.u16 %r215,%r212; cvt.u16.u8 %r216,%r215; setp.ne.u16 %r217,%r216,0; @ %r217 bra $L77; $L76: .loc 1 429 7 setp.eq.u32 %r218,%r90,0; @ %r218 bra $L72; .loc 1 431 14 setp.le.s32 %r219,%r26,0; @ %r219 bra $L72; mov.u64 %r43,%r46; add.u32 %r230,%r26,-1; cvt.u64.u32 %r221,%r230; add.u64 %r222,%r46,1; add.u64 %r30,%r221,%r222; .loc 1 433 12 mov.u32 %r223,48; $L78: st.u8 [%r43],%r223; add.u64 %r43,%r43,1; .loc 1 431 14 setp.ne.u64 %r224,%r30,%r43; @ %r224 bra $L78; cvt.s64.s32 %r226,%r230; add.u64 %r227,%r226,1; add.u64 %r46,%r46,%r227; $L72: .loc 1 438 14 mov.u32 %r228,0; st.u8 [%r46],%r228; $L55: .loc 1 442 1 mov.u64 %value,%r88; 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 %r23; .reg .u32 %r25; .reg .u32 %r32; .reg .u64 %r35; .reg .u64 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .u64 %r43; .reg .u32 %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .u32 %r48; .reg .u64 %r54; .reg .u64 %r60; .reg .u64 %r61; .reg .u32 %r64; .reg .u64 %r68; .reg .u64 %r73; .reg .u64 %r74; .reg .u64 %r78; .reg .u64 %r79; .reg .f64 %r80; .reg .u32 %r81; .reg .u32 %r83; .reg .u32 %r84; .reg .u16 %r86; .reg .u16 %r87; .reg .u32 %r88; .reg .u16 %r89; .reg .pred %r90; .reg .u64 %r91; .reg .u64 %r92; .reg .pred %r93; .reg .u64 %r94; .reg .pred %r95; .reg .u64 %r96; .reg .pred %r97; .reg .pred %r98; .reg .u32 %r101; .reg .u64 %r106; .reg .u64 %r107; .reg .u64 %r108; .reg .pred %r109; .reg .pred %r110; .reg .pred %r111; .reg .u64 %r114; .reg .u32 %r115; .reg .pred %r116; .reg .pred %r117; .reg .pred %r118; .reg .u64 %r119; .reg .u64 %r121; .reg .u32 %r122; .reg .pred %r123; .reg .u64 %r125; .reg .u64 %r126; .reg .u32 %r127; .reg .pred %r128; .reg .u16 %r129; .reg .u32 %r130; .reg .pred %r131; .reg .pred %r132; .reg .u32 %r133; .reg .u32 %r134; .reg .u32 %r136; .reg .u32 %r137; .reg .u32 %r139; .reg .u16 %r141; .reg .u16 %r142; .reg .u16 %r143; .reg .u32 %r144; .reg .u16 %r145; .reg .pred %r146; .reg .u32 %r147; .reg .u32 %r149; .reg .u32 %r151; .reg .u32 %r152; .reg .u16 %r154; .reg .u16 %r155; .reg .u16 %r156; .reg .u32 %r157; .reg .u16 %r158; .reg .pred %r159; .reg .pred %r160; .reg .pred %r161; .reg .u32 %r162; .reg .pred %r163; .reg .pred %r164; .reg .pred %r165; .reg .u64 %r167; .reg .u64 %r168; .reg .u32 %r169; .reg .pred %r170; .reg .u64 %r172; .reg .u64 %r173; .reg .u32 %r174; .reg .pred %r175; .reg .u64 %r182; .reg .u32 %r190; .reg .u32 %r191; mov.u64 %r78,%ar0; mov.u64 %r79,%ar1; mov.f64 %r80,%ar2; mov.u32 %r81,%ar3; mov.u32 %r83,%ar5; mov.u32 %r84,%ar6; cvt.u16.u32 %r87,%r83; add.u16 %r86,%r87,-69; cvt.u32.u16 %r88,%r86; cvt.u32.u8 %r25,%r88; cvt.u16.u32 %r89,%r25; setp.gt.u16 %r90,%r89,34; @ %r90 bra $L100; mov.u64 %r91,1; shl.b64 %r23,%r91,%r25; and.b64 %r92,%r23,4294967297; setp.ne.u64 %r93,%r92,0; @ %r93 bra $L101; and.b64 %r94,%r23,17179869188; setp.ne.u64 %r95,%r94,0; @ %r95 bra $L102; and.b64 %r96,%r23,8589934594; setp.eq.u64 %r97,%r96,0; @ %r97 bra $L100; .loc 1 458 7 setp.eq.u32 %r98,%r81,0; selp.u32 %r84,%r84,1,%r98; .loc 1 91 15 add.u64 %r106,%frame,8; add.u64 %r107,%frame,12; mov.u32 %r101,3; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r78; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r80; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r101; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r81; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r107; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r106; .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 %r108,[%value_in]; } .loc 1 93 13 ld.u32 %r38,[%frame+12]; .loc 1 93 6 setp.eq.u32 %r109,%r38,9999; @ %r109 bra $L104; .loc 1 98 10 ld.s8 %r37,[%r108]; .loc 1 98 9 setp.eq.u32 %r110,%r37,0; @ %r110 bra $L124; .loc 1 98 13 setp.gt.s32 %r111,%r38,0; @ %r111 bra $L106; mov.u64 %r35,%r108; mov.u64 %r60,%r79; bra $L110; $L104: .loc 1 95 7 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r79; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r108; call (%value_in),strcpy,(%out_arg1,%out_arg2); ld.param.u64 %r114,[%value_in]; } bra $L100; $L106: mov.u64 %r73,%r79; .loc 1 98 13 mov.u64 %r35,%r108; $L111: .loc 1 100 18 add.u64 %r35,%r35,1; add.u64 %r60,%r73,1; .loc 1 100 14 cvt.u32.u32 %r115,%r37; st.u8 [%r73],%r115; .loc 1 101 12 add.u32 %r38,%r38,-1; st.u32 [%frame+12],%r38; .loc 1 98 10 ld.s8 %r37,[%r35]; .loc 1 98 9 setp.ne.u32 %r116,%r37,0; @ %r116 bra $L108; bra $L105; $L124: mov.u64 %r35,%r108; mov.u64 %r60,%r79; $L105: .loc 1 104 9 setp.gt.s32 %r117,%r38,0; @ %r117 bra $L109; bra $L110; $L108: mov.u64 %r73,%r60; .loc 1 98 13 setp.ne.u32 %r118,%r38,0; @ %r118 bra $L111; bra $L110; $L109: mov.u64 %r68,%r60; add.u64 %r119,%r60,1; add.u32 %r191,%r38,-1; cvt.u64.u32 %r121,%r191; add.u64 %r74,%r119,%r121; .loc 1 106 14 mov.u32 %r122,48; $L112: st.u8 [%r68],%r122; add.u64 %r68,%r68,1; .loc 1 104 9 setp.ne.u64 %r123,%r68,%r74; @ %r123 bra $L112; cvt.s64.s32 %r125,%r191; add.u64 %r126,%r125,1; add.u64 %r60,%r60,%r126; mov.u32 %r127,0; st.u32 [%frame+12],%r127; $L110: .loc 1 110 6 setp.ne.u32 %r128,%r84,0; @ %r128 bra $L113; .loc 1 110 11 ld.s8 %r130,[%r35]; cvt.u16.u32 %r129,%r130; setp.eq.u16 %r131,%r129,0; @ %r131 bra $L114; $L113: add.u64 %r43,%r60,1; .loc 1 112 10 setp.ne.u64 %r132,%r108,%r35; @ %r132 bra $L115; .loc 1 113 9 mov.u32 %r133,48; st.u8 [%r60],%r133; add.u64 %r46,%r60,2; .loc 1 113 6 mov.u64 %r60,%r43; .loc 1 113 9 mov.u64 %r43,%r46; $L115: .loc 1 114 14 mov.u32 %r134,46; st.u8 [%r60],%r134; .loc 1 115 20 ld.u32 %r32,[%frame+12]; .loc 1 115 24 set.u32.gt.s32 %r136,%r81,0; neg.s32 %r137,%r136; .loc 1 115 13 shr.u32 %r139,%r32,31; .loc 1 115 24 cvt.u16.u32 %r142,%r137; cvt.u16.u32 %r143,%r139; and.b16 %r141,%r142,%r143; cvt.u32.u16 %r144,%r141; cvt.u16.u8 %r145,%r144; setp.eq.u16 %r146,%r145,0; @ %r146 bra $L116; add.u32 %r64,%r32,1; mov.u64 %r36,%r43; .loc 1 117 11 mov.u32 %r147,48; $L117: add.u64 %r43,%r43,1; st.u8 [%r36],%r147; .loc 1 118 9 mov.u32 %r45,%r64; .loc 1 119 10 add.u32 %r81,%r81,-1; add.u32 %r64,%r64,1; mov.u64 %r36,%r43; .loc 1 115 13 shr.u32 %r149,%r45,31; .loc 1 115 24 set.u32.gt.s32 %r151,%r81,0; neg.s32 %r152,%r151; cvt.u16.u32 %r155,%r149; cvt.u16.u32 %r156,%r152; and.b16 %r154,%r155,%r156; cvt.u32.u16 %r157,%r154; cvt.u16.u8 %r158,%r157; setp.ne.u16 %r159,%r158,0; @ %r159 bra $L117; st.u32 [%frame+12],%r45; $L116: .loc 1 123 14 ld.s8 %r48,[%r35]; .loc 1 123 13 setp.eq.u32 %r160,%r48,0; @ %r160 bra $L125; .loc 1 123 17 setp.le.s32 %r161,%r81,0; @ %r161 bra $L126; mov.u64 %r54,%r43; $L121: .loc 1 125 15 add.u64 %r35,%r35,1; add.u64 %r60,%r54,1; .loc 1 125 11 cvt.u32.u32 %r162,%r48; st.u8 [%r54],%r162; .loc 1 126 10 add.u32 %r81,%r81,-1; .loc 1 123 14 ld.s8 %r48,[%r35]; .loc 1 123 13 setp.ne.u32 %r163,%r48,0; @ %r163 bra $L119; bra $L118; $L125: mov.u64 %r60,%r43; $L118: .loc 1 129 13 setp.gt.s32 %r164,%r81,0; @ %r164 bra $L120; bra $L114; $L119: mov.u64 %r54,%r60; .loc 1 123 17 setp.ne.u32 %r165,%r81,0; @ %r165 bra $L121; bra $L114; $L120: mov.u64 %r47,%r60; add.u32 %r190,%r81,-1; cvt.u64.u32 %r167,%r190; add.u64 %r168,%r60,1; add.u64 %r61,%r167,%r168; .loc 1 131 11 mov.u32 %r169,48; $L122: st.u8 [%r47],%r169; add.u64 %r47,%r47,1; .loc 1 129 13 setp.ne.u64 %r170,%r47,%r61; @ %r170 bra $L122; cvt.s64.s32 %r172,%r190; add.u64 %r173,%r172,1; add.u64 %r60,%r60,%r173; bra $L114; $L126: .loc 1 123 17 mov.u64 %r60,%r43; $L114: .loc 1 135 10 mov.u32 %r174,0; st.u8 [%r60],%r174; bra $L100; $L102: .loc 1 462 10 setp.ne.u32 %r175,%r81,0; .loc 1 463 12 selp.u32 %r81,%r81,1,%r175; .loc 1 464 7 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r78; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r80; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r81; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r79; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r83; .param .u32 %out_arg6; st.param.u32 [%out_arg6],%r84; call (%value_in),_gcvt,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); ld.param.u64 %r182,[%value_in]; } .loc 1 465 7 bra $L100; $L101: .loc 1 468 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r78; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r79; .param .f64 %out_arg3; st.param.f64 [%out_arg3],%r80; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r81; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r83; .param .u32 %out_arg6; st.param.u32 [%out_arg6],%r84; call print_e,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); } $L100: .loc 1 471 1 mov.u64 %value,%r79; st.shared.u64 [%sspslot],%sspprev; st.param.u64 [%value_out],%value; ret; } lib_a-efgcvt.o/ 1591654536 399 399 100644 8360 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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: 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 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 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: 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 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 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 147 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 148 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 157 10 cvt.f64.f32 %r33,%r24; .loc 1 147 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 158 1 mov.u64 %value,%r34; 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 179 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 180 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 189 10 cvt.f64.f32 %r33,%r24; .loc 1 179 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 190 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 200 6 setp.lt.f64 %r29,%r26,0d0000000000000000; @ ! %r29 bra $L11; .loc 1 201 10 mov.u32 %r30,45; st.u8 [%r28],%r30; .loc 1 202 8 add.u64 %r24,%r28,1; .loc 1 203 11 add.u32 %r27,%r27,-1; bra $L6; $L11: mov.u64 %r24,%r28; $L6: .loc 1 205 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 205 57 setp.ne.u64 %r39,%r38,0; selp.u64 %value,%r28,0,%r39; .loc 1 206 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 .f32 %r24; .reg .u32 %r25; .reg .u64 %r26; .reg .f64 %r30; .reg .u64 %r31; mov.f32 %r24,%ar0; mov.u32 %r25,%ar1; mov.u64 %r26,%ar2; .loc 1 167 10 cvt.f64.f32 %r30,%r24; .loc 1 168 10 { .param .u64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r30; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r25; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r26; call (%value_in),gcvt,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r31,[%value_in]; } .loc 1 169 1 mov.u64 %value,%r31; st.param.u64 [%value_out],%value; ret; } lib_a-erand48.o/1591654536 399 399 100644 2965 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 21 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 22 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 23 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 22 40 add.f64 %r28,%r41,%r46; .loc 1 24 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 23 35 add.f64 %value,%r28,%r51; .loc 1 25 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 32 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 33 1 mov.f64 %value,%r28; st.param.f64 [%value_out],%value; ret; } lib_a-errno.o/ 1591654536 399 399 100644 512 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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/ 1591654536 399 399 100644 751 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } lib_a-ffs.o/ 1591654536 399 399 100644 918 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r26; .reg .pred %r27; .reg .u32 %r28; .reg .pred %r29; mov.u32 %r26,%ar0; .loc 1 37 6 setp.eq.u32 %r27,%r26,0; @ %r27 bra $L4; .loc 1 40 5 mov.u32 %r24,0; $L3: .loc 1 43 19 add.u32 %r25,%r24,1; .loc 1 43 31 shr.s32 %r28,%r26,%r24; and.b32 %r23,%r28,1; .loc 1 43 19 mov.u32 %r24,%r25; .loc 1 43 10 setp.eq.u32 %r29,%r23,0; @ %r29 bra $L3; bra $L1; $L4: .loc 1 38 12 mov.u32 %r25,%r26; $L1: .loc 1 46 1 mov.u32 %value,%r25; st.param.u32 [%value_out],%value; ret; } /18 1591654536 399 399 100644 3883 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __fix_locale_grouping_str .visible .func (.param .u64 %value_out) __fix_locale_grouping_str (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/locale/fix_grouping.c" // BEGIN GLOBAL VAR DECL: __ctype_ptr__ .extern .global .align 8 .u64 __ctype_ptr__[1]; // BEGIN VAR DEF: nogrouping .const .align 1 .u8 nogrouping[2] = {127,0 }; // BEGIN GLOBAL FUNCTION DEF: __fix_locale_grouping_str .visible .func (.param .u64 %value_out) __fix_locale_grouping_str (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r23; .reg .u32 %r24; .reg .u32 %r31; .reg .u32 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u32 %r41; .reg .u64 %r45; .reg .u64 %r47; .reg .u64 %r48; .reg .pred %r49; .reg .pred %r50; .reg .u16 %r51; .reg .pred %r52; .reg .pred %r54; .reg .u16 %r55; .reg .u32 %r56; .reg .pred %r57; .reg .u32 %r59; .reg .u64 %r60; .reg .u64 %r62; .reg .u16 %r65; .reg .u16 %r66; .reg .u32 %r67; .reg .u16 %r68; .reg .u32 %r69; .reg .pred %r70; .reg .u16 %r71; .reg .u16 %r72; .reg .u32 %r73; .reg .u64 %r74; .reg .u32 %r75; .reg .u64 %r76; .reg .u16 %r79; .reg .u16 %r80; .reg .u32 %r81; .reg .u16 %r82; .reg .u32 %r83; .reg .pred %r84; .reg .u32 %r88; .reg .u32 %r89; .reg .u16 %r90; .reg .u16 %r91; .reg .u16 %r94; .reg .u16 %r97; .reg .u16 %r98; .reg .u16 %r101; .reg .u32 %r104; .reg .u32 %r105; .reg .pred %r106; .reg .pred %r107; .reg .pred %r108; .reg .u32 %r109; .reg .u32 %r111; .reg .u16 %r112; .reg .u32 %r113; mov.u64 %r48,%ar0; .loc 1 45 5 setp.ne.u64 %r49,%r48,0; @ %r49 bra $L2; $L4: .loc 1 46 10 cvta.const.u64 %r47,nogrouping; bra $L1; $L2: .loc 1 45 21 ld.s8 %r38,[%r48]; .loc 1 45 18 setp.eq.u32 %r50,%r38,0; @ %r50 bra $L4; mov.u64 %r40,%r48; mov.u64 %r45,%r48; .loc 1 56 11 mov.u32 %r111,127; $L10: .loc 1 52 6 cvt.u16.u32 %r51,%r38; setp.eq.u16 %r52,%r51,59; @ %r52 bra $L11; .loc 1 55 6 setp.ne.u16 %r54,%r51,45; @ %r54 bra $L6; .loc 1 55 19 ld.s8 %r56,[%r45+1]; cvt.u16.u32 %r55,%r56; setp.ne.u16 %r57,%r55,49; @ %r57 bra $L6; .loc 1 56 11 st.u8 [%r40],%r111; .loc 1 57 7 add.u64 %r39,%r45,1; .loc 1 56 8 add.u64 %r40,%r40,1; .loc 1 58 4 bra $L5; $L6: .loc 1 61 8 ld.global.u64 %r23,[__ctype_ptr__]; cvt.u32.u32 %r59,%r38; cvt.u32.u8 %r24,%r59; cvt.u64.u8 %r60,%r59; add.u64 %r62,%r23,%r60; .loc 1 61 6 ld.u8 %r112,[%r62+1]; mov.u16 %r66,%r112; and.b16 %r65,%r66,4; cvt.u32.u16 %r67,%r65; cvt.s32.s8 %r69,%r67; cvt.u16.u32 %r68,%r69; setp.eq.u16 %r70,%r68,0; @ %r70 bra $L4; .loc 1 67 12 cvt.u16.u32 %r72,%r24; add.u16 %r71,%r72,-48; cvt.u32.u16 %r73,%r71; .loc 1 68 7 ld.u8 %r31,[%r45+1]; cvt.u32.u32 %r75,%r31; cvt.u64.u8 %r74,%r75; add.u64 %r76,%r23,%r74; .loc 1 68 6 ld.u8 %r112,[%r76+1]; mov.u16 %r80,%r112; and.b16 %r79,%r80,4; cvt.u32.u16 %r81,%r79; cvt.s32.s8 %r83,%r81; cvt.u16.u32 %r82,%r83; setp.ne.u16 %r84,%r82,0; @ %r84 bra $L7; .loc 1 67 5 cvt.s32.s8 %r41,%r73; mov.u64 %r39,%r45; bra $L8; $L7: .loc 1 69 7 add.u64 %r39,%r45,1; .loc 1 70 6 cvt.u32.u8 %r113,%r73; mov.u32 %r89,%r113; shl.b32 %r88,%r89,2; cvt.u16.u32 %r91,%r88; add.u16 %r90,%r91,%r71; add.u16 %r94,%r90,%r90; .loc 1 71 6 cvt.u16.u32 %r98,%r31; add.u16 %r97,%r98,-48; add.u16 %r101,%r94,%r97; cvt.u32.u16 %r104,%r101; cvt.s32.s8 %r41,%r104; $L8: .loc 1 74 8 cvt.u32.u32 %r105,%r41; st.u8 [%r40],%r105; .loc 1 76 6 setp.ne.u32 %r106,%r41,0; @ %r106 bra $L9; .loc 1 77 44 setp.ne.u64 %r107,%r48,%r40; @ %r107 bra $L12; bra $L4; $L9: .loc 1 78 6 add.u64 %r40,%r40,1; bra $L5; $L11: mov.u64 %r39,%r45; $L5: .loc 1 49 60 add.u64 %r45,%r39,1; .loc 1 49 43 ld.s8 %r38,[%r39+1]; .loc 1 49 2 setp.ne.u32 %r108,%r38,0; @ %r108 bra $L10; .loc 1 80 7 cvt.u32.u32 %r109,%r38; st.u8 [%r40],%r109; .loc 1 81 9 mov.u64 %r47,%r48; bra $L1; $L12: mov.u64 %r47,%r48; $L1: .loc 1 82 1 mov.u64 %value,%r47; st.param.u64 [%value_out],%value; ret; } lib_a-free.o/ 1591654536 399 399 100644 1108 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 33 6 setp.eq.u64 %r24,%r23,0; @ %r24 bra $L1; .loc 1 34 5 add.u64 %r26,%r23,-8; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; @ %r28 call free,(%out_arg1); } $L1: .loc 1 35 1 ret; } /40 1591654536 399 399 100644 29291 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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); // 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: 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: __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 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 %r41; .reg .u64 %r44; .reg .u32 %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .u32 %r48; .reg .u32 %r49; .reg .u64 %r50; .reg .u32 %r51; .reg .u64 %r52; .reg .u64 %r63; .reg .u64 %r65; .reg .u64 %r69; .reg .u32 %r70; .reg .pred %r71; .reg .u64 %r72; .reg .u64 %r73; .reg .pred %r74; .reg .pred %r75; .reg .u32 %r76; .reg .u32 %r77; .reg .pred %r78; .reg .u32 %r79; .reg .u32 %r80; .reg .u32 %r81; .reg .u32 %r82; .reg .pred %r83; .reg .u64 %r84; .reg .u64 %r85; .reg .u64 %r89; .reg .pred %r90; .reg .pred %r91; .reg .u64 %r92; .reg .u64 %r97; .reg .u64 %r98; .reg .u64 %r100; .reg .pred %r101; .reg .u32 %r102; .reg .u32 %r103; .reg .pred %r104; mov.u64 %r69,%ar0; mov.u32 %r70,%ar1; .loc 1 81 4 shr.s32 %r45,%r70,5; .loc 1 82 11 ld.u32 %r22,[%r69+20]; .loc 1 82 5 setp.le.s32 %r71,%r22,%r45; @ %r71 bra $L2; .loc 1 80 9 add.u64 %r44,%r69,24; .loc 1 83 13 cvt.s64.s32 %r24,%r22; .loc 1 83 10 shl.b64 %r72,%r24,2; .loc 1 83 6 add.u64 %r46,%r44,%r72; .loc 1 84 5 cvt.s64.s32 %r26,%r45; shl.b64 %r73,%r26,2; add.u64 %r47,%r44,%r73; .loc 1 85 9 and.b32 %r48,%r70,31; .loc 1 85 6 setp.ne.u32 %r74,%r48,0; @ %r74 bra $L3; .loc 1 96 9 setp.gt.u64 %r75,%r46,%r47; @ %r75 bra $L4; bra $L2; $L3: .loc 1 86 6 mov.u32 %r76,32; sub.u32 %r49,%r76,%r48; .loc 1 87 10 add.u64 %r50,%r47,4; .loc 1 87 6 ld.u32 %r77,[%r47]; shr.u32 %r51,%r77,%r48; .loc 1 88 9 setp.le.u64 %r78,%r46,%r50; @ %r78 bra $L5; mov.u64 %r23,%r50; mov.u64 %r52,%r44; $L6: .loc 1 89 22 ld.u32 %r80,[%r23]; shl.b32 %r79,%r80,%r49; .loc 1 89 29 or.b32 %r81,%r79,%r51; .loc 1 89 11 st.u32 [%r52],%r81; .loc 1 90 7 ld.u32 %r82,[%r23]; shr.u32 %r51,%r82,%r48; add.u64 %r23,%r23,4; add.u64 %r52,%r52,4; .loc 1 88 9 setp.gt.u64 %r83,%r46,%r23; @ %r83 bra $L6; sub.u64 %r84,%r24,%r26; shl.b64 %r85,%r84,2; add.u64 %r89,%r85,-4; add.u64 %r41,%r44,%r89; .loc 1 92 13 st.u32 [%r41],%r51; .loc 1 92 7 setp.eq.u32 %r90,%r51,0; @ %r90 bra $L7; bra $L11; $L12: .loc 1 80 9 mov.u64 %r41,%r44; $L11: .loc 1 93 7 add.u64 %r41,%r41,4; bra $L7; $L4: mov.u64 %r63,%r44; mov.u64 %r65,%r47; $L8: .loc 1 97 13 ld.u32 %r33,[%r65]; .loc 1 97 11 st.u32 [%r63],%r33; add.u64 %r63,%r63,4; add.u64 %r65,%r65,4; .loc 1 96 9 setp.gt.u64 %r91,%r46,%r65; @ %r91 bra $L8; sub.u64 %r92,%r24,%r26; shl.b64 %r97,%r92,2; add.u64 %r41,%r44,%r97; $L7: .loc 1 99 20 sub.u64 %r98,%r41,%r44; shr.s64 %r100,%r98,2; .loc 1 99 15 cvt.u32.u64 %r36,%r100; st.u32 [%r69+20],%r36; .loc 1 99 5 setp.ne.u32 %r101,%r36,0; @ %r101 bra $L1; $L10: .loc 1 100 12 mov.u32 %r102,0; st.u32 [%r69+24],%r102; .loc 1 101 1 bra $L1; $L2: .loc 1 99 15 mov.u32 %r103,0; st.u32 [%r69+20],%r103; bra $L10; $L5: .loc 1 92 13 st.u32 [%r69+24],%r51; .loc 1 92 7 setp.ne.u32 %r104,%r51,0; @ %r104 bra $L12; bra $L2; $L1: .loc 1 101 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) { .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 %r25; .reg .u32 %r26; .reg .u32 %r30; .reg .u32 %r32; .reg .u32 %r40; .reg .u32 %r42; .reg .u64 %r51; .reg .u32 %r63; .reg .u32 %r65; .reg .u32 %r78; .reg .u32 %r79; .reg .u32 %r91; .reg .u64 %r114; .reg .u64 %r116; .reg .u64 %r117; .reg .u32 %r118; .reg .u32 %r119; .reg .u32 %r120; .reg .u64 %r121; .reg .u32 %r122; .reg .u32 %r123; .reg .u64 %r124; .reg .u64 %r125; .reg .u32 %r127; .reg .u32 %r129; .reg .u64 %r130; .reg .u64 %r131; .reg .u64 %r133; .reg .u32 %r134; .reg .u32 %r135; .reg .u32 %r136; .reg .u32 %r137; .reg .u64 %r138; .reg .u32 %r139; .reg .u32 %r140; .reg .u32 %r142; .reg .u32 %r143; .reg .u32 %r144; .reg .u32 %r145; .reg .u32 %r146; .reg .u32 %r147; .reg .u32 %r148; .reg .u64 %r149; .reg .u64 %r150; .reg .u32 %r151; .reg .u32 %r152; .reg .u64 %r153; .reg .u64 %r155; .reg .u64 %r156; .reg .u32 %r158; .reg .u32 %r160; .reg .u64 %r173; .reg .u64 %r179; .reg .u64 %r183; .reg .u64 %r184; .reg .u32 %r185; .reg .u32 %r192; .reg .u32 %r199; .reg .u32 %r200; .reg .u64 %r201; .reg .u64 %r202; .reg .u64 %r203; .reg .u64 %r204; .reg .u64 %r205; .reg .u32 %r206; .reg .u64 %r208; .reg .u64 %r210; .reg .u64 %r211; .reg .u16 %r213; .reg .pred %r214; .reg .u16 %r215; .reg .pred %r216; .reg .u64 %r218; .reg .u64 %r219; .reg .u16 %r220; .reg .pred %r221; .reg .u32 %r225; .reg .pred %r226; .reg .u64 %r228; .reg .u64 %r229; .reg .pred %r230; .reg .u16 %r231; .reg .pred %r232; .reg .u16 %r233; .reg .pred %r234; .reg .u64 %r236; .reg .u64 %r237; .reg .u16 %r239; .reg .u32 %r240; .reg .u64 %r244; .reg .u64 %r245; .reg .u16 %r246; .reg .pred %r247; .reg .u64 %r250; .reg .u64 %r251; .reg .pred %r252; .reg .u32 %r256; .reg .pred %r257; .reg .pred %r258; .reg .u64 %r259; .reg .u32 %r260; .reg .u32 %r261; .reg .u64 %r263; .reg .u64 %r264; .reg .u16 %r265; .reg .pred %r266; .reg .u64 %r268; .reg .u64 %r269; .reg .u16 %r270; .reg .pred %r271; .reg .u64 %r272; .reg .u32 %r273; .reg .u32 %r274; .reg .pred %r275; .reg .u64 %r276; .reg .u32 %r277; .reg .u32 %r278; .reg .u16 %r279; .reg .pred %r280; .reg .pred %r282; .reg .u16 %r283; .reg .pred %r284; .reg .pred %r286; .reg .u64 %r288; .reg .u64 %r289; .reg .u16 %r290; .reg .u16 %r291; .reg .u16 %r292; .reg .u32 %r293; .reg .pred %r294; .reg .u64 %r297; .reg .u64 %r298; .reg .u16 %r299; .reg .u16 %r300; .reg .u16 %r301; .reg .u32 %r302; .reg .pred %r303; .reg .u32 %r305; .reg .u32 %r306; .reg .u32 %r307; .reg .u64 %r310; .reg .u64 %r311; .reg .u16 %r312; .reg .u16 %r313; .reg .u16 %r314; .reg .u32 %r315; .reg .pred %r316; .reg .pred %r317; .reg .pred %r318; .reg .pred %r319; .reg .u64 %r320; .reg .u32 %r321; .reg .pred %r322; .reg .pred %r323; .reg .u64 %r326; .reg .pred %r327; .reg .u16 %r328; .reg .u16 %r329; .reg .pred %r330; .reg .pred %r331; .reg .u64 %r332; .reg .pred %r334; .reg .u32 %r338; .reg .pred %r339; .reg .u64 %r342; .reg .u64 %r343; .reg .u16 %r345; .reg .u16 %r346; .reg .u32 %r347; .reg .u32 %r348; .reg .u32 %r349; .reg .pred %r350; .reg .u64 %r351; .reg .u64 %r353; .reg .u32 %r355; .reg .pred %r356; .reg .u32 %r359; .reg .pred %r360; .reg .u32 %r361; .reg .u64 %r362; .reg .u64 %r363; .reg .u64 %r364; .reg .u32 %r365; .reg .u32 %r366; .reg .u32 %r367; .reg .u32 %r368; .reg .u32 %r369; .reg .pred %r370; .reg .pred %r371; .reg .u32 %r374; .reg .u32 %r375; .reg .pred %r376; .reg .pred %r379; .reg .u64 %r383; .reg .u32 %r384; .reg .pred %r385; .reg .u64 %r388; .reg .pred %r389; .reg .pred %r390; .reg .pred %r391; .reg .pred %r392; .reg .pred %r393; .reg .pred %r394; .reg .pred %r395; .reg .u32 %r398; .reg .u32 %r399; .reg .pred %r400; .reg .pred %r401; .reg .pred %r402; .reg .u32 %r403; .reg .u64 %r407; .reg .pred %r408; .reg .pred %r409; .reg .u32 %r412; .reg .u32 %r413; .reg .u64 %r414; .reg .u64 %r415; .reg .u64 %r416; .reg .u32 %r417; .reg .u32 %r418; .reg .u32 %r419; .reg .u32 %r420; .reg .u32 %r421; .reg .pred %r422; .reg .pred %r425; .reg .pred %r426; .reg .pred %r427; .reg .pred %r428; .reg .u32 %r429; .reg .pred %r430; .reg .u32 %r431; .reg .u32 %r432; .reg .u32 %r433; .reg .pred %r434; .reg .u32 %r435; .reg .pred %r436; .reg .u64 %r437; .reg .pred %r438; .reg .u32 %r439; .reg .pred %r441; .reg .u32 %r442; .reg .pred %r443; .reg .u32 %r446; .reg .u32 %r447; .reg .u64 %r448; .reg .u64 %r452; .reg .u64 %r453; .reg .u64 %r454; .reg .u64 %r455; .reg .u64 %r456; .reg .u64 %r457; .reg .u32 %r460; .reg .u64 %r461; .reg .u64 %r462; .reg .u64 %r463; .reg .u64 %r464; .reg .u32 %r466; .reg .pred %r467; .reg .u32 %r468; .reg .u32 %r469; .reg .pred %r470; .reg .u32 %r471; .reg .u64 %r472; .reg .u64 %r473; .reg .u64 %r474; .reg .u32 %r475; .reg .u32 %r476; .reg .u32 %r477; .reg .u32 %r478; .reg .u32 %r479; .reg .pred %r480; .reg .u32 %r481; .reg .pred %r482; .reg .u32 %r484; .reg .u32 %r485; .reg .pred %r486; .reg .pred %r487; .reg .u32 %r488; .reg .u64 %r489; .reg .u32 %r491; .reg .u32 %r492; .reg .u32 %r493; .reg .pred %r494; .reg .u16 %r496; .reg .pred %r497; .reg .pred %r499; .reg .u64 %r500; .reg .u32 %r501; .reg .u16 %r502; mov.u64 %r201,%ar0; mov.u64 %r202,%ar1; mov.u64 %r203,%ar2; mov.u64 %r204,%ar3; mov.u64 %r205,%ar4; mov.u32 %r206,%ar5; .loc 1 162 11 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r201; call (%value_in),_localeconv_r,(%out_arg1); ld.param.u64 %r208,[%value_in]; } .loc 1 161 17 ld.u64 %r125,[%r208]; .loc 1 163 20 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r125; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r210,[%value_in]; } .loc 1 164 16 add.u64 %r211,%r125,%r210; ld.u8 %r127,[%r211+-1]; .loc 1 167 7 ld.u64 %r25,[%r202]; .loc 1 168 10 ld.u8 %r26,[%r25+2]; .loc 1 168 7 cvt.u16.u32 %r213,%r26; setp.ne.u16 %r214,%r213,48; @ %r214 bra $L19; add.u64 %r179,%r25,3; .loc 1 166 10 mov.u32 %r151,0; $L20: .loc 1 169 10 add.u32 %r151,%r151,1; .loc 1 168 10 mov.u64 %r150,%r179; add.u64 %r179,%r179,1; ld.u8 %r26,[%r179+-1]; .loc 1 168 7 cvt.u16.u32 %r215,%r26; setp.eq.u16 %r216,%r215,48; @ %r216 bra $L20; bra $L21; $L19: .loc 1 168 10 add.u64 %r150,%r25,2; .loc 1 166 10 mov.u32 %r151,0; $L21: .loc 1 175 7 cvta.const.u64 %r500,__hexdig; cvt.s64.s32 %r218,%r26; add.u64 %r219,%r500,%r218; .loc 1 175 5 ld.u8 %r220,[%r219]; setp.ne.u16 %r221,%r220,0; @ %r221 bra $L22; .loc 1 177 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r150; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r125; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r210; call (%value_in),strncmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r225,[%value_in]; } .loc 1 177 6 setp.ne.u32 %r226,%r225,0; @ %r226 bra $L23; .loc 1 180 14 add.u64 %r116,%r150,%r210; .loc 1 181 8 ld.u8 %r30,[%r116]; cvt.s64.s32 %r228,%r30; add.u64 %r229,%r500,%r228; ld.u8 %r192,[%r229]; .loc 1 181 6 setp.eq.u32 %r230,%r192,0; @ %r230 bra $L24; .loc 1 183 8 cvt.u16.u32 %r231,%r30; setp.ne.u16 %r232,%r231,48; @ %r232 bra $L87; mov.u64 %r150,%r116; $L26: .loc 1 184 5 add.u64 %r150,%r150,1; .loc 1 183 9 ld.u8 %r32,[%r150]; .loc 1 183 8 cvt.u16.u32 %r233,%r32; setp.eq.u16 %r234,%r233,48; @ %r234 bra $L26; cvt.s64.s32 %r236,%r32; add.u64 %r237,%r500,%r236; ld.u8 %r192,[%r237]; bra $L25; $L87: mov.u64 %r150,%r116; $L25: .loc 1 185 6 cvt.u16.u32 %r239,%r192; set.u32.eq.u16 %r240,%r239,0; neg.s32 %r152,%r240; mov.u64 %r149,%r116; .loc 1 187 11 mov.u32 %r151,1; bra $L27; $L88: .loc 1 190 7 mov.u64 %r116,%r150; $L28: .loc 1 191 4 add.u64 %r116,%r116,1; .loc 1 190 8 ld.u8 %r244,[%r116]; add.u64 %r245,%r500,%r244; .loc 1 190 7 ld.u8 %r246,[%r245]; setp.ne.u16 %r247,%r246,0; @ %r247 bra $L28; bra $L29; $L22: ld.u8 %r250,[%r150]; add.u64 %r251,%r500,%r250; ld.u8 %r192,[%r251]; .loc 1 173 7 mov.u32 %r152,0; .loc 1 172 8 mov.u64 %r149,0; $L27: .loc 1 190 7 setp.ne.u32 %r252,%r192,0; @ %r252 bra $L88; mov.u64 %r116,%r150; $L29: .loc 1 192 6 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r116; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r125; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r210; call (%value_in),strncmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r256,[%value_in]; } mov.u32 %r122,%r256; .loc 1 192 5 setp.ne.u32 %r257,%r122,0; @ %r257 bra $L30; .loc 1 194 6 setp.eq.u64 %r258,%r149,0; @ %r258 bra $L31; sub.u64 %r259,%r116,%r149; cvt.u32.u64 %r261,%r259; shl.b32 %r260,%r261,2; neg.s32 %r122,%r260; ld.u8 %r199,[%r116]; bra $L35; $L31: .loc 1 195 14 add.u64 %r131,%r116,%r210; .loc 1 196 9 ld.u8 %r199,[%r131]; cvt.s64.s32 %r263,%r199; add.u64 %r264,%r500,%r263; .loc 1 196 8 ld.u8 %r265,[%r264]; setp.eq.u16 %r266,%r265,0; @ %r266 bra $L89; mov.u64 %r116,%r131; $L34: .loc 1 197 5 add.u64 %r116,%r116,1; .loc 1 196 9 ld.u8 %r199,[%r116]; cvt.s64.s32 %r268,%r199; add.u64 %r269,%r500,%r268; .loc 1 196 8 ld.u8 %r270,[%r269]; setp.ne.u16 %r271,%r270,0; @ %r271 bra $L34; sub.u64 %r272,%r116,%r131; cvt.u32.u64 %r274,%r272; shl.b32 %r273,%r274,2; neg.s32 %r122,%r273; bra $L35; $L30: ld.u8 %r199,[%r116]; .loc 1 199 5 setp.eq.u64 %r275,%r149,0; @ %r275 bra $L90; sub.u64 %r276,%r116,%r149; cvt.u32.u64 %r278,%r276; shl.b32 %r277,%r278,2; neg.s32 %r122,%r277; bra $L35; $L90: .loc 1 174 4 cvt.u32.u64 %r122,%r149; $L35: cvt.u16.u32 %r279,%r199; setp.eq.u16 %r280,%r279,80; @ %r280 bra $L36; setp.ne.u16 %r282,%r279,112; @ %r282 bra $L91; bra $L36; $L106: mov.u32 %r122,0; mov.u32 %r152,1; bra $L36; $L107: mov.u32 %r122,0; mov.u32 %r152,1; $L36: .loc 1 207 10 ld.u8 %r185,[%r116+1]; cvt.u16.u32 %r283,%r185; setp.eq.u16 %r284,%r283,43; @ %r284 bra $L92; setp.eq.u16 %r286,%r283,45; @ %r286 bra $L93; .loc 1 207 3 add.u64 %r117,%r116,1; .loc 1 206 9 mov.u32 %r118,0; bra $L39; $L92: mov.u32 %r118,0; bra $L38; $L93: .loc 1 209 10 mov.u32 %r118,1; $L38: .loc 1 212 5 add.u64 %r117,%r116,2; ld.u8 %r185,[%r116+2]; $L39: .loc 1 214 12 cvt.s64.s32 %r288,%r185; add.u64 %r289,%r500,%r288; ld.u8 %r40,[%r289]; .loc 1 214 6 cvt.u16.u32 %r291,%r40; add.u16 %r290,%r291,-1; .loc 1 214 35 cvt.u32.u16 %r293,%r290; cvt.u16.u8 %r292,%r293; setp.gt.u16 %r294,%r292,24; @ %r294 bra $L94; .loc 1 218 6 add.u32 %r135,%r40,-16; .loc 1 219 8 add.u64 %r133,%r117,1; .loc 1 219 14 ld.u8 %r297,[%r117+1]; add.u64 %r298,%r500,%r297; ld.u8 %r134,[%r298]; .loc 1 219 8 cvt.u16.u32 %r300,%r134; add.u16 %r299,%r300,-1; .loc 1 219 38 cvt.u32.u16 %r302,%r299; cvt.u16.u8 %r301,%r302; setp.gt.u16 %r303,%r301,24; @ %r303 bra $L40; $L41: .loc 1 220 11 shl.b32 %r305,%r135,2; add.u32 %r306,%r305,%r135; add.u32 %r307,%r306,%r306; .loc 1 220 15 add.u32 %r42,%r307,%r134; .loc 1 220 7 add.u32 %r135,%r42,-16; .loc 1 219 8 add.u64 %r133,%r133,1; .loc 1 219 14 ld.u8 %r310,[%r133]; add.u64 %r311,%r500,%r310; ld.u8 %r134,[%r311]; .loc 1 219 8 cvt.u16.u32 %r313,%r134; add.u16 %r312,%r313,-1; .loc 1 219 38 cvt.u32.u16 %r315,%r312; cvt.u16.u8 %r314,%r315; setp.le.u16 %r316,%r314,24; @ %r316 bra $L41; $L40: .loc 1 221 6 setp.eq.u32 %r317,%r118,0; @ %r317 bra $L42; .loc 1 222 7 neg.s32 %r135,%r135; $L42: .loc 1 223 5 add.u32 %r122,%r122,%r135; mov.u64 %r130,%r116; mov.u64 %r116,%r133; bra $L37; $L91: .loc 1 201 2 mov.u64 %r130,%r116; bra $L37; $L94: mov.u64 %r130,%r116; $L37: .loc 1 225 6 st.u64 [%r202],%r116; .loc 1 226 5 setp.eq.u32 %r318,%r152,0; @ %r318 bra $L43; $L85: .loc 1 227 32 setp.ne.u32 %r319,%r151,0; selp.u32 %r200,0,6,%r319; bra $L18; $L43: .loc 1 228 9 sub.u64 %r320,%r130,%r150; .loc 1 228 14 cvt.u32.u64 %r321,%r320; add.u32 %r137,%r321,-1; .loc 1 229 2 setp.le.s32 %r322,%r137,7; @ %r322 bra $L96; .loc 1 229 8 mov.u32 %r136,%r152; $L46: .loc 1 230 4 add.u32 %r136,%r136,1; .loc 1 229 22 shr.s32 %r137,%r137,1; .loc 1 229 2 setp.gt.s32 %r323,%r137,7; @ %r323 bra $L46; bra $L45; $L96: .loc 1 229 8 mov.u32 %r136,%r152; $L45: .loc 1 231 6 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r201; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r136; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r326,[%value_in]; } mov.u64 %r114,%r326; .loc 1 232 4 add.u64 %r121,%r326,24; .loc 1 235 7 setp.ge.u64 %r327,%r150,%r130; @ %r327 bra $L47; .loc 1 232 4 mov.u64 %r173,%r121; .loc 1 233 4 mov.u32 %r129,%r152; .loc 1 234 4 mov.u32 %r123,0; .loc 1 236 6 cvt.u16.u32 %r329,%r127; $L54: add.u64 %r138,%r130,-1; add.u64 %r184,%r173,4; ld.u8 %r328,[%r130+-1]; setp.eq.u16 %r330,%r328,%r329; @ %r330 bra $L48; $L51: .loc 1 242 6 setp.eq.u32 %r331,%r129,32; @ ! %r331 bra $L160; bra $L49; $L48: .loc 1 236 42 sub.u64 %r332,%r138,%r210; add.u64 %r51,%r332,1; .loc 1 236 25 setp.lt.u64 %r334,%r51,%r150; @ %r334 bra $L51; .loc 1 237 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r51; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r125; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r210; call (%value_in),strncmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r338,[%value_in]; } .loc 1 237 7 setp.eq.u32 %r339,%r338,0; @ ! %r339 bra $L51; bra $L97; $L160: .loc 1 242 6 mov.u32 %r119,%r129; add.u32 %r129,%r129,4; bra $L53; $L49: .loc 1 243 9 st.u32 [%r173],%r123; add.u64 %r183,%r173,8; .loc 1 243 6 mov.u64 %r173,%r184; .loc 1 243 9 mov.u64 %r184,%r183; .loc 1 245 6 mov.u32 %r119,%r152; .loc 1 243 9 mov.u32 %r129,4; .loc 1 244 6 mov.u32 %r123,0; $L53: .loc 1 247 9 ld.u8 %r342,[%r130+-1]; add.u64 %r343,%r500,%r342; .loc 1 247 27 ld.u8 %r502,[%r343]; mov.u16 %r346,%r502; and.b16 %r345,%r346,15; cvt.u32.u16 %r348,%r345; cvt.u32.u8 %r347,%r348; .loc 1 247 35 shl.b32 %r349,%r347,%r119; .loc 1 247 5 or.b32 %r123,%r123,%r349; .loc 1 236 6 mov.u64 %r130,%r138; bra $L52; $L97: mov.u64 %r130,%r51; $L52: .loc 1 235 7 setp.gt.u64 %r350,%r130,%r150; @ %r350 bra $L54; bra $L55; $L47: add.u64 %r184,%r326,28; .loc 1 232 4 mov.u64 %r173,%r121; .loc 1 234 4 mov.u32 %r123,0; $L55: .loc 1 250 7 st.u32 [%r173],%r123; .loc 1 251 18 sub.u64 %r351,%r184,%r121; shr.s64 %r353,%r351,2; .loc 1 251 14 cvt.u32.u64 %r139,%r353; .loc 1 251 10 st.u32 [%r326+20],%r139; .loc 1 252 8 shl.b32 %r63,%r139,5; .loc 1 252 13 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r123; call (%value_in),__hi0bits,(%out_arg1); ld.param.u32 %r355,[%value_in]; } .loc 1 252 4 sub.u32 %r140,%r63,%r355; .loc 1 253 8 ld.u32 %r120,[%r203]; .loc 1 256 5 setp.le.s32 %r356,%r140,%r120; @ %r356 bra $L56; .loc 1 257 5 sub.u32 %r142,%r140,%r120; .loc 1 258 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r326; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r142; call (%value_in),__any_on,(%out_arg1,%out_arg2); ld.param.u32 %r359,[%value_in]; } mov.u32 %r65,%r359; .loc 1 258 6 setp.eq.u32 %r360,%r65,0; @ %r360 bra $L57; .loc 1 260 6 add.u32 %r143,%r142,-1; .loc 1 261 11 shr.s32 %r361,%r143,5; cvt.s64.s32 %r362,%r361; .loc 1 261 9 shl.b64 %r363,%r362,2; add.u64 %r364,%r121,%r363; .loc 1 261 31 and.b32 %r365,%r143,31; .loc 1 261 25 mov.u32 %r367,1; shl.b32 %r366,%r367,%r365; .loc 1 261 21 ld.u32 %r369,[%r364]; and.b32 %r368,%r366,%r369; .loc 1 261 7 setp.eq.u32 %r370,%r368,0; @ %r370 bra $L98; .loc 1 263 8 setp.le.s32 %r371,%r143,1; @ %r371 bra $L58; .loc 1 263 18 add.u32 %r374,%r142,-2; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r326; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r374; call (%value_in),__any_on,(%out_arg1,%out_arg2); ld.param.u32 %r375,[%value_in]; } .loc 1 263 15 setp.ne.u32 %r376,%r375,0; @ %r376 bra $L99; $L58: .loc 1 262 14 mov.u32 %r65,2; bra $L57; $L98: .loc 1 259 13 mov.u32 %r65,%r367; bra $L57; $L99: .loc 1 264 15 mov.u32 %r65,3; $L57: .loc 1 267 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r326; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r142; call rshift,(%out_arg1,%out_arg2); } .loc 1 268 5 add.u32 %r122,%r122,%r142; bra $L59; $L56: .loc 1 270 10 setp.ge.s32 %r379,%r140,%r120; @ %r379 bra $L100; .loc 1 271 5 sub.u32 %r144,%r120,%r140; .loc 1 272 7 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r201; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r326; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r144; call (%value_in),__lshift,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r383,[%value_in]; } mov.u64 %r114,%r383; .loc 1 273 5 sub.u32 %r122,%r122,%r144; .loc 1 274 5 add.u64 %r121,%r114,24; .loc 1 254 11 mov.u32 %r65,0; bra $L59; $L100: mov.u32 %r65,0; $L59: .loc 1 276 5 ld.u32 %r384,[%r203+8]; setp.ge.s32 %r385,%r384,%r122; @ %r385 bra $L60; $L61: .loc 1 278 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r201; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r114; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 279 7 mov.u64 %r388,0; st.u64 [%r205],%r388; .loc 1 280 10 mov.u32 %r200,163; bra $L18; $L60: .loc 1 283 13 ld.u32 %r78,[%r203+4]; .loc 1 283 5 setp.le.s32 %r389,%r78,%r122; @ %r389 bra $L101; .loc 1 285 5 sub.u32 %r145,%r78,%r122; .loc 1 286 6 setp.gt.s32 %r390,%r120,%r145; @ %r390 bra $L63; .loc 1 287 15 ld.u32 %r79,[%r203+12]; setp.eq.u32 %r391,%r79,2; @ %r391 bra $L64; setp.eq.u32 %r392,%r79,3; @ %r392 bra $L65; setp.ne.u32 %r393,%r79,1; @ %r393 bra $L66; .loc 1 289 8 setp.eq.u32 %r394,%r120,%r145; @ ! %r394 bra $L66; .loc 1 289 20 setp.eq.u32 %r395,%r120,1; @ %r395 bra $L68; .loc 1 289 33 add.u32 %r398,%r120,-1; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r114; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r398; call (%value_in),__any_on,(%out_arg1,%out_arg2); ld.param.u32 %r399,[%value_in]; } .loc 1 289 30 setp.eq.u32 %r400,%r399,0; @ %r400 bra $L66; ld.u32 %r78,[%r203+4]; bra $L68; $L64: .loc 1 293 8 setp.eq.u32 %r401,%r206,0; @ ! %r401 bra $L66; bra $L68; $L65: .loc 1 297 8 setp.eq.u32 %r402,%r206,0; @ %r402 bra $L66; $L68: .loc 1 299 11 st.u32 [%r204],%r78; .loc 1 300 21 mov.u32 %r403,1; st.u32 [%r114+20],%r403; .loc 1 300 11 st.u32 [%r121],%r403; .loc 1 301 10 st.u64 [%r205],%r114; .loc 1 302 13 mov.u32 %r200,98; bra $L18; $L66: .loc 1 306 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r201; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r114; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 307 8 mov.u64 %r407,0; st.u64 [%r205],%r407; .loc 1 308 11 mov.u32 %r200,80; bra $L18; $L63: .loc 1 310 5 add.u32 %r146,%r145,-1; .loc 1 311 6 setp.ne.u32 %r408,%r65,0; @ %r408 bra $L102; .loc 1 313 11 setp.eq.u32 %r409,%r146,0; @ %r409 bra $L70; .loc 1 314 15 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r114; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r146; call (%value_in),__any_on,(%out_arg1,%out_arg2); ld.param.u32 %r412,[%value_in]; } mov.u32 %r65,%r412; bra $L70; $L102: .loc 1 312 13 mov.u32 %r65,1; $L70: .loc 1 315 10 shr.s32 %r413,%r146,5; cvt.s64.s32 %r414,%r413; .loc 1 315 8 shl.b64 %r415,%r414,2; add.u64 %r416,%r121,%r415; .loc 1 315 30 and.b32 %r417,%r146,31; .loc 1 315 24 mov.u32 %r419,1; shl.b32 %r418,%r419,%r417; .loc 1 315 20 ld.u32 %r421,[%r416]; and.b32 %r420,%r418,%r421; .loc 1 315 6 setp.eq.u32 %r422,%r420,0; @ %r422 bra $L71; .loc 1 316 13 or.b32 %r65,%r65,2; $L71: .loc 1 317 9 sub.u32 %r120,%r120,%r145; .loc 1 318 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r114; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r145; call rshift,(%out_arg1,%out_arg2); } .loc 1 319 5 ld.u32 %r122,[%r203+4]; .loc 1 284 7 mov.u32 %r200,2; bra $L62; $L101: .loc 1 282 6 mov.u32 %r200,1; $L62: .loc 1 321 5 setp.eq.u32 %r425,%r65,0; @ %r425 bra $L72; .loc 1 323 13 ld.u32 %r91,[%r203+12]; setp.eq.u32 %r426,%r91,2; @ %r426 bra $L73; setp.eq.u32 %r427,%r91,3; @ %r427 bra $L74; setp.ne.u32 %r428,%r91,1; @ %r428 bra $L75; .loc 1 327 21 and.b32 %r429,%r65,2; .loc 1 327 10 setp.eq.u32 %r430,%r429,0; @ %r430 bra $L75; .loc 1 328 27 ld.u32 %r432,[%r121]; or.b32 %r431,%r65,%r432; and.b32 %r433,%r431,1; .loc 1 328 8 setp.ne.u32 %r434,%r433,0; @ %r434 bra $L76; bra $L75; $L73: .loc 1 332 7 mov.u32 %r435,1; sub.u32 %r206,%r435,%r206; $L74: .loc 1 337 6 setp.eq.u32 %r436,%r206,0; @ %r436 bra $L75; $L76: .loc 1 338 6 ld.u32 %r147,[%r114+20]; .loc 1 114 4 add.u64 %r153,%r114,24; .loc 1 115 12 cvt.s64.s32 %r437,%r147; .loc 1 115 9 shl.b64 %r155,%r437,2; .loc 1 115 5 add.u64 %r156,%r153,%r155; mov.u64 %r124,%r153; .loc 1 122 8 mov.u32 %r501,0; $L79: .loc 1 118 7 ld.u32 %r158,[%r124]; .loc 1 118 6 setp.eq.u32 %r438,%r158,-1; @ %r438 bra $L77; .loc 1 119 4 add.u32 %r439,%r158,1; st.u32 [%r124],%r439; bra $L78; $L77: .loc 1 122 8 st.u32 [%r124],%r501; add.u64 %r124,%r124,4; .loc 1 123 3 setp.gt.u64 %r441,%r156,%r124; @ %r441 bra $L79; .loc 1 135 8 ld.u32 %r160,[%r114+20]; .loc 1 135 6 ld.u32 %r442,[%r114+12]; setp.lt.s32 %r443,%r160,%r442; @ %r443 bra $L80; .loc 1 136 9 ld.u32 %r447,[%r114+8]; add.u32 %r446,%r447,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r201; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r446; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r448,[%value_in]; } .loc 1 137 4 ld.s32 %r452,[%r114+20]; add.u64 %r453,%r452,2; shl.b64 %r454,%r453,2; add.u64 %r455,%r114,16; add.u64 %r456,%r448,16; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r456; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r455; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r454; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r457,[%value_in]; } .loc 1 138 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r201; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r114; call _Bfree,(%out_arg1,%out_arg2); } ld.u32 %r160,[%r448+20]; add.u64 %r153,%r448,24; mov.u64 %r114,%r448; $L80: .loc 1 141 16 add.u32 %r460,%r160,1; st.u32 [%r114+20],%r460; .loc 1 141 20 cvt.s64.s32 %r461,%r160; add.u64 %r462,%r461,4; shl.b64 %r463,%r462,2; add.u64 %r464,%r114,%r463; mov.u32 %r466,1; st.u32 [%r464+8],%r466; $L78: .loc 1 341 7 setp.ne.u32 %r467,%r200,2; @ %r467 bra $L81; .loc 1 342 29 ld.u32 %r469,[%r203]; add.u32 %r468,%r469,-1; .loc 1 342 8 setp.ne.u32 %r470,%r468,%r120; @ %r470 bra $L103; .loc 1 343 17 shr.s32 %r471,%r120,5; cvt.s64.s32 %r472,%r471; .loc 1 343 10 shl.b64 %r473,%r472,2; add.u64 %r474,%r153,%r473; .loc 1 343 42 and.b32 %r475,%r120,31; .loc 1 343 32 mov.u32 %r477,1; shl.b32 %r476,%r477,%r475; .loc 1 343 28 ld.u32 %r479,[%r474]; and.b32 %r478,%r476,%r479; .loc 1 343 6 setp.eq.u32 %r480,%r478,0; selp.u32 %r200,34,33,%r480; bra $L72; $L81: .loc 1 346 12 ld.u32 %r481,[%r114+20]; setp.le.s32 %r482,%r481,%r147; @ %r482 bra $L83; $L84: .loc 1 349 5 mov.u32 %r484,1; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r114; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r484; call rshift,(%out_arg1,%out_arg2); } .loc 1 350 8 add.u32 %r122,%r122,1; ld.u32 %r485,[%r203+8]; setp.lt.s32 %r486,%r485,%r122; @ %r486 bra $L61; mov.u32 %r200,33; bra $L72; $L83: .loc 1 347 12 and.b32 %r148,%r120,31; .loc 1 347 5 setp.eq.u32 %r487,%r148,0; @ %r487 bra $L105; .loc 1 348 13 add.u64 %r489,%r153,%r155; ld.u32 %r488,[%r489+-4]; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r488; call (%value_in),__hi0bits,(%out_arg1); ld.param.u32 %r491,[%value_in]; } .loc 1 348 33 mov.u32 %r493,32; sub.u32 %r492,%r493,%r148; .loc 1 348 9 setp.lt.s32 %r494,%r491,%r492; @ %r494 bra $L84; mov.u32 %r200,33; bra $L72; $L103: mov.u32 %r200,34; bra $L72; $L105: mov.u32 %r200,33; bra $L72; $L75: .loc 1 356 8 or.b32 %r200,%r200,16; $L72: .loc 1 358 6 st.u64 [%r205],%r114; .loc 1 359 7 st.u32 [%r204],%r122; .loc 1 360 9 bra $L18; $L161: .loc 1 225 6 st.u64 [%r202],%r116; bra $L85; $L23: ld.u8 %r30,[%r150]; .loc 1 177 6 mov.u64 %r116,%r150; $L24: cvt.u16.u32 %r496,%r30; setp.eq.u16 %r497,%r496,80; @ %r497 bra $L106; setp.eq.u16 %r499,%r496,112; @ ! %r499 bra $L161; bra $L107; $L89: .loc 1 196 8 mov.u64 %r116,%r131; bra $L35; $L18: .loc 1 361 1 mov.u32 %value,%r200; st.param.u32 [%value_out],%value; ret; } /62 1591654536 399 399 100644 7702 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __hexnan .visible .func (.param .u32 %value_out) __hexnan (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/stdlib/gdtoa-hexnan.c" // BEGIN GLOBAL VAR DECL: __hexdig .extern .const .align 1 .u8 __hexdig[256]; // 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 %r25; .reg .u32 %r26; .reg .u64 %r39; .reg .u32 %r40; .reg .u64 %r41; .reg .u64 %r45; .reg .u64 %r46; .reg .u32 %r47; .reg .u64 %r48; .reg .u64 %r49; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r52; .reg .u64 %r53; .reg .u64 %r55; .reg .u32 %r56; .reg .u64 %r58; .reg .u32 %r59; .reg .u32 %r60; .reg .u32 %r61; .reg .u64 %r62; .reg .u64 %r63; .reg .u32 %r64; .reg .u32 %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .u32 %r70; .reg .u64 %r71; .reg .u32 %r72; .reg .u32 %r75; .reg .u32 %r76; .reg .u64 %r77; .reg .u64 %r79; .reg .u32 %r84; .reg .u32 %r88; .reg .u64 %r89; .reg .u64 %r90; .reg .u64 %r91; .reg .u32 %r92; .reg .u64 %r93; .reg .u64 %r94; .reg .pred %r95; .reg .u32 %r96; .reg .u64 %r98; .reg .u64 %r99; .reg .pred %r100; .reg .pred %r101; .reg .pred %r102; .reg .u32 %r104; .reg .u32 %r105; .reg .u32 %r107; .reg .u32 %r108; .reg .u16 %r109; .reg .u16 %r110; .reg .u16 %r111; .reg .u32 %r112; .reg .u16 %r113; .reg .pred %r114; .reg .pred %r115; .reg .u32 %r117; .reg .u32 %r118; .reg .u32 %r119; .reg .pred %r120; .reg .pred %r122; .reg .u64 %r123; .reg .pred %r124; .reg .u32 %r125; .reg .pred %r126; .reg .u16 %r128; .reg .u16 %r129; .reg .u32 %r130; .reg .u32 %r131; .reg .u32 %r132; .reg .pred %r133; .reg .pred %r134; .reg .u32 %r136; .reg .u32 %r137; .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 .u32 %r148; .reg .u32 %r149; .reg .u32 %r150; .reg .u32 %r151; .reg .pred %r152; .reg .pred %r153; .reg .u32 %r154; .reg .pred %r155; .reg .pred %r156; .reg .u32 %r157; .reg .u32 %r158; .reg .u32 %r159; .reg .u32 %r160; .reg .pred %r161; .reg .pred %r162; .reg .pred %r163; .reg .u32 %r164; .reg .u32 %r165; .reg .pred %r166; .reg .u64 %r168; .reg .u32 %r169; .reg .u32 %r171; mov.u64 %r89,%ar0; mov.u64 %r90,%ar1; mov.u64 %r91,%ar2; .loc 1 74 8 ld.u32 %r52,[%r90]; .loc 1 75 18 shr.s32 %r92,%r52,5; cvt.s64.s32 %r93,%r92; .loc 1 75 9 shl.b64 %r94,%r93,2; .loc 1 75 4 add.u64 %r53,%r91,%r94; .loc 1 76 12 and.b32 %r25,%r52,31; .loc 1 76 5 setp.ne.u32 %r95,%r25,0; @ %r95 bra $L2; add.u64 %r58,%r53,-4; .loc 1 75 4 mov.u64 %r45,%r53; bra $L3; $L2: .loc 1 77 4 add.u64 %r45,%r53,4; mov.u64 %r58,%r53; $L3: .loc 1 78 7 mov.u32 %r96,0; st.u32 [%r45+-4],%r96; .loc 1 81 4 ld.u64 %r49,[%r89]; .loc 1 82 7 mov.u64 %r48,%r58; mov.u64 %r46,%r58; .loc 1 80 20 mov.u32 %r51,%r96; .loc 1 80 16 mov.u32 %r50,%r96; .loc 1 80 10 mov.u32 %r47,%r96; .loc 1 83 13 cvta.const.u64 %r168,__hexdig; .loc 1 110 9 mov.u32 %r169,%r96; .loc 1 55 4 mov.u32 %r171,8; .loc 1 82 7 bra $L4; $L17: .loc 1 83 13 cvt.u64.u32 %r98,%r56; add.u64 %r99,%r168,%r98; ld.u8 %r26,[%r99]; .loc 1 83 6 setp.ne.u32 %r100,%r26,0; @ %r100 bra $L5; .loc 1 84 7 setp.gt.u32 %r101,%r56,32; @ %r101 bra $L6; .loc 1 85 8 setp.le.s32 %r102,%r47,%r50; @ %r102 bra $L7; .loc 1 86 12 set.u32.lt.u64 %r104,%r46,%r48; neg.s32 %r105,%r104; .loc 1 86 22 set.u32.le.s32 %r107,%r51,7; neg.s32 %r108,%r107; .loc 1 86 17 cvt.u16.u32 %r110,%r105; cvt.u16.u32 %r111,%r108; and.b16 %r109,%r110,%r111; .loc 1 86 9 cvt.u32.u16 %r112,%r109; cvt.u16.u8 %r113,%r112; setp.ne.u16 %r114,%r113,0; @ %r114 bra $L8; $L11: .loc 1 88 9 setp.le.u64 %r115,%r46,%r91; @ %r115 bra $L30; bra $L43; $L8: .loc 1 55 4 sub.u32 %r59,%r171,%r51; .loc 1 56 4 shl.b32 %r60,%r59,2; .loc 1 57 4 mov.u32 %r117,32; sub.u32 %r61,%r117,%r60; ld.u32 %r67,[%r46]; add.u64 %r77,%r46,4; mov.u64 %r62,%r46; $L10: .loc 1 59 10 ld.u32 %r64,[%r77]; .loc 1 59 14 shl.b32 %r118,%r64,%r61; .loc 1 59 6 or.b32 %r119,%r118,%r67; st.u32 [%r62],%r119; .loc 1 60 8 shr.u32 %r67,%r64,%r60; st.u32 [%r77],%r67; .loc 1 61 3 add.u64 %r62,%r62,4; add.u64 %r77,%r77,4; setp.gt.u64 %r120,%r48,%r62; @ %r120 bra $L10; bra $L11; $L43: .loc 1 93 11 add.u64 %r48,%r46,-4; st.u32 [%r46+-4],%r169; mov.u32 %r50,%r47; mov.u64 %r46,%r48; .loc 1 95 8 mov.u32 %r51,0; bra $L7; $L6: .loc 1 99 7 setp.eq.u32 %r122,%r56,41; @ %r122 bra $L12; $L18: .loc 1 103 11 mov.u32 %r88,4; bra $L1; $L12: .loc 1 100 13 add.u64 %r123,%r49,2; .loc 1 100 9 st.u64 [%r89],%r123; .loc 1 101 5 bra $L14; $L5: .loc 1 105 10 add.u32 %r47,%r47,1; .loc 1 106 6 add.u32 %r51,%r51,1; setp.gt.s32 %r124,%r51,8; @ %r124 bra $L15; ld.u32 %r125,[%r46]; shl.b32 %r76,%r125,4; bra $L16; $L15: .loc 1 107 7 setp.le.u64 %r126,%r46,%r91; @ %r126 bra $L7; .loc 1 110 9 st.u32 [%r46+-4],%r169; add.u64 %r46,%r46,-4; mov.u32 %r76,%r96; .loc 1 109 6 mov.u32 %r51,1; $L16: .loc 1 112 24 cvt.u16.u32 %r129,%r26; and.b16 %r128,%r129,15; cvt.u32.u16 %r131,%r128; cvt.u32.u8 %r130,%r131; .loc 1 112 19 or.b32 %r132,%r130,%r76; .loc 1 112 6 st.u32 [%r46],%r132; bra $L7; $L30: .loc 1 89 9 mov.u32 %r51,8; $L7: mov.u64 %r49,%r55; $L4: .loc 1 82 7 add.u64 %r55,%r49,1; .loc 1 82 11 ld.u8 %r56,[%r55]; .loc 1 82 7 setp.ne.u32 %r133,%r56,0; @ %r133 bra $L17; $L14: .loc 1 114 5 setp.eq.u32 %r134,%r47,0; @ %r134 bra $L18; .loc 1 116 8 set.u32.lt.u64 %r136,%r46,%r48; neg.s32 %r137,%r136; .loc 1 116 18 set.u32.le.s32 %r139,%r51,7; neg.s32 %r140,%r139; .loc 1 116 13 cvt.u16.u32 %r142,%r137; cvt.u16.u32 %r143,%r140; and.b16 %r141,%r142,%r143; .loc 1 116 5 cvt.u32.u16 %r144,%r141; cvt.u16.u8 %r145,%r144; setp.ne.u16 %r146,%r145,0; @ %r146 bra $L19; $L23: .loc 1 118 5 setp.gt.u64 %r147,%r46,%r91; @ %r147 bra $L20; bra $L44; $L19: .loc 1 55 4 mov.u32 %r148,8; sub.u32 %r68,%r148,%r51; .loc 1 56 4 shl.b32 %r69,%r68,2; .loc 1 57 4 mov.u32 %r149,32; sub.u32 %r70,%r149,%r69; ld.u32 %r75,[%r46]; add.u64 %r79,%r46,4; mov.u64 %r71,%r46; $L22: .loc 1 59 10 ld.u32 %r72,[%r79]; .loc 1 59 14 shl.b32 %r150,%r72,%r70; .loc 1 59 6 or.b32 %r151,%r150,%r75; st.u32 [%r71],%r151; .loc 1 60 8 shr.u32 %r75,%r72,%r69; st.u32 [%r79],%r75; .loc 1 61 3 add.u64 %r71,%r71,4; add.u64 %r79,%r79,4; setp.gt.u64 %r152,%r48,%r71; @ %r152 bra $L22; bra $L23; $L20: mov.u64 %r63,%r46; mov.u64 %r41,%r91; $L24: add.u64 %r39,%r41,4; .loc 1 120 14 ld.u32 %r40,[%r63]; .loc 1 120 12 st.u32 [%r41],%r40; add.u64 %r63,%r63,4; mov.u64 %r41,%r39; .loc 1 121 4 setp.ge.u64 %r153,%r58,%r63; @ %r153 bra $L24; .loc 1 122 12 mov.u32 %r154,0; $L25: st.u32 [%r39],%r154; add.u64 %r39,%r39,4; .loc 1 123 4 setp.ge.u64 %r155,%r58,%r39; @ %r155 bra $L25; ld.u32 %r84,[%r45+-4]; bra $L26; $L44: ld.u32 %r84,[%r45+-4]; .loc 1 127 6 setp.eq.u32 %r156,%r25,0; @ %r156 bra $L26; .loc 1 128 44 mov.u32 %r158,32; sub.u32 %r157,%r158,%r25; .loc 1 128 33 mov.u32 %r160,-1; shr.u32 %r159,%r160,%r157; .loc 1 128 8 and.b32 %r84,%r84,%r159; st.u32 [%r45+-4],%r84; $L26: .loc 1 131 6 setp.ne.u32 %r161,%r84,0; @ %r161 bra $L31; .loc 1 133 6 setp.eq.u64 %r162,%r91,%r58; @ ! %r162 bra $L28; bra $L27; $L29: setp.ne.u64 %r163,%r91,%r58; @ %r163 bra $L28; $L27: .loc 1 134 8 mov.u32 %r164,1; st.u32 [%r58],%r164; .loc 1 138 9 mov.u32 %r88,5; .loc 1 135 4 bra $L1; $L28: .loc 1 130 16 add.u64 %r58,%r58,-4; .loc 1 131 6 ld.u32 %r165,[%r58]; setp.eq.u32 %r166,%r165,0; @ %r166 bra $L29; .loc 1 138 9 mov.u32 %r88,5; bra $L1; $L31: mov.u32 %r88,5; $L1: .loc 1 139 1 mov.u32 %value,%r88; st.param.u32 [%value_out],%value; ret; } lib_a-impure.o/ 1591654536 399 399 100644 823 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[2] = {67,0 }; // BEGIN VAR DEF: impure_data .global .align 8 .u64 impure_data[233] = {0,0,0,0,0,0,0,0,0,generic($LC0),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 }; // END PREAMBLE // 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/ 1591654536 399 399 100644 1009 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 44 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 45 1 mov.u64 %value,%r27; st.param.u64 [%value_out],%value; ret; } lib_a-isalnum.o/1591654536 399 399 100644 922 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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_ptr__ .extern .global .align 8 .u64 __ctype_ptr__[1]; // 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 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u16 %r36; .reg .u16 %r37; .reg .u32 %r38; .reg .u16 %r39; mov.u32 %r29,%ar0; .loc 1 44 22 cvt.s64.s32 %r31,%r29; ld.global.u64 %r32,[__ctype_ptr__]; add.u64 %r33,%r32,%r31; .loc 1 44 28 ld.u8 %r39,[%r33+1]; mov.u16 %r37,%r39; and.b16 %r36,%r37,7; cvt.u32.u16 %r38,%r36; cvt.s32.s8 %value,%r38; .loc 1 45 1 st.param.u32 [%value_out],%value; ret; } lib_a-isalpha.o/1591654536 399 399 100644 922 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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_ptr__ .extern .global .align 8 .u64 __ctype_ptr__[1]; // 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 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u16 %r36; .reg .u16 %r37; .reg .u32 %r38; .reg .u16 %r39; mov.u32 %r29,%ar0; .loc 1 42 22 cvt.s64.s32 %r31,%r29; ld.global.u64 %r32,[__ctype_ptr__]; add.u64 %r33,%r32,%r31; .loc 1 42 28 ld.u8 %r39,[%r33+1]; mov.u16 %r37,%r39; and.b16 %r36,%r37,3; cvt.u32.u16 %r38,%r36; cvt.s32.s8 %value,%r38; .loc 1 43 1 st.param.u32 [%value_out],%value; ret; } lib_a-iscntrl.o/1591654536 399 399 100644 923 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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_ptr__ .extern .global .align 8 .u64 __ctype_ptr__[1]; // 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 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u16 %r36; .reg .u16 %r37; .reg .u32 %r38; .reg .u16 %r39; mov.u32 %r29,%ar0; .loc 1 45 22 cvt.s64.s32 %r31,%r29; ld.global.u64 %r32,[__ctype_ptr__]; add.u64 %r33,%r32,%r31; .loc 1 45 28 ld.u8 %r39,[%r33+1]; mov.u16 %r37,%r39; and.b16 %r36,%r37,32; cvt.u32.u16 %r38,%r36; cvt.s32.s8 %value,%r38; .loc 1 46 1 st.param.u32 [%value_out],%value; ret; } lib_a-isdigit.o/1591654536 399 399 100644 922 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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_ptr__ .extern .global .align 8 .u64 __ctype_ptr__[1]; // 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 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u16 %r36; .reg .u16 %r37; .reg .u32 %r38; .reg .u16 %r39; mov.u32 %r29,%ar0; .loc 1 42 22 cvt.s64.s32 %r31,%r29; ld.global.u64 %r32,[__ctype_ptr__]; add.u64 %r33,%r32,%r31; .loc 1 42 28 ld.u8 %r39,[%r33+1]; mov.u16 %r37,%r39; and.b16 %r36,%r37,4; cvt.u32.u16 %r38,%r36; cvt.s32.s8 %value,%r38; .loc 1 43 1 st.param.u32 [%value_out],%value; ret; } lib_a-islower.o/1591654536 399 399 100644 1040 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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_ptr__ .extern .global .align 8 .u64 __ctype_ptr__[1]; // 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 %r30; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u16 %r37; .reg .u16 %r38; .reg .u16 %r40; .reg .u32 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .u16 %r45; mov.u32 %r30,%ar0; .loc 1 42 24 cvt.s64.s32 %r32,%r30; ld.global.u64 %r33,[__ctype_ptr__]; add.u64 %r34,%r33,%r32; .loc 1 42 41 ld.u8 %r45,[%r34+1]; mov.u16 %r38,%r45; and.b16 %r37,%r38,3; cvt.u32.u16 %r42,%r37; cvt.s32.s8 %r41,%r42; cvt.u16.u32 %r40,%r41; set.u32.eq.u16 %r43,%r40,2; neg.s32 %value,%r43; .loc 1 43 1 st.param.u32 [%value_out],%value; ret; } lib_a-isprint.o/1591654536 399 399 100644 1513 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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_ptr__ .extern .global .align 8 .u64 __ctype_ptr__[1]; // 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 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u16 %r36; .reg .u16 %r37; .reg .u32 %r38; .reg .u16 %r39; mov.u32 %r29,%ar0; .loc 1 51 22 cvt.s64.s32 %r31,%r29; ld.global.u64 %r32,[__ctype_ptr__]; add.u64 %r33,%r32,%r31; .loc 1 51 28 ld.u8 %r39,[%r33+1]; mov.u16 %r37,%r39; and.b16 %r36,%r37,23; cvt.u32.u16 %r38,%r36; cvt.s32.s8 %value,%r38; .loc 1 52 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 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u32 %r35; mov.u32 %r29,%ar0; .loc 1 59 22 cvt.s64.s32 %r31,%r29; ld.global.u64 %r32,[__ctype_ptr__]; add.u64 %r33,%r32,%r31; ld.s8 %r35,[%r33+1]; .loc 1 59 28 and.b32 %value,%r35,151; .loc 1 60 1 st.param.u32 [%value_out],%value; ret; } lib_a-ispunct.o/1591654536 399 399 100644 923 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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_ptr__ .extern .global .align 8 .u64 __ctype_ptr__[1]; // 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 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u16 %r36; .reg .u16 %r37; .reg .u32 %r38; .reg .u16 %r39; mov.u32 %r29,%ar0; .loc 1 44 22 cvt.s64.s32 %r31,%r29; ld.global.u64 %r32,[__ctype_ptr__]; add.u64 %r33,%r32,%r31; .loc 1 44 28 ld.u8 %r39,[%r33+1]; mov.u16 %r37,%r39; and.b16 %r36,%r37,16; cvt.u32.u16 %r38,%r36; cvt.s32.s8 %value,%r38; .loc 1 45 1 st.param.u32 [%value_out],%value; ret; } lib_a-isspace.o/1591654536 399 399 100644 922 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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_ptr__ .extern .global .align 8 .u64 __ctype_ptr__[1]; // 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 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u16 %r36; .reg .u16 %r37; .reg .u32 %r38; .reg .u16 %r39; mov.u32 %r29,%ar0; .loc 1 42 22 cvt.s64.s32 %r31,%r29; ld.global.u64 %r32,[__ctype_ptr__]; add.u64 %r33,%r32,%r31; .loc 1 42 28 ld.u8 %r39,[%r33+1]; mov.u16 %r37,%r39; and.b16 %r36,%r37,8; cvt.u32.u16 %r38,%r36; cvt.s32.s8 %value,%r38; .loc 1 43 1 st.param.u32 [%value_out],%value; ret; } lib_a-isupper.o/1591654536 399 399 100644 1040 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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_ptr__ .extern .global .align 8 .u64 __ctype_ptr__[1]; // 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 %r30; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u16 %r37; .reg .u16 %r38; .reg .u16 %r40; .reg .u32 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .u16 %r45; mov.u32 %r30,%ar0; .loc 1 41 24 cvt.s64.s32 %r32,%r30; ld.global.u64 %r33,[__ctype_ptr__]; add.u64 %r34,%r33,%r32; .loc 1 41 41 ld.u8 %r45,[%r34+1]; mov.u16 %r38,%r45; and.b16 %r37,%r38,3; cvt.u32.u16 %r42,%r37; cvt.s32.s8 %r41,%r42; cvt.u16.u32 %r40,%r41; set.u32.eq.u16 %r43,%r40,1; neg.s32 %value,%r43; .loc 1 42 1 st.param.u32 [%value_out],%value; ret; } /84 1591654536 399 399 100644 928 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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_ptr__ .extern .global .align 8 .u64 __ctype_ptr__[1]; // 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 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u16 %r36; .reg .u16 %r37; .reg .u32 %r38; .reg .u16 %r39; mov.u32 %r29,%ar0; .loc 1 43 22 cvt.s64.s32 %r31,%r29; ld.global.u64 %r32,[__ctype_ptr__]; add.u64 %r33,%r32,%r31; .loc 1 43 28 ld.u8 %r39,[%r33+1]; mov.u16 %r37,%r39; and.b16 %r36,%r37,68; cvt.u32.u16 %r38,%r36; cvt.s32.s8 %value,%r38; .loc 1 44 1 st.param.u32 [%value_out],%value; ret; } lib_a-jrand48.o/1591654536 399 399 100644 1966 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 21 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 22 11 ld.u16 %r33,[%r29+4]; .loc 1 22 27 shl.b64 %r34,%r33,16; .loc 1 22 36 ld.u16 %r35,[%r29+2]; .loc 1 22 34 add.u64 %value,%r34,%r35; .loc 1 23 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 21 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 22 11 ld.u16 %r34,[%r29+4]; .loc 1 22 27 shl.b64 %r35,%r34,16; .loc 1 22 36 ld.u16 %r36,[%r29+2]; .loc 1 22 34 add.u64 %value,%r35,%r36; .loc 1 31 1 st.param.u64 [%value_out],%value; ret; } lib_a-l64a.o/ 1591654536 399 399 100644 3991 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: l64a .visible .func (.param .u64 %value_out) l64a (.param .u64 %in_ar0); .file 1 "../../../../../../newlib/libc/stdlib/l64a.c" // BEGIN GLOBAL FUNCTION DECL: _l64a_r .visible .func (.param .u64 %value_out) _l64a_r (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN VAR DEF: R64_ARRAY .const .align 1 .u8 R64_ARRAY[65] = {46,47,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,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: l64a .visible .func (.param .u64 %value_out) l64a (.param .u64 %in_ar0) { .reg .u64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r22; .reg .u64 %r24; .reg .u64 %r29; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .pred %r39; .reg .u32 %r41; .reg .u32 %r42; .reg .u64 %r43; .reg .u64 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r48; .reg .u32 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u32 %r52; .reg .pred %r53; .reg .pred %r54; .reg .u64 %r56; mov.u64 %r38,%ar0; .loc 1 33 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 44 17 and.b64 %r24,%r38,4294967295; .loc 1 47 10 add.u64 %r37,%r22,280; .loc 1 52 10 setp.eq.u64 %r39,%r24,0; @ %r39 bra $L6; .loc 1 59 25 cvta.const.u64 %r56,R64_ARRAY; .loc 1 58 13 cvt.u32.u64 %r42,%r38; and.b32 %r41,%r42,63; .loc 1 59 25 cvt.s64.s32 %r43,%r41; add.u64 %r44,%r56,%r43; .loc 1 59 14 ld.u8 %r45,[%r44]; st.u8 [%r22+280],%r45; .loc 1 60 11 shr.u64 %r29,%r24,6; add.u64 %r34,%r22,281; add.u64 %r36,%r22,286; bra $L3; $L6: .loc 1 48 7 mov.u64 %r35,%r37; $L2: .loc 1 54 9 mov.u32 %r46,0; st.u8 [%r35],%r46; bra $L1; $L10: .loc 1 58 13 cvt.u32.u64 %r49,%r29; and.b32 %r48,%r49,63; .loc 1 59 25 cvt.s64.s32 %r50,%r48; add.u64 %r51,%r56,%r50; .loc 1 59 14 ld.u8 %r52,[%r51]; st.u8 [%r34],%r52; .loc 1 60 11 shr.u64 %r29,%r29,6; add.u64 %r34,%r34,1; .loc 1 50 3 setp.eq.u64 %r53,%r34,%r36; @ %r53 bra $L1; $L3: mov.u64 %r35,%r34; .loc 1 52 10 setp.eq.u64 %r54,%r29,0; @ ! %r54 bra $L10; bra $L2; $L1: .loc 1 34 1 mov.u64 %value,%r37; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: _l64a_r .visible .func (.param .u64 %value_out) _l64a_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 %r29; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .pred %r39; .reg .u32 %r41; .reg .u32 %r42; .reg .u64 %r43; .reg .u64 %r44; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r48; .reg .u32 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u32 %r52; .reg .pred %r53; .reg .pred %r54; .reg .u64 %r56; mov.u64 %r37,%ar0; mov.u64 %r38,%ar1; .loc 1 44 17 and.b64 %r27,%r38,4294967295; .loc 1 47 10 add.u64 %r36,%r37,280; .loc 1 52 10 setp.eq.u64 %r39,%r27,0; @ %r39 bra $L16; .loc 1 59 25 cvta.const.u64 %r56,R64_ARRAY; .loc 1 58 13 cvt.u32.u64 %r42,%r38; and.b32 %r41,%r42,63; .loc 1 59 25 cvt.s64.s32 %r43,%r41; add.u64 %r44,%r56,%r43; .loc 1 59 14 ld.u8 %r45,[%r44]; st.u8 [%r37+280],%r45; .loc 1 60 11 shr.u64 %r29,%r27,6; add.u64 %r33,%r37,281; add.u64 %r35,%r37,286; bra $L13; $L16: .loc 1 48 7 mov.u64 %r34,%r36; $L12: .loc 1 54 9 mov.u32 %r46,0; st.u8 [%r34],%r46; .loc 1 55 4 bra $L11; $L20: .loc 1 58 13 cvt.u32.u64 %r49,%r29; and.b32 %r48,%r49,63; .loc 1 59 25 cvt.s64.s32 %r50,%r48; add.u64 %r51,%r56,%r50; .loc 1 59 14 ld.u8 %r52,[%r51]; st.u8 [%r33],%r52; .loc 1 60 11 shr.u64 %r29,%r29,6; add.u64 %r33,%r33,1; .loc 1 50 3 setp.eq.u64 %r53,%r33,%r35; @ %r53 bra $L11; $L13: mov.u64 %r34,%r33; .loc 1 52 10 setp.eq.u64 %r54,%r29,0; @ ! %r54 bra $L20; bra $L12; $L11: .loc 1 64 1 mov.u64 %value,%r36; st.param.u64 [%value_out],%value; ret; } lib_a-labs.o/ 1591654536 399 399 100644 525 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 48 10 abs.s64 %value,%r23; .loc 1 49 1 st.param.u64 [%value_out],%value; ret; } lib_a-lcong48.o/1591654536 399 399 100644 2003 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 22 20 ld.u16 %r31,[%r30]; st.u16 [%r29+240],%r31; .loc 1 23 20 ld.u16 %r32,[%r30+2]; st.u16 [%r29+242],%r32; .loc 1 24 20 ld.u16 %r33,[%r30+4]; st.u16 [%r29+244],%r33; .loc 1 25 20 ld.u16 %r34,[%r30+6]; st.u16 [%r29+246],%r34; .loc 1 26 20 ld.u16 %r35,[%r30+8]; st.u16 [%r29+248],%r35; .loc 1 27 20 ld.u16 %r36,[%r30+10]; st.u16 [%r29+250],%r36; .loc 1 28 16 ld.u16 %r37,[%r30+12]; st.u16 [%r29+252],%r37; .loc 1 29 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 36 3 ld.global.u64 %r22,[_impure_ptr]; .loc 1 22 20 ld.u16 %r31,[%r30]; st.u16 [%r22+240],%r31; .loc 1 23 20 ld.u16 %r32,[%r30+2]; st.u16 [%r22+242],%r32; .loc 1 24 20 ld.u16 %r33,[%r30+4]; st.u16 [%r22+244],%r33; .loc 1 25 20 ld.u16 %r34,[%r30+6]; st.u16 [%r22+246],%r34; .loc 1 26 20 ld.u16 %r35,[%r30+8]; st.u16 [%r22+248],%r35; .loc 1 27 20 ld.u16 %r36,[%r30+10]; st.u16 [%r22+250],%r36; .loc 1 28 16 ld.u16 %r37,[%r30+12]; st.u16 [%r22+252],%r37; .loc 1 37 1 ret; } lib_a-lctype.o/ 1591654536 399 399 100644 3374 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: __ctype_load_locale .visible .func (.param .u32 %value_out) __ctype_load_locale (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u32 %in_ar3); .file 1 "../../../../../../newlib/libc/locale/lctype.c" // BEGIN GLOBAL FUNCTION DECL: __get_current_ctype_locale .visible .func (.param .u64 %value_out) __get_current_ctype_locale; // BEGIN GLOBAL FUNCTION DECL: strcmp .extern .func (.param .u32 %value_out) strcmp (.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); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[2] = {67,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[6] = {65,83,67,73,73,0 }; // BEGIN VAR DEF: _ctype_using_locale .global .align 4 .u32 _ctype_using_locale[1]; // BEGIN VAR DEF: _ctype_locale .global .align 8 .u64 _ctype_locale[2]; // BEGIN VAR DEF: numone .global .align 1 .u8 numone[2] = {1,0 }; // BEGIN VAR DEF: _C_ctype_locale .const .align 8 .u64 _C_ctype_locale[2] = {generic($LC1),generic(numone) }; // BEGIN VAR DEF: _ctype_locale_buf .global .align 1 .u8 _ctype_locale_buf[34]; // BEGIN GLOBAL FUNCTION DEF: __ctype_load_locale .visible .func (.param .u32 %value_out) __ctype_load_locale (.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 %r26; .reg .u64 %r28; .reg .u32 %r29; .reg .u64 %r31; .reg .u32 %r32; .reg .pred %r33; .reg .u64 %r35; .reg .u64 %r37; .reg .u64 %r38; .reg .u32 %r41; .reg .u64 %r43; .reg .u32 %r44; mov.u64 %r26,%ar0; mov.u64 %r28,%ar2; mov.u32 %r29,%ar3; .loc 1 81 7 cvta.const.u64 %r31,$LC0; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .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 81 5 setp.ne.u32 %r33,%r32,0; @ %r33 bra $L2; .loc 1 82 24 st.global.u32 [_ctype_using_locale],%r32; bra $L3; $L2: .loc 1 85 30 cvta.global.u64 %r35,_ctype_locale_buf; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r35; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r28; call (%value_in),strcpy,(%out_arg1,%out_arg2); ld.param.u64 %r37,[%value_in]; } .loc 1 85 28 cvta.global.u64 %r38,_ctype_locale; st.u64 [%r38],%r37; .loc 1 87 13 st.u8 [%r35+32],%r29; .loc 1 88 13 mov.u32 %r41,0; st.u8 [%r35+33],%r41; .loc 1 89 31 add.u64 %r43,%r35,32; st.u64 [%r38+8],%r43; .loc 1 90 26 mov.u32 %r44,1; st.global.u32 [_ctype_using_locale],%r44; $L3: .loc 1 102 9 mov.u32 %value,0; .loc 1 103 1 st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __get_current_ctype_locale .visible .func (.param .u64 %value_out) __get_current_ctype_locale { .reg .u64 %value; .reg .u64 %r23; .reg .u32 %r24; .reg .pred %r25; .loc 1 110 3 ld.global.u32 %r24,[_ctype_using_locale]; setp.ne.u32 %r25,%r24,0; @ %r25 bra $L6; cvta.const.u64 %r23,_C_ctype_locale; bra $L4; $L6: cvta.global.u64 %r23,_ctype_locale; $L4: .loc 1 111 1 mov.u64 %value,%r23; st.param.u64 [%value_out],%value; ret; } lib_a-ldiv.o/ 1591654536 399 399 100644 1172 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 98 15 div.s64 %r22,%r25,%r26; .loc 1 99 14 rem.s64 %r23,%r25,%r26; .loc 1 100 5 setp.lt.s64 %r27,%r25,0; @ %r27 bra $L2; .loc 1 100 15 setp.ge.s64 %r28,%r23,0; @ %r28 bra $L3; .loc 1 101 3 add.u64 %r22,%r22,1; .loc 1 102 9 sub.u64 %r23,%r23,%r26; bra $L3; $L2: .loc 1 104 19 setp.le.s64 %r29,%r23,0; @ %r29 bra $L3; .loc 1 105 3 add.u64 %r22,%r22,-1; .loc 1 106 9 add.u64 %r23,%r23,%r26; $L3: .loc 1 108 9 st.u64 [%r24],%r22; st.u64 [%r24+8],%r23; .loc 1 109 1 ret; } lib_a-ldpart.o/ 1591654536 399 399 100644 13561 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: __part_load_locale .visible .func (.param .u32 %value_out) __part_load_locale (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u32 %in_ar4, .param .u32 %in_ar5, .param .u64 %in_ar6); .file 1 "../../../../../../newlib/libc/locale/ldpart.c" // BEGIN GLOBAL VAR DECL: _PathLocale .extern .global .align 8 .u64 _PathLocale[1]; // 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: 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: open .extern .func (.param .u32 %value_out) open (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: fstat .extern .func (.param .u32 %value_out) fstat (.param .u32 %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_realloc .extern .func (.param .u64 %value_out) __nvptx_realloc (.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: read .extern .func (.param .u32 %value_out) read (.param .u32 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: close .extern .func (.param .u32 %value_out) close (.param .u32 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: strchr .extern .func (.param .u64 %value_out) strchr (.param .u64 %in_ar0, .param .u32 %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[2] = {67,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[6] = {80,79,83,73,88,0 }; // BEGIN VAR DEF: locale_buf_C$2179 .global .align 1 .u8 locale_buf_C$2179[2] = {67,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[2] = {47,0 }; // BEGIN VAR DEF: num_lines$2180 .global .align 4 .u32 num_lines$2180[1]; // BEGIN GLOBAL FUNCTION DEF: __part_load_locale .visible .func (.param .u32 %value_out) __part_load_locale (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u32 %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 .u32 %ar4; ld.param.u32 %ar4,[%in_ar4]; .reg .u32 %ar5; ld.param.u32 %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,1136; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r25; .reg .u64 %r27; .reg .u64 %r29; .reg .u64 %r33; .reg .u32 %r44; .reg .u64 %r47; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r55; .reg .u32 %r56; .reg .u64 %r59; .reg .u64 %r62; .reg .u64 %r64; .reg .u32 %r70; .reg .u64 %r71; .reg .u64 %r72; .reg .u64 %r73; .reg .u64 %r74; .reg .u32 %r75; .reg .u32 %r76; .reg .u64 %r77; .reg .u32 %r78; .reg .pred %r79; .reg .u64 %r81; .reg .u32 %r82; .reg .pred %r83; .reg .u64 %r85; .reg .u32 %r86; .reg .pred %r87; .reg .pred %r88; .reg .u32 %r91; .reg .pred %r92; .reg .pred %r93; .reg .u32 %r94; .reg .u32 %r95; .reg .u64 %r96; .reg .u64 %r97; .reg .u64 %r98; .reg .u64 %r100; .reg .u64 %r101; .reg .pred %r102; .reg .u64 %r104; .reg .pred %r105; .reg .u64 %r108; .reg .u64 %r110; .reg .u64 %r111; .reg .u64 %r114; .reg .u64 %r117; .reg .u64 %r120; .reg .u32 %r122; .reg .u32 %r123; .reg .pred %r125; .reg .u64 %r128; .reg .u32 %r129; .reg .pred %r130; .reg .pred %r131; .reg .u64 %r132; .reg .u32 %r134; .reg .u32 %r135; .reg .u64 %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 %r147; .reg .pred %r148; .reg .u64 %r151; .reg .pred %r152; .reg .u64 %r156; .reg .u32 %r160; .reg .u64 %r161; .reg .u64 %r162; .reg .pred %r163; .reg .u32 %r165; .reg .pred %r166; .reg .u64 %r167; .reg .u64 %r168; .reg .u32 %r169; .reg .u16 %r170; .reg .u32 %r171; .reg .pred %r172; .reg .pred %r173; .reg .u32 %r175; .reg .u64 %r176; .reg .u32 %r177; .reg .pred %r178; .reg .pred %r179; .reg .pred %r180; .reg .pred %r181; .reg .u32 %r182; .reg .u64 %r183; .reg .u64 %r184; .reg .u64 %r185; .reg .u64 %r187; .reg .u64 %r188; .reg .pred %r189; .reg .u32 %r192; mov.u64 %r71,%ar0; mov.u64 %r72,%ar1; mov.u64 %r73,%ar2; mov.u64 %r74,%ar3; mov.u32 %r75,%ar4; mov.u32 %r76,%ar5; mov.u64 %r77,%ar6; .loc 1 70 20 ld.u32 %r44,[%r72]; .loc 1 71 16 mov.u32 %r78,0; st.u32 [%r72],%r78; .loc 1 73 5 setp.eq.u64 %r79,%r71,0; @ %r79 bra $L2; .loc 1 76 7 cvta.const.u64 %r81,$LC0; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r71; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r81; call (%value_in),strcmp,(%out_arg1,%out_arg2); ld.param.u32 %r82,[%value_in]; } .loc 1 76 5 setp.ne.u32 %r83,%r82,0; @ %r83 bra $L3; $L5: .loc 1 77 10 mov.u32 %r70,0; bra $L1; $L3: .loc 1 76 29 cvta.const.u64 %r85,$LC1; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r71; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r85; call (%value_in),strcmp,(%out_arg1,%out_arg2); ld.param.u32 %r86,[%value_in]; } .loc 1 76 25 setp.eq.u32 %r87,%r86,0; @ %r87 bra $L5; .loc 1 83 5 setp.eq.u64 %r88,%r73,0; @ %r88 bra $L6; .loc 1 83 22 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r71; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r73; call (%value_in),strcmp,(%out_arg1,%out_arg2); ld.param.u32 %r91,[%value_in]; } .loc 1 83 19 setp.ne.u32 %r92,%r91,0; @ %r92 bra $L6; .loc 1 84 3 ld.global.u32 %r25,[num_lines$2180]; .loc 1 189 2 setp.gt.s32 %r93,%r25,0; @ %r93 bra $L7; $L9: .loc 1 85 17 mov.u32 %r94,1; st.u32 [%r72],%r94; .loc 1 86 10 mov.u32 %r70,0; bra $L1; $L7: add.u32 %r95,%r25,-1; cvt.u64.u32 %r96,%r95; add.u64 %r97,%r96,1; shl.b64 %r98,%r97,3; add.u64 %r64,%r77,%r98; $L8: .loc 1 190 14 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r73; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r100,[%value_in]; } .loc 1 190 24 add.u64 %r101,%r100,1; .loc 1 190 11 add.u64 %r73,%r73,%r101; .loc 1 190 7 st.u64 [%r77],%r73; .loc 1 189 49 add.u64 %r77,%r77,8; .loc 1 189 2 setp.ne.u64 %r102,%r77,%r64; @ %r102 bra $L8; bra $L9; $L6: .loc 1 92 13 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r71; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r104,[%value_in]; } .loc 1 92 11 add.u64 %r47,%r104,1; .loc 1 94 6 ld.global.u64 %r27,[_PathLocale]; .loc 1 94 5 setp.eq.u64 %r105,%r27,0; @ %r105 bra $L2; .loc 1 97 2 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; call (%value_in),strcpy,(%out_arg1,%out_arg2); ld.param.u64 %r108,[%value_in]; } .loc 1 98 2 cvta.const.u64 %r110,$LC2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r110; call (%value_in),strcat,(%out_arg1,%out_arg2); ld.param.u64 %r111,[%value_in]; } .loc 1 99 2 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r71; call (%value_in),strcat,(%out_arg1,%out_arg2); ld.param.u64 %r114,[%value_in]; } .loc 1 100 2 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r110; call (%value_in),strcat,(%out_arg1,%out_arg2); ld.param.u64 %r117,[%value_in]; } .loc 1 101 2 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r74; call (%value_in),strcat,(%out_arg1,%out_arg2); ld.param.u64 %r120,[%value_in]; } .loc 1 102 7 mov.u32 %r122,0; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r122; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),open,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r123,[%value_in]; } .loc 1 103 5 setp.lt.s32 %r125,%r123,0; @ %r125 bra $L2; .loc 1 108 6 add.u64 %r128,%frame,1024; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r123; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r128; call (%value_in),fstat,(%out_arg1,%out_arg2); ld.param.u32 %r129,[%value_in]; } .loc 1 108 5 setp.ne.u32 %r130,%r129,0; @ %r130 bra $L10; .loc 1 111 8 ld.u64 %r29,[%frame+1040]; .loc 1 111 5 setp.le.s64 %r131,%r29,0; @ %r131 bra $L10; .loc 1 113 10 add.u64 %r132,%r29,1; add.u64 %r49,%r132,%r47; .loc 1 116 12 set.u32.eq.u64 %r134,%r73,0; neg.s32 %r135,%r134; .loc 1 116 26 cvta.global.u64 %r137,locale_buf_C$2179; set.u32.eq.u64 %r138,%r73,%r137; neg.s32 %r139,%r138; cvt.u16.u32 %r141,%r135; cvt.u16.u32 %r142,%r139; or.b16 %r140,%r141,%r142; cvt.u32.u16 %r143,%r140; cvt.u16.u8 %r144,%r143; setp.eq.u16 %r145,%r144,0; @ %r145 bra $L11; .loc 1 118 20 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r49; call (%value_in),__nvptx_malloc,(%out_arg1); ld.param.u64 %r147,[%value_in]; } mov.u64 %r59,%r147; .loc 1 128 5 setp.eq.u64 %r148,%r59,0; @ ! %r148 bra $L12; bra $L10; $L11: .loc 1 122 20 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r73; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r49; call (%value_in),__nvptx_realloc,(%out_arg1,%out_arg2); ld.param.u64 %r151,[%value_in]; } mov.u64 %r59,%r151; .loc 1 123 16 setp.ne.u64 %r152,%r151,0; @ %r152 bra $L12; .loc 1 124 15 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r73; call __nvptx_free,(%out_arg1); } bra $L10; $L12: .loc 1 130 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r59; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r71; call (%value_in),strcpy,(%out_arg1,%out_arg2); ld.param.u64 %r156,[%value_in]; } .loc 1 131 4 add.u64 %r55,%r59,%r47; .loc 1 132 15 ld.u64 %r33,[%frame+1040]; .loc 1 132 7 add.u64 %r50,%r55,%r33; .loc 1 133 6 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r123; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r55; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r33; call (%value_in),read,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r160,[%value_in]; } cvt.s64.s32 %r161,%r160; .loc 1 133 5 ld.u64 %r162,[%frame+1040]; setp.ne.u64 %r163,%r161,%r162; @ %r163 bra $L13; .loc 1 135 6 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r123; call (%value_in),close,(%out_arg1); ld.param.u32 %r165,[%value_in]; } .loc 1 135 5 setp.ne.u32 %r166,%r165,0; @ %r166 bra $L13; .loc 1 140 16 ld.u64 %r167,[%frame+1040]; add.u64 %r168,%r55,%r167; cvt.u32.u32 %r169,%r165; st.u8 [%r168],%r169; .loc 1 141 5 ld.s8 %r171,[%r50+-1]; cvt.u16.u32 %r170,%r171; setp.ne.u16 %r172,%r170,10; @ %r172 bra $L13; .loc 1 176 2 setp.ge.u64 %r173,%r55,%r50; @ %r173 bra $L20; .loc 1 176 9 mov.u32 %r56,%r165; $L15: .loc 1 177 7 mov.u32 %r175,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r55; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r175; call (%value_in),strchr,(%out_arg1,%out_arg2); ld.param.u64 %r176,[%value_in]; } .loc 1 178 5 add.u64 %r55,%r176,1; .loc 1 178 8 mov.u32 %r177,0; st.u8 [%r176],%r177; .loc 1 176 25 add.u32 %r56,%r56,1; .loc 1 176 2 setp.gt.u64 %r178,%r50,%r55; @ %r178 bra $L15; bra $L14; $L20: .loc 1 176 9 mov.u32 %r56,%r165; $L14: .loc 1 144 5 setp.lt.s32 %r179,%r56,%r75; @ %r179 bra $L16; .loc 1 145 13 st.global.u32 [num_lines$2180],%r75; bra $L17; $L16: .loc 1 146 10 setp.ge.s32 %r180,%r56,%r76; @ %r180 bra $L18; .loc 1 143 12 st.global.u32 [num_lines$2180],%r56; .loc 1 161 20 mov.u32 %r44,%r165; bra $L13; $L18: .loc 1 147 13 st.global.u32 [num_lines$2180],%r76; mov.u32 %r75,%r76; $L17: .loc 1 189 2 setp.le.s32 %r181,%r75,0; @ %r181 bra $L9; add.u32 %r182,%r75,-1; cvt.u64.u32 %r183,%r182; add.u64 %r184,%r183,1; shl.b64 %r185,%r184,3; add.u64 %r62,%r77,%r185; $L19: .loc 1 190 14 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r59; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r187,[%value_in]; } .loc 1 190 24 add.u64 %r188,%r187,1; .loc 1 190 11 add.u64 %r59,%r59,%r188; .loc 1 190 7 st.u64 [%r77],%r59; .loc 1 189 49 add.u64 %r77,%r77,8; .loc 1 189 2 setp.ne.u64 %r189,%r77,%r62; @ %r189 bra $L19; bra $L9; $L13: .loc 1 163 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r59; call __nvptx_free,(%out_arg1); } $L10: .loc 1 165 8 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r123; call (%value_in),close,(%out_arg1); ld.param.u32 %r192,[%value_in]; } $L2: .loc 1 167 16 st.u32 [%r72],%r44; .loc 1 168 9 mov.u32 %r70,-1; $L1: .loc 1 169 1 mov.u32 %value,%r70; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } lib_a-ldtoa.o/ 1591654536 399 399 100644 184491 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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: edivm .func (.param .u32 %value_out) edivm (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN FUNCTION DECL: emulm .func (.param .u32 %value_out) emulm (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN FUNCTION DECL: eisnan$part$0 .func (.param .u32 %value_out) eisnan$part$0 (.param .u64 %in_ar0); // BEGIN FUNCTION DECL: eneg .func eneg (.param .u64 %in_ar0); // BEGIN FUNCTION DECL: eisneg .func (.param .u32 %value_out) eisneg (.param .u64 %in_ar0); // 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: eisinf$part$1 .func (.param .u32 %value_out) eisinf$part$1 (.param .u64 %in_ar0); // BEGIN FUNCTION DECL: eshift$part$4 .func (.param .u32 %value_out) eshift$part$4 (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN FUNCTION DECL: enormlz .func (.param .u32 %value_out) enormlz (.param .u64 %in_ar0); // 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: emovo$isra$7 .func emovo$isra$7 (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN FUNCTION DECL: e53toe$isra$9 .func e53toe$isra$9 (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN FUNCTION DECL: emul .func emul (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); // BEGIN FUNCTION DECL: ediv .func ediv (.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: _strtold .visible .func (.param .f64 %value_out) _strtold (.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: 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: strcpy .extern .func (.param .u64 %value_out) strcpy (.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: calloc .extern .func (.param .u64 %value_out) calloc (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __nvptx_free .extern .func __nvptx_free (.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[6] = {32,78,97,78,32,0 }; // 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: nan53 .const .align 2 .u16 nan53[4] = {0,0,0,32760 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[12] = {32,45,73,110,102,105,110,105,116,121,32,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[11] = {32,73,110,102,105,110,105,116,121,32,0 }; // BEGIN VAR DEF: $LC3 .const .align 1 .u8 $LC3[4] = {78,97,78,0 }; // BEGIN VAR DEF: $LC4 .const .align 1 .u8 $LC4[4] = {69,37,100,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 .u32 %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 778 3 add.u64 %r29,%r30,4; add.u64 %r25,%r30,26; .loc 1 780 6 mov.u32 %r28,0; $L5: .loc 1 783 6 ld.u16 %r22,[%r29]; .loc 1 783 4 cvt.u16.u32 %r32,%r22; and.b16 %r31,%r32,1; setp.eq.u16 %r33,%r31,0; @ %r33 bra $L2; .loc 1 784 8 cvt.u16.u32 %r35,%r28; or.b16 %r34,%r35,1; cvt.u32.u16 %r28,%r34; $L2: .loc 1 785 5 shr.u32 %r36,%r22,1; cvt.u16.u32 %r37,%r36; .loc 1 786 4 cvt.u16.u32 %r39,%r28; and.b16 %r38,%r39,2; setp.ne.u16 %r40,%r38,0; @ %r40 bra $L3; .loc 1 785 5 st.u16 [%r29],%r37; bra $L4; $L3: .loc 1 787 6 or.b16 %r42,%r37,-32768; st.u16 [%r29],%r42; $L4: .loc 1 788 7 cvt.u16.u32 %r44,%r28; add.u16 %r45,%r44,%r44; cvt.u32.u16 %r28,%r45; .loc 1 789 2 add.u64 %r29,%r29,2; .loc 1 781 1 setp.ne.u64 %r46,%r25,%r29; @ %r46 bra $L5; .loc 1 791 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 804 3 add.u64 %r29,%r30,24; add.u64 %r26,%r30,2; .loc 1 805 6 mov.u32 %r28,0; $L14: .loc 1 809 6 ld.u16 %r22,[%r29]; .loc 1 809 4 cvt.u16.u32 %r31,%r22; setp.ge.s16 %r32,%r31,0; @ %r32 bra $L11; .loc 1 810 8 cvt.u16.u32 %r34,%r28; or.b16 %r33,%r34,1; cvt.u32.u16 %r28,%r33; $L11: .loc 1 811 5 cvt.u16.u32 %r35,%r22; add.u16 %r36,%r35,%r35; .loc 1 812 4 cvt.u16.u32 %r38,%r28; and.b16 %r37,%r38,2; setp.ne.u16 %r39,%r37,0; @ %r39 bra $L12; .loc 1 811 5 st.u16 [%r29],%r36; bra $L13; $L12: .loc 1 813 6 or.b16 %r41,%r36,1; st.u16 [%r29],%r41; $L13: .loc 1 814 7 cvt.u16.u32 %r43,%r28; add.u16 %r44,%r43,%r43; cvt.u32.u16 %r28,%r44; .loc 1 815 2 add.u64 %r29,%r29,-2; .loc 1 807 1 setp.ne.u64 %r45,%r26,%r29; @ %r45 bra $L14; .loc 1 817 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 %r28; .reg .u64 %r37; .reg .u64 %r38; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .u64 %r43; .reg .u64 %r44; .reg .u64 %r47; .reg .u64 %r49; .reg .u32 %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .u16 %r53; .reg .u16 %r54; .reg .pred %r56; .reg .u64 %r58; .reg .u16 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u64 %r62; .reg .u64 %r63; .reg .u64 %r64; .reg .u64 %r65; .reg .pred %r67; .reg .u16 %r68; .reg .pred %r69; .reg .u64 %r70; .reg .u16 %r71; mov.u32 %r50,%ar0; mov.u64 %r51,%ar1; mov.u64 %r52,%ar2; .loc 1 970 4 cvt.u16.u32 %r53,%r50; cvt.u64.u16 %r40,%r53; .loc 1 972 7 mov.u16 %r54,0; st.u16 [%frame+22],%r54; .loc 1 973 5 st.u16 [%frame+24],%r54; .loc 1 974 4 add.u64 %r47,%r51,24; .loc 1 972 4 add.u64 %r49,%frame,24; add.u64 %r70,%frame,4; .loc 1 982 11 mov.u16 %r71,%r54; $L19: .loc 1 978 6 ld.u16 %r22,[%r47]; add.u64 %r47,%r47,-2; add.u64 %r49,%r49,-2; .loc 1 978 4 setp.ne.u32 %r56,%r22,0; @ %r56 bra $L17; .loc 1 982 11 st.u16 [%r49+-2],%r71; bra $L18; $L17: .loc 1 986 28 cvt.u16.u32 %r59,%r22; cvt.u64.u16 %r58,%r59; .loc 1 986 5 mul.lo.u64 %r42,%r58,%r40; .loc 1 987 14 and.b64 %r60,%r42,65535; .loc 1 987 26 ld.u16 %r61,[%r49+2]; .loc 1 987 9 add.u64 %r43,%r60,%r61; .loc 1 988 11 st.u16 [%r49+2],%r43; .loc 1 989 18 shr.u64 %r28,%r43,16; .loc 1 989 30 shr.u64 %r62,%r42,16; .loc 1 989 39 ld.u16 %r63,[%r49]; .loc 1 989 9 add.u64 %r64,%r62,%r63; add.u64 %r44,%r64,%r28; .loc 1 990 9 st.u16 [%r49],%r44; .loc 1 991 19 shr.u64 %r65,%r44,16; .loc 1 991 11 st.u16 [%r49+-2],%r65; $L18: .loc 1 976 1 setp.ne.u64 %r67,%r49,%r70; @ %r67 bra $L19; mov.u64 %r37,%r49; add.u64 %r41,%r52,4; add.u64 %r38,%frame,26; $L20: .loc 1 995 7 ld.u16 %r68,[%r37]; st.u16 [%r41],%r68; add.u64 %r37,%r37,2; add.u64 %r41,%r41,2; .loc 1 994 1 setp.ne.u64 %r69,%r37,%r38; @ %r69 bra $L20; .loc 1 996 1 ret; } // BEGIN FUNCTION DEF: edivm .func (.param .u32 %value_out) edivm (.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,32; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r29; .reg .u64 %r30; .reg .u32 %r33; .reg .u64 %r35; .reg .u32 %r41; .reg .u32 %r43; .reg .u32 %r44; .reg .u64 %r46; .reg .u32 %r47; .reg .u64 %r48; .reg .u32 %r50; .reg .u64 %r53; .reg .u64 %r63; .reg .u64 %r66; .reg .u64 %r67; .reg .u64 %r68; .reg .u64 %r74; .reg .u64 %r77; .reg .u64 %r78; .reg .u64 %r79; .reg .u64 %r80; .reg .u64 %r87; .reg .u64 %r89; .reg .u64 %r92; .reg .u64 %r93; .reg .u64 %r94; .reg .u64 %r96; .reg .u64 %r98; .reg .u64 %r101; .reg .u64 %r102; .reg .u64 %r103; .reg .u64 %r108; .reg .u64 %r110; .reg .u32 %r113; .reg .u64 %r115; .reg .u64 %r116; .reg .u64 %r117; .reg .u16 %r118; .reg .u16 %r119; .reg .u16 %r120; .reg .pred %r121; .reg .u64 %r124; .reg .u64 %r126; .reg .u64 %r127; .reg .u64 %r128; .reg .pred %r129; .reg .u64 %r131; .reg .u16 %r134; .reg .u16 %r138; .reg .u16 %r139; .reg .pred %r140; .reg .pred %r143; .reg .pred %r144; .reg .u16 %r145; .reg .u16 %r146; .reg .u64 %r147; .reg .u64 %r148; .reg .u64 %r149; .reg .u64 %r150; .reg .u64 %r151; .reg .u32 %r153; .reg .pred %r155; .reg .u16 %r156; .reg .u16 %r157; .reg .pred %r158; .reg .pred %r161; .reg .pred %r162; .reg .u16 %r163; .reg .u16 %r164; .reg .u64 %r165; .reg .u64 %r166; .reg .u64 %r167; .reg .u64 %r168; .reg .u64 %r169; .reg .u32 %r171; .reg .pred %r173; .reg .u64 %r174; .reg .u64 %r175; .reg .u64 %r176; .reg .u64 %r177; .reg .u64 %r178; .reg .u32 %r180; .reg .pred %r182; .reg .u16 %r183; .reg .u16 %r184; .reg .pred %r185; .reg .u16 %r186; .reg .pred %r187; .reg .u16 %r188; .reg .u16 %r189; .reg .u16 %r190; .reg .pred %r191; .reg .u32 %r192; .reg .u16 %r193; .reg .u32 %r194; .reg .u32 %r195; .reg .u16 %r196; .reg .pred %r197; .reg .u64 %r199; .reg .u64 %r200; .reg .u64 %r201; .reg .u64 %r202; .reg .u32 %r203; mov.u64 %r115,%ar0; mov.u64 %r116,%ar1; mov.u64 %r117,%ar2; .loc 1 1013 6 ld.u16 %r118,[%r116]; st.u16 [%r117+52],%r118; .loc 1 1014 6 ld.u16 %r119,[%r116+2]; st.u16 [%r117+54],%r119; add.u64 %r35,%r117,56; add.u64 %r98,%r117,78; mov.u64 %r101,%r35; .loc 1 1018 7 mov.u16 %r120,0; $L24: st.u16 [%r101],%r120; add.u64 %r101,%r101,2; .loc 1 1016 1 setp.ne.u64 %r121,%r98,%r101; @ %r121 bra $L24; .loc 1 1020 1 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r116; call eshdn1,(%out_arg1); } .loc 1 1028 20 ld.u16 %r29,[%r115+6]; shl.b64 %r124,%r29,16; sub.u64 %r30,%r124,%r29; add.u64 %r103,%r116,4; add.u64 %r102,%r116,24; add.u64 %r200,%frame,4; add.u64 %r202,%frame,26; add.u64 %r201,%frame,24; add.u64 %r199,%frame,2; .loc 1 940 7 mov.u32 %r203,0; $L37: .loc 1 1025 11 ld.u16 %r126,[%r116+4]; .loc 1 1025 35 shl.b64 %r127,%r126,16; .loc 1 1025 47 ld.u16 %r128,[%r116+6]; .loc 1 1025 7 add.u64 %r46,%r127,%r128; .loc 1 1028 11 setp.lt.u64 %r129,%r30,%r46; @ %r129 bra $L40; .loc 1 1031 16 div.u64 %r131,%r46,%r29; .loc 1 1031 9 cvt.u16.u64 %r134,%r131; cvt.u32.u16 %r41,%r134; bra $L25; $L40: .loc 1 1029 9 mov.u32 %r41,65535; $L25: .loc 1 1040 2 { .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r41; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r115; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call m16m,(%out_arg1,%out_arg2,%out_arg3); } mov.u64 %r79,%r200; mov.u64 %r96,%r103; mov.u64 %r48,%r103; mov.u64 %r53,%r200; $L29: .loc 1 756 4 ld.u16 %r138,[%r53]; ld.u16 %r139,[%r48]; setp.eq.u16 %r140,%r138,%r139; @ %r140 bra $L26; .loc 1 762 3 setp.gt.u16 %r143,%r138,%r139; @ %r143 bra $L27; bra $L28; $L26: add.u64 %r53,%r53,2; add.u64 %r48,%r48,2; .loc 1 754 1 setp.ne.u64 %r144,%r202,%r53; @ %r144 bra $L29; bra $L28; $L27: .loc 1 1044 9 cvt.u16.u32 %r146,%r41; add.u16 %r145,%r146,-1; cvt.u32.u16 %r47,%r145; .loc 1 938 3 add.u64 %r77,%r115,24; mov.u64 %r66,%r77; .loc 1 940 7 mov.u32 %r113,%r203; .loc 1 939 3 mov.u64 %r67,%r201; $L30: .loc 1 943 6 ld.u16 %r147,[%r67]; .loc 1 943 50 cvt.u64.u32 %r148,%r113; .loc 1 943 4 sub.u64 %r149,%r147,%r148; .loc 1 943 29 ld.u16 %r150,[%r66]; .loc 1 943 4 sub.u64 %r63,%r149,%r150; .loc 1 948 7 st.u16 [%r67],%r63; .loc 1 949 2 add.u64 %r66,%r66,-2; .loc 1 950 2 add.u64 %r67,%r67,-2; .loc 1 944 4 shr.u64 %r151,%r63,16; cvt.u32.u64 %r153,%r151; and.b32 %r113,%r153,1; .loc 1 941 1 setp.ne.u64 %r155,%r67,%r199; @ %r155 bra $L30; mov.u64 %r68,%r103; $L33: .loc 1 756 4 ld.u16 %r156,[%r79]; ld.u16 %r157,[%r68]; setp.eq.u16 %r158,%r156,%r157; @ %r158 bra $L31; .loc 1 762 3 setp.gt.u16 %r161,%r156,%r157; @ %r161 bra $L32; .loc 1 1044 9 mov.u32 %r41,%r47; bra $L28; $L31: add.u64 %r79,%r79,2; add.u64 %r68,%r68,2; .loc 1 754 1 setp.ne.u64 %r162,%r202,%r79; @ %r162 bra $L33; .loc 1 1044 9 mov.u32 %r41,%r47; bra $L28; $L32: .loc 1 1048 10 cvt.u16.u32 %r164,%r41; add.u16 %r163,%r164,-2; cvt.u32.u16 %r41,%r163; .loc 1 940 7 mov.u32 %r43,%r203; .loc 1 939 3 mov.u64 %r78,%r201; $L34: .loc 1 943 6 ld.u16 %r165,[%r78]; .loc 1 943 50 cvt.u64.u32 %r166,%r43; .loc 1 943 4 sub.u64 %r167,%r165,%r166; .loc 1 943 29 ld.u16 %r168,[%r77]; .loc 1 943 4 sub.u64 %r74,%r167,%r168; .loc 1 948 7 st.u16 [%r78],%r74; .loc 1 949 2 add.u64 %r77,%r77,-2; .loc 1 950 2 add.u64 %r78,%r78,-2; .loc 1 944 4 shr.u64 %r169,%r74,16; cvt.u32.u64 %r171,%r169; and.b32 %r43,%r171,1; .loc 1 941 1 setp.ne.u64 %r173,%r78,%r199; @ %r173 bra $L34; $L28: .loc 1 939 3 mov.u64 %r93,%r102; .loc 1 940 7 mov.u32 %r44,%r203; .loc 1 938 3 mov.u64 %r92,%r201; $L35: .loc 1 943 6 ld.u16 %r174,[%r93]; .loc 1 943 50 cvt.u64.u32 %r175,%r44; .loc 1 943 4 sub.u64 %r176,%r174,%r175; .loc 1 943 29 ld.u16 %r177,[%r92]; .loc 1 943 4 sub.u64 %r89,%r176,%r177; .loc 1 948 7 st.u16 [%r93],%r89; .loc 1 949 2 add.u64 %r92,%r92,-2; .loc 1 950 2 add.u64 %r93,%r93,-2; .loc 1 944 4 shr.u64 %r178,%r89,16; cvt.u32.u64 %r180,%r178; and.b32 %r44,%r180,1; .loc 1 941 1 setp.ne.u64 %r182,%r92,%r199; @ %r182 bra $L35; .loc 1 1071 11 cvt.u16.u32 %r183,%r41; st.u16 [%r35],%r183; mov.u64 %r87,%r103; .loc 1 873 3 mov.u64 %r80,%r103; $L36: .loc 1 877 4 add.u64 %r80,%r80,2; .loc 1 877 7 ld.u16 %r184,[%r80]; st.u16 [%r87],%r184; add.u64 %r87,%r87,2; .loc 1 876 1 setp.ne.u64 %r185,%r80,%r102; @ %r185 bra $L36; .loc 1 879 4 mov.u16 %r186,0; st.u16 [%r116+24],%r186; add.u64 %r35,%r35,2; .loc 1 1022 1 setp.ne.u64 %r187,%r35,%r98; @ %r187 bra $L37; mov.u64 %r108,%r116; add.u64 %r94,%r108,26; .loc 1 1076 3 mov.u32 %r50,0; $L38: .loc 1 1079 4 ld.u16 %r189,[%r96]; cvt.u16.u32 %r190,%r50; or.b16 %r188,%r189,%r190; cvt.u32.u16 %r50,%r188; add.u64 %r96,%r96,2; .loc 1 1077 1 setp.ne.u64 %r191,%r94,%r96; @ %r191 bra $L38; .loc 1 1081 3 cvt.u16.u32 %r193,%r50; set.u32.ne.u16 %r194,%r193,0; neg.s32 %r195,%r194; cvt.u32.u32 %r192,%r195; cvt.u32.u8 %r33,%r192; add.u64 %r110,%r117,52; $L39: .loc 1 1085 9 ld.u16 %r196,[%r110]; st.u16 [%r108],%r196; add.u64 %r110,%r110,2; add.u64 %r108,%r108,2; .loc 1 1084 1 setp.ne.u64 %r197,%r98,%r110; @ %r197 bra $L39; .loc 1 1088 1 mov.u32 %value,%r33; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } // BEGIN FUNCTION DEF: emulm .func (.param .u32 %value_out) emulm (.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,32; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r24; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u32 %r31; .reg .u32 %r32; .reg .u64 %r41; .reg .u64 %r44; .reg .u64 %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .u64 %r49; .reg .u64 %r54; .reg .u64 %r56; .reg .u64 %r57; .reg .u64 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u16 %r62; .reg .u16 %r63; .reg .u16 %r64; .reg .pred %r65; .reg .pred %r66; .reg .u16 %r67; .reg .u16 %r68; .reg .u16 %r69; .reg .u64 %r73; .reg .u64 %r74; .reg .u64 %r75; .reg .u64 %r76; .reg .u64 %r77; .reg .u32 %r79; .reg .pred %r81; .reg .u16 %r82; .reg .pred %r83; .reg .u16 %r84; .reg .pred %r85; .reg .u16 %r86; .reg .pred %r87; .reg .u64 %r89; .reg .u64 %r91; mov.u64 %r59,%ar0; mov.u64 %r60,%ar1; mov.u64 %r61,%ar2; .loc 1 1101 10 ld.u16 %r62,[%r60]; st.u16 [%r61+52],%r62; .loc 1 1102 10 ld.u16 %r63,[%r60+2]; st.u16 [%r61+54],%r63; add.u64 %r56,%r61,56; mov.u64 %r28,%r56; add.u64 %r89,%r61,78; .loc 1 1104 11 mov.u16 %r64,0; $L52: st.u16 [%r28],%r64; add.u64 %r28,%r28,2; .loc 1 1103 1 setp.ne.u64 %r65,%r89,%r28; @ %r65 bra $L52; .loc 1 1107 3 add.u64 %r57,%r59,24; add.u64 %r30,%r61,76; add.u64 %r29,%r59,4; .loc 1 1106 3 mov.u32 %r32,0; add.u64 %r91,%frame,2; $L57: .loc 1 1111 6 ld.u16 %r24,[%r57]; add.u64 %r57,%r57,-2; .loc 1 1111 4 setp.ne.u32 %r66,%r24,0; @ %r66 bra $L53; $L56: .loc 1 1120 4 ld.u16 %r68,[%r61+76]; cvt.u16.u32 %r69,%r32; or.b16 %r67,%r68,%r69; cvt.u32.u16 %r32,%r67; .loc 1 892 3 mov.u64 %r49,%r89; .loc 1 891 3 mov.u64 %r47,%r30; bra $L54; $L53: .loc 1 1117 3 { .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r24; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r60; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call m16m,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 912 3 mov.u64 %r45,%r30; .loc 1 913 7 mov.u32 %r31,0; .loc 1 911 3 add.u64 %r44,%frame,24; $L55: .loc 1 916 6 ld.u16 %r73,[%r44]; .loc 1 916 29 ld.u16 %r74,[%r45]; .loc 1 916 27 add.u64 %r75,%r73,%r74; .loc 1 916 50 cvt.u64.u32 %r76,%r31; .loc 1 916 4 add.u64 %r41,%r75,%r76; .loc 1 921 7 st.u16 [%r45],%r41; .loc 1 922 2 add.u64 %r44,%r44,-2; .loc 1 923 2 add.u64 %r45,%r45,-2; .loc 1 917 4 shr.u64 %r77,%r41,16; cvt.u32.u64 %r79,%r77; and.b32 %r31,%r79,1; .loc 1 914 1 setp.ne.u64 %r81,%r44,%r91; @ %r81 bra $L55; bra $L56; $L54: .loc 1 895 9 add.u64 %r47,%r47,-2; add.u64 %r49,%r49,-2; ld.u16 %r82,[%r47]; st.u16 [%r49],%r82; .loc 1 894 1 setp.ne.u64 %r83,%r47,%r56; @ %r83 bra $L54; .loc 1 897 8 mov.u16 %r84,0; st.u16 [%r61+56],%r84; .loc 1 1109 1 setp.ne.u64 %r85,%r29,%r57; @ %r85 bra $L57; add.u64 %r54,%r61,52; mov.u64 %r46,%r60; $L58: .loc 1 1125 7 ld.u16 %r86,[%r54]; st.u16 [%r46],%r86; add.u64 %r54,%r54,2; add.u64 %r46,%r46,2; .loc 1 1124 1 setp.ne.u64 %r87,%r89,%r54; @ %r87 bra $L58; .loc 1 1129 1 mov.u32 %value,%r32; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } // BEGIN FUNCTION DEF: eisnan$part$0 .func (.param .u32 %value_out) eisnan$part$0 (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r22; .reg .u64 %r25; .reg .u32 %r26; .reg .u16 %r28; .reg .pred %r29; .reg .pred %r30; mov.u64 %r22,%ar0; add.u64 %r25,%r22,18; $L66: .loc 1 526 4 ld.u16 %r28,[%r22]; setp.ne.u16 %r29,%r28,0; @ %r29 bra $L67; add.u64 %r22,%r22,2; .loc 1 524 1 setp.ne.u64 %r30,%r22,%r25; @ %r30 bra $L66; .loc 1 530 8 mov.u32 %r26,0; bra $L64; $L67: .loc 1 527 10 mov.u32 %r26,1; $L64: .loc 1 531 1 mov.u32 %value,%r26; st.param.u32 [%value_out],%value; ret; } // BEGIN FUNCTION DEF: eneg .func eneg (.param .u64 %in_ar0) { .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .u64 %r26; .reg .u16 %r27; .reg .u16 %r28; .reg .pred %r29; .reg .u32 %r31; .reg .pred %r32; .reg .u16 %r33; .reg .u16 %r34; mov.u64 %r26,%ar0; .loc 1 521 7 ld.u16 %r23,[%r26+18]; .loc 1 521 3 cvt.u16.u32 %r28,%r23; and.b16 %r27,%r28,32767; setp.ne.u16 %r29,%r27,32767; @ %r29 bra $L70; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; call (%value_in),eisnan$part$0,(%out_arg1); ld.param.u32 %r31,[%value_in]; } .loc 1 470 3 setp.ne.u32 %r32,%r31,0; @ %r32 bra $L69; $L70: .loc 1 473 9 cvt.u16.u32 %r34,%r23; add.u16 %r33,%r34,-32768; st.u16 [%r26+18],%r33; $L69: .loc 1 474 1 ret; } // BEGIN FUNCTION DEF: eisneg .func (.param .u32 %value_out) eisneg (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %r23; .reg .u32 %r27; .reg .u64 %r28; .reg .u16 %r29; .reg .u16 %r30; .reg .pred %r31; .reg .u32 %r33; .reg .pred %r34; .reg .u32 %r36; .reg .u16 %r37; mov.u64 %r28,%ar0; .loc 1 521 7 ld.u16 %r23,[%r28+18]; .loc 1 521 3 cvt.u16.u32 %r30,%r23; and.b16 %r29,%r30,32767; setp.ne.u16 %r31,%r29,32767; @ %r31 bra $L73; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; call (%value_in),eisnan$part$0,(%out_arg1); ld.param.u32 %r33,[%value_in]; } .loc 1 485 3 setp.ne.u32 %r34,%r33,0; @ %r34 bra $L75; $L73: .loc 1 488 3 cvt.u16.u32 %r37,%r23; cvt.s32.s16 %r36,%r37; shr.u32 %r27,%r36,31; bra $L72; $L75: .loc 1 486 8 mov.u32 %r27,0; $L72: .loc 1 492 1 mov.u32 %value,%r27; st.param.u32 [%value_out],%value; 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 %r24; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r38; .reg .u64 %r45; .reg .u64 %r47; .reg .u64 %r55; .reg .u64 %r56; .reg .u32 %r58; .reg .u32 %r59; .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 .u32 %r71; .reg .pred %r72; .reg .u16 %r73; .reg .u16 %r74; .reg .pred %r75; .reg .u16 %r76; .reg .pred %r77; .reg .u16 %r78; .reg .u16 %r79; .reg .pred %r80; .reg .u16 %r81; mov.u64 %r55,%ar0; mov.u64 %r56,%ar1; .loc 1 592 3 ld.u16 %r58,[%r55+18]; shr.u32 %r59,%r58,15; cvt.u16.u32 %r61,%r59; neg.s16 %r60,%r61; st.u16 [%r56],%r60; .loc 1 598 6 ld.u16 %r63,[%r55+18]; and.b16 %r62,%r63,32767; st.u16 [%r56+2],%r62; .loc 1 600 3 setp.ne.u16 %r66,%r62,32767; @ %r66 bra $L77; .loc 1 521 3 ld.u16 %r68,[%r55+18]; and.b16 %r67,%r68,32767; setp.ne.u16 %r69,%r67,32767; @ %r69 bra $L78; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r55; call (%value_in),eisnan$part$0,(%out_arg1); ld.param.u32 %r71,[%value_in]; } .loc 1 603 4 setp.eq.u32 %r72,%r71,0; @ %r72 bra $L78; .loc 1 605 8 mov.u16 %r73,0; st.u16 [%r56+4],%r73; add.u64 %r29,%r55,16; add.u64 %r47,%r56,6; add.u64 %r35,%r55,-4; $L79: .loc 1 607 9 ld.u16 %r74,[%r29]; st.u16 [%r47],%r74; add.u64 %r29,%r29,-2; add.u64 %r47,%r47,2; .loc 1 606 3 setp.ne.u64 %r75,%r35,%r29; @ %r75 bra $L79; bra $L76; $L78: add.u64 %r38,%r56,4; add.u64 %r30,%r56,26; .loc 1 612 8 mov.u16 %r76,0; $L81: st.u16 [%r38],%r76; add.u64 %r38,%r38,2; .loc 1 611 2 setp.ne.u64 %r77,%r30,%r38; @ %r77 bra $L81; bra $L76; $L77: .loc 1 617 6 mov.u16 %r78,0; st.u16 [%r56+4],%r78; add.u64 %r24,%r55,16; add.u64 %r45,%r56,6; bra $L83; $L84: mov.u64 %r24,%r34; $L83: .loc 1 620 7 ld.u16 %r79,[%r24]; st.u16 [%r45],%r79; add.u64 %r34,%r24,-2; add.u64 %r45,%r45,2; .loc 1 619 1 setp.ne.u64 %r80,%r55,%r24; @ %r80 bra $L84; .loc 1 622 4 mov.u16 %r81,0; st.u16 [%r56+24],%r81; $L76: .loc 1 623 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 .u32 %r22; .reg .u32 %r26; .reg .u32 %r27; .reg .u64 %r28; .reg .u64 %r35; .reg .u64 %r38; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r43; .reg .u32 %r46; .reg .u64 %r47; .reg .u64 %r48; .reg .u16 %r49; .reg .u16 %r50; .reg .pred %r51; .reg .u32 %r53; .reg .pred %r54; .reg .u16 %r55; .reg .u16 %r56; .reg .pred %r57; .reg .u32 %r59; .reg .pred %r60; .reg .u64 %r63; .reg .u16 %r66; .reg .u16 %r67; .reg .pred %r68; .reg .u16 %r71; .reg .pred %r72; .reg .u16 %r73; .reg .pred %r74; .reg .pred %r75; .reg .pred %r76; .reg .pred %r77; .reg .u16 %r79; .reg .u16 %r80; .reg .pred %r81; .reg .pred %r84; .reg .pred %r85; mov.u64 %r47,%ar0; mov.u64 %r48,%ar1; .loc 1 521 3 ld.u16 %r50,[%r47+18]; and.b16 %r49,%r50,32767; setp.ne.u16 %r51,%r49,32767; @ %r51 bra $L91; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r47; call (%value_in),eisnan$part$0,(%out_arg1); ld.param.u32 %r53,[%value_in]; } .loc 1 2356 4 setp.ne.u32 %r54,%r53,0; @ %r54 bra $L101; $L91: .loc 1 521 3 ld.u16 %r56,[%r48+18]; and.b16 %r55,%r56,32767; setp.ne.u16 %r57,%r55,32767; @ %r57 bra $L93; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r48; call (%value_in),eisnan$part$0,(%out_arg1); ld.param.u32 %r59,[%value_in]; } .loc 1 2356 17 setp.ne.u32 %r60,%r59,0; @ %r60 bra $L102; $L93: .loc 1 2359 1 add.u64 %r63,%frame,26; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r47; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r63; call emovi,(%out_arg1,%out_arg2); } .loc 1 2361 1 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r48; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; call emovi,(%out_arg1,%out_arg2); } .loc 1 2364 5 ld.u16 %r22,[%frame+26]; .loc 1 2364 3 ld.u16 %r66,[%frame]; cvt.u16.u32 %r67,%r22; setp.eq.u16 %r68,%r66,%r67; @ %r68 bra $L94; add.u64 %r28,%frame,28; add.u64 %r35,%frame,2; add.u64 %r38,%frame,50; $L96: .loc 1 2369 5 ld.u16 %r71,[%r28]; setp.ne.u16 %r72,%r71,0; @ %r72 bra $L95; .loc 1 2371 5 ld.u16 %r73,[%r35]; setp.ne.u16 %r74,%r73,0; @ %r74 bra $L95; add.u64 %r28,%r28,2; add.u64 %r35,%r35,2; .loc 1 2367 2 setp.ne.u64 %r75,%r28,%r38; @ %r75 bra $L96; .loc 1 2374 8 mov.u32 %r46,0; bra $L90; $L95: .loc 1 2376 4 setp.eq.u32 %r76,%r22,0; .loc 1 2379 9 selp.u32 %r46,1,-1,%r76; bra $L90; $L94: .loc 1 2382 3 setp.eq.u32 %r77,%r22,0; .loc 1 2385 8 selp.u32 %r46,1,-1,%r77; add.u64 %r40,%frame,2; add.u64 %r41,%frame,28; add.u64 %r43,%frame,24; bra $L98; $L100: .loc 1 2389 6 ld.u16 %r26,[%r41]; .loc 1 2389 14 ld.u16 %r27,[%r40]; add.u64 %r40,%r40,2; add.u64 %r41,%r41,2; .loc 1 2389 4 cvt.u16.u32 %r79,%r26; cvt.u16.u32 %r80,%r27; setp.eq.u16 %r81,%r79,%r80; @ %r81 bra $L98; .loc 1 2402 3 setp.gt.u16 %r84,%r79,%r80; @ %r84 bra $L90; bra $L107; $L98: .loc 1 2394 1 setp.ne.u64 %r85,%r40,%r43; @ %r85 bra $L100; .loc 1 2374 8 mov.u32 %r46,0; bra $L90; $L107: .loc 1 2405 10 neg.s32 %r46,%r46; bra $L90; $L101: .loc 1 2357 8 mov.u32 %r46,-2; bra $L90; $L102: mov.u32 %r46,-2; $L90: .loc 1 2406 1 mov.u32 %value,%r46; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } // BEGIN FUNCTION DEF: eisinf$part$1 .func (.param .u32 %value_out) eisinf$part$1 (.param .u64 %in_ar0) { .reg .u32 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u64 %r25; .reg .u32 %r27; .reg .u32 %r30; mov.u64 %r25,%ar0; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; call (%value_in),eisnan$part$0,(%out_arg1); ld.param.u32 %r27,[%value_in]; } .loc 1 504 4 set.u32.eq.u32 %r30,%r27,0; neg.s32 %value,%r30; .loc 1 511 1 st.param.u32 [%value_out],%value; ret; } // BEGIN FUNCTION DEF: eshift$part$4 .func (.param .u32 %value_out) eshift$part$4 (.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 .u32 %r24; .reg .u64 %r25; .reg .u32 %r31; .reg .u32 %r32; .reg .u64 %r36; .reg .u32 %r37; .reg .u64 %r43; .reg .u32 %r45; .reg .u64 %r49; .reg .u32 %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .u32 %r65; .reg .u32 %r67; .reg .u64 %r68; .reg .u32 %r69; .reg .u64 %r70; .reg .u32 %r71; .reg .pred %r72; .reg .pred %r73; .reg .pred %r74; .reg .u16 %r75; .reg .u16 %r76; .reg .u16 %r77; .reg .u16 %r78; .reg .pred %r79; .reg .u16 %r80; .reg .pred %r81; .reg .pred %r82; .reg .u16 %r83; .reg .u16 %r84; .reg .u16 %r86; .reg .u16 %r87; .reg .u32 %r88; .reg .u16 %r89; .reg .u16 %r90; .reg .u16 %r91; .reg .u32 %r92; .reg .u16 %r93; .reg .pred %r94; .reg .pred %r95; .reg .u16 %r96; .reg .u16 %r97; .reg .u16 %r98; .reg .u16 %r99; .reg .pred %r102; .reg .u16 %r103; .reg .pred %r104; .reg .u16 %r105; .reg .pred %r106; .reg .pred %r111; .reg .u32 %r112; .reg .u16 %r113; .reg .u16 %r114; .reg .u16 %r115; .reg .u32 %r116; .reg .u16 %r117; .reg .pred %r118; .reg .pred %r119; .reg .pred %r121; .reg .u16 %r123; .reg .u32 %r124; .reg .pred %r127; .reg .u64 %r128; .reg .u64 %r129; .reg .u64 %r130; mov.u64 %r70,%ar0; mov.u32 %r71,%ar1; .loc 1 2426 3 setp.lt.s32 %r72,%r71,0; @ %r72 bra $L110; .loc 1 2452 7 setp.gt.s32 %r73,%r71,15; @ %r73 bra $L111; bra $L112; $L110: .loc 1 2428 5 neg.s32 %r31,%r71; .loc 1 2429 7 setp.ge.s32 %r74,%r71,-15; @ %r74 bra $L113; add.u64 %r129,%r70,26; add.u64 %r54,%r70,24; .loc 1 2423 6 mov.u32 %r37,0; add.u64 %r130,%r70,4; .loc 1 897 8 cvt.u16.u32 %r80,%r37; $L115: .loc 1 2431 8 ld.u16 %r76,[%r70+24]; cvt.u16.u32 %r77,%r37; or.b16 %r75,%r76,%r77; cvt.u32.u16 %r37,%r75; .loc 1 892 3 mov.u64 %r25,%r129; .loc 1 891 3 mov.u64 %r23,%r54; $L114: .loc 1 895 9 add.u64 %r23,%r23,-2; add.u64 %r25,%r25,-2; ld.u16 %r78,[%r23]; st.u16 [%r25],%r78; .loc 1 894 1 setp.ne.u64 %r79,%r23,%r130; @ %r79 bra $L114; .loc 1 897 8 st.u16 [%r70+4],%r80; .loc 1 2433 6 add.u32 %r31,%r31,-16; .loc 1 2429 7 setp.gt.s32 %r81,%r31,15; @ %r81 bra $L115; .loc 1 2436 7 setp.le.s32 %r82,%r31,7; @ %r82 bra $L116; cvt.u16.u32 %r83,%r37; cvt.s32.s16 %r67,%r83; bra $L127; $L129: mov.u32 %r67,0; add.u64 %r129,%r70,26; add.u64 %r130,%r70,4; $L127: .loc 1 2438 14 ld.u8 %r84,[%r70+24]; .loc 1 2438 8 cvt.u16.u32 %r87,%r67; or.b16 %r86,%r84,%r87; cvt.u32.u16 %r37,%r86; .loc 1 830 3 mov.u64 %r36,%r130; .loc 1 831 8 mov.u32 %r52,0; $L117: .loc 1 834 11 ld.u16 %r32,[%r36]; .loc 1 835 5 shr.u32 %r88,%r32,8; .loc 1 836 5 cvt.u16.u32 %r90,%r88; cvt.u16.u32 %r91,%r52; or.b16 %r89,%r90,%r91; st.u16 [%r36],%r89; .loc 1 838 2 add.u64 %r36,%r36,2; .loc 1 834 9 shl.b32 %r92,%r32,8; .loc 1 837 9 cvt.u16.u32 %r93,%r92; cvt.u32.u16 %r52,%r93; .loc 1 832 1 setp.ne.u64 %r94,%r36,%r129; @ %r94 bra $L117; .loc 1 2440 6 add.u32 %r31,%r31,-8; $L116: .loc 1 2443 7 setp.eq.u32 %r95,%r31,0; @ %r95 bra $L118; $L119: .loc 1 2445 14 ld.u16 %r97,[%r70+24]; and.b16 %r96,%r97,1; .loc 1 2445 8 cvt.u16.u32 %r99,%r37; or.b16 %r98,%r96,%r99; cvt.u32.u16 %r37,%r98; .loc 1 2446 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r70; call eshdn1,(%out_arg1); } .loc 1 2447 6 add.u32 %r31,%r31,-1; .loc 1 2443 7 setp.ne.u32 %r102,%r31,0; @ %r102 bra $L119; bra $L118; $L111: add.u64 %r68,%r70,4; .loc 1 2452 7 mov.u32 %r24,%r71; add.u64 %r128,%r70,24; .loc 1 879 4 mov.u16 %r105,0; $L121: mov.u64 %r53,%r68; .loc 1 873 3 mov.u64 %r43,%r68; $L120: .loc 1 877 4 add.u64 %r43,%r43,2; .loc 1 877 7 ld.u16 %r103,[%r43]; st.u16 [%r53],%r103; add.u64 %r53,%r53,2; .loc 1 876 1 setp.ne.u64 %r104,%r43,%r128; @ %r104 bra $L120; .loc 1 879 4 st.u16 [%r70+24],%r105; .loc 1 2455 6 add.u32 %r24,%r24,-16; .loc 1 2452 7 setp.gt.s32 %r106,%r24,15; @ %r106 bra $L121; and.b32 %r71,%r71,15; $L112: .loc 1 2458 7 setp.le.s32 %r111,%r71,7; @ %r111 bra $L122; .loc 1 851 3 add.u64 %r49,%r70,24; add.u64 %r55,%r70,2; .loc 1 852 8 mov.u32 %r65,0; $L123: .loc 1 856 11 ld.u16 %r45,[%r49]; .loc 1 857 5 shl.b32 %r112,%r45,8; .loc 1 858 5 cvt.u16.u32 %r114,%r112; cvt.u16.u32 %r115,%r65; or.b16 %r113,%r114,%r115; st.u16 [%r49],%r113; .loc 1 860 2 add.u64 %r49,%r49,-2; .loc 1 856 9 shr.u32 %r116,%r45,8; .loc 1 859 9 cvt.u16.u32 %r117,%r116; cvt.u32.u16 %r65,%r117; .loc 1 854 1 setp.ne.u64 %r118,%r49,%r55; @ %r118 bra $L123; .loc 1 2461 6 add.u32 %r71,%r71,-8; $L122: .loc 1 2464 7 setp.ne.u32 %r119,%r71,0; @ %r119 bra $L124; $L126: .loc 1 852 8 mov.u32 %r69,0; bra $L109; $L124: .loc 1 2466 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r70; call eshup1,(%out_arg1); } .loc 1 2467 6 add.u32 %r71,%r71,-1; .loc 1 2464 7 setp.ne.u32 %r121,%r71,0; @ %r121 bra $L124; bra $L126; $L118: .loc 1 2470 3 cvt.u16.u32 %r123,%r37; set.u32.ne.u16 %r124,%r123,0; neg.s32 %r69,%r124; bra $L109; $L113: .loc 1 2436 7 setp.lt.s32 %r127,%r71,-7; @ %r127 bra $L129; .loc 1 2423 6 mov.u32 %r37,0; bra $L119; $L109: .loc 1 2473 1 mov.u32 %value,%r69; st.param.u32 [%value_out],%value; 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 %r25; .reg .u32 %r26; .reg .u64 %r29; .reg .u32 %r30; .reg .u32 %r31; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u32 %r36; .reg .u64 %r40; .reg .u32 %r45; .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 .u32 %r64; .reg .u16 %r65; .reg .u16 %r66; .reg .u16 %r67; .reg .u32 %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 .u32 %r78; .reg .u16 %r79; .reg .u32 %r80; .reg .u16 %r81; .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 2490 5 ld.u16 %r23,[%r49+4]; .loc 1 2490 3 setp.eq.u32 %r50,%r23,0; @ %r50 bra $L143; .loc 1 2528 3 cvt.u16.u32 %r52,%r23; and.b16 %r51,%r52,-256; setp.ne.u16 %r53,%r51,0; @ %r53 bra $L144; .loc 1 2488 4 mov.u32 %r48,0; bra $L158; $L143: .loc 1 2493 5 ld.u16 %r31,[%r49+6]; .loc 1 2493 3 cvt.u16.u32 %r54,%r31; setp.lt.s16 %r55,%r54,0; @ %r55 bra $L160; .loc 1 2488 4 mov.u32 %r48,%r23; add.u64 %r91,%r49,26; .loc 1 879 4 cvt.u16.u32 %r92,%r48; bra $L147; $L150: .loc 1 874 3 add.u64 %r34,%r49,6; .loc 1 873 3 add.u64 %r25,%r49,4; $L149: .loc 1 877 11 add.u64 %r34,%r34,2; .loc 1 877 7 cvt.u16.u32 %r56,%r31; st.u16 [%r25],%r56; add.u64 %r25,%r25,2; .loc 1 876 1 setp.eq.u64 %r57,%r34,%r91; @ %r57 bra $L148; ld.u16 %r31,[%r34]; bra $L149; $L148: .loc 1 879 4 st.u16 [%r49+24],%r92; .loc 1 2498 5 add.u32 %r48,%r48,16; .loc 1 2502 4 setp.eq.u32 %r59,%r48,160; @ %r59 bra $L142; ld.u16 %r31,[%r49+6]; $L147: .loc 1 2495 6 setp.eq.u32 %r60,%r31,0; @ %r60 bra $L150; cvt.u16.u32 %r62,%r31; and.b16 %r61,%r62,-256; cvt.u32.u16 %r30,%r61; .loc 1 2506 6 setp.ne.u32 %r63,%r30,0; @ %r63 bra $L154; add.u64 %r33,%r49,24; add.u64 %r89,%r49,2; $L153: .loc 1 852 8 mov.u32 %r47,%r30; .loc 1 851 3 mov.u64 %r40,%r33; $L152: .loc 1 856 11 ld.u16 %r36,[%r40]; .loc 1 857 5 shl.b32 %r64,%r36,8; .loc 1 858 5 cvt.u16.u32 %r66,%r64; cvt.u16.u32 %r67,%r47; or.b16 %r65,%r66,%r67; st.u16 [%r40],%r65; .loc 1 860 2 add.u64 %r40,%r40,-2; .loc 1 856 9 shr.u32 %r68,%r36,8; .loc 1 859 9 cvt.u16.u32 %r69,%r68; cvt.u32.u16 %r47,%r69; .loc 1 854 1 setp.ne.u64 %r70,%r40,%r89; @ %r70 bra $L152; .loc 1 2509 5 add.u32 %r48,%r48,8; .loc 1 2506 9 ld.u16 %r31,[%r49+6]; .loc 1 2506 6 cvt.u16.u32 %r72,%r31; and.b16 %r71,%r72,-256; setp.eq.u16 %r73,%r71,0; @ %r73 bra $L153; bra $L154; $L155: .loc 1 2514 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r49; call eshup1,(%out_arg1); } .loc 1 2515 5 add.u32 %r48,%r48,1; .loc 1 2516 4 setp.gt.s32 %r75,%r48,160; @ %r75 bra $L142; ld.u16 %r31,[%r49+6]; $L154: .loc 1 2512 6 cvt.u16.u32 %r76,%r31; setp.ge.s16 %r77,%r76,0; @ %r77 bra $L155; bra $L142; $L144: .loc 1 830 3 add.u64 %r29,%r49,4; add.u64 %r35,%r49,26; .loc 1 831 8 mov.u32 %r45,0; $L157: .loc 1 834 9 shl.b32 %r78,%r23,8; cvt.u16.u32 %r79,%r78; cvt.u32.u16 %r26,%r79; .loc 1 835 5 shr.u32 %r80,%r23,8; .loc 1 836 5 cvt.u16.u32 %r82,%r80; cvt.u16.u32 %r83,%r45; or.b16 %r81,%r82,%r83; st.u16 [%r29],%r81; .loc 1 838 2 add.u64 %r29,%r29,2; .loc 1 832 1 setp.ne.u64 %r84,%r29,%r35; @ %r84 bra $L156; ld.u16 %r23,[%r49+4]; .loc 1 2531 5 mov.u32 %r48,-8; bra $L158; $L156: ld.u16 %r23,[%r29]; .loc 1 837 9 mov.u32 %r45,%r26; bra $L157; $L159: .loc 1 2535 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r49; call eshdn1,(%out_arg1); } .loc 1 2536 5 add.u32 %r48,%r48,-1; .loc 1 2538 4 setp.eq.u32 %r86,%r48,-145; @ %r86 bra $L142; ld.u16 %r23,[%r49+4]; $L158: .loc 1 2533 6 setp.ne.u32 %r87,%r23,0; @ %r87 bra $L159; bra $L142; $L160: .loc 1 2494 8 mov.u32 %r48,%r23; $L142: .loc 1 2545 1 mov.u32 %value,%r48; 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 %r30; .reg .u64 %r31; .reg .u64 %r33; .reg .u32 %r34; .reg .u32 %r35; .reg .u64 %r53; .reg .u32 %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .u32 %r61; .reg .u32 %r67; .reg .u64 %r77; .reg .u64 %r80; .reg .u64 %r81; .reg .u64 %r84; .reg .u64 %r85; .reg .u64 %r95; .reg .u64 %r96; .reg .u64 %r97; .reg .u64 %r101; .reg .u64 %r102; .reg .u64 %r105; .reg .u32 %r111; .reg .u32 %r112; .reg .u64 %r113; .reg .u64 %r115; .reg .u32 %r116; .reg .u32 %r117; .reg .u64 %r118; .reg .u32 %r119; .reg .u64 %r120; .reg .u32 %r122; .reg .u64 %r123; .reg .u32 %r125; .reg .u32 %r126; .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 .u16 %r136; .reg .pred %r137; .reg .pred %r139; .reg .u32 %r141; .reg .u32 %r142; .reg .pred %r143; .reg .u16 %r144; .reg .pred %r145; .reg .pred %r146; .reg .u32 %r147; .reg .pred %r148; .reg .u16 %r149; .reg .pred %r150; .reg .pred %r151; .reg .pred %r152; .reg .pred %r153; .reg .pred %r154; .reg .pred %r155; .reg .pred %r156; .reg .u32 %r157; .reg .u32 %r158; .reg .u16 %r159; .reg .u32 %r160; .reg .u32 %r161; .reg .u32 %r162; .reg .u16 %r163; .reg .u32 %r165; .reg .u32 %r166; .reg .u16 %r167; .reg .u32 %r168; .reg .u32 %r169; .reg .u32 %r170; .reg .u16 %r171; .reg .u32 %r173; .reg .u32 %r174; .reg .u16 %r175; .reg .u32 %r177; .reg .u32 %r178; .reg .u16 %r179; .reg .u64 %r181; .reg .u64 %r182; .reg .u64 %r183; .reg .u64 %r184; .reg .u16 %r186; .reg .pred %r187; .reg .pred %r188; .reg .u16 %r189; .reg .u16 %r190; .reg .u32 %r191; .reg .u64 %r193; .reg .u16 %r194; .reg .u16 %r195; .reg .u16 %r196; .reg .pred %r197; .reg .pred %r198; .reg .u64 %r199; .reg .u32 %r200; .reg .u32 %r201; .reg .u64 %r202; .reg .u64 %r203; .reg .u64 %r204; .reg .u64 %r205; .reg .u16 %r206; .reg .pred %r207; .reg .u16 %r208; .reg .u16 %r209; .reg .u16 %r210; .reg .pred %r211; .reg .u16 %r212; .reg .u16 %r213; .reg .u16 %r214; .reg .u16 %r215; .reg .u16 %r216; .reg .u16 %r217; .reg .u16 %r218; .reg .pred %r219; .reg .u32 %r221; .reg .u32 %r222; .reg .u32 %r224; .reg .u32 %r225; .reg .u16 %r226; .reg .u16 %r227; .reg .u16 %r228; .reg .u32 %r229; .reg .u16 %r230; .reg .pred %r231; .reg .pred %r234; .reg .pred %r235; .reg .u64 %r236; .reg .u64 %r237; .reg .u64 %r238; .reg .u16 %r239; .reg .u16 %r240; .reg .u16 %r241; .reg .pred %r242; .reg .pred %r243; .reg .u64 %r244; .reg .u64 %r245; .reg .u64 %r246; .reg .u64 %r247; .reg .u64 %r248; .reg .u32 %r250; .reg .pred %r251; .reg .u16 %r253; .reg .pred %r254; .reg .u16 %r256; .reg .pred %r257; .reg .u16 %r258; .reg .pred %r259; .reg .u16 %r260; .reg .u16 %r261; .reg .pred %r262; .reg .u16 %r264; .reg .u64 %r266; .reg .u64 %r267; .reg .u16 %r268; .reg .u16 %r269; .reg .u16 %r270; .reg .pred %r272; .reg .pred %r274; .reg .u32 %r275; .reg .pred %r276; .reg .pred %r277; mov.u64 %r115,%ar0; mov.u32 %r116,%ar1; mov.u32 %r117,%ar2; mov.u64 %r118,%ar3; mov.u32 %r119,%ar4; mov.u64 %r120,%ar5; .loc 1 1172 5 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r115; call (%value_in),enormlz,(%out_arg1); ld.param.u32 %r122,[%value_in]; } .loc 1 1182 5 cvt.s64.s32 %r123,%r122; sub.u64 %r53,%r118,%r123; .loc 1 1187 8 set.u32.gt.s32 %r125,%r122,144; neg.s32 %r126,%r125; .loc 1 1187 25 set.u32.le.s64 %r128,%r53,32766; neg.s32 %r129,%r128; .loc 1 1187 17 cvt.u16.u32 %r131,%r126; cvt.u16.u32 %r132,%r129; and.b16 %r130,%r131,%r132; .loc 1 1187 3 cvt.u32.u16 %r133,%r130; cvt.u16.u8 %r134,%r133; setp.eq.u16 %r135,%r134,0; @ %r135 bra $L171; .loc 1 681 1 add.u64 %r105,%r115,2; add.u64 %r102,%r115,26; .loc 1 683 8 mov.u16 %r136,0; $L172: st.u16 [%r105],%r136; add.u64 %r105,%r105,2; .loc 1 682 1 setp.ne.u64 %r137,%r102,%r105; @ %r137 bra $L172; bra $L170; $L171: .loc 1 1193 3 setp.ge.s64 %r277,%r53,0; @ %r277 bra $L174; .loc 1 1195 4 setp.lt.s64 %r139,%r53,-144; @ %r139 bra $L175; cvt.u32.u64 %r141,%r53; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r115; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r141; call (%value_in),eshift$part$4,(%out_arg1,%out_arg2); ld.param.u32 %r142,[%value_in]; } .loc 1 1199 5 setp.eq.u32 %r143,%r142,0; .loc 1 1200 9 selp.u32 %r116,%r116,1,%r143; .loc 1 1209 3 setp.eq.u32 %r272,%r119,0; @ ! %r272 bra $L229; bra $L209; $L175: .loc 1 681 1 add.u64 %r56,%r115,2; add.u64 %r113,%r115,26; .loc 1 683 8 mov.u16 %r144,%r134; $L177: st.u16 [%r56],%r144; add.u64 %r56,%r56,2; .loc 1 682 1 setp.ne.u64 %r145,%r56,%r113; @ %r145 bra $L177; bra $L170; $L174: .loc 1 1209 3 setp.eq.u32 %r146,%r119,0; @ %r146 bra $L179; .loc 1 1212 8 ld.u32 %r67,[%r120+4]; .loc 1 1212 3 ld.u32 %r147,[%r120]; setp.eq.u32 %r148,%r67,%r147; @ %r148 bra $L180; $L212: add.u64 %r84,%r120,26; add.u64 %r57,%r120,52; .loc 1 672 8 mov.u16 %r149,0; $L181: st.u16 [%r84],%r149; add.u64 %r84,%r84,2; .loc 1 671 1 setp.ne.u64 %r150,%r57,%r84; @ %r150 bra $L181; setp.eq.u32 %r151,%r67,56; @ %r151 bra $L182; setp.gt.s32 %r152,%r67,56; @ %r152 bra $L183; setp.eq.u32 %r153,%r67,24; @ %r153 bra $L184; setp.eq.u32 %r154,%r67,53; @ %r154 bra $L185; bra $L186; $L183: setp.eq.u32 %r155,%r67,64; @ %r155 bra $L187; setp.eq.u32 %r156,%r67,113; @ %r156 bra $L188; $L186: .loc 1 1219 12 mov.u32 %r157,12; st.u32 [%r120+8],%r157; .loc 1 1220 14 mov.u32 %r158,-2147418113; st.u32 [%r120+20],%r158; .loc 1 1222 15 mov.u16 %r159,1; st.u16 [%r120+24],%r159; .loc 1 1223 12 mov.u32 %r160,11; st.u32 [%r120+12],%r160; .loc 1 1224 4 mov.u32 %r112,1; mov.u32 %r111,%r160; bra $L189; $L188: .loc 1 1226 12 mov.u32 %r161,10; st.u32 [%r120+8],%r161; .loc 1 1227 14 mov.u32 %r162,1073774591; st.u32 [%r120+20],%r162; .loc 1 1229 15 mov.u16 %r163,-32768; st.u16 [%r120+24],%r163; .loc 1 1230 12 st.u32 [%r120+12],%r161; .loc 1 1231 4 mov.u32 %r112,32768; mov.u32 %r111,%r161; bra $L189; $L187: .loc 1 1233 12 mov.u32 %r165,7; st.u32 [%r120+8],%r165; .loc 1 1234 14 mov.u32 %r166,-2147418113; st.u32 [%r120+20],%r166; .loc 1 1236 15 mov.u16 %r167,1; st.u16 [%r120+24],%r167; .loc 1 1237 12 mov.u32 %r168,6; st.u32 [%r120+12],%r168; .loc 1 1238 4 mov.u32 %r112,1; mov.u32 %r111,%r168; bra $L189; $L182: .loc 1 1241 12 mov.u32 %r169,6; st.u32 [%r120+8],%r169; .loc 1 1242 14 mov.u32 %r170,8388863; st.u32 [%r120+20],%r170; .loc 1 1244 15 mov.u16 %r171,256; st.u16 [%r120+24],%r171; .loc 1 1245 12 st.u32 [%r120+12],%r169; .loc 1 1246 4 mov.u32 %r112,256; mov.u32 %r111,%r169; bra $L189; $L185: .loc 1 1248 12 mov.u32 %r173,6; st.u32 [%r120+8],%r173; .loc 1 1249 14 mov.u32 %r174,67110911; st.u32 [%r120+20],%r174; .loc 1 1251 15 mov.u16 %r175,2048; st.u16 [%r120+24],%r175; .loc 1 1252 12 st.u32 [%r120+12],%r173; .loc 1 1253 4 mov.u32 %r112,2048; mov.u32 %r111,%r173; bra $L189; $L184: .loc 1 1255 12 mov.u32 %r177,4; st.u32 [%r120+8],%r177; .loc 1 1256 14 mov.u32 %r178,8388863; st.u32 [%r120+20],%r178; .loc 1 1258 15 mov.u16 %r179,256; st.u16 [%r120+24],%r179; .loc 1 1259 12 st.u32 [%r120+12],%r177; .loc 1 1260 4 mov.u32 %r112,256; mov.u32 %r111,%r177; $L189: .loc 1 1262 21 cvt.s64.s32 %r181,%r111; add.u64 %r182,%r181,8; add.u64 %r183,%r182,%r182; add.u64 %r184,%r120,%r183; cvt.u16.u32 %r186,%r112; st.u16 [%r184+10],%r186; .loc 1 1263 13 st.u32 [%r120],%r67; $L180: .loc 1 1272 3 setp.gt.s64 %r187,%r53,0; @ %r187 bra $L190; $L213: .loc 1 1272 16 setp.eq.u32 %r188,%r67,144; @ %r188 bra $L191; .loc 1 1277 18 ld.u16 %r190,[%r115+24]; and.b16 %r189,%r190,1; cvt.u32.u16 %r191,%r189; .loc 1 1277 7 or.b32 %r116,%r116,%r191; .loc 1 1278 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r115; call eshdn1,(%out_arg1); } ld.u32 %r67,[%r120+4]; $L190: .loc 1 1283 10 ld.u32 %r30,[%r120+8]; cvt.s64.s32 %r31,%r30; .loc 1 1283 6 add.u64 %r193,%r31,%r31; add.u64 %r33,%r115,%r193; ld.u16 %r34,[%r33]; .loc 1 1283 21 ld.u16 %r35,[%r120+20]; .loc 1 1283 3 cvt.u16.u32 %r195,%r34; cvt.u16.u32 %r196,%r35; and.b16 %r194,%r195,%r196; cvt.u32.u16 %r55,%r194; .loc 1 1284 3 setp.gt.s32 %r197,%r67,143; @ %r197 bra $L192; .loc 1 1287 7 setp.gt.s32 %r198,%r30,11; @ %r198 bra $L192; add.u64 %r199,%r193,2; add.u64 %r95,%r115,%r199; mov.u32 %r201,11; sub.u32 %r200,%r201,%r30; cvt.u64.u32 %r202,%r200; add.u64 %r203,%r202,%r31; add.u64 %r204,%r203,%r203; add.u64 %r205,%r115,4; add.u64 %r85,%r204,%r205; .loc 1 1291 8 mov.u16 %r210,0; $L194: .loc 1 1289 5 ld.u16 %r206,[%r95]; setp.eq.u16 %r207,%r206,0; @ %r207 bra $L193; .loc 1 1290 6 cvt.u16.u32 %r209,%r55; or.b16 %r208,%r209,1; cvt.u32.u16 %r55,%r208; $L193: .loc 1 1291 8 st.u16 [%r95],%r210; add.u64 %r95,%r95,2; .loc 1 1287 7 setp.ne.u64 %r211,%r85,%r95; @ %r211 bra $L194; ld.u16 %r34,[%r33]; ld.u16 %r35,[%r120+20]; $L192: .loc 1 1295 12 cvt.u16.u32 %r213,%r35; not.b16 %r212,%r213; cvt.u16.u32 %r215,%r34; and.b16 %r214,%r212,%r215; st.u16 [%r33],%r214; .loc 1 1296 22 ld.u16 %r217,[%r120+22]; cvt.u16.u32 %r218,%r55; and.b16 %r216,%r217,%r218; .loc 1 1296 3 setp.ne.u16 %r219,%r216,0; @ %r219 bra $L195; $L200: .loc 1 1315 16 set.u32.ne.u32 %r221,%r67,144; neg.s32 %r222,%r221; .loc 1 1315 3 set.u32.le.s64 %r224,%r53,0; neg.s32 %r225,%r224; .loc 1 1315 16 cvt.u16.u32 %r227,%r222; cvt.u16.u32 %r228,%r225; and.b16 %r226,%r227,%r228; cvt.u32.u16 %r229,%r226; cvt.u16.u8 %r230,%r229; setp.ne.u16 %r231,%r230,0; @ ! %r231 bra $L230; bra $L196; $L195: .loc 1 1298 4 setp.ne.u16 %r234,%r217,%r218; @ %r234 bra $L198; .loc 1 1300 5 setp.ne.u32 %r235,%r116,0; @ %r235 bra $L199; .loc 1 1302 14 ld.s32 %r236,[%r120+12]; .loc 1 1302 10 add.u64 %r237,%r236,%r236; add.u64 %r238,%r115,%r237; .loc 1 1302 34 ld.u16 %r240,[%r238]; ld.u16 %r241,[%r120+24]; and.b16 %r239,%r240,%r241; .loc 1 1302 6 setp.eq.u16 %r242,%r239,0; @ ! %r242 bra $L198; bra $L200; $L199: .loc 1 1307 6 setp.ne.u32 %r243,%r117,0; @ %r243 bra $L200; $L198: .loc 1 911 3 add.u64 %r80,%r120,50; .loc 1 912 3 add.u64 %r81,%r115,24; add.u64 %r96,%r120,28; .loc 1 913 7 mov.u32 %r61,0; $L201: .loc 1 916 6 ld.u16 %r244,[%r80]; .loc 1 916 29 ld.u16 %r245,[%r81]; .loc 1 916 27 add.u64 %r246,%r244,%r245; .loc 1 916 50 cvt.u64.u32 %r247,%r61; .loc 1 916 4 add.u64 %r77,%r246,%r247; .loc 1 921 7 st.u16 [%r81],%r77; .loc 1 922 2 add.u64 %r80,%r80,-2; .loc 1 923 2 add.u64 %r81,%r81,-2; .loc 1 917 4 shr.u64 %r248,%r77,16; cvt.u32.u64 %r250,%r248; and.b32 %r61,%r250,1; .loc 1 914 1 setp.ne.u64 %r251,%r80,%r96; @ %r251 bra $L201; bra $L200; $L196: .loc 1 1320 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r115; call eshup1,(%out_arg1); } .loc 1 1322 3 ld.u16 %r253,[%r115+4]; setp.eq.u16 %r254,%r253,0; @ %r254 bra $L202; $L204: .loc 1 1324 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r115; call eshdn1,(%out_arg1); } .loc 1 1325 6 add.u64 %r53,%r53,1; bra $L203; $L230: .loc 1 1322 3 ld.u16 %r256,[%r115+4]; setp.ne.u16 %r257,%r256,0; @ %r257 bra $L204; $L203: .loc 1 1328 9 mov.u16 %r258,0; st.u16 [%r115+24],%r258; .loc 1 1329 3 setp.le.s64 %r259,%r53,32766; @ ! %r259 bra $L211; setp.ge.s64 %r277,%r53,0; bra $L205; $L211: .loc 1 1335 7 mov.u16 %r260,32767; st.u16 [%r115+2],%r260; add.u64 %r101,%r115,4; add.u64 %r97,%r115,24; .loc 1 1337 8 mov.u16 %r261,0; $L206: st.u16 [%r101],%r261; add.u64 %r101,%r101,2; .loc 1 1336 2 setp.ne.u64 %r262,%r97,%r101; @ %r262 bra $L206; bra $L170; $L205: .loc 1 1356 3 @ %r277 bra $L207; $L208: .loc 1 1357 7 mov.u16 %r264,0; st.u16 [%r115+2],%r264; bra $L170; $L207: .loc 1 1359 9 st.u16 [%r115+2],%r53; bra $L170; $L202: .loc 1 1328 9 st.u16 [%r115+24],%r253; bra $L205; $L191: .loc 1 1283 10 ld.s32 %r266,[%r120+8]; .loc 1 1283 6 add.u64 %r267,%r266,%r266; add.u64 %r33,%r115,%r267; ld.u16 %r34,[%r33]; .loc 1 1283 21 ld.u16 %r35,[%r120+20]; .loc 1 1283 3 cvt.u16.u32 %r269,%r34; cvt.u16.u32 %r270,%r35; and.b16 %r268,%r269,%r270; cvt.u32.u16 %r55,%r268; bra $L192; $L209: .loc 1 1328 9 st.u16 [%r115+24],%r134; bra $L208; $L179: st.u16 [%r115+24],%r134; .loc 1 1329 3 setp.gt.s64 %r274,%r53,32766; @ ! %r274 bra $L207; bra $L211; $L229: .loc 1 1212 8 ld.u32 %r67,[%r120+4]; .loc 1 1212 3 ld.u32 %r275,[%r120]; setp.ne.u32 %r276,%r275,%r67; @ %r276 bra $L212; bra $L213; $L170: .loc 1 1360 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 %r26; .reg .u32 %r30; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r48; .reg .u64 %r51; .reg .u64 %r52; .reg .u64 %r57; .reg .u64 %r65; .reg .u32 %r66; .reg .u64 %r67; .reg .u64 %r68; .reg .u64 %r69; .reg .u64 %r70; .reg .u64 %r71; .reg .u32 %r73; .reg .u64 %r74; .reg .u32 %r76; .reg .u64 %r77; .reg .u16 %r78; .reg .pred %r79; .reg .pred %r80; .reg .u16 %r81; .reg .u16 %r82; .reg .pred %r83; .reg .pred %r86; .reg .pred %r87; .reg .u64 %r88; .reg .u64 %r89; .reg .u64 %r90; .reg .u64 %r91; .reg .u64 %r92; .reg .u32 %r94; .reg .pred %r95; .reg .u16 %r97; .reg .u16 %r98; .reg .u16 %r99; .reg .pred %r101; .reg .u32 %r106; .reg .u64 %r108; .reg .u64 %r109; .reg .u64 %r110; mov.u64 %r69,%ar0; mov.u64 %r70,%ar1; mov.u64 %r71,%ar2; .loc 1 3653 18 add.u64 %r32,%r71,52; .loc 1 3655 4 ld.u16 %r33,[%r69+2]; .loc 1 3656 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r69; call (%value_in),enormlz,(%out_arg1); ld.param.u32 %r73,[%value_in]; } cvt.s64.s32 %r74,%r73; .loc 1 3656 4 sub.u64 %r35,%r33,%r74; .loc 1 3657 4 ld.u16 %r36,[%r70+2]; .loc 1 3658 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r70; call (%value_in),enormlz,(%out_arg1); ld.param.u32 %r76,[%value_in]; } cvt.s64.s32 %r77,%r76; .loc 1 3658 4 sub.u64 %r38,%r36,%r77; mov.u64 %r57,%r32; add.u64 %r68,%r71,78; .loc 1 672 8 mov.u16 %r78,0; $L232: st.u16 [%r57],%r78; add.u64 %r57,%r57,2; .loc 1 671 1 setp.ne.u64 %r79,%r57,%r68; @ %r79 bra $L232; .loc 1 3660 6 setp.gt.s64 %r80,%r35,%r38; @ %r80 bra $L233; add.u64 %r67,%r69,4; add.u64 %r65,%r70,4; add.u64 %r108,%r35,-1; add.u64 %r109,%r69,26; add.u64 %r110,%r70,2; $L239: mov.u64 %r26,%r67; mov.u64 %r39,%r65; $L237: .loc 1 756 4 ld.u16 %r81,[%r26]; ld.u16 %r82,[%r39]; setp.eq.u16 %r83,%r81,%r82; @ %r83 bra $L234; .loc 1 762 3 setp.gt.u16 %r86,%r81,%r82; @ %r86 bra $L240; bra $L236; $L234: add.u64 %r26,%r26,2; add.u64 %r39,%r39,2; .loc 1 754 1 setp.ne.u64 %r87,%r109,%r26; @ %r87 bra $L237; $L236: .loc 1 938 3 add.u64 %r51,%r69,24; .loc 1 939 3 add.u64 %r52,%r70,24; .loc 1 940 7 mov.u32 %r66,0; $L238: .loc 1 943 6 ld.u16 %r88,[%r52]; .loc 1 943 50 cvt.u64.u32 %r89,%r66; .loc 1 943 4 sub.u64 %r90,%r88,%r89; .loc 1 943 29 ld.u16 %r91,[%r51]; .loc 1 943 4 sub.u64 %r48,%r90,%r91; .loc 1 948 7 st.u16 [%r52],%r48; .loc 1 949 2 add.u64 %r51,%r51,-2; .loc 1 950 2 add.u64 %r52,%r52,-2; .loc 1 944 4 shr.u64 %r92,%r48,16; cvt.u32.u64 %r94,%r92; and.b32 %r66,%r94,1; .loc 1 941 1 setp.ne.u64 %r95,%r110,%r52; @ %r95 bra $L238; .loc 1 3665 5 mov.u32 %r30,1; bra $L235; $L240: .loc 1 3669 5 mov.u32 %r30,0; $L235: .loc 1 3671 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; call eshup1,(%out_arg1); } .loc 1 3672 14 ld.u16 %r98,[%r71+76]; cvt.u16.u32 %r99,%r30; or.b16 %r97,%r98,%r99; st.u16 [%r71+76],%r97; .loc 1 3673 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r70; call eshup1,(%out_arg1); } .loc 1 3674 5 add.u64 %r38,%r38,-1; .loc 1 3660 6 setp.ne.u64 %r101,%r38,%r108; @ %r101 bra $L239; $L233: .loc 1 3676 1 mov.u32 %r106,0; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r70; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r106; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r106; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r38; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r106; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r71; call emdnorm,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); } .loc 1 3677 1 ret; } // BEGIN FUNCTION DEF: emovo$isra$7 .func emovo$isra$7 (.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 %r25; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u32 %r33; .reg .u64 %r40; .reg .u64 %r42; .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 .u16 %r64; .reg .pred %r65; .reg .u16 %r66; .reg .u16 %r67; .reg .u16 %r68; .reg .pred %r69; mov.u64 %r48,%ar0; mov.u64 %r49,%ar1; ld.u16 %r33,[%r48+2]; .loc 1 638 3 ld.u16 %r50,[%r48]; setp.eq.u16 %r51,%r50,0; @ %r51 bra $L246; .loc 1 639 7 cvt.u16.u32 %r53,%r33; or.b16 %r52,%r53,-32768; cvt.u32.u16 %r33,%r52; $L246: cvt.u16.u32 %r54,%r33; st.u16 [%r49+18],%r54; .loc 1 643 3 ld.u16 %r55,[%r48+2]; setp.ne.u16 %r56,%r55,32767; @ %r56 bra $L247; add.u64 %r40,%r48,6; add.u64 %r29,%r48,26; $L249: .loc 1 712 5 ld.u16 %r57,[%r40]; setp.ne.u16 %r58,%r57,0; @ %r58 bra $L248; add.u64 %r40,%r40,2; .loc 1 710 2 setp.ne.u64 %r59,%r29,%r40; @ %r59 bra $L249; bra $L262; $L248: mov.u64 %r25,%r49; add.u64 %r23,%r49,16; .loc 1 3750 10 mov.u16 %r60,0; $L251: st.u16 [%r25],%r60; add.u64 %r25,%r25,2; .loc 1 3749 2 setp.ne.u64 %r61,%r23,%r25; @ %r61 bra $L251; .loc 1 3751 9 mov.u16 %r62,-16384; st.u16 [%r49+16],%r62; .loc 1 3757 9 mov.u16 %r63,32767; st.u16 [%r49+18],%r63; bra $L245; $L262: mov.u64 %r24,%r49; add.u64 %r28,%r49,18; .loc 1 548 7 mov.u16 %r64,%r57; $L253: st.u16 [%r24],%r64; add.u64 %r24,%r24,2; .loc 1 547 1 setp.ne.u64 %r65,%r24,%r28; @ %r65 bra $L253; .loc 1 549 4 ld.u16 %r67,[%r49+18]; or.b16 %r66,%r67,32767; st.u16 [%r49+18],%r66; bra $L245; $L247: add.u64 %r30,%r48,6; add.u64 %r42,%r49,16; add.u64 %r47,%r48,24; $L254: .loc 1 660 7 ld.u16 %r68,[%r30]; st.u16 [%r42],%r68; add.u64 %r30,%r30,2; add.u64 %r42,%r42,-2; .loc 1 659 1 setp.ne.u64 %r69,%r30,%r47; @ %r69 bra $L254; $L245: .loc 1 661 1 ret; } // BEGIN FUNCTION DEF: e53toe$isra$9 .func e53toe$isra$9 (.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 %r23; .reg .u32 %r24; .reg .u32 %r29; .reg .u64 %r34; .reg .u64 %r35; .reg .u32 %r40; .reg .u32 %r47; .reg .u64 %r48; .reg .u64 %r49; .reg .u64 %r52; .reg .u64 %r54; .reg .u32 %r55; .reg .u32 %r56; .reg .u64 %r57; .reg .u64 %r60; .reg .u64 %r61; .reg .u16 %r62; .reg .pred %r63; .reg .u16 %r64; .reg .pred %r66; .reg .u16 %r68; .reg .u16 %r69; .reg .u16 %r71; .reg .u16 %r73; .reg .u16 %r74; .reg .pred %r76; .reg .u16 %r77; .reg .pred %r79; .reg .u16 %r80; .reg .pred %r81; .reg .u16 %r82; .reg .pred %r83; .reg .u16 %r84; .reg .pred %r85; .reg .u16 %r86; .reg .pred %r87; .reg .u16 %r88; .reg .u16 %r89; .reg .u16 %r90; .reg .pred %r91; .reg .u16 %r92; .reg .pred %r93; .reg .u16 %r94; .reg .u16 %r95; .reg .u16 %r96; .reg .pred %r97; .reg .u32 %r99; .reg .u16 %r100; .reg .pred %r101; .reg .u16 %r102; .reg .u16 %r104; .reg .u16 %r105; .reg .u16 %r106; .reg .u16 %r107; .reg .u32 %r109; .reg .u32 %r110; .reg .u32 %r112; .reg .pred %r113; .reg .u16 %r114; .reg .pred %r115; .reg .u16 %r116; .reg .u16 %r117; .reg .u16 %r118; .reg .u16 %r119; .reg .u16 %r122; .reg .u16 %r124; .reg .u16 %r125; .reg .u16 %r126; .reg .u32 %r128; .reg .u32 %r129; mov.u64 %r60,%ar0; mov.u64 %r61,%ar1; mov.u64 %r48,%frame; add.u64 %r49,%frame,26; .loc 1 672 8 mov.u16 %r62,0; $L264: st.u16 [%r48],%r62; add.u64 %r48,%r48,2; .loc 1 671 1 setp.ne.u64 %r63,%r48,%r49; @ %r63 bra $L264; .loc 1 2006 3 ld.u16 %r24,[%r60+6]; .loc 1 2008 5 cvt.u16.u32 %r64,%r24; .loc 1 2008 3 setp.lt.s16 %r66,%r64,0; @ %r66 bra $L265; .loc 1 2007 7 st.u16 [%frame],%r62; bra $L266; $L265: .loc 1 2009 8 mov.u16 %r68,-1; st.u16 [%frame],%r68; $L266: .loc 1 2010 12 and.b16 %r69,%r64,15; .loc 1 2010 20 or.b16 %r71,%r69,16; .loc 1 2010 7 st.u16 [%frame+4],%r71; .loc 1 2011 3 cvt.u16.u32 %r74,%r24; and.b16 %r73,%r74,32752; cvt.u32.u16 %r29,%r73; .loc 1 2013 3 setp.ne.u16 %r76,%r73,32752; @ %r76 bra $L267; .loc 1 2017 4 and.b16 %r77,%r74,15; setp.ne.u16 %r79,%r77,0; @ %r79 bra $L268; .loc 1 2017 27 ld.u16 %r80,[%r60+4]; setp.ne.u16 %r81,%r80,0; @ %r81 bra $L268; .loc 1 2018 3 ld.u16 %r82,[%r60+2]; setp.ne.u16 %r83,%r82,0; @ %r83 bra $L268; .loc 1 2018 19 ld.u16 %r84,[%r60]; setp.eq.u16 %r85,%r84,0; @ %r85 bra $L269; $L268: mov.u64 %r52,%r61; add.u64 %r35,%r61,16; .loc 1 3750 10 mov.u16 %r86,0; $L270: st.u16 [%r52],%r86; add.u64 %r52,%r52,2; .loc 1 3749 2 setp.ne.u64 %r87,%r35,%r52; @ %r87 bra $L270; .loc 1 3751 9 mov.u16 %r88,-16384; st.u16 [%r61+16],%r88; .loc 1 3757 9 mov.u16 %r89,32767; st.u16 [%r61+18],%r89; bra $L263; $L269: mov.u64 %r34,%r61; add.u64 %r57,%r61,20; .loc 1 2018 19 mov.u64 %r22,%r61; .loc 1 440 7 mov.u16 %r90,%r84; $L272: st.u16 [%r22],%r90; add.u64 %r22,%r22,2; .loc 1 439 1 setp.ne.u64 %r91,%r57,%r22; @ %r91 bra $L272; add.u64 %r23,%r61,18; .loc 1 548 7 mov.u16 %r92,0; $L273: st.u16 [%r34],%r92; add.u64 %r34,%r34,2; .loc 1 547 1 setp.ne.u64 %r93,%r23,%r34; @ %r93 bra $L273; .loc 1 549 4 ld.u16 %r95,[%r61+18]; or.b16 %r94,%r95,32767; st.u16 [%r61+18],%r94; .loc 1 2034 4 ld.u16 %r96,[%frame]; setp.eq.u16 %r97,%r96,0; @ %r97 bra $L263; .loc 1 2035 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r61; call eneg,(%out_arg1); } bra $L263; $L267: .loc 1 2039 3 shr.u32 %r99,%r29,4; cvt.u16.u32 %r100,%r99; cvt.u32.u16 %r40,%r100; ld.u16 %r55,[%r60+4]; ld.u16 %r56,[%r60+2]; ld.u16 %r47,[%r60]; .loc 1 2042 3 setp.ne.u32 %r101,%r40,0; @ %r101 bra $L274; .loc 1 2045 8 and.b16 %r102,%r71,-17; st.u16 [%frame+4],%r102; .loc 1 2048 7 mov.u16 %r104,15360; st.u16 [%frame+2],%r104; .loc 1 2051 6 cvt.u16.u32 %r105,%r55; st.u16 [%frame+6],%r105; .loc 1 2052 6 cvt.u16.u32 %r106,%r56; st.u16 [%frame+8],%r106; .loc 1 2053 6 cvt.u16.u32 %r107,%r47; st.u16 [%frame+10],%r107; mov.u32 %r109,-5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r109; call (%value_in),eshift$part$4,(%out_arg1,%out_arg2); ld.param.u32 %r110,[%value_in]; } .loc 1 2063 11 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),enormlz,(%out_arg1); ld.param.u32 %r112,[%value_in]; } .loc 1 2063 4 setp.le.s32 %r113,%r112,144; @ %r113 bra $L275; add.u64 %r54,%frame,2; .loc 1 683 8 cvt.u16.u32 %r114,%r40; $L276: st.u16 [%r54],%r114; add.u64 %r54,%r54,2; .loc 1 682 1 setp.ne.u64 %r115,%r49,%r54; @ %r115 bra $L276; bra $L277; $L275: .loc 1 2066 9 ld.u16 %r117,[%frame+2]; add.u16 %r116,%r117,1; cvt.u16.u32 %r119,%r112; sub.u16 %r118,%r116,%r119; st.u16 [%frame+2],%r118; $L277: .loc 1 2068 1 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r61; call emovo$isra$7,(%out_arg1,%out_arg2); } bra $L263; $L274: .loc 1 2047 3 add.u16 %r122,%r100,15360; .loc 1 2048 7 st.u16 [%frame+2],%r122; .loc 1 2051 6 cvt.u16.u32 %r124,%r55; st.u16 [%frame+6],%r124; .loc 1 2052 6 cvt.u16.u32 %r125,%r56; st.u16 [%frame+8],%r125; .loc 1 2053 6 cvt.u16.u32 %r126,%r47; st.u16 [%frame+10],%r126; mov.u32 %r128,-5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r128; call (%value_in),eshift$part$4,(%out_arg1,%out_arg2); ld.param.u32 %r129,[%value_in]; } bra $L277; $L263: .loc 1 2070 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,64; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r28; .reg .u32 %r29; .reg .u64 %r32; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u32 %r48; .reg .u64 %r51; .reg .u64 %r56; .reg .u64 %r64; .reg .u32 %r72; .reg .u64 %r74; .reg .u64 %r75; .reg .u64 %r76; .reg .u64 %r77; .reg .u64 %r78; .reg .u64 %r79; .reg .u64 %r82; .reg .u64 %r96; .reg .u64 %r97; .reg .u64 %r99; .reg .u64 %r100; .reg .u64 %r101; .reg .u64 %r104; .reg .u64 %r105; .reg .u64 %r106; .reg .u64 %r107; .reg .u64 %r108; .reg .u16 %r109; .reg .pred %r111; .reg .u32 %r113; .reg .pred %r114; .reg .u16 %r115; .reg .pred %r116; .reg .u16 %r117; .reg .pred %r118; .reg .u16 %r119; .reg .pred %r121; .reg .u32 %r123; .reg .pred %r124; .reg .u64 %r126; .reg .u32 %r127; .reg .pred %r128; .reg .u16 %r129; .reg .pred %r131; .reg .u32 %r133; .reg .pred %r134; .reg .u64 %r136; .reg .u32 %r137; .reg .pred %r138; .reg .u16 %r139; .reg .pred %r140; .reg .u16 %r141; .reg .u16 %r142; .reg .u16 %r143; .reg .u16 %r144; .reg .pred %r145; .reg .u16 %r146; .reg .u16 %r147; .reg .pred %r148; .reg .u32 %r150; .reg .pred %r151; .reg .u32 %r153; .reg .u32 %r155; .reg .pred %r156; .reg .u32 %r158; .reg .pred %r159; .reg .u16 %r160; .reg .u16 %r161; .reg .pred %r162; .reg .u16 %r163; .reg .u16 %r164; .reg .pred %r170; .reg .u16 %r171; .reg .pred %r172; .reg .u32 %r175; .reg .u64 %r176; .reg .pred %r179; .reg .u16 %r180; .reg .pred %r181; .reg .u16 %r182; .reg .u16 %r183; .reg .pred %r184; .reg .u16 %r185; .reg .pred %r186; .reg .u32 %r188; .reg .u64 %r189; .reg .pred %r190; .reg .u16 %r191; .reg .pred %r192; .reg .u32 %r197; .reg .u32 %r200; .reg .u32 %r202; .reg .u64 %r204; .reg .u64 %r205; .reg .u16 %r206; .reg .u16 %r207; .reg .u16 %r208; .reg .u32 %r209; .reg .u32 %r210; .reg .u16 %r211; .reg .u16 %r214; .reg .pred %r216; .reg .u16 %r217; .reg .pred %r219; .reg .u16 %r220; .reg .u16 %r221; .reg .pred %r222; .reg .u32 %r224; .reg .pred %r225; .reg .u32 %r227; .reg .pred %r228; .reg .u32 %r230; .reg .pred %r231; .reg .u32 %r233; .reg .pred %r234; .reg .u64 %r235; .reg .u16 %r236; .reg .u16 %r237; mov.u64 %r105,%ar0; mov.u64 %r106,%ar1; mov.u64 %r107,%ar2; mov.u64 %r108,%ar3; .loc 1 521 3 ld.u16 %r236,[%r105+18]; and.b16 %r109,%r236,32767; setp.ne.u16 %r111,%r109,32767; @ %r111 bra $L288; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r105; call (%value_in),eisnan$part$0,(%out_arg1); ld.param.u32 %r113,[%value_in]; } .loc 1 1622 3 setp.eq.u32 %r114,%r113,0; @ %r114 bra $L289; mov.u64 %r100,%r105; mov.u64 %r101,%r107; add.u64 %r104,%r100,20; $L290: .loc 1 455 7 ld.u16 %r115,[%r100]; st.u16 [%r101],%r115; add.u64 %r100,%r100,2; add.u64 %r101,%r101,2; .loc 1 454 1 setp.ne.u64 %r116,%r100,%r104; @ %r116 bra $L290; bra $L287; $L325: mov.u64 %r78,%r106; mov.u64 %r77,%r107; add.u64 %r96,%r78,20; $L292: .loc 1 455 7 ld.u16 %r117,[%r78]; st.u16 [%r77],%r117; add.u64 %r78,%r78,2; add.u64 %r77,%r77,2; .loc 1 454 1 setp.ne.u64 %r118,%r78,%r96; @ %r118 bra $L292; bra $L287; $L295: .loc 1 501 3 and.b16 %r119,%r237,32767; setp.eq.u16 %r121,%r119,32767; @ %r121 bra $L293; ld.u16 %r236,[%r105+18]; bra $L294; $L361: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r105; call (%value_in),eisinf$part$1,(%out_arg1); ld.param.u32 %r123,[%value_in]; } .loc 1 1633 3 setp.eq.u32 %r124,%r123,0; @ %r124 bra $L295; $L324: .loc 1 1633 20 cvta.const.u64 %r126,ezero; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r106; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r126; call (%value_in),ecmp,(%out_arg1,%out_arg2); ld.param.u32 %r127,[%value_in]; } .loc 1 1633 16 setp.ne.u32 %r128,%r127,0; @ ! %r128 bra $L300; ld.u16 %r237,[%r106+18]; bra $L295; $L300: mov.u64 %r97,%r107; add.u64 %r99,%r107,16; .loc 1 3750 10 mov.u16 %r139,0; bra $L296; $L294: .loc 1 501 3 and.b16 %r129,%r236,32767; setp.eq.u16 %r131,%r129,32767; @ %r131 bra $L297; bra $L298; $L293: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r106; call (%value_in),eisinf$part$1,(%out_arg1); ld.param.u32 %r133,[%value_in]; } .loc 1 1634 2 setp.eq.u32 %r134,%r133,0; @ %r134 bra $L299; .loc 1 1634 20 cvta.const.u64 %r136,ezero; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r105; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r136; call (%value_in),ecmp,(%out_arg1,%out_arg2); ld.param.u32 %r137,[%value_in]; } .loc 1 1634 16 setp.eq.u32 %r138,%r137,0; @ ! %r138 bra $L357; bra $L300; $L296: .loc 1 3750 10 st.u16 [%r97],%r139; add.u64 %r97,%r97,2; .loc 1 3749 2 setp.ne.u64 %r140,%r97,%r99; @ %r140 bra $L296; .loc 1 3751 9 mov.u16 %r141,-16384; st.u16 [%r107+16],%r141; .loc 1 3757 9 mov.u16 %r142,32767; st.u16 [%r107+18],%r142; .loc 1 1638 2 bra $L287; $L357: .loc 1 501 3 ld.u16 %r144,[%r105+18]; and.b16 %r143,%r144,32767; setp.eq.u16 %r145,%r143,32767; @ %r145 bra $L297; $L304: ld.u16 %r147,[%r106+18]; and.b16 %r146,%r147,32767; setp.eq.u16 %r148,%r146,32767; @ ! %r148 bra $L298; bra $L303; $L297: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r105; call (%value_in),eisinf$part$1,(%out_arg1); ld.param.u32 %r150,[%value_in]; } .loc 1 1643 3 setp.eq.u32 %r151,%r150,0; @ %r151 bra $L304; $L307: .loc 1 1645 6 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r105; call (%value_in),eisneg,(%out_arg1); ld.param.u32 %r153,[%value_in]; } .loc 1 1645 18 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r106; call (%value_in),eisneg,(%out_arg1); ld.param.u32 %r155,[%value_in]; } .loc 1 1645 4 setp.ne.u32 %r156,%r153,%r155; .loc 1 1648 15 selp.u32 %r72,32768,0,%r156; cvt.u16.u32 %r160,%r72; st.u16 [%r107+18],%r160; mov.u64 %r64,%r107; add.u64 %r51,%r107,18; .loc 1 548 7 mov.u16 %r161,0; bra $L308; $L303: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r106; call (%value_in),eisinf$part$1,(%out_arg1); ld.param.u32 %r158,[%value_in]; } .loc 1 1643 15 setp.ne.u32 %r159,%r158,0; @ %r159 bra $L307; bra $L298; $L308: .loc 1 548 7 st.u16 [%r64],%r161; add.u64 %r64,%r64,2; .loc 1 547 1 setp.ne.u64 %r162,%r51,%r64; @ %r162 bra $L308; .loc 1 549 4 ld.u16 %r164,[%r107+18]; or.b16 %r163,%r164,32767; st.u16 [%r107+18],%r163; .loc 1 1650 2 bra $L287; $L298: .loc 1 1653 1 add.u64 %r235,%frame,26; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r105; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r235; call emovi,(%out_arg1,%out_arg2); } .loc 1 1654 1 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r106; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; call emovi,(%out_arg1,%out_arg2); } .loc 1 1655 9 ld.u16 %r28,[%frame+28]; .loc 1 1656 9 ld.u16 %r29,[%frame+2]; .loc 1 1657 3 setp.eq.u32 %r170,%r28,0; @ %r170 bra $L309; .loc 1 1670 1 bra $L358; $L313: add.u64 %r76,%r76,2; .loc 1 1661 5 ld.u16 %r171,[%r76+-2]; setp.eq.u16 %r172,%r171,0; @ %r172 bra $L311; .loc 1 1663 11 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r235; call (%value_in),enormlz,(%out_arg1); ld.param.u32 %r175,[%value_in]; } cvt.s64.s32 %r176,%r175; .loc 1 1663 8 neg.s64 %r38,%r176; ld.u16 %r48,[%frame+2]; .loc 1 1664 4 bra $L312; $L309: add.u64 %r76,%frame,30; add.u64 %r82,%frame,50; $L311: .loc 1 1659 2 setp.ne.u64 %r179,%r76,%r82; @ %r179 bra $L313; mov.u64 %r75,%r107; add.u64 %r79,%r75,20; .loc 1 440 7 mov.u16 %r180,0; $L314: st.u16 [%r75],%r180; add.u64 %r75,%r75,2; .loc 1 439 1 setp.ne.u64 %r181,%r75,%r79; @ %r181 bra $L314; bra $L287; $L358: .loc 1 1655 5 cvt.u16.u32 %r182,%r28; cvt.u64.u16 %r38,%r182; mov.u32 %r48,%r29; $L312: .loc 1 1656 5 cvt.u16.u32 %r183,%r29; cvt.u64.u16 %r39,%r183; .loc 1 1672 3 setp.eq.u32 %r184,%r48,0; @ %r184 bra $L315; .loc 1 1685 1 bra $L316; $L318: add.u64 %r74,%r74,2; .loc 1 1676 5 ld.u16 %r185,[%r74+-2]; setp.eq.u16 %r186,%r185,0; @ %r186 bra $L317; .loc 1 1678 11 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),enormlz,(%out_arg1); ld.param.u32 %r188,[%value_in]; } cvt.s64.s32 %r189,%r188; .loc 1 1678 8 sub.u64 %r39,%r39,%r189; .loc 1 1679 4 bra $L316; $L315: add.u64 %r74,%frame,4; add.u64 %r56,%frame,24; $L317: .loc 1 1674 2 setp.ne.u64 %r190,%r56,%r74; @ %r190 bra $L318; mov.u64 %r40,%r107; add.u64 %r32,%r40,20; .loc 1 440 7 mov.u16 %r191,0; $L319: st.u16 [%r40],%r191; add.u64 %r40,%r40,2; .loc 1 439 1 setp.ne.u64 %r192,%r32,%r40; @ %r192 bra $L319; bra $L287; $L316: .loc 1 1688 5 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r235; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r108; call (%value_in),emulm,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r197,[%value_in]; } .loc 1 1690 10 add.u64 %r204,%r38,%r39; .loc 1 1690 4 add.u64 %r205,%r204,-16382; .loc 1 1691 1 mov.u32 %r202,64; mov.u32 %r200,0; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r197; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r200; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r205; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r202; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r108; call emdnorm,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); } .loc 1 1693 3 ld.u16 %r207,[%frame+26]; ld.u16 %r208,[%frame]; set.u32.ne.u16 %r209,%r207,%r208; neg.s32 %r210,%r209; cvt.u16.u32 %r206,%r210; neg.s16 %r211,%r206; st.u16 [%frame],%r211; .loc 1 1697 1 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r107; call emovo$isra$7,(%out_arg1,%out_arg2); } bra $L287; $L289: .loc 1 521 3 ld.u16 %r237,[%r106+18]; and.b16 %r214,%r237,32767; setp.ne.u16 %r216,%r214,32767; @ %r216 bra $L321; bra $L359; $L288: ld.u16 %r237,[%r106+18]; and.b16 %r217,%r237,32767; setp.ne.u16 %r219,%r217,32767; @ %r219 bra $L298; bra $L360; $L299: .loc 1 501 3 ld.u16 %r221,[%r105+18]; and.b16 %r220,%r221,32767; setp.ne.u16 %r222,%r220,32767; @ %r222 bra $L298; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r105; call (%value_in),eisinf$part$1,(%out_arg1); ld.param.u32 %r224,[%value_in]; } .loc 1 1643 3 setp.ne.u32 %r225,%r224,0; @ ! %r225 bra $L303; bra $L307; $L321: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r105; call (%value_in),eisinf$part$1,(%out_arg1); ld.param.u32 %r227,[%value_in]; } .loc 1 1633 3 setp.ne.u32 %r228,%r227,0; @ %r228 bra $L324; bra $L294; $L360: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r106; call (%value_in),eisnan$part$0,(%out_arg1); ld.param.u32 %r230,[%value_in]; } .loc 1 1627 3 setp.ne.u32 %r231,%r230,0; @ %r231 bra $L325; bra $L295; $L359: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r106; call (%value_in),eisnan$part$0,(%out_arg1); ld.param.u32 %r233,[%value_in]; } setp.ne.u32 %r234,%r233,0; @ ! %r234 bra $L361; bra $L325; $L287: .loc 1 1698 1 st.shared.u64 [%sspslot],%sspprev; 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,64; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r26; .reg .u32 %r27; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u64 %r54; .reg .u64 %r56; .reg .u64 %r60; .reg .u64 %r62; .reg .u64 %r63; .reg .u64 %r64; .reg .u32 %r68; .reg .u64 %r72; .reg .u64 %r74; .reg .u64 %r79; .reg .u64 %r81; .reg .u64 %r82; .reg .u64 %r83; .reg .u64 %r85; .reg .u64 %r86; .reg .u64 %r88; .reg .u64 %r90; .reg .u64 %r91; .reg .u32 %r93; .reg .u64 %r95; .reg .u64 %r99; .reg .u64 %r101; .reg .u64 %r102; .reg .u64 %r103; .reg .u64 %r104; .reg .u16 %r105; .reg .u16 %r106; .reg .pred %r107; .reg .u32 %r109; .reg .pred %r110; .reg .u16 %r111; .reg .pred %r112; .reg .u16 %r113; .reg .u16 %r114; .reg .pred %r115; .reg .u32 %r117; .reg .pred %r118; .reg .u16 %r119; .reg .pred %r120; .reg .u64 %r122; .reg .u32 %r123; .reg .pred %r124; .reg .u16 %r125; .reg .u16 %r126; .reg .u16 %r127; .reg .u16 %r128; .reg .pred %r129; .reg .u32 %r132; .reg .pred %r133; .reg .u32 %r135; .reg .pred %r136; .reg .pred %r138; .reg .u32 %r140; .reg .pred %r141; .reg .u16 %r142; .reg .pred %r143; .reg .u16 %r144; .reg .u16 %r145; .reg .u32 %r147; .reg .u32 %r149; .reg .pred %r150; .reg .u16 %r151; .reg .u16 %r152; .reg .pred %r153; .reg .u16 %r154; .reg .u16 %r155; .reg .u16 %r156; .reg .pred %r157; .reg .pred %r163; .reg .u16 %r164; .reg .pred %r165; .reg .u32 %r167; .reg .u64 %r168; .reg .pred %r169; .reg .u16 %r170; .reg .pred %r171; .reg .u16 %r172; .reg .u16 %r173; .reg .pred %r174; .reg .u16 %r175; .reg .pred %r176; .reg .u32 %r179; .reg .u64 %r180; .reg .pred %r183; .reg .u16 %r184; .reg .u16 %r185; .reg .pred %r186; .reg .u16 %r187; .reg .u16 %r188; .reg .pred %r189; .reg .u16 %r190; .reg .u16 %r191; .reg .u32 %r196; .reg .u32 %r199; .reg .u32 %r201; .reg .u64 %r203; .reg .u64 %r204; .reg .u16 %r205; .reg .u16 %r206; .reg .u16 %r207; .reg .u32 %r208; .reg .u32 %r209; .reg .u16 %r210; .reg .pred %r214; .reg .u32 %r216; .reg .pred %r217; .reg .pred %r219; .reg .u32 %r221; .reg .pred %r222; .reg .u64 %r223; mov.u64 %r101,%ar0; mov.u64 %r102,%ar1; mov.u64 %r103,%ar2; mov.u64 %r104,%ar3; .loc 1 521 3 ld.u16 %r106,[%r101+18]; and.b16 %r105,%r106,32767; setp.ne.u16 %r107,%r105,32767; @ %r107 bra $L363; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r101; call (%value_in),eisnan$part$0,(%out_arg1); ld.param.u32 %r109,[%value_in]; } .loc 1 1518 3 setp.eq.u32 %r110,%r109,0; @ %r110 bra $L363; mov.u64 %r81,%r101; mov.u64 %r85,%r103; add.u64 %r40,%r81,20; $L364: .loc 1 455 7 ld.u16 %r111,[%r81]; st.u16 [%r85],%r111; add.u64 %r81,%r81,2; add.u64 %r85,%r85,2; .loc 1 454 1 setp.ne.u64 %r112,%r40,%r81; @ %r112 bra $L364; bra $L362; $L363: .loc 1 521 3 ld.u16 %r114,[%r102+18]; and.b16 %r113,%r114,32767; setp.ne.u16 %r115,%r113,32767; @ %r115 bra $L366; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r102; call (%value_in),eisnan$part$0,(%out_arg1); ld.param.u32 %r117,[%value_in]; } .loc 1 1523 3 setp.eq.u32 %r118,%r117,0; @ %r118 bra $L366; mov.u64 %r82,%r102; mov.u64 %r83,%r103; add.u64 %r86,%r82,20; $L367: .loc 1 455 7 ld.u16 %r119,[%r82]; st.u16 [%r83],%r119; add.u64 %r82,%r82,2; add.u64 %r83,%r83,2; .loc 1 454 1 setp.ne.u64 %r120,%r86,%r82; @ %r120 bra $L367; bra $L362; $L366: .loc 1 1529 7 cvta.const.u64 %r122,ezero; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r101; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r122; call (%value_in),ecmp,(%out_arg1,%out_arg2); ld.param.u32 %r123,[%value_in]; } .loc 1 1529 3 setp.eq.u32 %r124,%r123,0; @ %r124 bra $L368; $L371: ld.u16 %r126,[%r102+18]; and.b16 %r125,%r126,32767; .loc 1 501 3 ld.u16 %r128,[%r101+18]; and.b16 %r127,%r128,32767; setp.eq.u16 %r129,%r127,32767; @ %r129 bra $L369; bra $L413; $L368: .loc 1 1529 31 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r102; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r122; call (%value_in),ecmp,(%out_arg1,%out_arg2); ld.param.u32 %r132,[%value_in]; } .loc 1 1529 27 setp.ne.u32 %r133,%r132,0; @ %r133 bra $L371; $L375: mov.u64 %r88,%r103; add.u64 %r60,%r103,16; .loc 1 3750 10 mov.u16 %r142,0; bra $L372; $L369: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r101; call (%value_in),eisinf$part$1,(%out_arg1); ld.param.u32 %r135,[%value_in]; } .loc 1 1530 2 setp.eq.u32 %r136,%r135,0; @ %r136 bra $L373; .loc 1 501 3 setp.ne.u16 %r138,%r125,32767; @ %r138 bra $L374; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r102; call (%value_in),eisinf$part$1,(%out_arg1); ld.param.u32 %r140,[%value_in]; } .loc 1 1530 17 setp.ne.u32 %r141,%r140,0; @ ! %r141 bra $L374; bra $L375; $L372: .loc 1 3750 10 st.u16 [%r88],%r142; add.u64 %r88,%r88,2; .loc 1 3749 2 setp.ne.u64 %r143,%r60,%r88; @ %r143 bra $L372; .loc 1 3751 9 mov.u16 %r144,-16384; st.u16 [%r103+16],%r144; .loc 1 3757 9 mov.u16 %r145,32767; st.u16 [%r103+18],%r145; .loc 1 1534 2 bra $L362; $L394: .loc 1 1541 6 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r101; call (%value_in),eisneg,(%out_arg1); ld.param.u32 %r147,[%value_in]; } .loc 1 1541 18 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r102; call (%value_in),eisneg,(%out_arg1); ld.param.u32 %r149,[%value_in]; } .loc 1 1541 4 setp.ne.u32 %r150,%r147,%r149; .loc 1 1544 15 selp.u32 %r93,32768,0,%r150; cvt.u16.u32 %r151,%r93; st.u16 [%r103+18],%r151; mov.u64 %r64,%r103; add.u64 %r91,%r103,18; .loc 1 548 7 mov.u16 %r152,0; $L378: st.u16 [%r64],%r152; add.u64 %r64,%r64,2; .loc 1 547 1 setp.ne.u64 %r153,%r64,%r91; @ %r153 bra $L378; .loc 1 549 4 ld.u16 %r155,[%r103+18]; or.b16 %r154,%r155,32767; st.u16 [%r103+18],%r154; .loc 1 1546 2 bra $L362; $L374: mov.u64 %r62,%r103; add.u64 %r56,%r62,20; .loc 1 440 7 mov.u16 %r156,0; $L379: st.u16 [%r62],%r156; add.u64 %r62,%r62,2; .loc 1 439 1 setp.ne.u64 %r157,%r56,%r62; @ %r157 bra $L379; bra $L362; $L393: .loc 1 1554 1 add.u64 %r223,%frame,26; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r101; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r223; call emovi,(%out_arg1,%out_arg2); } .loc 1 1555 1 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r102; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; call emovi,(%out_arg1,%out_arg2); } .loc 1 1556 9 ld.u16 %r26,[%frame+28]; .loc 1 1557 9 ld.u16 %r27,[%frame+2]; .loc 1 1558 3 setp.eq.u32 %r163,%r27,0; @ %r163 bra $L380; .loc 1 1571 1 bra $L414; $L384: add.u64 %r63,%r63,2; .loc 1 1562 5 ld.u16 %r164,[%r63+-2]; setp.eq.u16 %r165,%r164,0; @ %r165 bra $L382; .loc 1 1564 11 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),enormlz,(%out_arg1); ld.param.u32 %r167,[%value_in]; } cvt.s64.s32 %r168,%r167; .loc 1 1564 8 neg.s64 %r39,%r168; ld.u16 %r68,[%frame+28]; .loc 1 1565 4 bra $L383; $L380: add.u64 %r63,%frame,4; add.u64 %r79,%frame,24; $L382: .loc 1 1560 2 setp.ne.u64 %r169,%r63,%r79; @ %r169 bra $L384; mov.u64 %r74,%r103; add.u64 %r72,%r74,20; .loc 1 440 7 mov.u16 %r170,0; $L385: st.u16 [%r74],%r170; add.u64 %r74,%r74,2; .loc 1 439 1 setp.ne.u64 %r171,%r72,%r74; @ %r171 bra $L385; bra $L362; $L414: .loc 1 1557 5 cvt.u16.u32 %r172,%r27; cvt.u64.u16 %r39,%r172; mov.u32 %r68,%r26; $L383: .loc 1 1556 5 cvt.u16.u32 %r173,%r26; cvt.u64.u16 %r38,%r173; .loc 1 1573 3 setp.eq.u32 %r174,%r68,0; @ %r174 bra $L386; .loc 1 1591 1 bra $L387; $L389: add.u64 %r95,%r95,2; .loc 1 1577 5 ld.u16 %r175,[%r95+-2]; setp.eq.u16 %r176,%r175,0; @ %r176 bra $L388; .loc 1 1579 11 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r223; call (%value_in),enormlz,(%out_arg1); ld.param.u32 %r179,[%value_in]; } cvt.s64.s32 %r180,%r179; .loc 1 1579 8 sub.u64 %r38,%r38,%r180; .loc 1 1580 4 bra $L387; $L386: add.u64 %r95,%frame,30; add.u64 %r90,%frame,50; $L388: .loc 1 1575 2 setp.ne.u64 %r183,%r90,%r95; @ %r183 bra $L389; .loc 1 1583 4 ld.u16 %r184,[%frame+26]; ld.u16 %r185,[%frame]; setp.eq.u16 %r186,%r184,%r185; .loc 1 1586 15 selp.u32 %r68,%r68,32768,%r186; cvt.u16.u32 %r187,%r68; st.u16 [%r103+18],%r187; mov.u64 %r54,%r103; add.u64 %r99,%r103,18; .loc 1 548 7 mov.u16 %r188,0; $L391: st.u16 [%r54],%r188; add.u64 %r54,%r54,2; .loc 1 547 1 setp.ne.u64 %r189,%r54,%r99; @ %r189 bra $L391; .loc 1 549 4 ld.u16 %r191,[%r103+18]; or.b16 %r190,%r191,32767; st.u16 [%r103+18],%r190; .loc 1 1589 2 bra $L362; $L387: .loc 1 1593 5 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r223; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r104; call (%value_in),edivm,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r196,[%value_in]; } .loc 1 1595 10 sub.u64 %r203,%r39,%r38; .loc 1 1595 4 add.u64 %r204,%r203,16383; .loc 1 1596 1 mov.u32 %r201,64; mov.u32 %r199,0; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r196; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r199; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r204; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r201; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r104; call emdnorm,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); } .loc 1 1598 3 ld.u16 %r206,[%frame+26]; ld.u16 %r207,[%frame]; set.u32.ne.u16 %r208,%r206,%r207; neg.s32 %r209,%r208; cvt.u16.u32 %r205,%r209; neg.s16 %r210,%r205; st.u16 [%frame],%r210; .loc 1 1602 1 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r103; call emovo$isra$7,(%out_arg1,%out_arg2); } bra $L362; $L413: .loc 1 501 3 setp.ne.u16 %r214,%r125,32767; @ %r214 bra $L393; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r102; call (%value_in),eisinf$part$1,(%out_arg1); ld.param.u32 %r216,[%value_in]; } .loc 1 1539 3 setp.ne.u32 %r217,%r216,0; @ ! %r217 bra $L393; bra $L394; $L373: .loc 1 501 3 setp.ne.u16 %r219,%r125,32767; @ %r219 bra $L393; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r102; call (%value_in),eisinf$part$1,(%out_arg1); ld.param.u32 %r221,[%value_in]; } .loc 1 1539 3 setp.ne.u32 %r222,%r221,0; @ ! %r222 bra $L393; bra $L394; $L362: .loc 1 1603 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 .u32 %r24; .reg .u32 %r25; .reg .u64 %r27; .reg .u32 %r29; .reg .u32 %r31; .reg .u32 %r32; .reg .u64 %r37; .reg .u32 %r38; .reg .u32 %r41; .reg .u64 %r43; .reg .u32 %r44; .reg .u64 %r50; .reg .u32 %r52; .reg .u32 %r53; .reg .u64 %r54; .reg .u32 %r55; .reg .u64 %r58; .reg .u32 %r62; .reg .u64 %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .u32 %r68; .reg .u64 %r70; .reg .u32 %r72; .reg .u64 %r76; .reg .u64 %r78; .reg .u32 %r80; .reg .u64 %r82; .reg .u64 %r83; .reg .u32 %r86; .reg .u64 %r90; .reg .u64 %r92; .reg .u32 %r98; .reg .u64 %r106; .reg .u64 %r107; .reg .u64 %r109; .reg .u64 %r110; .reg .u32 %r112; .reg .u64 %r129; .reg .u64 %r132; .reg .u64 %r133; .reg .u64 %r134; .reg .u64 %r143; .reg .u64 %r148; .reg .u64 %r150; .reg .u32 %r152; .reg .u64 %r155; .reg .u64 %r158; .reg .u32 %r159; .reg .u32 %r165; .reg .u64 %r166; .reg .u64 %r168; .reg .u32 %r171; .reg .u32 %r176; .reg .u64 %r177; .reg .u32 %r180; .reg .u32 %r185; .reg .u64 %r186; .reg .u64 %r187; .reg .u64 %r193; .reg .u64 %r195; .reg .u64 %r198; .reg .u64 %r199; .reg .u64 %r201; .reg .u64 %r203; .reg .u64 %r204; .reg .u64 %r205; .reg .u64 %r209; .reg .u32 %r211; .reg .u32 %r217; .reg .u64 %r218; .reg .u64 %r219; .reg .u32 %r221; .reg .u32 %r223; .reg .u64 %r225; .reg .u32 %r229; .reg .u64 %r230; .reg .u32 %r232; .reg .u32 %r238; .reg .u64 %r239; .reg .u32 %r245; .reg .u64 %r247; .reg .u64 %r250; .reg .u64 %r251; .reg .u64 %r252; .reg .u32 %r253; .reg .u64 %r257; .reg .u32 %r261; .reg .u32 %r269; .reg .u32 %r273; .reg .u32 %r274; .reg .u32 %r276; .reg .u64 %r278; .reg .u32 %r281; .reg .u32 %r284; .reg .u64 %r292; .reg .u64 %r294; .reg .u64 %r300; .reg .u64 %r308; .reg .u64 %r310; .reg .u64 %r311; .reg .u64 %r313; .reg .u32 %r319; .reg .u32 %r326; .reg .u32 %r331; .reg .u64 %r332; .reg .u64 %r346; .reg .u64 %r349; .reg .u64 %r350; .reg .u64 %r356; .reg .u64 %r359; .reg .u64 %r360; .reg .u32 %r361; .reg .u64 %r362; .reg .u64 %r363; .reg .u32 %r365; .reg .u32 %r366; .reg .u64 %r369; .reg .u64 %r370; .reg .u64 %r372; .reg .u32 %r373; .reg .u64 %r376; .reg .u32 %r377; .reg .u64 %r378; .reg .u64 %r381; .reg .u64 %r383; .reg .u64 %r386; .reg .u64 %r387; .reg .u64 %r391; .reg .u64 %r392; .reg .u64 %r393; .reg .u64 %r396; .reg .u64 %r397; .reg .u64 %r398; .reg .u64 %r401; .reg .u64 %r405; .reg .u64 %r406; .reg .u64 %r407; .reg .u64 %r410; .reg .u64 %r411; .reg .u64 %r413; .reg .u64 %r415; .reg .u64 %r419; .reg .u64 %r420; .reg .u64 %r421; .reg .u64 %r423; .reg .u32 %r425; .reg .u64 %r428; .reg .u64 %r431; .reg .u32 %r434; .reg .u64 %r436; .reg .u64 %r437; .reg .u64 %r438; .reg .u64 %r440; .reg .u64 %r441; .reg .u64 %r443; .reg .u32 %r445; .reg .u64 %r446; .reg .u64 %r450; .reg .u32 %r454; .reg .u64 %r455; .reg .u32 %r464; .reg .u64 %r467; .reg .u32 %r471; .reg .u32 %r474; .reg .u32 %r477; .reg .u64 %r478; .reg .u32 %r479; .reg .u64 %r483; .reg .u32 %r486; .reg .u32 %r488; .reg .u64 %r494; .reg .f64 %r495; .reg .u32 %r496; .reg .u32 %r497; .reg .u64 %r498; .reg .u64 %r499; .reg .u64 %r500; .reg .u32 %r525; .reg .u32 %r526; .reg .pred %r527; .reg .u32 %r528; .reg .u32 %r529; .reg .u64 %r532; .reg .u64 %r536; .reg .u32 %r539; .reg .u32 %r541; .reg .u32 %r542; .reg .pred %r543; .reg .pred %r544; .reg .u16 %r545; .reg .u16 %r546; .reg .pred %r547; .reg .u32 %r550; .reg .pred %r551; .reg .u64 %r553; .reg .u32 %r555; .reg .u32 %r557; .reg .u16 %r558; .reg .pred %r559; .reg .u16 %r560; .reg .pred %r561; .reg .u16 %r562; .reg .u16 %r565; .reg .pred %r566; .reg .pred %r567; .reg .u16 %r568; .reg .pred %r569; .reg .pred %r570; .reg .pred %r571; .reg .u64 %r573; .reg .u32 %r575; .reg .u64 %r578; .reg .u32 %r580; .reg .u16 %r582; .reg .pred %r583; .reg .u64 %r585; .reg .u32 %r587; .reg .u32 %r592; .reg .pred %r593; .reg .pred %r594; .reg .u16 %r595; .reg .pred %r596; .reg .u16 %r597; .reg .u16 %r604; .reg .pred %r605; .reg .u16 %r606; .reg .u16 %r607; .reg .u32 %r608; .reg .pred %r609; .reg .u16 %r610; .reg .pred %r611; .reg .u32 %r612; .reg .u16 %r613; .reg .pred %r614; .reg .pred %r615; .reg .pred %r616; .reg .u32 %r617; .reg .u64 %r618; .reg .u16 %r620; .reg .pred %r621; .reg .u64 %r623; .reg .u64 %r624; .reg .u32 %r625; .reg .u32 %r627; .reg .u64 %r629; .reg .u64 %r630; .reg .u64 %r631; .reg .u64 %r632; .reg .u16 %r633; .reg .u16 %r634; .reg .u16 %r635; .reg .u16 %r636; .reg .pred %r637; .reg .u16 %r638; .reg .u16 %r639; .reg .pred %r640; .reg .u16 %r641; .reg .u16 %r642; .reg .pred %r643; .reg .u32 %r646; .reg .pred %r647; .reg .u32 %r650; .reg .pred %r651; .reg .u16 %r659; .reg .u16 %r660; .reg .pred %r662; .reg .u16 %r663; .reg .pred %r664; .reg .u16 %r665; .reg .u16 %r666; .reg .pred %r667; .reg .u16 %r668; .reg .u16 %r669; .reg .pred %r670; .reg .u16 %r671; .reg .pred %r672; .reg .pred %r673; .reg .u32 %r675; .reg .u32 %r677; .reg .u16 %r680; .reg .u16 %r681; .reg .pred %r682; .reg .pred %r685; .reg .pred %r686; .reg .u16 %r687; .reg .u16 %r688; .reg .pred %r689; .reg .u16 %r690; .reg .pred %r691; .reg .pred %r692; .reg .u16 %r693; .reg .pred %r694; .reg .u16 %r695; .reg .pred %r696; .reg .u16 %r697; .reg .u16 %r698; .reg .u16 %r699; .reg .u16 %r700; .reg .u16 %r701; .reg .u16 %r702; .reg .pred %r703; .reg .u16 %r705; .reg .u16 %r707; .reg .u16 %r708; .reg .pred %r711; .reg .pred %r713; .reg .pred %r714; .reg .u16 %r715; .reg .pred %r716; .reg .u16 %r717; .reg .u16 %r718; .reg .pred %r719; .reg .u16 %r720; .reg .u16 %r721; .reg .pred %r722; .reg .u16 %r723; .reg .u16 %r724; .reg .u16 %r725; .reg .pred %r726; .reg .u64 %r727; .reg .u64 %r728; .reg .u64 %r729; .reg .u64 %r730; .reg .u64 %r731; .reg .u32 %r733; .reg .pred %r736; .reg .u64 %r737; .reg .u64 %r738; .reg .u64 %r739; .reg .u64 %r740; .reg .u64 %r741; .reg .u32 %r743; .reg .pred %r746; .reg .u32 %r751; .reg .pred %r758; .reg .u16 %r759; .reg .u16 %r760; .reg .pred %r761; .reg .pred %r762; .reg .u16 %r763; .reg .pred %r764; .reg .u32 %r765; .reg .u16 %r766; .reg .pred %r768; .reg .u16 %r769; .reg .u16 %r770; .reg .u16 %r771; .reg .u16 %r772; .reg .u16 %r773; .reg .pred %r774; .reg .u16 %r775; .reg .pred %r776; .reg .u32 %r780; .reg .pred %r781; .reg .u32 %r794; .reg .u16 %r795; .reg .pred %r797; .reg .u32 %r802; .reg .pred %r803; .reg .u16 %r804; .reg .pred %r805; .reg .u16 %r806; .reg .pred %r807; .reg .u16 %r815; .reg .pred %r816; .reg .u16 %r821; .reg .u16 %r822; .reg .pred %r823; .reg .u16 %r824; .reg .pred %r825; .reg .u16 %r826; .reg .u64 %r831; .reg .u64 %r832; .reg .u64 %r833; .reg .u64 %r834; .reg .u64 %r835; .reg .u32 %r837; .reg .pred %r840; .reg .u16 %r843; .reg .pred %r844; .reg .u16 %r845; .reg .pred %r846; .reg .u16 %r851; .reg .pred %r852; .reg .pred %r854; .reg .u16 %r855; .reg .pred %r856; .reg .u16 %r857; .reg .pred %r858; .reg .u16 %r863; .reg .pred %r864; .reg .u16 %r865; .reg .pred %r866; .reg .u32 %r870; .reg .pred %r871; .reg .u32 %r885; .reg .u32 %r886; .reg .pred %r888; .reg .u32 %r894; .reg .pred %r895; .reg .u16 %r906; .reg .pred %r907; .reg .u16 %r908; .reg .u16 %r913; .reg .pred %r914; .reg .u16 %r915; .reg .pred %r921; .reg .u16 %r922; .reg .pred %r923; .reg .u16 %r924; .reg .u16 %r925; .reg .u16 %r926; .reg .u16 %r927; .reg .u16 %r928; .reg .u16 %r929; .reg .pred %r930; .reg .u16 %r932; .reg .u16 %r934; .reg .u16 %r935; .reg .pred %r938; .reg .u16 %r939; .reg .pred %r940; .reg .u16 %r941; .reg .u16 %r942; .reg .pred %r943; .reg .u16 %r944; .reg .u16 %r945; .reg .u16 %r946; .reg .u16 %r947; .reg .u16 %r948; .reg .u16 %r949; .reg .pred %r950; .reg .u16 %r952; .reg .u16 %r954; .reg .u16 %r955; .reg .pred %r958; .reg .u16 %r959; .reg .pred %r960; .reg .u16 %r961; .reg .u16 %r962; .reg .u16 %r963; .reg .u16 %r964; .reg .u16 %r965; .reg .u16 %r966; .reg .pred %r967; .reg .u16 %r969; .reg .u16 %r971; .reg .u16 %r972; .reg .pred %r975; .reg .u64 %r976; .reg .u64 %r977; .reg .u64 %r978; .reg .u64 %r979; .reg .u64 %r980; .reg .u32 %r982; .reg .pred %r985; .reg .pred %r991; .reg .u32 %r995; .reg .pred %r996; .reg .pred %r997; .reg .u32 %r998; .reg .pred %r999; .reg .pred %r1000; .reg .pred %r1001; .reg .u32 %r1002; .reg .u32 %r1003; .reg .pred %r1004; .reg .u32 %r1005; .reg .u32 %r1006; .reg .pred %r1007; .reg .u32 %r1008; .reg .pred %r1009; .reg .u16 %r1011; .reg .u16 %r1012; .reg .u32 %r1013; .reg .u32 %r1014; .reg .u16 %r1016; .reg .u16 %r1017; .reg .u32 %r1018; .reg .u32 %r1019; .reg .pred %r1020; .reg .u16 %r1021; .reg .pred %r1022; .reg .u16 %r1023; .reg .u16 %r1024; .reg .u16 %r1025; .reg .u16 %r1026; .reg .u16 %r1027; .reg .u16 %r1028; .reg .pred %r1029; .reg .u16 %r1031; .reg .u16 %r1033; .reg .u16 %r1034; .reg .pred %r1037; .reg .u16 %r1038; .reg .pred %r1039; .reg .u16 %r1040; .reg .u16 %r1041; .reg .pred %r1042; .reg .u16 %r1043; .reg .u16 %r1044; .reg .u16 %r1045; .reg .u16 %r1046; .reg .u16 %r1047; .reg .u16 %r1048; .reg .pred %r1049; .reg .u16 %r1051; .reg .u16 %r1053; .reg .u16 %r1054; .reg .pred %r1057; .reg .u16 %r1058; .reg .pred %r1059; .reg .u16 %r1060; .reg .u16 %r1061; .reg .u16 %r1062; .reg .u16 %r1063; .reg .u16 %r1064; .reg .u16 %r1065; .reg .pred %r1066; .reg .u16 %r1068; .reg .u16 %r1070; .reg .u16 %r1071; .reg .pred %r1074; .reg .u64 %r1075; .reg .u64 %r1076; .reg .u64 %r1077; .reg .u64 %r1078; .reg .u64 %r1079; .reg .u32 %r1081; .reg .pred %r1084; .reg .u64 %r1090; .reg .u16 %r1092; .reg .u16 %r1093; .reg .u32 %r1094; .reg .u32 %r1095; .reg .pred %r1096; .reg .u64 %r1097; .reg .u16 %r1098; .reg .pred %r1099; .reg .pred %r1100; .reg .u64 %r1106; .reg .u32 %r1108; .reg .pred %r1109; .reg .pred %r1110; .reg .u64 %r1111; .reg .u16 %r1112; .reg .u32 %r1113; .reg .u64 %r1116; .reg .u16 %r1118; .reg .u16 %r1119; .reg .u32 %r1120; .reg .u16 %r1121; .reg .u32 %r1122; .reg .pred %r1123; .reg .u16 %r1125; .reg .u16 %r1126; .reg .u32 %r1127; .reg .pred %r1128; .reg .u16 %r1129; .reg .pred %r1130; .reg .pred %r1131; .reg .u32 %r1132; .reg .pred %r1133; .reg .u32 %r1134; .reg .pred %r1135; .reg .u32 %r1136; .reg .u16 %r1138; .reg .u16 %r1139; .reg .u32 %r1140; .reg .u16 %r1141; .reg .pred %r1142; .reg .u64 %r1144; .reg .u32 %r1145; .reg .u16 %r1147; .reg .u16 %r1148; .reg .pred %r1149; .reg .u32 %r1152; .reg .pred %r1153; .reg .u32 %r1156; .reg .pred %r1157; .reg .u32 %r1158; .reg .u32 %r1159; .reg .pred %r1160; .reg .u16 %r1161; .reg .pred %r1162; .reg .u16 %r1163; .reg .pred %r1164; .reg .pred %r1165; .reg .u32 %r1166; .reg .pred %r1167; .reg .u16 %r1169; .reg .u32 %r1170; .reg .u32 %r1171; .reg .u32 %r1172; .reg .u32 %r1175; .reg .u32 %r1176; .reg .u16 %r1177; .reg .u16 %r1178; .reg .u16 %r1179; .reg .u32 %r1180; .reg .u16 %r1181; .reg .pred %r1182; .reg .pred %r1184; .reg .u32 %r1185; .reg .u16 %r1187; .reg .u32 %r1188; .reg .u32 %r1189; .reg .u32 %r1192; .reg .u32 %r1193; .reg .u16 %r1194; .reg .u16 %r1195; .reg .u16 %r1196; .reg .u32 %r1197; .reg .u16 %r1198; .reg .pred %r1199; .reg .u16 %r1201; .reg .u32 %r1202; .reg .u32 %r1203; .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 .u32 %r1214; .reg .pred %r1215; .reg .pred %r1216; .reg .u16 %r1217; .reg .pred %r1218; .reg .u32 %r1219; .reg .u16 %r1220; .reg .u32 %r1221; .reg .pred %r1222; .reg .u64 %r1224; .reg .pred %r1225; .reg .u64 %r1227; .reg .pred %r1228; .reg .pred %r1229; .reg .u32 %r1230; .reg .pred %r1231; .reg .u32 %r1232; .reg .u32 %r1233; .reg .u32 %r1234; .reg .pred %r1235; .reg .u64 %r1237; .reg .u64 %r1238; .reg .pred %r1239; .reg .u64 %r1242; .reg .u64 %r1246; .reg .pred %r1247; .reg .u64 %r1249; .reg .u64 %r1250; .reg .u32 %r1252; .reg .u16 %r1253; .reg .pred %r1254; .reg .u16 %r1255; .reg .pred %r1256; .reg .u16 %r1257; .reg .u32 %r1259; .reg .u64 %r1261; .reg .pred %r1262; .reg .u64 %r1263; .reg .u64 %r1264; .reg .u64 %r1265; .reg .u64 %r1266; .reg .u64 %r1267; .reg .u64 %r1268; .reg .u64 %r1269; .reg .u64 %r1275; .reg .u64 %r1277; .reg .u64 %r1278; .reg .u64 %r1279; .reg .u64 %r1280; .reg .u64 %r1281; .reg .u16 %r1282; .reg .u64 %r1283; .reg .u64 %r1284; .reg .u64 %r1285; .reg .u64 %r1286; .reg .u64 %r1287; .reg .u64 %r1288; .reg .u64 %r1289; .reg .u64 %r1290; .reg .u64 %r1291; .reg .u32 %r1308; .reg .u64 %r1309; .reg .u64 %r1310; .reg .u64 %r1311; .reg .u64 %r1312; .reg .u64 %r1313; .reg .u64 %r1314; .reg .u64 %r1315; .reg .u64 %r1316; .reg .u64 %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 .u16 %r1336; mov.u64 %r494,%ar0; mov.f64 %r495,%ar1; mov.u32 %r496,%ar2; mov.u32 %r497,%ar3; mov.u64 %r498,%ar4; mov.u64 %r499,%ar5; mov.u64 %r500,%ar6; .loc 1 2721 6 st.f64 [%frame+344],%r495; .loc 1 2724 11 mov.u32 %r525,-1; st.u32 [%frame],%r525; .loc 1 2725 12 mov.u32 %r526,144; st.u32 [%frame+4],%r526; .loc 1 2730 5 ld.u64 %r22,[%r494+96]; .loc 1 2730 4 setp.eq.u64 %r527,%r22,0; @ %r527 bra $L416; .loc 1 2732 33 ld.u32 %r24,[%r494+104]; .loc 1 2732 31 st.u32 [%r22+8],%r24; .loc 1 2733 40 mov.u32 %r529,1; shl.b32 %r528,%r529,%r24; .loc 1 2733 36 st.u32 [%r22+12],%r528; .loc 1 2734 5 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r494; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r22; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 2735 27 mov.u64 %r532,0; st.u64 [%r494+96],%r532; $L416: .loc 1 2741 1 add.u64 %r1286,%frame,294; add.u64 %r536,%frame,344; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r536; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1286; call e53toe$isra$9,(%out_arg1,%out_arg2); } .loc 1 2748 5 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1286; call (%value_in),eisneg,(%out_arg1); ld.param.u32 %r539,[%value_in]; } .loc 1 2748 3 set.u32.ne.u32 %r541,%r539,0; neg.s32 %r542,%r541; st.u32 [%r499],%r542; .loc 1 2753 3 setp.eq.u32 %r543,%r496,3; @ %r543 bra $L583; .loc 1 2758 3 setp.eq.u32 %r544,%r496,0; @ %r544 bra $L584; .loc 1 2754 17 add.u32 %r62,%r497,-1; bra $L417; $L583: mov.u32 %r62,%r497; $L417: min.s32 %r52,%r62,42; bra $L418; $L584: .loc 1 2759 17 mov.u32 %r52,20; $L418: .loc 1 2910 8 ld.u32 %r72,[%frame+4]; .loc 1 521 3 ld.u16 %r546,[%frame+312]; and.b16 %r545,%r546,32767; setp.ne.u16 %r547,%r545,32767; @ %r547 bra $L419; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1286; call (%value_in),eisnan$part$0,(%out_arg1); ld.param.u32 %r550,[%value_in]; } .loc 1 2912 3 setp.eq.u32 %r551,%r550,0; @ %r551 bra $L419; .loc 1 2914 2 add.u64 %r1268,%frame,80; cvta.const.u64 %r553,$LC0; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1268; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r553; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),sprintf,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r555,[%value_in]; } .loc 1 2915 8 mov.u32 %r29,9999; bra $L420; $L419: .loc 1 2919 13 mov.u32 %r557,144; st.u32 [%frame+4],%r557; mov.u64 %r437,%r1286; add.u64 %r1283,%frame,268; add.u64 %r431,%frame,314; mov.u64 %r436,%r1283; $L421: .loc 1 455 7 ld.u16 %r558,[%r437]; st.u16 [%r436],%r558; add.u64 %r437,%r437,2; add.u64 %r436,%r436,2; .loc 1 454 1 setp.ne.u64 %r559,%r431,%r437; @ %r559 bra $L421; .loc 1 2921 6 ld.u16 %r80,[%frame+286]; .loc 1 2921 3 cvt.u16.u32 %r560,%r80; setp.ge.s16 %r561,%r560,0; @ %r561 bra $L585; .loc 1 2924 10 and.b16 %r562,%r560,32767; cvt.u32.u16 %r80,%r562; st.u16 [%frame+286],%r562; .loc 1 2923 7 mov.u32 %r86,65535; bra $L422; $L585: .loc 1 2928 7 mov.u32 %r86,0; $L422: add.u64 %r1281,%frame,242; mov.u64 %r106,%r1281; add.u64 %r438,%frame,262; mov.u64 %r440,%r1281; mov.u32 %r454,0; cvta.const.u64 %r1264,eone; mov.u64 %r82,%r1264; $L424: .loc 1 455 11 add.u64 %r82,%r82,2; .loc 1 455 7 cvt.u16.u32 %r565,%r454; st.u16 [%r440],%r565; add.u64 %r440,%r440,2; .loc 1 454 1 setp.eq.u64 %r566,%r438,%r440; @ %r566 bra $L423; ld.u16 %r454,[%r82]; bra $L424; $L423: .loc 1 2934 3 setp.ne.u32 %r567,%r80,0; @ %r567 bra $L425; add.u64 %r441,%r1283,18; mov.u64 %r203,%r1283; $L427: .loc 1 2938 5 ld.u16 %r568,[%r203]; setp.ne.u16 %r569,%r568,0; @ %r569 bra $L426; add.u64 %r203,%r203,2; .loc 1 2936 2 setp.ne.u64 %r570,%r203,%r441; @ %r570 bra $L427; $L430: .loc 1 2930 7 mov.u32 %r29,0; add.u64 %r1268,%frame,80; add.u64 %r1275,%frame,190; add.u64 %r1277,%frame,214; bra $L428; $L579: .loc 1 2949 4 setp.eq.u32 %r571,%r86,0; @ %r571 bra $L429; .loc 1 2950 3 add.u64 %r1268,%frame,80; cvta.const.u64 %r573,$LC1; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1268; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r573; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),sprintf,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r575,[%value_in]; } .loc 1 2953 8 mov.u32 %r29,9999; bra $L420; $L429: .loc 1 2952 3 add.u64 %r1268,%frame,80; cvta.const.u64 %r578,$LC2; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1268; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r578; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),sprintf,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r580,[%value_in]; } .loc 1 2953 8 mov.u32 %r29,9999; bra $L420; $L687: .loc 1 2960 20 ld.u16 %r582,[%frame+284]; setp.lt.s16 %r583,%r582,0; @ %r583 bra $L426; .loc 1 2963 2 add.u64 %r1268,%frame,80; cvta.const.u64 %r585,$LC3; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1268; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r585; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),sprintf,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r587,[%value_in]; } .loc 1 2964 8 mov.u32 %r29,9999; bra $L420; $L426: .loc 1 2969 5 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1264; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1283; call (%value_in),ecmp,(%out_arg1,%out_arg2); ld.param.u32 %r592,[%value_in]; } .loc 1 2970 3 setp.eq.u32 %r593,%r592,0; @ %r593 bra $L430; .loc 1 2973 3 setp.ge.s32 %r594,%r592,0; @ %r594 bra $L431; add.u64 %r1278,%frame,216; mov.u64 %r78,%r1278; add.u64 %r405,%r1283,20; mov.u64 %r410,%r1278; mov.u64 %r411,%r1283; $L432: .loc 1 455 7 ld.u16 %r595,[%r411]; st.u16 [%r410],%r595; add.u64 %r411,%r411,2; add.u64 %r410,%r410,2; .loc 1 454 1 setp.ne.u64 %r596,%r405,%r411; @ %r596 bra $L432; .loc 1 2977 10 mov.u16 %r597,16526; st.u16 [%frame+234],%r597; .loc 1 2980 4 mov.u32 %r98,16; .loc 1 2930 7 mov.u32 %r29,0; .loc 1 2979 4 cvta.const.u64 %r92,etens+160; add.u64 %r1268,%frame,80; add.u64 %r1288,%frame,320; add.u64 %r1275,%frame,190; add.u64 %r1269,%r1281,18; add.u64 %r1289,%r92,100; add.u64 %r1314,%frame,338; .loc 1 1421 1 add.u64 %r1315,%frame,164; .loc 1 1422 1 add.u64 %r1316,%frame,138; add.u64 %r1317,%frame,140; add.u64 %r1318,%frame,166; add.u64 %r1319,%frame,162; add.u64 %r1320,%frame,210; add.u64 %r1321,%frame,188; add.u64 %r1322,%frame,104; add.u64 %r1323,%frame,340; mov.u64 %r1324,%r1320; $L478: .loc 1 2983 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r92; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1278; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1281; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%frame; call ediv,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); } mov.u64 %r292,%r1288; mov.u64 %r413,%r1288; mov.u64 %r415,%r1281; $L433: .loc 1 455 7 ld.u16 %r604,[%r415]; st.u16 [%r413],%r604; add.u64 %r415,%r415,2; add.u64 %r413,%r413,2; .loc 1 454 1 setp.ne.u64 %r605,%r415,%r438; @ %r605 bra $L433; .loc 1 3610 16 ld.u16 %r281,[%frame+338]; .loc 1 3611 12 cvt.u16.u32 %r607,%r281; and.b16 %r606,%r607,32767; cvt.u32.u16 %r608,%r606; .loc 1 3611 3 add.u32 %r284,%r608,-16382; .loc 1 3612 3 setp.gt.s32 %r609,%r284,0; @ %r609 bra $L434; mov.u64 %r294,%r1275; .loc 1 440 7 mov.u16 %r610,0; $L435: st.u16 [%r294],%r610; add.u64 %r294,%r294,2; .loc 1 439 1 setp.ne.u64 %r611,%r294,%r1324; @ %r611 bra $L435; bra $L436; $L434: .loc 1 3618 3 mov.u32 %r612,144; sub.u32 %r445,%r612,%r284; mov.u64 %r428,%r1275; mov.u64 %r419,%r1275; mov.u64 %r420,%r1288; $L437: .loc 1 455 7 ld.u16 %r613,[%r420]; st.u16 [%r419],%r613; add.u64 %r420,%r420,2; add.u64 %r419,%r419,2; .loc 1 454 1 setp.ne.u64 %r614,%r1323,%r420; @ %r614 bra $L437; .loc 1 3620 3 setp.le.s32 %r615,%r445,0; @ %r615 bra $L438; .loc 1 3624 6 setp.gt.s32 %r616,%r445,15; @ %r616 bra $L439; .loc 1 3623 3 mov.u64 %r446,%r1275; bra $L440; $L438: mov.u64 %r450,%r1275; .loc 1 3621 2 mov.u64 %r467,%r1281; bra $L441; $L439: add.u32 %r617,%r445,-16; shr.u32 %r425,%r617,4; cvt.u64.u32 %r423,%r425; add.u64 %r618,%r423,%r423; add.u64 %r1290,%r1275,2; add.u64 %r421,%r618,%r1290; .loc 1 3626 7 mov.u16 %r620,0; $L442: st.u16 [%r428],%r620; mov.u64 %r428,%r1290; .loc 1 3624 6 setp.ne.u64 %r621,%r421,%r1290; @ ! %r621 bra $L682; add.u64 %r1290,%r1290,2; bra $L442; $L682: add.u64 %r623,%r423,1; add.u64 %r624,%r623,%r623; add.u64 %r446,%r1275,%r624; mov.u32 %r625,128; sub.u32 %r464,%r625,%r284; shl.b32 %r627,%r425,4; sub.u32 %r445,%r464,%r627; $L440: .loc 1 3630 12 cvta.const.u64 %r629,bmask; cvt.s64.s32 %r630,%r445; add.u64 %r631,%r630,%r630; add.u64 %r632,%r629,%r631; .loc 1 3630 4 ld.u16 %r634,[%r446]; ld.u16 %r635,[%r632]; and.b16 %r633,%r634,%r635; st.u16 [%r446],%r633; $L436: .loc 1 3634 3 cvt.u16.u32 %r636,%r281; setp.ge.s16 %r637,%r636,0; @ %r637 bra $L438; mov.u64 %r363,%r1275; mov.u64 %r300,%r1275; $L475: .loc 1 3638 5 ld.u16 %r638,[%r292]; ld.u16 %r639,[%r300]; setp.eq.u16 %r640,%r638,%r639; @ %r640 bra $L443; .loc 1 521 3 ld.u16 %r642,[%frame+208]; and.b16 %r641,%r642,32767; setp.ne.u16 %r643,%r641,32767; @ %r643 bra $L444; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1275; call (%value_in),eisnan$part$0,(%out_arg1); ld.param.u32 %r646,[%value_in]; } .loc 1 1381 3 setp.ne.u32 %r647,%r646,0; @ %r647 bra $L438; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1275; call (%value_in),eisinf$part$1,(%out_arg1); ld.param.u32 %r650,[%value_in]; } .loc 1 1415 3 setp.ne.u32 %r651,%r650,0; @ %r651 bra $L438; $L444: .loc 1 1421 1 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1264; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1315; call emovi,(%out_arg1,%out_arg2); } .loc 1 1422 1 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1275; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1316; call emovi,(%out_arg1,%out_arg2); } .loc 1 1424 8 ld.u16 %r660,[%frame+164]; not.b16 %r659,%r660; cvt.u32.u16 %r373,%r659; st.u16 [%frame+164],%r659; .loc 1 1427 5 ld.u16 %r308,[%frame+166]; .loc 1 1428 5 ld.u16 %r310,[%frame+140]; .loc 1 1429 4 sub.u64 %r311,%r308,%r310; .loc 1 1430 3 setp.le.s64 %r662,%r311,0; @ %r662 bra $L446; mov.u64 %r37,%r1316; mov.u64 %r205,%r1268; mov.u64 %r381,%r1268; mov.u64 %r43,%r1316; $L447: .loc 1 696 7 ld.u16 %r663,[%r43]; st.u16 [%r381],%r663; add.u64 %r43,%r43,2; add.u64 %r381,%r381,2; .loc 1 695 1 setp.ne.u64 %r664,%r1319,%r43; @ %r664 bra $L447; .loc 1 698 4 mov.u16 %r665,0; st.u16 [%frame+104],%r665; mov.u64 %r313,%r1315; $L449: .loc 1 696 11 add.u64 %r313,%r313,2; .loc 1 696 7 cvt.u16.u32 %r666,%r373; st.u16 [%r37],%r666; add.u64 %r37,%r37,2; .loc 1 695 1 setp.eq.u64 %r667,%r1319,%r37; @ %r667 bra $L448; ld.u16 %r373,[%r313]; bra $L449; $L448: .loc 1 698 4 mov.u16 %r668,0; st.u16 [%frame+162],%r668; mov.u64 %r209,%r1315; $L450: .loc 1 696 7 ld.u16 %r669,[%r205]; st.u16 [%r209],%r669; add.u64 %r205,%r205,2; add.u64 %r209,%r209,2; .loc 1 695 1 setp.ne.u64 %r670,%r205,%r1322; @ %r670 bra $L450; .loc 1 698 4 mov.u16 %r671,0; st.u16 [%frame+188],%r671; .loc 1 1436 5 sub.u64 %r311,%r310,%r308; .loc 1 1435 6 ld.u16 %r310,[%frame+140]; $L446: .loc 1 1439 3 setp.eq.u64 %r672,%r311,0; @ %r672 bra $L451; .loc 1 1441 4 setp.ge.s64 %r673,%r311,-145; @ ! %r673 bra $L453; cvt.u32.u64 %r675,%r311; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1315; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r675; call (%value_in),eshift$part$4,(%out_arg1,%out_arg2); ld.param.u32 %r677,[%value_in]; } mov.u32 %r319,%r677; bra $L454; $L451: add.u64 %r455,%frame,168; add.u64 %r83,%frame,142; mov.u64 %r383,%r1315; .loc 1 1439 3 mov.u64 %r478,%r83; $L457: .loc 1 756 4 ld.u16 %r680,[%r455]; ld.u16 %r681,[%r478]; setp.eq.u16 %r682,%r680,%r681; @ %r682 bra $L455; .loc 1 762 3 setp.gt.u16 %r685,%r680,%r681; @ %r685 bra $L456; .loc 1 1438 6 mov.u32 %r319,0; bra $L454; $L455: add.u64 %r455,%r455,2; add.u64 %r478,%r478,2; .loc 1 754 1 setp.ne.u64 %r686,%r1275,%r455; @ %r686 bra $L457; .loc 1 1453 5 ld.u16 %r687,[%frame+164]; ld.u16 %r688,[%frame+138]; setp.eq.u16 %r689,%r687,%r688; @ %r689 bra $L458; .loc 1 440 7 mov.u16 %r690,0; $L459: st.u16 [%r363],%r690; add.u64 %r363,%r363,2; .loc 1 439 1 setp.ne.u64 %r691,%r1320,%r363; @ %r691 bra $L459; bra $L438; $L458: .loc 1 1460 10 ld.u16 %r331,[%frame+140]; .loc 1 1460 5 setp.ne.u32 %r692,%r331,0; @ %r692 bra $L468; .loc 1 1460 20 ld.u16 %r693,[%frame+144]; setp.lt.s16 %r694,%r693,0; @ %r694 bra $L468; .loc 1 804 3 add.u64 %r332,%frame,162; $L464: .loc 1 809 6 ld.u16 %r326,[%r332]; .loc 1 809 4 cvt.u16.u32 %r695,%r326; setp.ge.s16 %r696,%r695,0; @ %r696 bra $L461; .loc 1 810 8 cvt.u16.u32 %r698,%r331; or.b16 %r697,%r698,1; cvt.u32.u16 %r331,%r697; $L461: .loc 1 811 5 cvt.u16.u32 %r699,%r326; add.u16 %r700,%r699,%r699; .loc 1 812 4 cvt.u16.u32 %r702,%r331; and.b16 %r701,%r702,2; setp.ne.u16 %r703,%r701,0; @ %r703 bra $L462; .loc 1 811 5 st.u16 [%r332],%r700; bra $L463; $L462: .loc 1 813 6 or.b16 %r705,%r700,1; st.u16 [%r332],%r705; $L463: .loc 1 814 7 cvt.u16.u32 %r707,%r331; add.u16 %r708,%r707,%r707; cvt.u32.u16 %r331,%r708; .loc 1 815 2 add.u64 %r332,%r332,-2; .loc 1 807 1 setp.ne.u64 %r711,%r332,%r1317; @ %r711 bra $L464; bra $L453; $L468: .loc 1 1468 6 setp.eq.u32 %r713,%r331,0; @ %r713 bra $L466; .loc 1 1471 9 add.u64 %r310,%r310,1; bra $L467; $L466: .loc 1 1466 3 setp.eq.u64 %r714,%r1319,%r83; @ %r714 bra $L467; ld.u16 %r331,[%r83]; add.u64 %r83,%r83,2; bra $L468; $L467: .loc 1 1475 11 st.u16 [%frame+140],%r310; bra $L453; $L456: mov.u64 %r376,%r1316; mov.u64 %r443,%r1268; .loc 1 762 3 mov.u64 %r369,%r1268; mov.u64 %r370,%r1316; $L469: .loc 1 696 7 ld.u16 %r715,[%r370]; st.u16 [%r369],%r715; add.u64 %r370,%r370,2; add.u64 %r369,%r369,2; .loc 1 695 1 setp.ne.u64 %r716,%r1319,%r370; @ %r716 bra $L469; .loc 1 698 4 mov.u16 %r717,0; st.u16 [%frame+104],%r717; mov.u64 %r378,%r1315; $L470: .loc 1 696 7 ld.u16 %r718,[%r378]; st.u16 [%r376],%r718; add.u64 %r378,%r378,2; add.u64 %r376,%r376,2; .loc 1 695 1 setp.ne.u64 %r719,%r1321,%r378; @ %r719 bra $L470; .loc 1 698 4 mov.u16 %r720,0; st.u16 [%frame+162],%r720; $L471: .loc 1 696 7 ld.u16 %r721,[%r443]; st.u16 [%r383],%r721; add.u64 %r443,%r443,2; add.u64 %r383,%r383,2; .loc 1 695 1 setp.ne.u64 %r722,%r1322,%r443; @ %r722 bra $L471; .loc 1 698 4 mov.u16 %r723,0; st.u16 [%frame+188],%r723; .loc 1 1438 6 mov.u32 %r319,0; $L454: .loc 1 1485 3 ld.u16 %r724,[%frame+164]; ld.u16 %r725,[%frame+138]; setp.ne.u16 %r726,%r724,%r725; @ %r726 bra $L586; .loc 1 913 7 mov.u32 %r486,0; .loc 1 912 3 mov.u64 %r350,%r1319; .loc 1 911 3 add.u64 %r349,%frame,188; $L473: .loc 1 916 6 ld.u16 %r727,[%r349]; .loc 1 916 29 ld.u16 %r728,[%r350]; .loc 1 916 27 add.u64 %r729,%r727,%r728; .loc 1 916 50 cvt.u64.u32 %r730,%r486; .loc 1 916 4 add.u64 %r346,%r729,%r730; .loc 1 921 7 st.u16 [%r350],%r346; .loc 1 922 2 add.u64 %r349,%r349,-2; .loc 1 923 2 add.u64 %r350,%r350,-2; .loc 1 917 4 shr.u64 %r731,%r346,16; cvt.u32.u64 %r733,%r731; and.b32 %r486,%r733,1; .loc 1 914 1 setp.ne.u64 %r736,%r349,%r1318; @ %r736 bra $L473; .loc 1 1488 9 mov.u32 %r361,0; bra $L474; $L586: .loc 1 940 7 mov.u32 %r474,0; .loc 1 938 3 add.u64 %r359,%frame,188; .loc 1 939 3 mov.u64 %r360,%r1319; $L472: .loc 1 943 6 ld.u16 %r737,[%r360]; .loc 1 943 50 cvt.u64.u32 %r738,%r474; .loc 1 943 4 sub.u64 %r739,%r737,%r738; .loc 1 943 29 ld.u16 %r740,[%r359]; .loc 1 943 4 sub.u64 %r356,%r739,%r740; .loc 1 948 7 st.u16 [%r360],%r356; .loc 1 949 2 add.u64 %r359,%r359,-2; .loc 1 950 2 add.u64 %r360,%r360,-2; .loc 1 944 4 shr.u64 %r741,%r356,16; cvt.u32.u64 %r743,%r741; and.b32 %r474,%r743,1; .loc 1 941 1 setp.ne.u64 %r746,%r360,%r1317; @ %r746 bra $L472; .loc 1 1493 9 mov.u32 %r361,1; $L474: .loc 1 1495 1 mov.u32 %r751,64; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1316; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r319; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r361; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r310; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r751; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%frame; call emdnorm,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); } $L453: .loc 1 1498 1 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1316; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1275; call emovo$isra$7,(%out_arg1,%out_arg2); } bra $L438; $L443: add.u64 %r292,%r292,2; add.u64 %r300,%r300,2; .loc 1 3636 2 setp.ne.u64 %r758,%r292,%r1314; @ %r758 bra $L475; bra $L438; $L441: .loc 1 2987 5 ld.u16 %r759,[%r467]; ld.u16 %r760,[%r450]; setp.ne.u16 %r761,%r759,%r760; @ %r761 bra $L476; add.u64 %r467,%r467,2; add.u64 %r450,%r450,2; .loc 1 2985 2 setp.ne.u64 %r762,%r1269,%r467; @ %r762 bra $L441; mov.u64 %r372,%r1278; mov.u64 %r50,%r1281; $L477: .loc 1 455 7 ld.u16 %r763,[%r50]; st.u16 [%r372],%r763; add.u64 %r50,%r50,2; add.u64 %r372,%r372,2; .loc 1 454 1 setp.ne.u64 %r764,%r50,%r438; @ %r764 bra $L477; .loc 1 2991 8 add.u32 %r29,%r29,%r98; $L476: .loc 1 2993 4 add.u64 %r92,%r92,20; .loc 1 2994 4 shr.u32 %r765,%r98,1; cvt.u16.u32 %r766,%r765; cvt.u32.u16 %r98,%r766; .loc 1 2996 1 setp.ne.u64 %r768,%r92,%r1289; @ %r768 bra $L478; .loc 1 2999 10 ld.u16 %r770,[%frame+234]; ld.u16 %r771,[%frame+286]; add.u16 %r769,%r770,%r771; add.u16 %r772,%r769,-16526; st.u16 [%frame+234],%r772; add.u64 %r54,%r1278,20; mov.u64 %r70,%r1283; $L479: .loc 1 455 7 ld.u16 %r773,[%r78]; st.u16 [%r70],%r773; add.u64 %r78,%r78,2; add.u64 %r70,%r70,2; .loc 1 454 1 setp.ne.u64 %r774,%r54,%r78; @ %r774 bra $L479; mov.u64 %r90,%r1281; mov.u32 %r377,0; cvta.const.u64 %r107,eone; $L481: .loc 1 455 11 add.u64 %r107,%r107,2; .loc 1 455 7 cvt.u16.u32 %r775,%r377; st.u16 [%r90],%r775; add.u64 %r90,%r90,2; .loc 1 454 1 setp.eq.u64 %r776,%r90,%r438; @ %r776 bra $L587; ld.u16 %r377,[%r107]; bra $L481; $L483: .loc 1 3007 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r110; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1278; call (%value_in),ecmp,(%out_arg1,%out_arg2); ld.param.u32 %r780,[%value_in]; } .loc 1 3007 5 setp.gt.s32 %r781,%r780,0; @ %r781 bra $L482; .loc 1 3009 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r110; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1278; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1278; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%frame; call ediv,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); } .loc 1 3010 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r110; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1281; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1281; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%frame; call emul,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); } .loc 1 3011 10 add.u32 %r29,%r29,%r112; $L482: .loc 1 3013 5 shr.u32 %r794,%r112,1; cvt.u16.u32 %r795,%r794; cvt.u32.u16 %r112,%r795; .loc 1 3014 5 setp.eq.u64 %r797,%r110,%r1287; @ ! %r797 bra $L683; add.u64 %r1277,%frame,214; bra $L428; $L683: .loc 1 3016 5 add.u64 %r110,%r110,20; bra $L480; $L587: .loc 1 3003 4 mov.u32 %r112,4096; .loc 1 3004 4 cvta.const.u64 %r110,etens; add.u64 %r1287,%r110,240; $L480: .loc 1 3005 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1287; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1278; call (%value_in),ecmp,(%out_arg1,%out_arg2); ld.param.u32 %r802,[%value_in]; } .loc 1 3005 7 setp.le.s32 %r803,%r802,0; @ %r803 bra $L483; add.u64 %r1277,%frame,214; bra $L428; $L431: .loc 1 3022 4 ld.u16 %r804,[%frame+286]; setp.ne.u16 %r805,%r804,0; @ %r805 bra $L484; .loc 1 3024 8 ld.u16 %r806,[%frame+284]; setp.lt.s16 %r807,%r806,0; @ %r807 bra $L588; .loc 1 2930 7 mov.u32 %r29,0; cvta.const.u64 %r1287,etens+240; $L486: .loc 1 3026 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1287; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1283; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1283; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%frame; call emul,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); } .loc 1 3027 10 add.u32 %r29,%r29,-1; .loc 1 3024 8 ld.u16 %r815,[%frame+284]; setp.ge.s16 %r816,%r815,0; @ %r816 bra $L486; add.u64 %r1275,%frame,190; add.u64 %r1277,%frame,214; bra $L485; $L484: .loc 1 3032 3 add.u64 %r1275,%frame,190; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1283; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1275; call emovi,(%out_arg1,%out_arg2); } .loc 1 2930 7 mov.u32 %r29,0; add.u64 %r1277,%frame,214; add.u64 %r1325,%frame,216; add.u64 %r1326,%frame,192; add.u64 %r1327,%frame,240; $L494: .loc 1 3035 6 ld.u16 %r822,[%frame+214]; and.b16 %r821,%r822,7; setp.ne.u16 %r823,%r821,0; @ %r823 bra $L487; mov.u64 %r391,%r1275; mov.u64 %r392,%r1325; mov.u64 %r27,%r1325; mov.u64 %r387,%r1275; $L488: .loc 1 696 7 ld.u16 %r824,[%r387]; st.u16 [%r27],%r824; add.u64 %r387,%r387,2; add.u64 %r27,%r27,2; .loc 1 695 1 setp.ne.u64 %r825,%r1277,%r387; @ %r825 bra $L488; .loc 1 698 4 mov.u16 %r826,0; st.u16 [%frame+240],%r826; .loc 1 3039 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1325; call eshdn1,(%out_arg1); } .loc 1 3040 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1325; call eshdn1,(%out_arg1); } .loc 1 913 7 mov.u32 %r434,0; .loc 1 912 3 add.u64 %r133,%frame,240; .loc 1 911 3 mov.u64 %r132,%r1277; $L489: .loc 1 916 6 ld.u16 %r831,[%r132]; .loc 1 916 29 ld.u16 %r832,[%r133]; .loc 1 916 27 add.u64 %r833,%r831,%r832; .loc 1 916 50 cvt.u64.u32 %r834,%r434; .loc 1 916 4 add.u64 %r129,%r833,%r834; .loc 1 921 7 st.u16 [%r133],%r129; .loc 1 922 2 add.u64 %r132,%r132,-2; .loc 1 923 2 add.u64 %r133,%r133,-2; .loc 1 917 4 shr.u64 %r835,%r129,16; cvt.u32.u64 %r837,%r835; and.b32 %r434,%r837,1; .loc 1 914 1 setp.ne.u64 %r840,%r132,%r1326; @ %r840 bra $L489; .loc 1 3042 9 ld.u16 %r1282,[%frame+218]; add.u16 %r1282,%r1282,3; st.u16 [%frame+218],%r1282; .loc 1 3043 9 ld.u16 %r843,[%frame+220]; setp.ne.u16 %r844,%r843,0; @ %r844 bra $L490; $L492: .loc 1 3048 6 ld.u16 %r845,[%frame+240]; setp.ne.u16 %r846,%r845,0; @ ! %r846 bra $L684; bra $L487; $L490: .loc 1 3045 5 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1325; call eshdn1,(%out_arg1); } .loc 1 3046 10 ld.u16 %r1282,[%frame+218]; add.u16 %r1282,%r1282,1; st.u16 [%frame+218],%r1282; .loc 1 3043 9 ld.u16 %r851,[%frame+220]; setp.ne.u16 %r852,%r851,0; @ %r852 bra $L490; bra $L492; $L684: .loc 1 3050 6 setp.gt.u16 %r854,%r1282,16382; @ %r854 bra $L487; $L493: .loc 1 696 7 ld.u16 %r855,[%r392]; st.u16 [%r391],%r855; add.u64 %r392,%r392,2; add.u64 %r391,%r391,2; .loc 1 695 1 setp.ne.u64 %r856,%r1327,%r392; @ %r856 bra $L493; .loc 1 698 4 mov.u16 %r857,0; st.u16 [%frame+214],%r857; .loc 1 3053 10 add.u32 %r29,%r29,-1; .loc 1 3033 3 setp.ne.u32 %r858,%r29,-43; @ %r858 bra $L494; $L487: .loc 1 3055 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1275; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1283; call emovo$isra$7,(%out_arg1,%out_arg2); } bra $L485; $L588: .loc 1 2930 7 mov.u32 %r29,0; add.u64 %r1275,%frame,190; add.u64 %r1277,%frame,214; $L485: mov.u64 %r396,%r1275; add.u64 %r393,%r1283,20; mov.u64 %r397,%r1283; $L495: .loc 1 455 7 ld.u16 %r863,[%r397]; st.u16 [%r396],%r863; add.u64 %r397,%r397,2; add.u64 %r396,%r396,2; .loc 1 454 1 setp.ne.u64 %r864,%r393,%r397; @ %r864 bra $L495; mov.u64 %r398,%r1281; mov.u32 %r365,0; cvta.const.u64 %r148,eone; $L497: .loc 1 455 11 add.u64 %r148,%r148,2; .loc 1 455 7 cvt.u16.u32 %r865,%r365; st.u16 [%r398],%r865; add.u64 %r398,%r398,2; .loc 1 454 1 setp.eq.u64 %r866,%r398,%r438; @ %r866 bra $L589; ld.u16 %r365,[%r148]; bra $L497; $L500: .loc 1 3064 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r401; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1275; call (%value_in),ecmp,(%out_arg1,%out_arg2); ld.param.u32 %r870,[%value_in]; } .loc 1 3064 5 setp.lt.s32 %r871,%r870,0; @ %r871 bra $L498; .loc 1 3066 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r407; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1275; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1275; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%frame; call emul,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); } .loc 1 3067 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r407; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1281; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1281; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%frame; call emul,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); } .loc 1 3068 10 add.u32 %r29,%r29,%r152; $L498: .loc 1 3070 5 shr.u32 %r885,%r152,31; add.u32 %r886,%r885,%r152; shr.s32 %r152,%r886,1; add.u64 %r406,%r406,20; .loc 1 3071 5 setp.eq.u64 %r888,%r406,260; @ ! %r888 bra $L496; bra $L499; $L589: .loc 1 454 1 mov.u64 %r406,0; .loc 1 3057 4 mov.u32 %r152,-4096; cvta.const.u64 %r1266,etens; cvta.const.u64 %r1263,emtens; $L496: add.u64 %r401,%r1263,%r406; add.u64 %r407,%r1266,%r406; .loc 1 3062 9 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1264; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1275; call (%value_in),ecmp,(%out_arg1,%out_arg2); ld.param.u32 %r894,[%value_in]; } .loc 1 3062 7 setp.gt.s32 %r895,%r894,0; @ %r895 bra $L500; $L499: .loc 1 3076 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1281; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1264; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1281; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%frame; call ediv,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); } add.u64 %r1268,%frame,80; $L428: .loc 1 3080 1 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1281; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1275; call emovi,(%out_arg1,%out_arg2); } mov.u64 %r143,%r1275; mov.u64 %r109,%r1275; $L501: .loc 1 696 7 ld.u16 %r906,[%r109]; st.u16 [%r106],%r906; add.u64 %r109,%r109,2; add.u64 %r106,%r106,2; .loc 1 695 1 setp.ne.u64 %r907,%r1277,%r109; @ %r907 bra $L501; .loc 1 698 4 mov.u16 %r908,0; st.u16 [%frame+266],%r908; .loc 1 3082 1 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1283; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1275; call emovi,(%out_arg1,%out_arg2); } mov.u64 %r134,%r1283; $L502: .loc 1 696 7 ld.u16 %r913,[%r143]; st.u16 [%r134],%r913; add.u64 %r143,%r143,2; add.u64 %r134,%r134,2; .loc 1 695 1 setp.ne.u64 %r914,%r1277,%r143; @ %r914 bra $L502; .loc 1 698 4 mov.u16 %r915,0; st.u16 [%frame+292],%r915; .loc 1 3084 1 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1281; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1283; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call eiremain,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 3085 7 ld.u16 %r158,[%frame+76]; .loc 1 3086 6 setp.eq.u64 %r921,%r158,0; @ ! %r921 bra $L504; cvta.const.u64 %r1265,ezero; .loc 1 804 3 add.u64 %r1309,%frame,292; add.u64 %r1310,%frame,270; add.u64 %r1311,%r1283,24; add.u64 %r1312,%frame,240; add.u64 %r1313,%frame,218; bra $L503; $L591: .loc 1 805 6 mov.u32 %r165,0; .loc 1 804 3 mov.u64 %r166,%r1309; $L508: .loc 1 809 6 ld.u16 %r159,[%r166]; .loc 1 809 4 cvt.u16.u32 %r922,%r159; setp.ge.s16 %r923,%r922,0; @ %r923 bra $L505; .loc 1 810 8 cvt.u16.u32 %r925,%r165; or.b16 %r924,%r925,1; cvt.u32.u16 %r165,%r924; $L505: .loc 1 811 5 cvt.u16.u32 %r926,%r159; add.u16 %r927,%r926,%r926; .loc 1 812 4 cvt.u16.u32 %r929,%r165; and.b16 %r928,%r929,2; setp.ne.u16 %r930,%r928,0; @ %r930 bra $L506; .loc 1 811 5 st.u16 [%r166],%r927; bra $L507; $L506: .loc 1 813 6 or.b16 %r932,%r927,1; st.u16 [%r166],%r932; $L507: .loc 1 814 7 cvt.u16.u32 %r934,%r165; add.u16 %r935,%r934,%r934; cvt.u32.u16 %r165,%r935; .loc 1 815 2 add.u64 %r166,%r166,-2; .loc 1 807 1 setp.ne.u64 %r938,%r166,%r1310; @ %r938 bra $L508; add.u64 %r150,%frame,216; mov.u64 %r155,%r1283; $L509: .loc 1 696 7 ld.u16 %r939,[%r155]; st.u16 [%r150],%r939; add.u64 %r155,%r155,2; add.u64 %r150,%r150,2; .loc 1 695 1 setp.ne.u64 %r940,%r1311,%r155; @ %r940 bra $L509; .loc 1 698 4 mov.u16 %r941,0; st.u16 [%frame+240],%r941; .loc 1 805 6 mov.u32 %r176,0; .loc 1 804 3 mov.u64 %r177,%r1312; $L513: .loc 1 809 6 ld.u16 %r171,[%r177]; .loc 1 809 4 cvt.u16.u32 %r942,%r171; setp.ge.s16 %r943,%r942,0; @ %r943 bra $L510; .loc 1 810 8 cvt.u16.u32 %r945,%r176; or.b16 %r944,%r945,1; cvt.u32.u16 %r176,%r944; $L510: .loc 1 811 5 cvt.u16.u32 %r946,%r171; add.u16 %r947,%r946,%r946; .loc 1 812 4 cvt.u16.u32 %r949,%r176; and.b16 %r948,%r949,2; setp.ne.u16 %r950,%r948,0; @ %r950 bra $L511; .loc 1 811 5 st.u16 [%r177],%r947; bra $L512; $L511: .loc 1 813 6 or.b16 %r952,%r947,1; st.u16 [%r177],%r952; $L512: .loc 1 814 7 cvt.u16.u32 %r954,%r176; add.u16 %r955,%r954,%r954; cvt.u32.u16 %r176,%r955; .loc 1 815 2 add.u64 %r177,%r177,-2; .loc 1 807 1 setp.ne.u64 %r958,%r177,%r1313; @ %r958 bra $L513; .loc 1 805 6 mov.u32 %r185,0; .loc 1 804 3 mov.u64 %r186,%r1312; $L517: .loc 1 809 6 ld.u16 %r180,[%r186]; .loc 1 809 4 cvt.u16.u32 %r959,%r180; setp.ge.s16 %r960,%r959,0; @ %r960 bra $L514; .loc 1 810 8 cvt.u16.u32 %r962,%r185; or.b16 %r961,%r962,1; cvt.u32.u16 %r185,%r961; $L514: .loc 1 811 5 cvt.u16.u32 %r963,%r180; add.u16 %r964,%r963,%r963; .loc 1 812 4 cvt.u16.u32 %r966,%r185; and.b16 %r965,%r966,2; setp.ne.u16 %r967,%r965,0; @ %r967 bra $L515; .loc 1 811 5 st.u16 [%r186],%r964; bra $L516; $L515: .loc 1 813 6 or.b16 %r969,%r964,1; st.u16 [%r186],%r969; $L516: .loc 1 814 7 cvt.u16.u32 %r971,%r185; add.u16 %r972,%r971,%r971; cvt.u32.u16 %r185,%r972; .loc 1 815 2 add.u64 %r186,%r186,-2; .loc 1 807 1 setp.ne.u64 %r975,%r186,%r1313; @ %r975 bra $L517; .loc 1 913 7 mov.u32 %r221,0; .loc 1 912 3 mov.u64 %r199,%r1309; .loc 1 911 3 mov.u64 %r198,%r1312; $L518: .loc 1 916 6 ld.u16 %r976,[%r198]; .loc 1 916 29 ld.u16 %r977,[%r199]; .loc 1 916 27 add.u64 %r978,%r976,%r977; .loc 1 916 50 cvt.u64.u32 %r979,%r221; .loc 1 916 4 add.u64 %r195,%r978,%r979; .loc 1 921 7 st.u16 [%r199],%r195; .loc 1 922 2 add.u64 %r198,%r198,-2; .loc 1 923 2 add.u64 %r199,%r199,-2; .loc 1 917 4 shr.u64 %r980,%r195,16; cvt.u32.u64 %r982,%r980; and.b32 %r221,%r982,1; .loc 1 914 1 setp.ne.u64 %r985,%r198,%r1313; @ %r985 bra $L518; .loc 1 3093 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1281; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1283; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call eiremain,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 3094 8 ld.u16 %r201,[%frame+76]; .loc 1 3095 8 add.u32 %r29,%r29,-1; .loc 1 3086 6 setp.ne.u64 %r991,%r201,0; @ %r991 bra $L590; $L503: .loc 1 3086 25 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1283; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1265; call (%value_in),ecmp,(%out_arg1,%out_arg2); ld.param.u32 %r995,[%value_in]; } .loc 1 3086 21 setp.ne.u32 %r996,%r995,0; @ %r996 bra $L591; bra $L504; $L590: .loc 1 3086 6 mov.u64 %r158,%r201; $L504: .loc 1 3098 3 setp.ne.u32 %r997,%r86,0; .loc 1 3101 7 selp.u32 %r245,45,32,%r997; cvt.u32.u32 %r998,%r245; st.u8 [%frame+80],%r998; .loc 1 3103 3 setp.ne.u32 %r999,%r496,3; @ %r999 bra $L593; .loc 1 3104 15 add.u32 %r53,%r52,%r29; .loc 1 3109 3 setp.le.s32 %r1000,%r53,42; @ %r1000 bra $L520; .loc 1 3111 3 setp.ne.u64 %r1001,%r158,10; @ %r1001 bra $L521; .loc 1 3113 7 mov.u32 %r1002,49; st.u8 [%frame+81],%r1002; .loc 1 3114 7 mov.u32 %r1003,46; st.u8 [%frame+82],%r1003; add.u32 %r29,%r29,1; mov.u32 %r53,41; bra $L522; $L593: .loc 1 3103 3 mov.u32 %r53,%r52; $L520: .loc 1 3111 3 setp.ne.u64 %r1004,%r158,10; @ %r1004 bra $L523; .loc 1 3113 7 mov.u32 %r1005,49; st.u8 [%frame+81],%r1005; .loc 1 3114 7 mov.u32 %r1006,46; st.u8 [%frame+82],%r1006; add.u32 %r29,%r29,1; .loc 1 3115 4 setp.le.s32 %r1007,%r53,0; @ %r1007 bra $L524; add.u32 %r53,%r53,-1; $L522: .loc 1 3117 8 mov.u32 %r1008,48; st.u8 [%frame+83],%r1008; .loc 1 3117 5 add.u64 %r58,%frame,84; bra $L527; $L524: .loc 1 3121 4 setp.ne.u32 %r1009,%r53,0; @ %r1009 bra $L594; .loc 1 3114 4 add.u64 %r58,%frame,83; bra $L527; $L521: .loc 1 3129 22 cvt.u16.u64 %r1012,%r158; add.u16 %r1011,%r1012,48; .loc 1 3129 7 cvt.u32.u16 %r1013,%r1011; st.u8 [%frame+81],%r1013; .loc 1 3130 7 mov.u32 %r1014,46; st.u8 [%frame+82],%r1014; .loc 1 3110 8 mov.u32 %r53,42; .loc 1 3130 4 add.u64 %r58,%frame,83; bra $L527; $L523: .loc 1 3129 22 cvt.u16.u64 %r1017,%r158; add.u16 %r1016,%r1017,48; .loc 1 3129 7 cvt.u32.u16 %r1018,%r1016; st.u8 [%frame+81],%r1018; .loc 1 3130 7 mov.u32 %r1019,46; st.u8 [%frame+82],%r1019; .loc 1 3133 1 setp.lt.s32 %r1020,%r53,0; @ %r1020 bra $L528; .loc 1 3130 4 add.u64 %r58,%frame,83; $L527: mov.u64 %r168,0; add.u64 %r1278,%frame,216; add.u64 %r1280,%frame,240; add.u64 %r1285,%frame,292; add.u64 %r1284,%frame,270; add.u64 %r1291,%r1283,24; add.u64 %r1279,%frame,218; .loc 1 805 6 cvt.u32.u64 %r1308,%r168; $L543: mov.u32 %r217,%r1308; .loc 1 804 3 mov.u64 %r218,%r1285; $L532: .loc 1 809 6 ld.u16 %r211,[%r218]; .loc 1 809 4 cvt.u16.u32 %r1021,%r211; setp.ge.s16 %r1022,%r1021,0; @ %r1022 bra $L529; .loc 1 810 8 cvt.u16.u32 %r1024,%r217; or.b16 %r1023,%r1024,1; cvt.u32.u16 %r217,%r1023; $L529: .loc 1 811 5 cvt.u16.u32 %r1025,%r211; add.u16 %r1026,%r1025,%r1025; .loc 1 812 4 cvt.u16.u32 %r1028,%r217; and.b16 %r1027,%r1028,2; setp.ne.u16 %r1029,%r1027,0; @ %r1029 bra $L530; .loc 1 811 5 st.u16 [%r218],%r1026; bra $L531; $L530: .loc 1 813 6 or.b16 %r1031,%r1026,1; st.u16 [%r218],%r1031; $L531: .loc 1 814 7 cvt.u16.u32 %r1033,%r217; add.u16 %r1034,%r1033,%r1033; cvt.u32.u16 %r217,%r1034; .loc 1 815 2 add.u64 %r218,%r218,-2; .loc 1 807 1 setp.ne.u64 %r1037,%r218,%r1284; @ %r1037 bra $L532; mov.u64 %r187,%r1278; mov.u64 %r193,%r1283; $L533: .loc 1 696 7 ld.u16 %r1038,[%r193]; st.u16 [%r187],%r1038; add.u64 %r193,%r193,2; add.u64 %r187,%r187,2; .loc 1 695 1 setp.ne.u64 %r1039,%r1291,%r193; @ %r1039 bra $L533; .loc 1 698 4 mov.u16 %r1040,0; st.u16 [%frame+240],%r1040; .loc 1 805 6 mov.u32 %r229,%r1308; .loc 1 804 3 mov.u64 %r230,%r1280; $L537: .loc 1 809 6 ld.u16 %r223,[%r230]; .loc 1 809 4 cvt.u16.u32 %r1041,%r223; setp.ge.s16 %r1042,%r1041,0; @ %r1042 bra $L534; .loc 1 810 8 cvt.u16.u32 %r1044,%r229; or.b16 %r1043,%r1044,1; cvt.u32.u16 %r229,%r1043; $L534: .loc 1 811 5 cvt.u16.u32 %r1045,%r223; add.u16 %r1046,%r1045,%r1045; .loc 1 812 4 cvt.u16.u32 %r1048,%r229; and.b16 %r1047,%r1048,2; setp.ne.u16 %r1049,%r1047,0; @ %r1049 bra $L535; .loc 1 811 5 st.u16 [%r230],%r1046; bra $L536; $L535: .loc 1 813 6 or.b16 %r1051,%r1046,1; st.u16 [%r230],%r1051; $L536: .loc 1 814 7 cvt.u16.u32 %r1053,%r229; add.u16 %r1054,%r1053,%r1053; cvt.u32.u16 %r229,%r1054; .loc 1 815 2 add.u64 %r230,%r230,-2; .loc 1 807 1 setp.ne.u64 %r1057,%r230,%r1279; @ %r1057 bra $L537; .loc 1 805 6 mov.u32 %r238,%r1308; .loc 1 804 3 mov.u64 %r239,%r1280; $L541: .loc 1 809 6 ld.u16 %r232,[%r239]; .loc 1 809 4 cvt.u16.u32 %r1058,%r232; setp.ge.s16 %r1059,%r1058,0; @ %r1059 bra $L538; .loc 1 810 8 cvt.u16.u32 %r1061,%r238; or.b16 %r1060,%r1061,1; cvt.u32.u16 %r238,%r1060; $L538: .loc 1 811 5 cvt.u16.u32 %r1062,%r232; add.u16 %r1063,%r1062,%r1062; .loc 1 812 4 cvt.u16.u32 %r1065,%r238; and.b16 %r1064,%r1065,2; setp.ne.u16 %r1066,%r1064,0; @ %r1066 bra $L539; .loc 1 811 5 st.u16 [%r239],%r1063; bra $L540; $L539: .loc 1 813 6 or.b16 %r1068,%r1063,1; st.u16 [%r239],%r1068; $L540: .loc 1 814 7 cvt.u16.u32 %r1070,%r238; add.u16 %r1071,%r1070,%r1070; cvt.u32.u16 %r238,%r1071; .loc 1 815 2 add.u64 %r239,%r239,-2; .loc 1 807 1 setp.ne.u64 %r1074,%r239,%r1279; @ %r1074 bra $L541; .loc 1 913 7 mov.u32 %r471,%r1308; .loc 1 912 3 mov.u64 %r251,%r1285; .loc 1 911 3 mov.u64 %r250,%r1280; $L542: .loc 1 916 6 ld.u16 %r1075,[%r250]; .loc 1 916 29 ld.u16 %r1076,[%r251]; .loc 1 916 27 add.u64 %r1077,%r1075,%r1076; .loc 1 916 50 cvt.u64.u32 %r1078,%r471; .loc 1 916 4 add.u64 %r247,%r1077,%r1078; .loc 1 921 7 st.u16 [%r251],%r247; .loc 1 922 2 add.u64 %r250,%r250,-2; .loc 1 923 2 add.u64 %r251,%r251,-2; .loc 1 917 4 shr.u64 %r1079,%r247,16; cvt.u32.u64 %r1081,%r1079; and.b32 %r471,%r1081,1; .loc 1 914 1 setp.ne.u64 %r1084,%r250,%r1279; @ %r1084 bra $L542; .loc 1 3141 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1281; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1283; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call eiremain,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 3142 21 ld.u16 %r253,[%frame+76]; .loc 1 3142 7 add.u64 %r1090,%r58,%r168; .loc 1 3142 28 cvt.u16.u32 %r1093,%r253; add.u16 %r1092,%r1093,48; .loc 1 3142 7 cvt.u32.u16 %r1094,%r1092; st.u8 [%r1090],%r1094; add.u64 %r168,%r168,1; .loc 1 3133 1 cvt.u32.u64 %r1095,%r168; setp.ge.s32 %r1096,%r53,%r1095; @ %r1096 bra $L543; cvt.s64.s32 %r483,%r53; add.u64 %r1097,%r483,1; add.u64 %r204,%r58,%r1097; add.u64 %r278,%r58,%r483; bra $L544; $L528: ld.u16 %r253,[%frame+76]; add.u64 %r278,%frame,82; .loc 1 3130 4 add.u64 %r204,%frame,83; $L544: .loc 1 3144 7 cvt.u16.u32 %r1098,%r253; cvt.u64.u16 %r257,%r1098; .loc 1 3148 3 setp.le.s64 %r1099,%r257,4; @ %r1099 bra $L526; .loc 1 3151 4 setp.ne.u64 %r1100,%r257,5; @ %r1100 bra $L545; .loc 1 3153 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1283; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1281; call emovo$isra$7,(%out_arg1,%out_arg2); } .loc 1 3154 7 cvta.const.u64 %r1106,ezero; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1281; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1106; call (%value_in),ecmp,(%out_arg1,%out_arg2); ld.param.u32 %r1108,[%value_in]; } .loc 1 3154 5 setp.ne.u32 %r1109,%r1108,0; @ %r1109 bra $L545; .loc 1 3156 5 setp.lt.s32 %r1110,%r53,0; @ %r1110 bra $L526; .loc 1 3156 28 ld.s8 %r261,[%r204+-2]; .loc 1 3156 34 cvt.u16.u32 %r1112,%r261; set.u32.eq.u16 %r1113,%r1112,46; cvt.s64.s32 %r1111,%r1113; .loc 1 3156 21 add.u64 %r1116,%r278,%r1111; .loc 1 3156 17 ld.u8 %r1336,[%r1116+-1]; mov.u16 %r1119,%r1336; and.b16 %r1118,%r1119,1; cvt.u32.u16 %r1120,%r1118; cvt.s32.s8 %r1122,%r1120; cvt.u16.u32 %r1121,%r1122; setp.eq.u16 %r1123,%r1121,0; @ ! %r1123 bra $L685; bra $L526; $L545: .loc 1 3161 2 add.u64 %r386,%r204,-2; ld.u8 %r1336,[%r204+-2]; mov.u16 %r1126,%r1336; and.b16 %r1125,%r1126,127; cvt.u32.u16 %r1127,%r1125; cvt.s32.s8 %r38,%r1127; .loc 1 3164 4 setp.lt.s32 %r1128,%r53,0; @ %r1128 bra $L547; $L582: .loc 1 3171 9 cvt.u16.u32 %r1129,%r38; setp.eq.u16 %r1130,%r1129,46; @ %r1130 bra $L548; .loc 1 3186 4 add.u32 %r41,%r38,1; .loc 1 3187 7 st.u8 [%r386],%r41; .loc 1 3188 4 setp.gt.s32 %r1131,%r41,57; @ ! %r1131 bra $L526; .loc 1 3190 6 mov.u32 %r1136,48; bra $L549; $L547: .loc 1 3167 6 mov.u32 %r1132,49; st.u8 [%r204+-2],%r1132; .loc 1 3168 9 add.u32 %r29,%r29,1; bra $L526; $L548: .loc 1 3174 5 ld.s8 %r273,[%r386+-1]; .loc 1 3175 5 add.u32 %r274,%r273,1; .loc 1 3178 5 setp.gt.s32 %r1133,%r274,57; @ %r1133 bra $L550; .loc 1 3176 8 st.u8 [%r386+-1],%r274; bra $L526; $L550: .loc 1 3180 10 add.u32 %r29,%r29,1; .loc 1 3181 7 mov.u32 %r1134,49; st.u8 [%r386+-1],%r1134; bra $L526; $L686: .loc 1 3186 4 add.u32 %r276,%r269,1; .loc 1 3187 7 st.u8 [%r386],%r276; .loc 1 3188 4 setp.le.s32 %r1135,%r276,57; @ %r1135 bra $L526; $L549: .loc 1 3190 6 st.u8 [%r386],%r1136; .loc 1 3161 2 add.u64 %r386,%r386,-1; ld.u8 %r1336,[%r386]; mov.u16 %r1139,%r1336; and.b16 %r1138,%r1139,127; cvt.u32.u16 %r1140,%r1138; cvt.s32.s8 %r269,%r1140; .loc 1 3171 9 cvt.u16.u32 %r1141,%r269; setp.eq.u16 %r1142,%r1141,46; @ ! %r1142 bra $L686; bra $L548; $L594: .loc 1 3114 4 add.u64 %r278,%frame,83; $L526: .loc 1 3201 2 st.u32 [%stack],%r29; cvta.const.u64 %r1144,$LC4; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r278; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1144; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),sprintf,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1145,[%value_in]; } $L420: .loc 1 3204 13 st.u32 [%frame+4],%r72; .loc 1 3205 15 st.u32 [%frame+16],%r29; .loc 1 501 3 ld.u16 %r1148,[%frame+312]; and.b16 %r1147,%r1148,32767; setp.ne.u16 %r1149,%r1147,32767; @ %r1149 bra $L552; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1286; call (%value_in),eisinf$part$1,(%out_arg1); ld.param.u32 %r1152,[%value_in]; } .loc 1 2768 3 setp.ne.u32 %r1153,%r1152,0; @ %r1153 bra $L553; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1286; call (%value_in),eisnan$part$0,(%out_arg1); ld.param.u32 %r1156,[%value_in]; } .loc 1 2768 15 setp.eq.u32 %r1157,%r1156,0; @ %r1157 bra $L552; $L553: .loc 1 2770 16 mov.u32 %r1158,9999; st.u32 [%r498],%r1158; .loc 1 2771 9 bra $L554; $L552: .loc 1 2773 24 add.u32 %r1159,%r29,1; .loc 1 2773 8 st.u32 [%r498],%r1159; .loc 1 2779 8 ld.s8 %r25,[%frame+80]; .loc 1 2779 6 setp.eq.u32 %r1160,%r25,0; @ %r1160 bra $L595; .loc 1 2781 11 cvt.u16.u32 %r1161,%r25; setp.eq.u16 %r1162,%r1161,46; @ %r1162 bra $L596; .loc 1 2778 3 mov.u64 %r65,%r1268; bra $L557; $L558: .loc 1 2781 11 cvt.u16.u32 %r1163,%r31; setp.eq.u16 %r1164,%r1163,46; @ %r1164 bra $L556; $L557: .loc 1 2783 9 add.u64 %r65,%r65,1; .loc 1 2779 8 ld.s8 %r31,[%r65]; .loc 1 2779 6 setp.ne.u32 %r1165,%r31,0; @ %r1165 bra $L558; bra $L559; $L560: .loc 1 2792 12 ld.s8 %r32,[%r219]; cvt.u32.u32 %r1166,%r32; st.u8 [%r65],%r1166; .loc 1 2793 9 mov.u64 %r65,%r1267; add.u64 %r219,%r219,1; .loc 1 2790 6 setp.ne.u32 %r1167,%r32,0; @ ! %r1167 bra $L559; add.u64 %r1267,%r1267,1; bra $L560; $L561: .loc 1 2800 9 add.u64 %r65,%r65,-1; .loc 1 2799 6 ld.s8 %r1170,[%r65]; cvt.u16.u32 %r1169,%r1170; set.u32.ne.u16 %r1171,%r1169,69; neg.s32 %r1172,%r1171; .loc 1 2799 18 set.u32.gt.u64 %r1175,%r65,%r1268; neg.s32 %r1176,%r1175; cvt.u16.u32 %r1178,%r1172; cvt.u16.u32 %r1179,%r1176; and.b16 %r1177,%r1178,%r1179; cvt.u32.u16 %r1180,%r1177; cvt.u16.u8 %r1181,%r1180; setp.ne.u16 %r1182,%r1181,0; @ %r1182 bra $L561; bra $L555; $L559: setp.gt.u64 %r1184,%r65,%r1268; @ %r1184 bra $L561; bra $L555; $L595: .loc 1 2778 3 mov.u64 %r65,%r1268; $L555: .loc 1 2801 4 mov.u32 %r1185,0; st.u8 [%r65],%r1185; $L554: .loc 1 2807 8 ld.s8 %r479,[%frame+80]; .loc 1 2807 18 cvt.u16.u32 %r1187,%r479; set.u32.eq.u16 %r1188,%r1187,45; neg.s32 %r1189,%r1188; set.u32.eq.u16 %r1192,%r1187,32; neg.s32 %r1193,%r1192; cvt.u16.u32 %r1195,%r1189; cvt.u16.u32 %r1196,%r1193; or.b16 %r1194,%r1195,%r1196; .loc 1 2807 6 cvt.u32.u16 %r1197,%r1194; cvt.u16.u8 %r1198,%r1197; setp.eq.u16 %r1199,%r1198,0; @ %r1199 bra $L597; .loc 1 2806 3 mov.u64 %r66,%r1268; $L563: .loc 1 2808 9 add.u64 %r66,%r66,1; .loc 1 2807 8 ld.s8 %r479,[%r66]; .loc 1 2807 18 cvt.u16.u32 %r1201,%r479; set.u32.eq.u16 %r1202,%r1201,32; neg.s32 %r1203,%r1202; set.u32.eq.u16 %r1206,%r1201,45; neg.s32 %r1207,%r1206; cvt.u16.u32 %r1209,%r1203; cvt.u16.u32 %r1210,%r1207; or.b16 %r1208,%r1209,%r1210; .loc 1 2807 6 cvt.u32.u16 %r1211,%r1208; cvt.u16.u8 %r1212,%r1211; setp.ne.u16 %r1213,%r1212,0; @ %r1213 bra $L563; bra $L562; $L597: .loc 1 2806 3 mov.u64 %r66,%r1268; $L562: mov.u64 %r225,%r1268; $L565: mov.u64 %r67,%r225; .loc 1 2812 18 add.u64 %r66,%r66,1; .loc 1 2812 14 cvt.u32.u32 %r1214,%r479; st.u8 [%r225],%r1214; add.u64 %r225,%r225,1; .loc 1 2812 6 setp.eq.u32 %r1215,%r479,0; @ %r1215 bra $L564; ld.s8 %r479,[%r66]; bra $L565; $L564: ld.s8 %r477,[%r67+-1]; .loc 1 2817 3 setp.eq.u32 %r1216,%r496,2; @ %r1216 bra $L566; max.s32 %r488,%r52,%r29; .loc 1 2824 6 cvt.u16.u32 %r1217,%r477; setp.eq.u16 %r1218,%r1217,48; @ %r1218 bra $L567; bra $L568; $L599: .loc 1 2824 22 mov.u64 %r76,1; $L570: add.u64 %r252,%r67,-2; .loc 1 2825 16 mov.u32 %r1219,0; $L571: add.u64 %r67,%r67,-1; st.u8 [%r67],%r1219; .loc 1 2824 6 ld.s8 %r1221,[%r252]; cvt.u16.u32 %r1220,%r1221; setp.eq.u16 %r1222,%r1220,48; @ %r1222 bra $L569; bra $L568; $L567: cvt.s64.s32 %r76,%r488; .loc 1 2824 29 sub.u64 %r1224,%r67,%r1268; .loc 1 2824 22 setp.gt.s64 %r1225,%r1224,%r76; @ %r1225 bra $L570; bra $L568; $L569: add.u64 %r252,%r252,-1; .loc 1 2824 29 sub.u64 %r1227,%r67,%r1268; .loc 1 2824 22 setp.gt.s64 %r1228,%r1227,%r76; @ %r1228 bra $L571; $L568: .loc 1 2829 3 setp.ne.u32 %r1229,%r496,3; @ %r1229 bra $L572; .loc 1 2829 28 add.u32 %r1230,%r52,%r29; .loc 1 2829 15 setp.ge.s32 %r1231,%r1230,0; @ %r1231 bra $L573; .loc 1 2832 12 mov.u32 %r1232,0; st.u8 [%frame+80],%r1232; .loc 1 2833 16 mov.u32 %r1233,0; st.u32 [%r498],%r1233; .loc 1 2831 11 mov.u64 %r67,%r1268; bra $L574; $L578: .loc 1 2845 30 mov.u32 %r1234,0; st.u32 [%r494+104],%r1234; .loc 1 2845 75 cvt.s64.s32 %r362,%r55; .loc 1 2845 1 setp.le.u64 %r1235,%r362,31; @ %r1235 bra $L598; mov.u32 %r366,1; .loc 1 2844 3 mov.u32 %r68,4; $L576: .loc 1 2846 26 mov.u32 %r44,%r366; .loc 1 2845 83 add.u32 %r68,%r68,%r68; add.u32 %r366,%r44,1; .loc 1 2845 71 cvt.s64.s32 %r1237,%r68; add.u64 %r1238,%r1237,28; .loc 1 2845 1 setp.le.u64 %r1239,%r1238,%r362; @ %r1239 bra $L576; st.u32 [%r494+104],%r44; bra $L575; $L598: mov.u32 %r44,%r1234; $L575: .loc 1 2847 25 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r494; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r44; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r1242,[%value_in]; } .loc 1 2847 23 st.u64 [%r494+96],%r1242; .loc 1 2851 1 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r1242; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1268; call (%value_in),strcpy,(%out_arg1,%out_arg2); ld.param.u64 %r1246,[%value_in]; } .loc 1 2853 3 setp.eq.u64 %r1247,%r500,0; @ %r1247 bra $L415; .loc 1 2854 28 sub.u64 %r1249,%r67,%r1268; .loc 1 2854 23 add.u64 %r1250,%r1242,%r1249; .loc 1 2854 14 st.u64 [%r500],%r1250; .loc 1 2856 8 bra $L415; $L573: ld.u32 %r1252,[%r498]; add.u32 %r497,%r497,%r1252; $L574: .loc 1 2840 5 add.u32 %r55,%r497,3; bra $L578; $L572: .loc 1 2842 5 add.u32 %r55,%r497,9; bra $L578; $L425: .loc 1 2947 3 cvt.u16.u32 %r1253,%r80; setp.eq.u16 %r1254,%r1253,32767; @ ! %r1254 bra $L687; bra $L579; $L566: .loc 1 2824 6 cvt.u16.u32 %r1255,%r477; setp.eq.u16 %r1256,%r1255,48; @ %r1256 bra $L581; bra $L572; $L596: .loc 1 2778 3 mov.u64 %r65,%r1268; $L556: add.u64 %r1267,%r65,1; mov.u64 %r219,%r1267; bra $L560; $L685: .loc 1 3161 2 add.u64 %r386,%r204,-2; and.b16 %r1257,%r1112,127; cvt.u32.u16 %r1259,%r1257; cvt.s32.s8 %r38,%r1259; bra $L582; $L581: .loc 1 2824 29 sub.u64 %r1261,%r67,%r1268; .loc 1 2824 22 setp.gt.s64 %r1262,%r1261,1; @ %r1262 bra $L599; bra $L572; $L415: .loc 1 2857 1 mov.u64 %value,%r1242; 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 .u32 %r26; .reg .u64 %r27; .reg .f64 %r28; .reg .u64 %r31; .reg .u16 %r32; .reg .u16 %r33; .reg .pred %r34; .reg .u32 %r36; .reg .pred %r37; mov.u64 %r27,%ar0; .loc 1 2875 6 ld.f64 %r28,[%r27]; st.f64 [%frame+32],%r28; .loc 1 2879 1 add.u64 %r31,%frame,32; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%frame; call e53toe$isra$9,(%out_arg1,%out_arg2); } .loc 1 2886 3 ld.u16 %r33,[%frame+18]; and.b16 %r32,%r33,32767; setp.ne.u16 %r34,%r32,32767; @ %r34 bra $L690; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),eisnan$part$0,(%out_arg1); ld.param.u32 %r36,[%value_in]; } .loc 1 2889 4 setp.ne.u32 %r37,%r36,0; .loc 1 2892 8 selp.u32 %r26,1,2,%r37; bra $L688; $L690: .loc 1 2895 8 mov.u32 %r26,0; $L688: .loc 1 2896 1 mov.u32 %value,%r26; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%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 %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,368; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r29; .reg .u64 %r31; .reg .u32 %r32; .reg .u32 %r34; .reg .u32 %r35; .reg .u64 %r36; .reg .u32 %r37; .reg .u64 %r38; .reg .u32 %r40; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r45; .reg .u32 %r46; .reg .u64 %r50; .reg .u32 %r51; .reg .u32 %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .u64 %r60; .reg .u64 %r62; .reg .u32 %r65; .reg .u32 %r66; .reg .u32 %r71; .reg .u64 %r72; .reg .u64 %r73; .reg .u32 %r79; .reg .u32 %r85; .reg .u64 %r86; .reg .u64 %r87; .reg .u32 %r88; .reg .u32 %r93; .reg .u64 %r94; .reg .u64 %r96; .reg .u64 %r103; .reg .u64 %r106; .reg .u64 %r107; .reg .u64 %r117; .reg .u64 %r120; .reg .u64 %r121; .reg .u64 %r122; .reg .u32 %r123; .reg .u32 %r125; .reg .u32 %r128; .reg .u32 %r132; .reg .u64 %r135; .reg .u64 %r137; .reg .u32 %r140; .reg .u32 %r146; .reg .u64 %r147; .reg .u32 %r148; .reg .u32 %r153; .reg .u64 %r154; .reg .u64 %r164; .reg .u64 %r167; .reg .u64 %r168; .reg .u64 %r169; .reg .u32 %r170; .reg .u32 %r175; .reg .u64 %r176; .reg .u32 %r178; .reg .u64 %r179; .reg .u32 %r186; .reg .u64 %r189; .reg .u64 %r190; .reg .u32 %r191; .reg .u64 %r193; .reg .u32 %r194; .reg .u64 %r197; .reg .u64 %r200; .reg .u64 %r201; .reg .u64 %r204; .reg .u32 %r212; .reg .u32 %r214; .reg .u64 %r218; .reg .u32 %r219; .reg .u64 %r220; .reg .u64 %r233; .reg .u64 %r234; .reg .u64 %r236; .reg .u64 %r238; .reg .u64 %r240; .reg .u32 %r241; .reg .u32 %r242; .reg .u32 %r243; .reg .u32 %r244; .reg .u32 %r245; .reg .u32 %r246; .reg .u32 %r247; .reg .u32 %r248; .reg .u32 %r249; .reg .u32 %r250; .reg .u32 %r253; .reg .u32 %r255; .reg .u32 %r256; .reg .u64 %r258; .reg .u64 %r259; .reg .u64 %r268; .reg .u64 %r272; .reg .f64 %r274; .reg .u64 %r275; .reg .u64 %r276; .reg .u32 %r289; .reg .u32 %r290; .reg .u64 %r292; .reg .u32 %r293; .reg .pred %r294; .reg .u64 %r296; .reg .u64 %r297; .reg .u64 %r298; .reg .u16 %r299; .reg .pred %r300; .reg .u16 %r301; .reg .u32 %r302; .reg .pred %r303; .reg .u16 %r304; .reg .u32 %r305; .reg .pred %r306; .reg .pred %r307; .reg .u32 %r308; .reg .pred %r309; .reg .u32 %r310; .reg .pred %r311; .reg .pred %r312; .reg .u32 %r313; .reg .u32 %r314; .reg .u16 %r315; .reg .pred %r316; .reg .pred %r317; .reg .u32 %r318; .reg .pred %r319; .reg .u32 %r321; .reg .u32 %r322; .reg .u16 %r325; .reg .u16 %r327; .reg .u16 %r328; .reg .u32 %r330; .reg .u16 %r331; .reg .pred %r332; .reg .u16 %r334; .reg .u16 %r335; .reg .u16 %r336; .reg .u32 %r337; .reg .pred %r338; .reg .u16 %r340; .reg .u16 %r341; .reg .u16 %r342; .reg .u32 %r343; .reg .pred %r344; .reg .u16 %r345; .reg .u16 %r346; .reg .u32 %r347; .reg .u16 %r348; .reg .u16 %r350; .reg .u32 %r351; .reg .u32 %r352; .reg .pred %r353; .reg .u16 %r355; .reg .pred %r356; .reg .u64 %r357; .reg .u64 %r358; .reg .u64 %r359; .reg .u16 %r361; .reg .u16 %r362; .reg .u32 %r363; .reg .u16 %r364; .reg .pred %r365; .reg .u16 %r366; .reg .u32 %r367; .reg .pred %r368; .reg .u32 %r369; .reg .u16 %r370; .reg .u32 %r371; .reg .pred %r372; .reg .u16 %r373; .reg .pred %r374; .reg .u16 %r375; .reg .pred %r376; .reg .pred %r377; .reg .u16 %r378; .reg .pred %r379; .reg .u16 %r380; .reg .u16 %r381; .reg .u16 %r382; .reg .u16 %r383; .reg .u16 %r384; .reg .u16 %r385; .reg .pred %r386; .reg .u16 %r388; .reg .u16 %r390; .reg .u16 %r391; .reg .pred %r394; .reg .u16 %r395; .reg .pred %r396; .reg .u16 %r397; .reg .u16 %r398; .reg .pred %r399; .reg .u16 %r400; .reg .u16 %r401; .reg .u16 %r402; .reg .u16 %r403; .reg .u16 %r404; .reg .u16 %r405; .reg .pred %r406; .reg .u16 %r408; .reg .u16 %r410; .reg .u16 %r411; .reg .pred %r414; .reg .u16 %r415; .reg .pred %r416; .reg .u16 %r417; .reg .u16 %r418; .reg .u16 %r419; .reg .u16 %r420; .reg .u16 %r421; .reg .u16 %r422; .reg .pred %r423; .reg .u16 %r425; .reg .u16 %r427; .reg .u16 %r428; .reg .pred %r431; .reg .u64 %r432; .reg .u64 %r433; .reg .u64 %r434; .reg .u64 %r435; .reg .u64 %r436; .reg .u32 %r438; .reg .pred %r441; .reg .u16 %r442; .reg .pred %r443; .reg .u64 %r444; .reg .u64 %r445; .reg .u64 %r446; .reg .u64 %r447; .reg .u64 %r448; .reg .u32 %r450; .reg .pred %r453; .reg .pred %r454; .reg .u16 %r455; .reg .pred %r456; .reg .pred %r458; .reg .pred %r460; .reg .pred %r462; .reg .pred %r463; .reg .pred %r465; .reg .pred %r467; .reg .pred %r469; .reg .pred %r471; .reg .pred %r473; .reg .pred %r475; .reg .pred %r477; .reg .pred %r479; .reg .pred %r481; .reg .pred %r483; .reg .pred %r485; .reg .u16 %r486; .reg .pred %r487; .reg .pred %r488; .reg .pred %r489; .reg .pred %r490; .reg .u16 %r491; .reg .u16 %r492; .reg .u16 %r493; .reg .u16 %r495; .reg .pred %r496; .reg .u16 %r498; .reg .u16 %r499; .reg .u16 %r500; .reg .pred %r501; .reg .u32 %r503; .reg .u32 %r504; .reg .u32 %r505; .reg .u32 %r506; .reg .pred %r507; .reg .pred %r508; .reg .u16 %r510; .reg .u16 %r511; .reg .u16 %r512; .reg .u32 %r513; .reg .pred %r514; .reg .pred %r515; .reg .pred %r516; .reg .u16 %r517; .reg .pred %r518; .reg .u16 %r519; .reg .u16 %r520; .reg .u16 %r521; .reg .pred %r522; .reg .u16 %r523; .reg .u16 %r524; .reg .pred %r525; .reg .pred %r526; .reg .u16 %r527; .reg .pred %r528; .reg .u16 %r529; .reg .u16 %r530; .reg .pred %r531; .reg .u16 %r532; .reg .u16 %r533; .reg .u16 %r534; .reg .u16 %r535; .reg .u16 %r536; .reg .u16 %r537; .reg .pred %r538; .reg .u16 %r540; .reg .u16 %r542; .reg .u16 %r543; .reg .pred %r546; .reg .u16 %r547; .reg .pred %r548; .reg .u16 %r549; .reg .u16 %r550; .reg .u16 %r551; .reg .u16 %r552; .reg .u16 %r553; .reg .u16 %r554; .reg .pred %r555; .reg .u16 %r557; .reg .u16 %r559; .reg .u16 %r560; .reg .pred %r563; .reg .u64 %r564; .reg .u64 %r565; .reg .u64 %r566; .reg .u64 %r567; .reg .u64 %r568; .reg .u32 %r570; .reg .pred %r573; .reg .u16 %r574; .reg .pred %r575; .reg .u16 %r576; .reg .u16 %r577; .reg .u16 %r578; .reg .u16 %r579; .reg .u16 %r580; .reg .u16 %r581; .reg .pred %r582; .reg .u16 %r584; .reg .u16 %r586; .reg .u16 %r587; .reg .pred %r590; .reg .u16 %r591; .reg .pred %r592; .reg .u16 %r593; .reg .pred %r594; .reg .pred %r596; .reg .u16 %r597; .reg .pred %r598; .reg .u32 %r601; .reg .pred %r602; .reg .u16 %r603; .reg .pred %r604; .reg .u16 %r605; .reg .u16 %r606; .reg .u32 %r609; .reg .u32 %r611; .reg .u32 %r614; .reg .u32 %r615; .reg .u64 %r616; .reg .pred %r618; .reg .pred %r619; .reg .pred %r620; .reg .u64 %r621; .reg .u64 %r624; .reg .u32 %r631; .reg .u32 %r632; .reg .u16 %r633; .reg .pred %r634; .reg .u32 %r635; .reg .pred %r636; .reg .pred %r646; .reg .pred %r651; .reg .u64 %r652; .reg .u32 %r659; .reg .u64 %r660; .reg .u32 %r667; .reg .u32 %r668; .reg .u32 %r671; .reg .u32 %r673; .reg .u64 %r676; .reg .u16 %r678; .reg .u16 %r679; .reg .u16 %r680; .reg .u16 %r681; .reg .pred %r682; .reg .u16 %r684; .reg .pred %r685; .reg .pred %r686; .reg .u16 %r687; .reg .pred %r688; .reg .u16 %r689; .reg .pred %r690; .reg .u16 %r691; .reg .u16 %r692; .reg .pred %r693; .reg .u16 %r694; .reg .u16 %r695; .reg .u16 %r696; .reg .u32 %r697; .reg .u16 %r698; .reg .pred %r699; .reg .u32 %r701; .reg .u32 %r703; .reg .u32 %r705; .reg .u32 %r707; .reg .u32 %r708; .reg .u16 %r709; .reg .u16 %r710; .reg .u16 %r711; .reg .u16 %r712; .reg .u16 %r713; .reg .u16 %r714; .reg .u16 %r715; .reg .u16 %r716; .reg .u16 %r717; .reg .u16 %r718; .reg .pred %r719; .reg .pred %r721; .reg .u64 %r722; .reg .u32 %r723; .reg .u32 %r724; .reg .u64 %r725; .reg .u64 %r726; .reg .u16 %r728; .reg .pred %r729; .reg .pred %r730; .reg .pred %r732; .reg .u32 %r735; .reg .u32 %r737; .reg .u32 %r740; .reg .u32 %r741; .reg .u64 %r742; .reg .u32 %r746; .reg .pred %r747; .reg .u32 %r752; .reg .u32 %r755; .reg .u32 %r756; .reg .u64 %r757; .reg .u32 %r761; .reg .pred %r762; .reg .u32 %r765; .reg .u32 %r767; .reg .u32 %r770; .reg .u32 %r771; .reg .u64 %r772; .reg .u32 %r776; .reg .pred %r777; .reg .u64 %r778; .reg .u64 %r779; .reg .u64 %r780; .reg .u64 %r781; .reg .u64 %r782; .reg .u64 %r783; .reg .u64 %r784; .reg .u64 %r785; .reg .u64 %r786; .reg .u64 %r787; .reg .u32 %r796; .reg .u64 %r797; .reg .u64 %r798; .reg .u64 %r799; .reg .u64 %r800; .reg .u64 %r801; .reg .u64 %r802; .reg .u64 %r803; .reg .u64 %r804; mov.u64 %r275,%ar0; mov.u64 %r276,%ar1; .loc 1 3237 13 mov.u32 %r289,-1; st.u32 [%frame+200],%r289; .loc 1 3238 14 mov.u32 %r290,144; st.u32 [%frame+204],%r290; .loc 1 3263 5 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r275; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r292,[%value_in]; } .loc 1 3263 17 cvt.u32.u64 %r293,%r292; add.u32 %r29,%r293,2; .loc 1 3264 4 setp.le.s32 %r294,%r29,200; @ %r294 bra $L693; .loc 1 3268 21 cvt.s64.s32 %r297,%r29; mov.u64 %r296,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r297; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r296; call (%value_in),calloc,(%out_arg1,%out_arg2); ld.param.u64 %r298,[%value_in]; } mov.u64 %r135,%r298; .loc 1 3273 8 ld.s8 %r245,[%r275]; .loc 1 3273 6 cvt.u16.u32 %r299,%r245; setp.eq.u16 %r300,%r299,32; @ %r300 bra $L803; mov.u64 %r31,%r275; mov.u32 %r244,0; .loc 1 3269 11 cvt.u32.u64 %r186,%r296; bra $L695; $L693: .loc 1 3273 6 ld.s8 %r302,[%r275]; cvt.u16.u32 %r301,%r302; setp.ne.u16 %r303,%r301,32; @ %r303 bra $L804; .loc 1 3259 5 mov.u32 %r186,0; .loc 1 3265 8 mov.u64 %r135,%frame; bra $L694; $L803: .loc 1 3269 11 cvt.u32.u64 %r186,%r296; $L694: .loc 1 3265 8 mov.u64 %r31,%r275; mov.u32 %r32,0; $L697: .loc 1 3275 5 add.u64 %r31,%r31,1; .loc 1 3276 5 add.u32 %r32,%r32,1; .loc 1 3273 6 ld.s8 %r305,[%r31]; cvt.u16.u32 %r304,%r305; setp.eq.u16 %r306,%r304,32; @ %r306 bra $L697; mov.u32 %r244,%r32; bra $L696; $L804: mov.u64 %r31,%r275; mov.u32 %r244,0; .loc 1 3259 5 mov.u32 %r186,%r244; .loc 1 3265 8 mov.u64 %r135,%frame; $L696: .loc 1 3279 1 setp.le.s32 %r307,%r29,0; @ %r307 bra $L805; ld.s8 %r245,[%r31]; $L695: .loc 1 3281 17 add.u64 %r268,%r31,1; .loc 1 3281 10 add.u64 %r36,%r135,1; .loc 1 3281 13 cvt.u32.u32 %r308,%r245; st.u8 [%r135],%r308; .loc 1 3281 4 setp.eq.u32 %r309,%r245,0; @ %r309 bra $L698; mov.u64 %r56,%r268; mov.u64 %r38,%r36; .loc 1 3279 7 mov.u32 %r35,0; bra $L699; $L700: add.u64 %r38,%r36,1; .loc 1 3281 15 ld.s8 %r34,[%r56]; .loc 1 3281 13 cvt.u32.u32 %r310,%r34; st.u8 [%r36],%r310; add.u64 %r56,%r56,1; .loc 1 3281 4 setp.eq.u32 %r311,%r34,0; @ %r311 bra $L806; $L699: mov.u64 %r36,%r38; .loc 1 3279 17 add.u32 %r35,%r35,1; .loc 1 3279 1 setp.gt.s32 %r312,%r29,%r35; @ %r312 bra $L700; bra $L698; $L805: mov.u64 %r36,%r135; bra $L698; $L806: .loc 1 3281 10 mov.u64 %r36,%r38; $L698: .loc 1 3284 5 mov.u32 %r313,0; st.u8 [%r36],%r313; .loc 1 3287 8 ld.u32 %r37,[%frame+204]; .loc 1 3288 13 mov.u32 %r314,144; st.u32 [%frame+204],%r314; add.u64 %r785,%frame,332; mov.u64 %r137,%r785; add.u64 %r57,%frame,358; mov.u64 %r60,%r785; .loc 1 672 8 mov.u16 %r315,0; $L701: st.u16 [%r60],%r315; add.u64 %r60,%r60,2; .loc 1 671 1 setp.ne.u64 %r316,%r57,%r60; @ %r316 bra $L701; mov.u64 %r204,%r135; .loc 1 3290 7 mov.u32 %r212,0; .loc 1 3297 7 mov.u32 %r46,%r212; .loc 1 3289 6 mov.u32 %r123,%r212; .loc 1 3295 6 mov.u32 %r43,%r212; .loc 1 3293 6 mov.u32 %r65,%r212; .loc 1 3292 8 mov.u32 %r125,%r212; .loc 1 3291 8 mov.u32 %r42,%r212; .loc 1 804 3 add.u64 %r798,%frame,356; add.u64 %r799,%frame,334; add.u64 %r800,%frame,306; add.u64 %r801,%r785,24; add.u64 %r802,%frame,330; add.u64 %r803,%frame,308; add.u64 %r804,%frame,332; $L702: .loc 1 3300 5 ld.s8 %r246,[%r204]; .loc 1 3300 3 add.u32 %r40,%r246,-48; .loc 1 3301 3 setp.gt.u32 %r317,%r40,9; @ %r317 bra $L703; .loc 1 3304 35 or.b32 %r318,%r42,%r43; or.b32 %r45,%r318,%r40; .loc 1 3304 4 setp.eq.u32 %r319,%r45,0; @ %r319 bra $L807; .loc 1 3307 13 set.u32.eq.u32 %r321,%r46,0; neg.s32 %r322,%r321; .loc 1 3307 30 cvt.u16.u32 %r325,%r42; .loc 1 3307 19 cvt.u16.u32 %r328,%r322; and.b16 %r327,%r328,%r325; .loc 1 3307 4 cvt.u32.u16 %r330,%r327; cvt.u16.u8 %r331,%r330; setp.eq.u16 %r332,%r331,0; @ %r332 bra $L705; .loc 1 3310 23 cvt.u16.u32 %r335,%r246; add.u16 %r334,%r335,-48; .loc 1 3310 8 cvt.u32.u16 %r337,%r334; cvt.u16.u8 %r336,%r337; setp.gt.u16 %r338,%r336,9; @ %r338 bra $L808; mov.u64 %r50,%r204; $L707: .loc 1 3311 4 add.u64 %r50,%r50,1; .loc 1 3310 11 ld.s8 %r51,[%r50]; .loc 1 3310 23 cvt.u16.u32 %r341,%r51; add.u16 %r340,%r341,-48; .loc 1 3310 8 cvt.u32.u16 %r343,%r340; cvt.u16.u8 %r342,%r343; setp.le.u16 %r344,%r342,9; @ %r344 bra $L707; bra $L706; $L808: mov.u32 %r51,%r246; mov.u64 %r50,%r204; $L706: cvt.u16.u32 %r346,%r51; and.b16 %r345,%r346,127; cvt.u32.u16 %r347,%r345; cvt.s32.s8 %r55,%r347; .loc 1 3314 24 and.b16 %r348,%r346,95; .loc 1 3314 5 cvt.u32.u16 %r352,%r348; cvt.s32.s8 %r351,%r352; cvt.u16.u32 %r350,%r351; setp.eq.u16 %r353,%r350,69; @ %r353 bra $L708; .loc 1 3314 38 cvt.u32.u8 %r219,%r347; cvt.u16.u32 %r355,%r55; setp.gt.s16 %r356,%r355,44; @ %r356 bra $L709; mov.u64 %r358,17596481020929; shr.u64 %r357,%r358,%r219; not.b64 %r359,%r357; cvt.u16.u64 %r362,%r359; and.b16 %r361,%r362,1; .loc 1 3315 4 cvt.u32.u16 %r363,%r361; cvt.u16.u8 %r364,%r363; setp.ne.u16 %r365,%r364,0; @ %r365 bra $L709; $L708: .loc 1 3318 3 add.u64 %r62,%r50,-1; .loc 1 3319 8 ld.s8 %r367,[%r50+-1]; cvt.u16.u32 %r366,%r367; setp.ne.u16 %r368,%r366,48; @ %r368 bra $L710; mov.u64 %r73,%r62; .loc 1 3320 10 mov.u32 %r369,122; $L711: .loc 1 3320 7 add.u64 %r62,%r62,-1; .loc 1 3320 10 st.u8 [%r73],%r369; add.u64 %r73,%r73,-1; .loc 1 3319 8 ld.s8 %r371,[%r62]; cvt.u16.u32 %r370,%r371; setp.eq.u16 %r372,%r370,48; @ %r372 bra $L711; ld.s8 %r246,[%r204]; $L710: .loc 1 3322 5 cvt.u16.u32 %r373,%r246; setp.eq.u16 %r374,%r373,122; @ ! %r374 bra $L886; bra $L809; $L705: .loc 1 3330 4 ld.u16 %r375,[%frame+336]; setp.ne.u16 %r376,%r375,0; @ %r376 bra $L713; .loc 1 3332 5 setp.eq.u32 %r377,%r42,0; @ %r377 bra $L714; bra $L795; $L819: .loc 1 3321 9 mov.u32 %r46,1; $L795: .loc 1 3333 9 add.u32 %r65,%r65,1; $L714: .loc 1 805 6 mov.u32 %r71,0; .loc 1 804 3 mov.u64 %r72,%r798; $L718: .loc 1 809 6 ld.u16 %r66,[%r72]; .loc 1 809 4 cvt.u16.u32 %r378,%r66; setp.ge.s16 %r379,%r378,0; @ %r379 bra $L715; .loc 1 810 8 cvt.u16.u32 %r381,%r71; or.b16 %r380,%r381,1; cvt.u32.u16 %r71,%r380; $L715: .loc 1 811 5 cvt.u16.u32 %r382,%r66; add.u16 %r383,%r382,%r382; .loc 1 812 4 cvt.u16.u32 %r385,%r71; and.b16 %r384,%r385,2; setp.ne.u16 %r386,%r384,0; @ %r386 bra $L716; .loc 1 811 5 st.u16 [%r72],%r383; bra $L717; $L716: .loc 1 813 6 or.b16 %r388,%r383,1; st.u16 [%r72],%r388; $L717: .loc 1 814 7 cvt.u16.u32 %r390,%r71; add.u16 %r391,%r390,%r390; cvt.u32.u16 %r71,%r391; .loc 1 815 2 add.u64 %r72,%r72,-2; .loc 1 807 1 setp.ne.u64 %r394,%r72,%r799; @ %r394 bra $L718; mov.u64 %r122,%r800; mov.u64 %r87,%r800; mov.u64 %r96,%r785; $L719: .loc 1 696 7 ld.u16 %r395,[%r96]; st.u16 [%r87],%r395; add.u64 %r96,%r96,2; add.u64 %r87,%r87,2; .loc 1 695 1 setp.ne.u64 %r396,%r801,%r96; @ %r396 bra $L719; .loc 1 698 4 mov.u16 %r397,0; st.u16 [%frame+330],%r397; .loc 1 805 6 mov.u32 %r85,0; .loc 1 804 3 mov.u64 %r86,%r802; $L723: .loc 1 809 6 ld.u16 %r79,[%r86]; .loc 1 809 4 cvt.u16.u32 %r398,%r79; setp.ge.s16 %r399,%r398,0; @ %r399 bra $L720; .loc 1 810 8 cvt.u16.u32 %r401,%r85; or.b16 %r400,%r401,1; cvt.u32.u16 %r85,%r400; $L720: .loc 1 811 5 cvt.u16.u32 %r402,%r79; add.u16 %r403,%r402,%r402; .loc 1 812 4 cvt.u16.u32 %r405,%r85; and.b16 %r404,%r405,2; setp.ne.u16 %r406,%r404,0; @ %r406 bra $L721; .loc 1 811 5 st.u16 [%r86],%r403; bra $L722; $L721: .loc 1 813 6 or.b16 %r408,%r403,1; st.u16 [%r86],%r408; $L722: .loc 1 814 7 cvt.u16.u32 %r410,%r85; add.u16 %r411,%r410,%r410; cvt.u32.u16 %r85,%r411; .loc 1 815 2 add.u64 %r86,%r86,-2; .loc 1 807 1 setp.ne.u64 %r414,%r86,%r803; @ %r414 bra $L723; .loc 1 805 6 mov.u32 %r93,0; .loc 1 804 3 mov.u64 %r94,%r802; $L727: .loc 1 809 6 ld.u16 %r88,[%r94]; .loc 1 809 4 cvt.u16.u32 %r415,%r88; setp.ge.s16 %r416,%r415,0; @ %r416 bra $L724; .loc 1 810 8 cvt.u16.u32 %r418,%r93; or.b16 %r417,%r418,1; cvt.u32.u16 %r93,%r417; $L724: .loc 1 811 5 cvt.u16.u32 %r419,%r88; add.u16 %r420,%r419,%r419; .loc 1 812 4 cvt.u16.u32 %r422,%r93; and.b16 %r421,%r422,2; setp.ne.u16 %r423,%r421,0; @ %r423 bra $L725; .loc 1 811 5 st.u16 [%r94],%r420; bra $L726; $L725: .loc 1 813 6 or.b16 %r425,%r420,1; st.u16 [%r94],%r425; $L726: .loc 1 814 7 cvt.u16.u32 %r427,%r93; add.u16 %r428,%r427,%r427; cvt.u32.u16 %r93,%r428; .loc 1 815 2 add.u64 %r94,%r94,-2; .loc 1 807 1 setp.ne.u64 %r431,%r94,%r803; @ %r431 bra $L727; .loc 1 913 7 mov.u32 %r243,0; .loc 1 912 3 mov.u64 %r107,%r798; .loc 1 911 3 mov.u64 %r106,%r802; $L728: .loc 1 916 6 ld.u16 %r432,[%r106]; .loc 1 916 29 ld.u16 %r433,[%r107]; .loc 1 916 27 add.u64 %r434,%r432,%r433; .loc 1 916 50 cvt.u64.u32 %r435,%r243; .loc 1 916 4 add.u64 %r103,%r434,%r435; .loc 1 921 7 st.u16 [%r107],%r103; .loc 1 922 2 add.u64 %r106,%r106,-2; .loc 1 923 2 add.u64 %r107,%r107,-2; .loc 1 917 4 shr.u64 %r436,%r103,16; cvt.u32.u64 %r438,%r436; and.b32 %r243,%r438,1; .loc 1 914 1 setp.ne.u64 %r441,%r106,%r803; @ %r441 bra $L728; .loc 1 672 8 mov.u16 %r442,0; $L729: st.u16 [%r122],%r442; add.u64 %r122,%r122,2; .loc 1 671 1 setp.ne.u64 %r443,%r804,%r122; @ %r443 bra $L729; .loc 1 3340 14 st.u16 [%frame+328],%r40; .loc 1 913 7 mov.u32 %r241,0; .loc 1 912 3 mov.u64 %r121,%r798; .loc 1 911 3 mov.u64 %r120,%r802; $L730: .loc 1 916 6 ld.u16 %r444,[%r120]; .loc 1 916 29 ld.u16 %r445,[%r121]; .loc 1 916 27 add.u64 %r446,%r444,%r445; .loc 1 916 50 cvt.u64.u32 %r447,%r241; .loc 1 916 4 add.u64 %r117,%r446,%r447; .loc 1 921 7 st.u16 [%r121],%r117; .loc 1 922 2 add.u64 %r120,%r120,-2; .loc 1 923 2 add.u64 %r121,%r121,-2; .loc 1 917 4 shr.u64 %r448,%r117,16; cvt.u32.u64 %r450,%r448; and.b32 %r241,%r450,1; .loc 1 914 1 setp.ne.u64 %r453,%r120,%r803; @ %r453 bra $L730; bra $L731; $L713: .loc 1 3346 8 or.b32 %r123,%r123,%r40; .loc 1 3348 6 setp.ne.u32 %r454,%r42,0; @ %r454 bra $L731; .loc 1 3349 16 add.u32 %r65,%r65,-1; $L731: .loc 1 3351 7 add.u32 %r43,%r43,1; bra $L704; $L703: cvt.u16.u32 %r455,%r246; setp.eq.u16 %r456,%r455,45; @ %r456 bra $L732; setp.gt.s16 %r458,%r455,45; @ %r458 bra $L733; setp.eq.u16 %r460,%r455,13; @ %r460 bra $L810; setp.gt.s16 %r462,%r455,13; @ %r462 bra $L735; setp.eq.u32 %r463,%r246,0; @ %r463 bra $L811; setp.eq.u16 %r465,%r455,10; @ ! %r465 bra $L709; bra $L812; $L735: setp.eq.u16 %r467,%r455,43; @ %r467 bra $L736; setp.gt.s16 %r469,%r455,43; @ %r469 bra $L813; setp.eq.u16 %r471,%r455,32; @ ! %r471 bra $L709; bra $L814; $L733: setp.eq.u16 %r473,%r455,73; @ %r473 bra $L737; setp.gt.s16 %r475,%r455,73; @ %r475 bra $L738; setp.eq.u16 %r477,%r455,46; @ %r477 bra $L739; setp.eq.u16 %r479,%r455,69; @ %r479 bra $L740; bra $L709; $L738: setp.eq.u16 %r481,%r455,105; @ %r481 bra $L737; setp.eq.u16 %r483,%r455,122; @ %r483 bra $L704; setp.ne.u16 %r485,%r455,101; @ %r485 bra $L709; $L740: .loc 1 3408 5 ld.s8 %r247,[%r204+1]; .loc 1 3408 3 cvt.u16.u32 %r486,%r247; setp.eq.u16 %r487,%r486,45; @ %r487 bra $L741; .loc 1 3406 1 add.u64 %r204,%r204,1; .loc 1 3404 7 mov.u32 %r132,1; bra $L742; $L739: .loc 1 3363 5 setp.ne.u32 %r488,%r42,0; @ %r488 bra $L709; .loc 1 3365 3 mov.u32 %r42,1; bra $L704; $L732: .loc 1 3369 5 setp.ne.u32 %r489,%r125,0; @ %r489 bra $L815; .loc 1 3368 9 mov.u32 %r212,65535; .loc 1 3371 3 mov.u32 %r125,1; bra $L704; $L736: .loc 1 3374 5 setp.eq.u32 %r490,%r125,0; @ %r490 bra $L816; bra $L709; $L815: .loc 1 3368 9 mov.u32 %r212,65535; $L709: .loc 1 3762 9 mov.u16 %r491,32767; st.u16 [%frame+334],%r491; .loc 1 3763 9 mov.u16 %r492,0; st.u16 [%frame+336],%r492; .loc 1 3765 9 mov.u16 %r493,-16384; st.u16 [%frame+338],%r493; add.u64 %r240,%frame,340; add.u64 %r238,%r785,24; .loc 1 3767 10 mov.u16 %r495,%r492; $L743: st.u16 [%r240],%r495; add.u64 %r240,%r240,2; .loc 1 3766 2 setp.ne.u64 %r496,%r238,%r240; @ %r496 bra $L743; .loc 1 3773 9 st.u16 [%frame+356],%r495; ld.u16 %r255,[%frame+334]; cvt.u16.u32 %r499,%r255; and.b16 %r498,%r499,32767; cvt.u32.u16 %r256,%r498; bra $L744; $L807: .loc 1 3304 4 mov.u32 %r43,%r45; mov.u32 %r42,%r43; bra $L704; $L809: .loc 1 3321 9 mov.u32 %r42,1; .loc 1 3322 5 mov.u32 %r46,%r42; bra $L704; $L816: .loc 1 3376 3 mov.u32 %r125,1; $L704: .loc 1 3398 1 add.u64 %r204,%r204,1; bra $L702; $L741: ld.s8 %r247,[%r204+2]; .loc 1 3411 2 add.u64 %r204,%r204,2; .loc 1 3410 8 mov.u32 %r132,-1; $L742: .loc 1 3413 3 cvt.u16.u32 %r500,%r247; setp.ne.u16 %r501,%r500,43; @ %r501 bra $L745; ld.s8 %r247,[%r204+1]; .loc 1 3414 2 add.u64 %r204,%r204,1; bra $L745; $L749: .loc 1 3417 6 shl.b32 %r503,%r128,2; add.u32 %r504,%r503,%r128; add.u32 %r505,%r504,%r504; .loc 1 3418 11 add.u64 %r204,%r204,1; .loc 1 3418 14 add.u32 %r506,%r247,-48; .loc 1 3418 6 add.u32 %r128,%r506,%r505; .loc 1 3419 5 setp.gt.s32 %r507,%r128,4977; @ %r507 bra $L746; ld.s8 %r247,[%r204]; bra $L747; $L746: .loc 1 3421 6 setp.eq.u32 %r508,%r132,-1; @ ! %r508 bra $L737; bra $L748; $L745: .loc 1 3414 2 mov.u32 %r128,0; $L747: .loc 1 3415 20 cvt.u16.u32 %r511,%r247; add.u16 %r510,%r511,-48; .loc 1 3415 6 cvt.u32.u16 %r513,%r510; cvt.u16.u8 %r512,%r513; setp.le.u16 %r514,%r512,9; @ %r514 bra $L749; .loc 1 3427 3 setp.ne.u32 %r515,%r132,-1; @ %r515 bra $L750; .loc 1 3436 3 setp.gt.s32 %r516,%r128,4977; @ %r516 bra $L748; .loc 1 3428 6 neg.s32 %r128,%r128; bra $L734; $L737: .loc 1 672 8 mov.u16 %r517,0; $L751: st.u16 [%r137],%r517; add.u64 %r137,%r137,2; .loc 1 671 1 setp.ne.u64 %r518,%r57,%r137; @ %r518 bra $L751; .loc 1 3433 8 mov.u16 %r519,32767; st.u16 [%frame+334],%r519; .loc 1 3536 13 st.u32 [%frame+204],%r37; .loc 1 3537 7 cvt.u16.u32 %r520,%r212; st.u16 [%frame+332],%r520; mov.u32 %r255,32767; bra $L752; $L748: .loc 1 672 8 mov.u16 %r521,0; $L753: st.u16 [%r137],%r521; add.u64 %r137,%r137,2; .loc 1 671 1 setp.ne.u64 %r522,%r57,%r137; @ %r522 bra $L753; ld.u16 %r255,[%frame+334]; cvt.u16.u32 %r524,%r255; and.b16 %r523,%r524,32767; cvt.u32.u16 %r256,%r523; bra $L744; $L810: .loc 1 3294 5 mov.u32 %r128,0; bra $L734; $L811: mov.u32 %r128,%r246; bra $L734; $L812: mov.u32 %r128,0; bra $L734; $L813: mov.u32 %r128,0; bra $L734; $L814: mov.u32 %r128,0; $L734: .loc 1 3444 6 sub.u32 %r178,%r128,%r65; .loc 1 3446 6 setp.le.s32 %r525,%r178,0; @ %r525 bra $L754; .loc 1 3446 25 ld.u16 %r214,[%frame+336]; .loc 1 3446 19 setp.ne.u32 %r526,%r214,0; @ %r526 bra $L755; add.u64 %r787,%frame,356; add.u64 %r786,%frame,334; add.u64 %r782,%frame,306; add.u64 %r778,%r785,24; add.u64 %r784,%frame,330; add.u64 %r783,%frame,308; .loc 1 698 4 cvt.u16.u32 %r529,%r214; .loc 1 913 7 mov.u32 %r796,%r214; add.u64 %r797,%frame,330; $L773: mov.u64 %r233,%r782; .loc 1 3294 5 mov.u64 %r169,%r782; mov.u64 %r179,%r785; $L756: .loc 1 696 7 ld.u16 %r527,[%r179]; st.u16 [%r169],%r527; add.u64 %r179,%r179,2; add.u64 %r169,%r169,2; .loc 1 695 1 setp.ne.u64 %r528,%r778,%r179; @ %r528 bra $L756; .loc 1 698 4 st.u16 [%frame+330],%r529; .loc 1 805 6 mov.u32 %r146,%r214; .loc 1 804 3 mov.u64 %r147,%r784; $L760: .loc 1 809 6 ld.u16 %r140,[%r147]; .loc 1 809 4 cvt.u16.u32 %r530,%r140; setp.ge.s16 %r531,%r530,0; @ %r531 bra $L757; .loc 1 810 8 cvt.u16.u32 %r533,%r146; or.b16 %r532,%r533,1; cvt.u32.u16 %r146,%r532; $L757: .loc 1 811 5 cvt.u16.u32 %r534,%r140; add.u16 %r535,%r534,%r534; .loc 1 812 4 cvt.u16.u32 %r537,%r146; and.b16 %r536,%r537,2; setp.ne.u16 %r538,%r536,0; @ %r538 bra $L758; .loc 1 811 5 st.u16 [%r147],%r535; bra $L759; $L758: .loc 1 813 6 or.b16 %r540,%r535,1; st.u16 [%r147],%r540; $L759: .loc 1 814 7 cvt.u16.u32 %r542,%r146; add.u16 %r543,%r542,%r542; cvt.u32.u16 %r146,%r543; .loc 1 815 2 add.u64 %r147,%r147,-2; .loc 1 807 1 setp.ne.u64 %r546,%r147,%r783; @ %r546 bra $L760; .loc 1 805 6 mov.u32 %r153,%r214; .loc 1 804 3 mov.u64 %r154,%r784; $L764: .loc 1 809 6 ld.u16 %r148,[%r154]; .loc 1 809 4 cvt.u16.u32 %r547,%r148; setp.ge.s16 %r548,%r547,0; @ %r548 bra $L761; .loc 1 810 8 cvt.u16.u32 %r550,%r153; or.b16 %r549,%r550,1; cvt.u32.u16 %r153,%r549; $L761: .loc 1 811 5 cvt.u16.u32 %r551,%r148; add.u16 %r552,%r551,%r551; .loc 1 812 4 cvt.u16.u32 %r554,%r153; and.b16 %r553,%r554,2; setp.ne.u16 %r555,%r553,0; @ %r555 bra $L762; .loc 1 811 5 st.u16 [%r154],%r552; bra $L763; $L762: .loc 1 813 6 or.b16 %r557,%r552,1; st.u16 [%r154],%r557; $L763: .loc 1 814 7 cvt.u16.u32 %r559,%r153; add.u16 %r560,%r559,%r559; cvt.u32.u16 %r153,%r560; .loc 1 815 2 add.u64 %r154,%r154,-2; .loc 1 807 1 setp.ne.u64 %r563,%r154,%r783; @ %r563 bra $L764; .loc 1 913 7 mov.u32 %r242,%r796; .loc 1 912 3 mov.u64 %r168,%r784; .loc 1 911 3 mov.u64 %r167,%r787; $L765: .loc 1 916 6 ld.u16 %r564,[%r167]; .loc 1 916 29 ld.u16 %r565,[%r168]; .loc 1 916 27 add.u64 %r566,%r564,%r565; .loc 1 916 50 cvt.u64.u32 %r567,%r242; .loc 1 916 4 add.u64 %r164,%r566,%r567; .loc 1 921 7 st.u16 [%r168],%r164; .loc 1 922 2 add.u64 %r167,%r167,-2; .loc 1 923 2 add.u64 %r168,%r168,-2; .loc 1 917 4 shr.u64 %r568,%r164,16; cvt.u32.u64 %r570,%r568; and.b32 %r242,%r570,1; .loc 1 914 1 setp.ne.u64 %r573,%r167,%r786; @ %r573 bra $L765; .loc 1 805 6 mov.u32 %r175,%r214; .loc 1 804 3 mov.u64 %r176,%r784; $L769: .loc 1 809 6 ld.u16 %r170,[%r176]; .loc 1 809 4 cvt.u16.u32 %r574,%r170; setp.ge.s16 %r575,%r574,0; @ %r575 bra $L766; .loc 1 810 8 cvt.u16.u32 %r577,%r175; or.b16 %r576,%r577,1; cvt.u32.u16 %r175,%r576; $L766: .loc 1 811 5 cvt.u16.u32 %r578,%r170; add.u16 %r579,%r578,%r578; .loc 1 812 4 cvt.u16.u32 %r581,%r175; and.b16 %r580,%r581,2; setp.ne.u16 %r582,%r580,0; @ %r582 bra $L767; .loc 1 811 5 st.u16 [%r176],%r579; bra $L768; $L767: .loc 1 813 6 or.b16 %r584,%r579,1; st.u16 [%r176],%r584; $L768: .loc 1 814 7 cvt.u16.u32 %r586,%r175; add.u16 %r587,%r586,%r586; cvt.u32.u16 %r175,%r587; .loc 1 815 2 add.u64 %r176,%r176,-2; .loc 1 807 1 setp.ne.u64 %r590,%r176,%r783; @ %r590 bra $L769; .loc 1 3453 4 ld.u16 %r591,[%frame+310]; setp.ne.u16 %r592,%r591,0; @ %r592 bra $L770; .loc 1 3455 7 add.u32 %r178,%r178,-1; mov.u64 %r218,%r785; $L771: .loc 1 696 7 ld.u16 %r593,[%r233]; st.u16 [%r218],%r593; add.u64 %r233,%r233,2; add.u64 %r218,%r218,2; .loc 1 695 1 setp.ne.u64 %r594,%r797,%r233; @ %r594 bra $L771; .loc 1 698 4 st.u16 [%frame+356],%r529; .loc 1 3446 6 setp.eq.u32 %r596,%r178,0; @ %r596 bra $L772; .loc 1 3446 19 ld.u16 %r597,[%frame+336]; setp.eq.u16 %r598,%r597,0; @ %r598 bra $L773; bra $L755; $L754: .loc 1 3458 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r785; call (%value_in),enormlz,(%out_arg1); ld.param.u32 %r601,[%value_in]; } .loc 1 3458 3 setp.le.s32 %r602,%r601,144; @ %r602 bra $L774; $L798: .loc 1 672 8 mov.u16 %r603,0; $L775: st.u16 [%r137],%r603; add.u64 %r137,%r137,2; .loc 1 671 1 setp.ne.u64 %r604,%r57,%r137; @ %r604 bra $L775; ld.u16 %r255,[%frame+334]; cvt.u16.u32 %r606,%r255; and.b16 %r605,%r606,32767; cvt.u32.u16 %r256,%r605; bra $L744; $L774: .loc 1 3464 1 add.u64 %r779,%frame,200; .loc 1 3463 28 mov.u32 %r615,16526; sub.u32 %r614,%r615,%r601; .loc 1 3463 6 cvt.s64.s32 %r616,%r614; .loc 1 3464 1 mov.u32 %r611,64; mov.u32 %r609,0; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r785; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r123; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r609; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r616; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r611; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r779; call emdnorm,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); } .loc 1 3474 6 ld.u16 %r201,[%frame+334]; .loc 1 3475 3 setp.eq.u32 %r618,%r178,0; @ %r618 bra $L776; add.u64 %r782,%frame,306; $L801: .loc 1 3481 3 setp.ge.s32 %r619,%r178,0; @ %r619 bra $L817; .loc 1 3485 4 setp.lt.s32 %r620,%r178,-4096; @ %r620 bra $L778; .loc 1 3483 7 neg.s32 %r178,%r178; .loc 1 3484 8 mov.u32 %r194,-1; add.u64 %r781,%frame,280; bra $L777; $L778: .loc 1 3487 3 add.u64 %r781,%frame,280; cvta.const.u64 %r621,etens; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r621; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r781; call emovi,(%out_arg1,%out_arg2); } .loc 1 3488 13 ld.u16 %r624,[%frame+282]; .loc 1 3488 8 sub.u64 %r189,%r201,%r624; .loc 1 3489 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r781; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r785; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r779; call (%value_in),edivm,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r631,[%value_in]; } .loc 1 3490 8 add.u64 %r201,%r189,16383; mov.u32 %r632,-4096; sub.u32 %r178,%r632,%r178; .loc 1 3484 8 mov.u32 %r194,-1; bra $L777; $L817: .loc 1 3480 7 mov.u32 %r194,1; add.u64 %r781,%frame,280; $L777: mov.u64 %r236,%r782; add.u64 %r234,%frame,326; mov.u32 %r248,0; cvta.const.u64 %r190,eone; $L780: .loc 1 455 11 add.u64 %r190,%r190,2; .loc 1 455 7 cvt.u16.u32 %r633,%r248; st.u16 [%r236],%r633; add.u64 %r236,%r236,2; .loc 1 454 1 setp.eq.u64 %r634,%r234,%r236; @ %r634 bra $L818; ld.u16 %r248,[%r190]; bra $L780; $L818: .loc 1 3494 3 cvta.const.u64 %r193,etens+240; .loc 1 3496 5 mov.u32 %r191,1; add.u64 %r780,%r193,-260; $L779: .loc 1 3499 10 and.b32 %r635,%r178,%r191; .loc 1 3499 4 setp.eq.u32 %r636,%r635,0; @ %r636 bra $L781; .loc 1 3500 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r193; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r782; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r782; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r779; call emul,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); } $L781: .loc 1 3501 4 add.u64 %r193,%r193,-20; .loc 1 3502 6 add.u32 %r191,%r191,%r191; .loc 1 3504 1 setp.ne.u64 %r646,%r193,%r780; @ %r646 bra $L779; .loc 1 3506 1 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r782; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r781; call emovi,(%out_arg1,%out_arg2); } .loc 1 3507 3 setp.ne.u32 %r651,%r194,-1; @ %r651 bra $L782; .loc 1 3509 12 ld.u16 %r652,[%frame+282]; .loc 1 3509 7 sub.u64 %r197,%r201,%r652; .loc 1 3510 6 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r781; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r785; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r779; call (%value_in),edivm,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r659,[%value_in]; } mov.u32 %r178,%r659; .loc 1 3511 7 add.u64 %r201,%r197,16383; bra $L776; $L782: .loc 1 3515 12 ld.u16 %r660,[%frame+282]; .loc 1 3515 7 add.u64 %r200,%r660,%r201; .loc 1 3516 6 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r781; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r785; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r779; call (%value_in),emulm,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r667,[%value_in]; } mov.u32 %r178,%r667; .loc 1 3517 7 add.u64 %r201,%r200,-16382; $L776: .loc 1 3531 13 mov.u32 %r668,53; st.u32 [%frame+204],%r668; .loc 1 3524 7 add.u64 %r676,%r201,-15360; .loc 1 3532 1 mov.u32 %r673,64; mov.u32 %r671,0; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r785; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r178; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r671; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r676; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r673; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r779; call emdnorm,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); } ld.u16 %r255,[%frame+334]; cvt.u16.u32 %r679,%r255; and.b16 %r678,%r679,32767; cvt.u32.u16 %r256,%r678; $L744: .loc 1 3536 13 st.u32 [%frame+204],%r37; .loc 1 3537 7 cvt.u16.u32 %r680,%r212; st.u16 [%frame+332],%r680; .loc 1 708 3 cvt.u16.u32 %r681,%r256; setp.ne.u16 %r682,%r681,32767; @ %r682 bra $L783; $L752: add.u64 %r258,%frame,338; $L786: .loc 1 712 5 ld.u16 %r684,[%r258]; setp.eq.u16 %r685,%r684,0; @ %r685 bra $L784; add.u64 %r272,%frame,360; add.u64 %r259,%frame,368; mov.u32 %r253,0; cvta.const.u64 %r220,nan53; bra $L785; $L784: add.u64 %r258,%r258,2; .loc 1 710 2 setp.ne.u64 %r686,%r57,%r258; @ %r686 bra $L786; bra $L887; $L785: .loc 1 3781 13 add.u64 %r220,%r220,2; .loc 1 3781 9 cvt.u16.u32 %r687,%r253; st.u16 [%r272],%r687; add.u64 %r272,%r272,2; .loc 1 3780 1 setp.eq.u64 %r688,%r259,%r272; @ %r688 bra $L788; ld.u16 %r253,[%r220]; bra $L785; $L783: .loc 1 2115 4 mov.u16 %r689,0; st.u16 [%frame+366],%r689; .loc 1 2116 3 setp.eq.u32 %r690,%r212,0; @ %r690 bra $L789; $L796: .loc 1 2117 5 mov.u16 %r691,-32768; st.u16 [%frame+366],%r691; $L789: .loc 1 2120 3 cvt.u16.u32 %r692,%r255; setp.le.u16 %r693,%r692,2046; @ %r693 bra $L790; ld.u16 %r695,[%frame+366]; or.b16 %r694,%r695,32752; cvt.u32.u16 %r250,%r694; $L797: .loc 1 2123 5 cvt.u16.u32 %r696,%r250; st.u16 [%frame+366],%r696; .loc 1 2127 9 mov.u32 %r697,0; st.u32 [%frame+360],%r697; .loc 1 2125 9 cvt.u16.u32 %r698,%r697; st.u16 [%frame+364],%r698; bra $L788; $L790: .loc 1 2149 3 setp.ne.u32 %r699,%r255,0; @ %r699 bra $L791; mov.u32 %r701,4; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r785; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r701; call (%value_in),eshift$part$4,(%out_arg1,%out_arg2); ld.param.u32 %r703,[%value_in]; } mov.u32 %r249,%r255; bra $L792; $L791: mov.u32 %r705,5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r785; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r705; call (%value_in),eshift$part$4,(%out_arg1,%out_arg2); ld.param.u32 %r707,[%value_in]; } .loc 1 2155 4 shl.b32 %r708,%r255,4; cvt.u16.u32 %r709,%r708; cvt.s32.s16 %r249,%r709; $L792: .loc 1 2158 3 ld.u16 %r711,[%frame+336]; and.b16 %r710,%r711,15; cvt.u16.u32 %r713,%r249; or.b16 %r712,%r710,%r713; .loc 1 2159 4 ld.u16 %r715,[%frame+366]; or.b16 %r714,%r715,%r712; st.u16 [%frame+366],%r714; .loc 1 2161 8 ld.u16 %r716,[%frame+338]; st.u16 [%frame+364],%r716; .loc 1 2162 8 ld.u16 %r717,[%frame+340]; st.u16 [%frame+362],%r717; .loc 1 2163 8 ld.u16 %r718,[%frame+342]; st.u16 [%frame+360],%r718; $L788: .loc 1 3568 4 setp.eq.u32 %r719,%r186,0; @ %r719 bra $L793; .loc 1 3569 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r135; call __nvptx_free,(%out_arg1); } $L793: .loc 1 3241 6 setp.eq.u64 %r721,%r276,0; @ %r721 bra $L794; .loc 1 3567 15 sub.u64 %r722,%r204,%r135; .loc 1 3567 10 cvt.u32.u64 %r724,%r722; add.u32 %r723,%r244,%r724; .loc 1 3242 13 cvt.s64.s32 %r725,%r723; add.u64 %r726,%r275,%r725; .loc 1 3242 9 st.u64 [%r276],%r726; $L794: .loc 1 3243 11 ld.f64 %r274,[%frame+360]; bra $L888; $L886: .loc 1 3330 4 ld.u16 %r728,[%frame+336]; setp.eq.u16 %r729,%r728,0; @ %r729 bra $L819; .loc 1 3321 9 mov.u32 %r46,1; bra $L713; $L750: .loc 1 3429 3 setp.gt.s32 %r730,%r128,4932; @ %r730 bra $L737; bra $L734; $L887: .loc 1 2116 3 setp.ne.u32 %r732,%r212,0; @ %r732 bra $L796; mov.u32 %r250,32752; bra $L797; $L889: .loc 1 3464 1 add.u64 %r779,%frame,200; .loc 1 3463 28 mov.u32 %r741,16526; sub.u32 %r740,%r741,%r746; .loc 1 3463 6 cvt.s64.s32 %r742,%r740; .loc 1 3464 1 mov.u32 %r737,64; mov.u32 %r735,0; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r785; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r123; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r735; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r742; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r737; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r779; call emdnorm,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); } .loc 1 3474 6 ld.u16 %r201,[%frame+334]; .loc 1 3480 7 mov.u32 %r194,1; add.u64 %r782,%frame,306; add.u64 %r781,%frame,280; bra $L777; $L755: .loc 1 3458 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r785; call (%value_in),enormlz,(%out_arg1); ld.param.u32 %r746,[%value_in]; } .loc 1 3458 3 setp.gt.s32 %r747,%r746,144; @ %r747 bra $L798; bra $L889; $L890: .loc 1 3464 1 add.u64 %r779,%frame,200; .loc 1 3463 28 mov.u32 %r756,16526; sub.u32 %r755,%r756,%r761; .loc 1 3463 6 cvt.s64.s32 %r757,%r755; .loc 1 3464 1 mov.u32 %r752,64; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r785; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r123; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r178; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r757; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r752; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r779; call emdnorm,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); } .loc 1 3474 6 ld.u16 %r201,[%frame+334]; bra $L776; $L772: .loc 1 3458 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r785; call (%value_in),enormlz,(%out_arg1); ld.param.u32 %r761,[%value_in]; } .loc 1 3458 3 setp.gt.s32 %r762,%r761,144; @ %r762 bra $L798; bra $L890; $L891: .loc 1 3464 1 add.u64 %r779,%frame,200; .loc 1 3463 28 mov.u32 %r771,16526; sub.u32 %r770,%r771,%r776; .loc 1 3463 6 cvt.s64.s32 %r772,%r770; .loc 1 3464 1 mov.u32 %r767,64; mov.u32 %r765,0; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r785; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r123; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r765; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r772; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r767; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r779; call emdnorm,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); } .loc 1 3474 6 ld.u16 %r201,[%frame+334]; bra $L801; $L770: .loc 1 3458 10 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r785; call (%value_in),enormlz,(%out_arg1); ld.param.u32 %r776,[%value_in]; } .loc 1 3458 3 setp.gt.s32 %r777,%r776,144; @ %r777 bra $L798; bra $L891; $L888: .loc 1 3244 1 mov.f64 %value,%r274; st.shared.u64 [%sspslot],%sspprev; st.param.f64 [%value_out],%value; ret; } lib_a-llabs.o/ 1591654536 399 399 100644 530 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 65 21 abs.s64 %value,%r23; .loc 1 66 1 st.param.u64 [%value_out],%value; ret; } lib_a-lldiv.o/ 1591654536 399 399 100644 1285 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r31; .reg .u64 %r33; .reg .u64 %r34; .reg .u16 %r37; .reg .u16 %r38; .reg .u16 %r39; .reg .u32 %r40; .reg .u16 %r41; .reg .pred %r42; mov.u64 %r27,%ar0; mov.u64 %r28,%ar1; mov.u64 %r29,%ar2; .loc 1 107 22 div.s64 %r22,%r28,%r29; .loc 1 108 21 rem.s64 %r23,%r28,%r29; .loc 1 109 17 shr.u64 %r31,%r23,63; .loc 1 109 5 not.b64 %r33,%r28; shr.u64 %r34,%r33,63; .loc 1 109 17 cvt.u16.u64 %r38,%r31; cvt.u16.u64 %r39,%r34; and.b16 %r37,%r38,%r39; cvt.u32.u16 %r40,%r37; cvt.u16.u8 %r41,%r40; setp.eq.u16 %r42,%r41,0; @ %r42 bra $L2; .loc 1 110 14 add.u64 %r22,%r22,1; .loc 1 111 14 sub.u64 %r23,%r23,%r29; $L2: .loc 1 113 9 st.u64 [%r27],%r22; st.u64 [%r27+8],%r23; .loc 1 114 1 ret; } /102 1591654536 399 399 100644 3312 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: __messages_load_locale .visible .func (.param .u32 %value_out) __messages_load_locale (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/locale/lmessages.c" // BEGIN GLOBAL FUNCTION DECL: __get_current_messages_locale .visible .func (.param .u64 %value_out) __get_current_messages_locale; // BEGIN GLOBAL FUNCTION DECL: __part_load_locale .extern .func (.param .u32 %value_out) __part_load_locale (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u32 %in_ar4, .param .u32 %in_ar5, .param .u64 %in_ar6); // BEGIN VAR DEF: empty .global .align 1 .u8 empty[1]; // BEGIN VAR DEF: _messages_using_locale .global .align 4 .u32 _messages_using_locale[1]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[12] = {76,67,95,77,69,83,83,65,71,69,83,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[6] = {94,91,121,89,93,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[6] = {94,91,110,78,93,0 }; // BEGIN VAR DEF: $LC3 .const .align 1 .u8 $LC3[4] = {121,101,115,0 }; // BEGIN VAR DEF: $LC4 .const .align 1 .u8 $LC4[3] = {110,111,0 }; // BEGIN VAR DEF: _C_messages_locale .const .align 8 .u64 _C_messages_locale[4] = {generic($LC1),generic($LC2),generic($LC3),generic($LC4) }; // BEGIN VAR DEF: _messages_locale .global .align 8 .u64 _messages_locale[4]; // BEGIN GLOBAL FUNCTION DEF: __messages_load_locale .visible .func (.param .u32 %value_out) __messages_load_locale (.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 %r26; .reg .u64 %r27; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u32 %r34; .reg .u32 %r35; .reg .u32 %r37; mov.u64 %r23,%ar0; .loc 1 91 26 cvta.global.u64 %r26,_messages_locale; cvta.global.u64 %r27,empty; st.u64 [%r26+16],%r27; .loc 1 92 25 st.u64 [%r26+24],%r27; .loc 1 94 9 mov.u32 %r35,2; mov.u32 %r34,4; cvta.const.u64 %r33,$LC0; mov.u64 %r32,0; cvta.global.u64 %r31,_messages_using_locale; { .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],%r32; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r33; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r34; .param .u32 %out_arg6; st.param.u32 [%out_arg6],%r35; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r26; call (%value_in),__part_load_locale,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u32 %r37,[%value_in]; } .loc 1 99 1 mov.u32 %value,%r37; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __get_current_messages_locale .visible .func (.param .u64 %value_out) __get_current_messages_locale { .reg .u64 %value; .reg .u64 %r23; .reg .u32 %r24; .reg .pred %r25; .loc 1 106 3 ld.global.u32 %r24,[_messages_using_locale]; setp.ne.u32 %r25,%r24,0; @ %r25 bra $L4; cvta.const.u64 %r23,_C_messages_locale; bra $L2; $L4: cvta.global.u64 %r23,_messages_locale; $L2: .loc 1 107 1 mov.u64 %value,%r23; st.param.u64 [%value_out],%value; ret; } /121 1591654536 399 399 100644 8441 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: __monetary_load_locale .visible .func (.param .u32 %value_out) __monetary_load_locale (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/locale/lmonetary.c" // BEGIN GLOBAL FUNCTION DECL: __get_current_monetary_locale .visible .func (.param .u64 %value_out) __get_current_monetary_locale; // BEGIN GLOBAL VAR DECL: __mlocale_changed .extern .global .align 4 .u32 __mlocale_changed[1]; // BEGIN GLOBAL FUNCTION DECL: __part_load_locale .extern .func (.param .u32 %value_out) __part_load_locale (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u32 %in_ar4, .param .u32 %in_ar5, .param .u64 %in_ar6); // BEGIN GLOBAL FUNCTION DECL: __fix_locale_grouping_str .extern .func (.param .u64 %value_out) __fix_locale_grouping_str (.param .u64 %in_ar0); // 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 VAR DEF: empty .global .align 1 .u8 empty[1]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[12] = {76,67,95,77,79,78,69,84,65,82,89,0 }; // BEGIN VAR DEF: numempty .global .align 1 .u8 numempty[2] = {127,0 }; // BEGIN VAR DEF: _C_monetary_locale .const .align 8 .u64 _C_monetary_locale[15] = {generic(empty),generic(empty),generic(empty),generic(empty),generic(numempty),generic(empty),generic(empty),generic(numempty),generic(numempty),generic(numempty),generic(numempty),generic(numempty),generic(numempty),generic(numempty),generic(numempty) }; // BEGIN VAR DEF: _monetary_locale .global .align 8 .u64 _monetary_locale[15]; // BEGIN VAR DEF: _monetary_using_locale .global .align 4 .u32 _monetary_using_locale[1]; // BEGIN GLOBAL FUNCTION DEF: __monetary_load_locale .visible .func (.param .u32 %value_out) __monetary_load_locale (.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 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r35; .reg .u64 %r37; .reg .u64 %r39; .reg .u64 %r41; .reg .u64 %r43; .reg .u64 %r45; .reg .u64 %r47; .reg .u64 %r58; .reg .u32 %r61; .reg .u64 %r63; .reg .u64 %r64; .reg .u64 %r65; .reg .u32 %r67; .reg .u32 %r69; .reg .pred %r70; .reg .u32 %r71; .reg .pred %r72; .reg .u64 %r75; .reg .u64 %r76; .reg .u32 %r81; .reg .u64 %r82; .reg .u32 %r83; .reg .pred %r84; .reg .u64 %r89; .reg .u32 %r90; .reg .pred %r91; .reg .u64 %r96; .reg .u32 %r97; .reg .pred %r98; .reg .u64 %r103; .reg .u32 %r104; .reg .pred %r105; .reg .u64 %r110; .reg .u32 %r111; .reg .pred %r112; .reg .u64 %r117; .reg .u32 %r118; .reg .pred %r119; .reg .u64 %r124; .reg .u32 %r125; .reg .pred %r126; .reg .u64 %r131; .reg .u32 %r132; .reg .pred %r133; .reg .u64 %r135; mov.u64 %r58,%ar0; .loc 1 118 20 mov.u32 %r61,1; st.global.u32 [__mlocale_changed],%r61; .loc 1 119 8 cvta.global.u64 %r135,_monetary_locale; mov.u32 %r67,15; cvta.const.u64 %r65,$LC0; mov.u64 %r64,0; cvta.global.u64 %r63,_monetary_using_locale; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r58; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r63; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r64; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r65; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r67; .param .u32 %out_arg6; st.param.u32 [%out_arg6],%r67; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r135; call (%value_in),__part_load_locale,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u32 %r69,[%value_in]; } .loc 1 123 5 setp.ne.u32 %r70,%r69,0; @ %r70 bra $L1; .loc 1 123 15 ld.global.u32 %r71,[_monetary_using_locale]; setp.eq.u32 %r72,%r71,0; @ %r72 bra $L1; .loc 1 125 8 ld.u64 %r75,[%r135+32]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r75; call (%value_in),__fix_locale_grouping_str,(%out_arg1); ld.param.u64 %r76,[%value_in]; } .loc 1 124 33 st.u64 [%r135+32],%r76; .loc 1 130 3 ld.u64 %r25,[%r135+56]; .loc 1 85 10 mov.u32 %r81,10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r25; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r64; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r81; call (%value_in),strtol,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r82,[%value_in]; } .loc 1 86 5 cvt.u32.u64 %r83,%r82; setp.ne.u32 %r84,%r83,-1; selp.u64 %r47,%r82,127,%r84; .loc 1 130 3 st.u8 [%r25],%r47; .loc 1 131 3 ld.u64 %r26,[%r135+64]; .loc 1 85 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r64; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r81; call (%value_in),strtol,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r89,[%value_in]; } .loc 1 86 5 cvt.u32.u64 %r90,%r89; setp.ne.u32 %r91,%r90,-1; selp.u64 %r45,%r89,127,%r91; .loc 1 131 3 st.u8 [%r26],%r45; .loc 1 132 3 ld.u64 %r27,[%r135+72]; .loc 1 85 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r27; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r64; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r81; call (%value_in),strtol,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r96,[%value_in]; } .loc 1 86 5 cvt.u32.u64 %r97,%r96; setp.ne.u32 %r98,%r97,-1; selp.u64 %r43,%r96,127,%r98; .loc 1 132 3 st.u8 [%r27],%r43; .loc 1 133 3 ld.u64 %r28,[%r135+80]; .loc 1 85 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r64; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r81; call (%value_in),strtol,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r103,[%value_in]; } .loc 1 86 5 cvt.u32.u64 %r104,%r103; setp.ne.u32 %r105,%r104,-1; selp.u64 %r41,%r103,127,%r105; .loc 1 133 3 st.u8 [%r28],%r41; .loc 1 134 3 ld.u64 %r29,[%r135+88]; .loc 1 85 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r29; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r64; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r81; call (%value_in),strtol,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r110,[%value_in]; } .loc 1 86 5 cvt.u32.u64 %r111,%r110; setp.ne.u32 %r112,%r111,-1; selp.u64 %r39,%r110,127,%r112; .loc 1 134 3 st.u8 [%r29],%r39; .loc 1 135 3 ld.u64 %r30,[%r135+96]; .loc 1 85 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r64; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r81; call (%value_in),strtol,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r117,[%value_in]; } .loc 1 86 5 cvt.u32.u64 %r118,%r117; setp.ne.u32 %r119,%r118,-1; selp.u64 %r37,%r117,127,%r119; .loc 1 135 3 st.u8 [%r30],%r37; .loc 1 136 3 ld.u64 %r31,[%r135+104]; .loc 1 85 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r31; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r64; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r81; call (%value_in),strtol,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r124,[%value_in]; } .loc 1 86 5 cvt.u32.u64 %r125,%r124; setp.ne.u32 %r126,%r125,-1; selp.u64 %r35,%r124,127,%r126; .loc 1 136 3 st.u8 [%r31],%r35; .loc 1 137 3 ld.u64 %r32,[%r135+112]; .loc 1 85 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r32; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r64; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r81; call (%value_in),strtol,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r131,[%value_in]; } .loc 1 86 5 cvt.u32.u64 %r132,%r131; setp.ne.u32 %r133,%r132,-1; selp.u64 %r33,%r131,127,%r133; .loc 1 137 3 st.u8 [%r32],%r33; $L1: .loc 1 141 1 mov.u32 %value,%r69; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __get_current_monetary_locale .visible .func (.param .u64 %value_out) __get_current_monetary_locale { .reg .u64 %value; .reg .u64 %r23; .reg .u32 %r24; .reg .pred %r25; .loc 1 148 3 ld.global.u32 %r24,[_monetary_using_locale]; setp.ne.u32 %r25,%r24,0; @ %r25 bra $L16; cvta.const.u64 %r23,_C_monetary_locale; bra $L14; $L16: cvta.global.u64 %r23,_monetary_locale; $L14: .loc 1 149 1 mov.u64 %value,%r23; st.param.u64 [%value_out],%value; ret; } /140 1591654536 399 399 100644 3782 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: __numeric_load_locale .visible .func (.param .u32 %value_out) __numeric_load_locale (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/locale/lnumeric.c" // BEGIN GLOBAL FUNCTION DECL: __get_current_numeric_locale .visible .func (.param .u64 %value_out) __get_current_numeric_locale; // BEGIN GLOBAL VAR DECL: __nlocale_changed .extern .global .align 4 .u32 __nlocale_changed[1]; // BEGIN GLOBAL FUNCTION DECL: __part_load_locale .extern .func (.param .u32 %value_out) __part_load_locale (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u32 %in_ar4, .param .u32 %in_ar5, .param .u64 %in_ar6); // BEGIN GLOBAL FUNCTION DECL: __fix_locale_grouping_str .extern .func (.param .u64 %value_out) __fix_locale_grouping_str (.param .u64 %in_ar0); // BEGIN VAR DEF: _numeric_locale .global .align 8 .u64 _numeric_locale[3]; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[11] = {76,67,95,78,85,77,69,82,73,67,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[2] = {46,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[1] = {0 }; // BEGIN VAR DEF: _numeric_using_locale .global .align 4 .u32 _numeric_using_locale[1]; // BEGIN VAR DEF: numempty .global .align 1 .u8 numempty[2] = {127,0 }; // BEGIN VAR DEF: _C_numeric_locale .const .align 8 .u64 _C_numeric_locale[3] = {generic($LC1),generic($LC2),generic(numempty) }; // BEGIN GLOBAL FUNCTION DEF: __numeric_load_locale .visible .func (.param .u32 %value_out) __numeric_load_locale (.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 .u32 %r29; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u32 %r35; .reg .u64 %r36; .reg .u32 %r37; .reg .pred %r38; .reg .u32 %r39; .reg .pred %r40; .reg .u64 %r43; .reg .u64 %r44; mov.u64 %r26,%ar0; .loc 1 78 20 mov.u32 %r29,1; st.global.u32 [__nlocale_changed],%r29; .loc 1 79 8 cvta.global.u64 %r36,_numeric_locale; mov.u32 %r35,3; cvta.const.u64 %r33,$LC0; mov.u64 %r32,0; cvta.global.u64 %r31,_numeric_using_locale; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r32; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r33; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r35; .param .u32 %out_arg6; st.param.u32 [%out_arg6],%r35; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r36; call (%value_in),__part_load_locale,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u32 %r37,[%value_in]; } .loc 1 83 5 setp.ne.u32 %r38,%r37,0; @ %r38 bra $L1; .loc 1 83 15 ld.global.u32 %r39,[_numeric_using_locale]; setp.eq.u32 %r40,%r39,0; @ %r40 bra $L1; .loc 1 85 4 ld.u64 %r43,[%r36+16]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r43; call (%value_in),__fix_locale_grouping_str,(%out_arg1); ld.param.u64 %r44,[%value_in]; } .loc 1 84 28 st.u64 [%r36+16],%r44; $L1: .loc 1 88 1 mov.u32 %value,%r37; st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __get_current_numeric_locale .visible .func (.param .u64 %value_out) __get_current_numeric_locale { .reg .u64 %value; .reg .u64 %r23; .reg .u32 %r24; .reg .pred %r25; .loc 1 95 3 ld.global.u32 %r24,[_numeric_using_locale]; setp.ne.u32 %r25,%r24,0; @ %r25 bra $L8; cvta.const.u64 %r23,_C_numeric_locale; bra $L6; $L8: cvta.global.u64 %r23,_numeric_locale; $L6: .loc 1 96 1 mov.u64 %value,%r23; st.param.u64 [%value_out],%value; ret; } lib_a-locale.o/ 1591654536 399 399 100644 6211 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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_charset .visible .func (.param .u64 %value_out) __locale_charset; // BEGIN GLOBAL FUNCTION DECL: __locale_mb_cur_max .visible .func (.param .u32 %value_out) __locale_mb_cur_max; // BEGIN GLOBAL FUNCTION DECL: __locale_msgcharset .visible .func (.param .u64 %value_out) __locale_msgcharset; // BEGIN GLOBAL FUNCTION DECL: __locale_cjk_lang .visible .func (.param .u32 %value_out) __locale_cjk_lang; // BEGIN GLOBAL FUNCTION DECL: _localeconv_r .visible .func (.param .u64 %value_out) _localeconv_r (.param .u64 %in_ar0); // BEGIN GLOBAL FUNCTION DECL: setlocale .visible .func (.param .u64 %value_out) setlocale (.param .u32 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: localeconv .visible .func (.param .u64 %value_out) localeconv; // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: strcmp .extern .func (.param .u32 %value_out) strcmp (.param .u64 %in_ar0, .param .u64 %in_ar1); // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[2] = {67,0 }; // BEGIN GLOBAL VAR DEF: _PathLocale .visible .global .align 8 .u64 _PathLocale[1]; // BEGIN GLOBAL VAR DEF: __mb_cur_max .visible .global .align 4 .u32 __mb_cur_max[1] = {1 }; // BEGIN VAR DEF: lc_ctype_charset .global .align 1 .u8 lc_ctype_charset[32] = {65,83,67,73,73,0 }; // BEGIN VAR DEF: $LC3 .const .align 1 .u8 $LC3[2] = {46,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[1] = {0 }; // BEGIN VAR DEF: lconv .global .align 8 .u64 lconv[12] = {generic($LC3),generic($LC2),generic($LC2),generic($LC2),generic($LC2),generic($LC2),generic($LC2),generic($LC2),generic($LC2),generic($LC2),9187201950435737471,140185576636287 }; // BEGIN GLOBAL VAR DEF: __nlocale_changed .visible .global .align 4 .u32 __nlocale_changed[1]; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[6] = {80,79,83,73,88,0 }; // BEGIN VAR DEF: lc_message_charset .global .align 1 .u8 lc_message_charset[32] = {65,83,67,73,73,0 }; // BEGIN GLOBAL VAR DEF: __mlocale_changed .visible .global .align 4 .u32 __mlocale_changed[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 282 6 setp.ne.u64 %r29,%r28,0; @ %r29 bra $L2; $L4: .loc 1 288 10 cvta.const.u64 %r25,$LC0; bra $L1; $L2: .loc 1 284 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 284 10 setp.eq.u32 %r33,%r32,0; @ %r33 bra $L4; .loc 1 284 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 284 36 setp.eq.u32 %r37,%r36,0; @ %r37 bra $L4; .loc 1 285 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 285 4 setp.eq.u32 %r41,%r40,0; @ %r41 bra $L4; .loc 1 286 16 mov.u64 %r25,0; $L1: .loc 1 417 1 mov.u64 %value,%r25; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __locale_charset .visible .func (.param .u64 %value_out) __locale_charset { .reg .u64 %value; .loc 1 940 10 cvta.global.u64 %value,lc_ctype_charset; .loc 1 942 1 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; .loc 1 950 10 ld.global.u32 %value,[__mb_cur_max]; .loc 1 952 1 st.param.u32 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __locale_msgcharset .visible .func (.param .u64 %value_out) __locale_msgcharset { .reg .u64 %value; .loc 1 961 10 cvta.global.u64 %value,lc_message_charset; .loc 1 963 1 st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __locale_cjk_lang .visible .func (.param .u32 %value_out) __locale_cjk_lang { .reg .u32 %value; .loc 1 968 10 mov.u32 %value,0; .loc 1 969 1 st.param.u32 [%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 1020 10 cvta.global.u64 %value,lconv; .loc 1 1021 1 st.param.u64 [%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 .u32 %r24; .reg .u64 %r25; .reg .u64 %r29; .reg .u64 %r30; mov.u32 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 1033 10 ld.global.u64 %r29,[_impure_ptr]; { .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 .u64 %out_arg3; st.param.u64 [%out_arg3],%r25; call (%value_in),_setlocale_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r30,[%value_in]; } .loc 1 1034 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: localeconv .visible .func (.param .u64 %value_out) localeconv { .reg .u64 %value; .loc 1 1040 10 cvta.global.u64 %value,lconv; .loc 1 1041 1 st.param.u64 [%value_out],%value; ret; } lib_a-lrand48.o/1591654536 399 399 100644 2075 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r38; .reg .u32 %r39; .reg .u64 %r40; .reg .u16 %r41; mov.u64 %r31,%ar0; .loc 1 21 17 add.u64 %r34,%r31,240; .loc 1 21 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 22 17 ld.u16 %r36,[%r31+244]; .loc 1 22 50 shl.b64 %r37,%r36,15; .loc 1 23 39 ld.u16 %r38,[%r31+242]; shr.u32 %r39,%r38,1; cvt.u16.u32 %r41,%r39; cvt.u64.u16 %r40,%r41; .loc 1 22 57 add.u64 %value,%r37,%r40; .loc 1 24 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 .u32 %r38; .reg .u32 %r39; .reg .u64 %r40; .reg .u16 %r41; .loc 1 30 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 21 17 add.u64 %r34,%r22,240; .loc 1 21 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 22 17 ld.u16 %r36,[%r22+244]; .loc 1 22 50 shl.b64 %r37,%r36,15; .loc 1 23 39 ld.u16 %r38,[%r22+242]; shr.u32 %r39,%r38,1; cvt.u16.u32 %r41,%r39; cvt.u64.u16 %r40,%r41; .loc 1 22 57 add.u64 %value,%r37,%r40; .loc 1 31 1 st.param.u64 [%value_out],%value; ret; } lib_a-malloc.o/ 1591654536 399 399 100644 1617 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 33 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 34 6 setp.eq.u64 %r29,%r28,0; @ %r29 bra $L3; .loc 1 35 6 add.u64 %r24,%r28,8; .loc 1 35 22 st.u64 [%r28],%r25; bra $L1; $L3: mov.u64 %r24,%r28; $L1: .loc 1 38 1 mov.u64 %value,%r24; st.param.u64 [%value_out],%value; ret; } lib_a-mallocr.o/1591654536 399 399 100644 1492 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } lib_a-memccpy.o/1591654536 399 399 100644 2764 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: memccpy .visible .func (.param .u64 %value_out) memccpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../../newlib/libc/string/memccpy.c" // BEGIN GLOBAL FUNCTION DEF: memccpy .visible .func (.param .u64 %value_out) memccpy (.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 .u64 %r26; .reg .u32 %r32; .reg .u64 %r33; .reg .u64 %r36; .reg .u32 %r37; .reg .u64 %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u32 %r42; .reg .u64 %r43; .reg .u64 %r44; .reg .u64 %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .u32 %r48; .reg .u64 %r49; .reg .u32 %r50; .reg .pred %r51; .reg .u64 %r52; .reg .pred %r53; .reg .pred %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .u64 %r58; .reg .u64 %r59; .reg .pred %r60; .reg .pred %r61; .reg .u32 %r62; .reg .u16 %r63; .reg .pred %r65; .reg .pred %r66; .reg .u16 %r68; mov.u64 %r46,%ar0; mov.u64 %r47,%ar1; mov.u32 %r48,%ar2; mov.u64 %r49,%ar3; .loc 1 95 8 cvt.u32.u32 %r50,%r48; cvt.s32.s8 %r37,%r50; .loc 1 99 6 setp.le.u64 %r51,%r49,7; @ %r51 bra $L2; .loc 1 99 28 mov.u64 %r25,%r46; or.b64 %r52,%r47,%r25; and.b64 %r33,%r52,7; .loc 1 99 24 setp.ne.u64 %r53,%r33,0; @ %r53 bra $L2; cvt.s64.s8 %r44,%r50; mov.u32 %r42,8; $L3: .loc 1 114 22 shl.b64 %r24,%r33,8; .loc 1 114 14 add.u64 %r33,%r24,%r44; add.u32 %r42,%r42,-1; .loc 1 113 7 setp.ne.u32 %r55,%r42,0; @ %r55 bra $L3; $L4: mov.u64 %r43,%r25; .loc 1 120 50 ld.u64 %r26,[%r47]; .loc 1 121 18 xor.b64 %r39,%r33,%r26; .loc 1 122 15 add.u64 %r56,%r39,-72340172838076673; not.b64 %r57,%r39; and.b64 %r58,%r56,%r57; and.b64 %r59,%r58,-9187201950435737472; .loc 1 122 14 setp.ne.u64 %r60,%r59,0; @ %r60 bra $L8; .loc 1 124 40 add.u64 %r47,%r47,8; add.u64 %r25,%r25,8; mov.u64 %r46,%r25; .loc 1 124 26 st.u64 [%r43],%r26; .loc 1 125 16 add.u64 %r49,%r49,-8; .loc 1 118 13 setp.gt.u64 %r61,%r49,7; @ %r61 bra $L4; bra $L2; $L7: add.u64 %r45,%r40,1; .loc 1 135 21 ld.s8 %r32,[%r41]; .loc 1 135 19 cvt.u32.u32 %r62,%r32; st.u8 [%r40],%r62; add.u64 %r41,%r41,1; mov.u64 %r40,%r45; .loc 1 135 10 cvt.u16.u32 %r63,%r32; setp.eq.u16 %r65,%r63,%r68; @ ! %r65 bra $L6; bra $L1; $L8: mov.u64 %r46,%r25; $L2: mov.u64 %r40,%r46; mov.u64 %r41,%r47; add.u64 %r36,%r40,%r49; cvt.u16.u32 %r68,%r37; $L6: .loc 1 133 9 setp.ne.u64 %r66,%r36,%r40; @ %r66 bra $L7; .loc 1 90 8 mov.u64 %r45,0; $L1: .loc 1 144 1 mov.u64 %value,%r45; st.param.u64 [%value_out],%value; ret; } lib_a-memchr.o/ 1591654536 399 399 100644 3664 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r26; .reg .u64 %r27; .reg .u64 %r29; .reg .u64 %r37; .reg .u32 %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .u64 %r44; .reg .u64 %r48; .reg .u64 %r49; .reg .u32 %r50; .reg .u64 %r51; .reg .u32 %r52; .reg .u64 %r53; .reg .pred %r54; .reg .pred %r55; .reg .u16 %r56; .reg .u16 %r57; .reg .pred %r58; .reg .pred %r59; .reg .u16 %r60; .reg .pred %r62; .reg .u64 %r63; .reg .pred %r64; .reg .pred %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 .u64 %r74; .reg .u64 %r75; .reg .u64 %r76; .reg .u64 %r77; .reg .u64 %r78; .reg .pred %r79; .reg .pred %r80; .reg .u16 %r81; .reg .pred %r83; .reg .pred %r84; .reg .u16 %r86; .reg .u16 %r87; mov.u64 %r49,%ar0; mov.u32 %r50,%ar1; mov.u64 %r51,%ar2; .loc 1 78 17 cvt.u32.u32 %r52,%r50; cvt.u32.u8 %r39,%r52; .loc 1 85 10 and.b64 %r53,%r49,7; .loc 1 85 9 setp.eq.u64 %r54,%r53,0; @ %r54 bra $L12; .loc 1 87 18 add.u64 %r40,%r51,-1; .loc 1 87 10 setp.eq.u64 %r55,%r51,0; @ %r55 bra $L13; .loc 1 89 10 ld.u8 %r56,[%r49]; cvt.u16.u32 %r57,%r39; setp.eq.u16 %r58,%r56,%r57; @ %r58 bra $L14; cvt.u16.u32 %r87,%r39; bra $L4; $L5: .loc 1 87 18 add.u64 %r40,%r40,-1; .loc 1 87 10 setp.eq.u64 %r59,%r40,-1; @ %r59 bra $L15; .loc 1 89 10 ld.u8 %r60,[%r49]; setp.eq.u16 %r62,%r60,%r87; @ %r62 bra $L16; $L4: .loc 1 91 10 add.u64 %r49,%r49,1; .loc 1 85 10 and.b64 %r63,%r49,7; .loc 1 85 9 setp.ne.u64 %r64,%r63,0; @ %r64 bra $L5; bra $L2; $L12: mov.u64 %r40,%r51; $L2: .loc 1 94 6 setp.gt.u64 %r65,%r40,7; @ %r65 bra $L6; $L10: .loc 1 126 9 setp.eq.u64 %r66,%r40,0; @ %r66 bra $L17; $L8: .loc 1 128 10 ld.u8 %r67,[%r49]; cvt.u16.u32 %r68,%r39; setp.eq.u16 %r69,%r67,%r68; @ %r69 bra $L18; add.u64 %r37,%r49,%r40; cvt.u16.u32 %r86,%r39; bra $L7; $L6: .loc 1 105 16 shl.b32 %r70,%r50,8; and.b32 %r71,%r70,65535; .loc 1 105 21 and.b32 %r72,%r50,255; or.b32 %r73,%r71,%r72; .loc 1 105 12 cvt.s64.s32 %r41,%r73; .loc 1 106 19 shl.b64 %r26,%r41,16; .loc 1 106 12 or.b64 %r42,%r26,%r41; .loc 1 108 22 shl.b64 %r27,%r42,32; .loc 1 108 14 or.b64 %r44,%r27,%r42; $L9: .loc 1 112 15 ld.u64 %r74,[%r49]; xor.b64 %r29,%r44,%r74; add.u64 %r75,%r29,-72340172838076673; not.b64 %r76,%r29; and.b64 %r77,%r75,%r76; and.b64 %r78,%r77,-9187201950435737472; .loc 1 112 14 setp.ne.u64 %r79,%r78,0; @ %r79 bra $L8; .loc 1 114 18 add.u64 %r40,%r40,-8; .loc 1 115 15 add.u64 %r49,%r49,8; .loc 1 110 13 setp.gt.u64 %r80,%r40,7; @ %r80 bra $L9; bra $L10; $L11: .loc 1 128 10 ld.u8 %r81,[%r49]; setp.eq.u16 %r83,%r81,%r86; @ %r83 bra $L19; $L7: .loc 1 130 10 add.u64 %r49,%r49,1; .loc 1 126 9 setp.ne.u64 %r84,%r37,%r49; @ %r84 bra $L11; .loc 1 88 16 mov.u64 %r48,0; bra $L1; $L13: mov.u64 %r48,%r51; bra $L1; $L14: .loc 1 89 10 mov.u64 %r48,%r49; bra $L1; $L15: .loc 1 88 16 mov.u64 %r48,0; bra $L1; $L16: .loc 1 91 10 mov.u64 %r48,%r49; bra $L1; $L17: .loc 1 88 16 mov.u64 %r48,%r40; bra $L1; $L18: .loc 1 128 10 mov.u64 %r48,%r49; bra $L1; $L19: .loc 1 130 10 mov.u64 %r48,%r49; $L1: .loc 1 134 1 mov.u64 %value,%r48; st.param.u64 [%value_out],%value; ret; } lib_a-memcmp.o/ 1591654536 399 399 100644 2458 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r28; .reg .u32 %r29; .reg .u64 %r32; .reg .u64 %r34; .reg .u64 %r37; .reg .u32 %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .pred %r43; .reg .u64 %r44; .reg .u64 %r45; .reg .pred %r46; .reg .pred %r47; .reg .u16 %r48; .reg .u16 %r49; .reg .pred %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .pred %r53; .reg .pred %r54; .reg .u16 %r55; .reg .u16 %r56; .reg .pred %r57; .reg .u64 %r58; .reg .pred %r59; mov.u64 %r40,%ar0; mov.u64 %r41,%ar1; mov.u64 %r42,%ar2; .loc 1 81 6 setp.le.u64 %r43,%r42,7; @ %r43 bra $L2; .loc 1 81 25 or.b64 %r44,%r40,%r41; and.b64 %r45,%r44,7; .loc 1 81 21 setp.eq.u64 %r46,%r45,0; @ %r46 bra $L3; bra $L17; $L2: .loc 1 102 11 add.u64 %r32,%r42,-1; .loc 1 102 9 setp.eq.u64 %r47,%r42,0; @ %r47 bra $L12; $L11: .loc 1 104 11 ld.u8 %r28,[%r40]; .loc 1 104 18 ld.u8 %r29,[%r41]; .loc 1 104 10 cvt.u16.u32 %r48,%r28; cvt.u16.u32 %r49,%r29; setp.ne.u16 %r50,%r48,%r49; @ ! %r50 bra $L18; bra $L6; $L3: .loc 1 89 14 ld.u64 %r51,[%r40]; ld.u64 %r52,[%r41]; setp.ne.u64 %r53,%r51,%r52; @ %r53 bra $L8; .loc 1 91 13 add.u64 %r40,%r40,8; .loc 1 92 13 add.u64 %r41,%r41,8; .loc 1 93 13 add.u64 %r42,%r42,-8; .loc 1 87 13 setp.gt.u64 %r54,%r42,7; @ %r54 bra $L3; bra $L2; $L10: .loc 1 104 11 ld.u8 %r28,[%r34]; .loc 1 104 18 ld.u8 %r29,[%r41]; add.u64 %r34,%r34,1; .loc 1 104 10 cvt.u16.u32 %r55,%r28; cvt.u16.u32 %r56,%r29; setp.eq.u16 %r57,%r55,%r56; @ %r57 bra $L9; $L6: .loc 1 105 13 sub.u32 %r39,%r28,%r29; bra $L1; $L18: add.u64 %r34,%r40,1; add.u64 %r58,%r32,1; add.u64 %r37,%r40,%r58; $L9: .loc 1 107 9 add.u64 %r41,%r41,1; .loc 1 102 9 setp.ne.u64 %r59,%r34,%r37; @ %r59 bra $L10; .loc 1 110 10 mov.u32 %r39,0; bra $L1; $L12: cvt.u32.u64 %r39,%r42; bra $L1; $L17: .loc 1 102 11 add.u64 %r32,%r42,-1; bra $L11; $L8: add.u64 %r32,%r42,-1; bra $L11; $L1: .loc 1 112 1 mov.u32 %value,%r39; st.param.u32 [%value_out],%value; ret; } lib_a-memcpy.o/ 1591654536 399 399 100644 3028 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r33; .reg .u64 %r36; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .u64 %r46; .reg .u64 %r47; .reg .u64 %r48; .reg .u64 %r56; .reg .u64 %r57; .reg .u64 %r63; .reg .u64 %r64; .reg .u64 %r65; .reg .pred %r66; .reg .u64 %r67; .reg .u64 %r68; .reg .pred %r69; .reg .u64 %r70; .reg .u64 %r72; .reg .pred %r73; .reg .u64 %r74; .reg .u64 %r76; .reg .u64 %r77; .reg .u64 %r78; .reg .u64 %r79; .reg .u64 %r80; .reg .pred %r81; .reg .u64 %r82; .reg .pred %r83; .reg .u64 %r84; .reg .u64 %r85; .reg .pred %r86; .reg .u64 %r87; .reg .u32 %r88; .reg .pred %r89; .reg .u64 %r91; mov.u64 %r63,%ar0; mov.u64 %r64,%ar1; mov.u64 %r65,%ar2; .loc 1 79 6 setp.le.u64 %r66,%r65,31; @ %r66 bra $L11; .loc 1 79 28 or.b64 %r67,%r64,%r63; and.b64 %r68,%r67,7; .loc 1 79 24 setp.eq.u64 %r69,%r68,0; @ %r69 bra $L3; bra $L16; $L18: and.b64 %r65,%r65,7; add.u64 %r70,%r40,-8; and.b64 %r72,%r70,-8; add.u64 %r39,%r72,8; add.u64 %r33,%r33,%r39; add.u64 %r64,%r64,%r39; bra $L2; $L11: .loc 1 72 9 mov.u64 %r33,%r63; bra $L2; $L12: .loc 1 95 13 mov.u64 %r65,%r40; $L2: .loc 1 106 14 add.u64 %r36,%r65,-1; .loc 1 106 9 setp.ne.u64 %r73,%r65,0; @ %r73 bra $L5; bra $L17; $L3: add.u64 %r74,%r65,-32; and.b64 %r76,%r74,-32; add.u64 %r56,%r76,32; add.u64 %r57,%r64,%r56; .loc 1 81 19 mov.u64 %r41,%r63; $L7: .loc 1 87 26 ld.u64 %r77,[%r64]; st.u64 [%r41],%r77; .loc 1 88 26 ld.u64 %r78,[%r64+8]; st.u64 [%r41+8],%r78; .loc 1 89 26 ld.u64 %r79,[%r64+16]; st.u64 [%r41+16],%r79; add.u64 %r64,%r64,32; add.u64 %r41,%r41,32; .loc 1 90 26 ld.u64 %r80,[%r64+-8]; st.u64 [%r41+-8],%r80; .loc 1 85 13 setp.ne.u64 %r81,%r57,%r64; @ %r81 bra $L7; add.u64 %r33,%r63,%r56; and.b64 %r40,%r65,31; .loc 1 95 13 and.b64 %r82,%r65,24; setp.eq.u64 %r83,%r82,0; @ %r83 bra $L12; mov.u64 %r48,%r33; mov.u64 %r47,%r64; add.u64 %r91,%r64,%r40; $L8: .loc 1 97 26 ld.u64 %r84,[%r47]; st.u64 [%r48],%r84; add.u64 %r47,%r47,8; add.u64 %r48,%r48,8; .loc 1 95 13 sub.u64 %r85,%r91,%r47; setp.gt.u64 %r86,%r85,7; @ %r86 bra $L8; bra $L18; $L5: mov.u64 %r38,%r33; mov.u64 %r42,%r64; add.u64 %r87,%r36,1; add.u64 %r46,%r38,%r87; $L10: .loc 1 107 12 ld.u8 %r88,[%r42]; st.u8 [%r38],%r88; add.u64 %r38,%r38,1; add.u64 %r42,%r42,1; .loc 1 106 9 setp.ne.u64 %r89,%r38,%r46; @ %r89 bra $L10; bra $L17; $L16: .loc 1 106 14 add.u64 %r36,%r65,-1; .loc 1 72 9 mov.u64 %r33,%r63; bra $L5; $L17: .loc 1 111 1 mov.u64 %value,%r63; st.param.u64 [%value_out],%value; ret; } lib_a-memmem.o/ 1591654536 399 399 100644 22361 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: critical_factorization .func (.param .u64 %value_out) critical_factorization (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/string/str-two-way.h" // 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); // BEGIN GLOBAL FUNCTION DECL: memmem .visible .func (.param .u64 %value_out) memmem (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 2 "../../../../../../newlib/libc/string/memmem.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: 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 FUNCTION DEF: critical_factorization .func (.param .u64 %value_out) critical_factorization (.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 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .u64 %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .u64 %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u16 %r52; .reg .u16 %r53; .reg .pred %r54; .reg .pred %r57; .reg .pred %r58; .reg .pred %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u64 %r62; .reg .u16 %r63; .reg .u16 %r64; .reg .pred %r65; .reg .pred %r68; .reg .pred %r69; .reg .pred %r70; .reg .pred %r71; .reg .u64 %r73; .reg .u64 %r74; mov.u64 %r46,%ar0; mov.u64 %r47,%ar1; mov.u64 %r48,%ar2; .loc 1 113 9 mov.u64 %r37,1; .loc 1 113 5 mov.u64 %r35,%r37; .loc 1 112 5 mov.u64 %r28,0; .loc 1 111 14 mov.u64 %r32,-1; .loc 1 140 10 mov.u64 %r74,%r37; .loc 1 114 9 bra $L2; $L7: .loc 1 116 9 add.u64 %r49,%r46,%r27; .loc 1 117 9 add.u64 %r50,%r46,%r32; add.u64 %r51,%r50,%r35; .loc 1 118 10 ld.u8 %r52,[%r49]; ld.u8 %r53,[%r51]; setp.ge.u16 %r54,%r52,%r53; @ %r54 bra $L3; .loc 1 123 6 sub.u64 %r37,%r27,%r32; mov.u64 %r28,%r27; .loc 1 122 6 mov.u64 %r35,1; bra $L2; $L3: .loc 1 125 15 setp.ne.u16 %r57,%r52,%r53; @ %r57 bra $L5; .loc 1 128 7 setp.eq.u64 %r58,%r35,%r37; @ %r58 bra $L6; .loc 1 129 6 add.u64 %r35,%r35,1; bra $L2; $L6: .loc 1 132 10 mov.u64 %r28,%r27; .loc 1 133 10 mov.u64 %r35,1; bra $L2; $L5: .loc 1 139 15 mov.u64 %r32,%r28; .loc 1 139 18 add.u64 %r28,%r28,1; .loc 1 140 10 mov.u64 %r37,%r74; .loc 1 140 6 mov.u64 %r35,1; $L2: .loc 1 114 12 add.u64 %r27,%r28,%r35; .loc 1 114 9 setp.lt.u64 %r59,%r27,%r47; @ %r59 bra $L7; .loc 1 143 11 st.u64 [%r48],%r37; .loc 1 148 9 mov.u64 %r38,1; .loc 1 148 5 mov.u64 %r36,%r38; .loc 1 147 5 mov.u64 %r22,0; .loc 1 146 18 mov.u64 %r26,-1; .loc 1 175 10 mov.u64 %r73,%r38; .loc 1 149 9 bra $L8; $L13: .loc 1 151 9 add.u64 %r60,%r46,%r33; .loc 1 152 9 add.u64 %r61,%r46,%r26; add.u64 %r62,%r61,%r36; .loc 1 153 10 ld.u8 %r63,[%r60]; ld.u8 %r64,[%r62]; setp.le.u16 %r65,%r63,%r64; @ %r65 bra $L9; .loc 1 158 6 sub.u64 %r38,%r33,%r26; mov.u64 %r22,%r33; .loc 1 157 6 mov.u64 %r36,1; bra $L8; $L9: .loc 1 160 15 setp.ne.u16 %r68,%r63,%r64; @ %r68 bra $L11; .loc 1 163 7 setp.eq.u64 %r69,%r36,%r38; @ %r69 bra $L12; .loc 1 164 6 add.u64 %r36,%r36,1; bra $L8; $L12: .loc 1 167 10 mov.u64 %r22,%r33; .loc 1 168 10 mov.u64 %r36,1; bra $L8; $L11: .loc 1 174 19 mov.u64 %r26,%r22; .loc 1 174 22 add.u64 %r22,%r22,1; .loc 1 175 10 mov.u64 %r38,%r73; .loc 1 175 6 mov.u64 %r36,1; $L8: .loc 1 149 12 add.u64 %r33,%r22,%r36; .loc 1 149 9 setp.lt.u64 %r70,%r33,%r47; @ %r70 bra $L13; .loc 1 181 22 add.u64 %r34,%r26,1; .loc 1 181 39 add.u64 %r45,%r32,1; .loc 1 181 6 setp.lt.u64 %r71,%r34,%r45; @ %r71 bra $L1; .loc 1 183 11 st.u64 [%r48],%r38; .loc 1 184 25 mov.u64 %r45,%r34; $L1: .loc 1 185 1 mov.u64 %value,%r45; st.param.u64 [%value_out],%value; ret; } // 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,2064; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r39; .reg .u64 %r41; .reg .u64 %r46; .reg .u64 %r55; .reg .u64 %r58; .reg .u64 %r61; .reg .u64 %r62; .reg .u64 %r63; .reg .u64 %r65; .reg .u64 %r72; .reg .u64 %r73; .reg .u64 %r74; .reg .u64 %r75; .reg .u64 %r77; .reg .u64 %r78; .reg .u64 %r82; .reg .u64 %r89; .reg .u64 %r103; .reg .u64 %r104; .reg .u64 %r108; .reg .u64 %r109; .reg .u64 %r110; .reg .u64 %r111; .reg .u64 %r112; .reg .u64 %r116; .reg .u64 %r117; .reg .pred %r118; .reg .pred %r119; .reg .u64 %r123; .reg .u64 %r124; .reg .u32 %r125; .reg .pred %r126; .reg .u64 %r128; .reg .u64 %r129; .reg .u64 %r130; .reg .u64 %r132; .reg .pred %r133; .reg .u64 %r135; .reg .u64 %r137; .reg .u64 %r138; .reg .u64 %r139; .reg .pred %r140; .reg .pred %r141; .reg .pred %r142; .reg .pred %r143; .reg .u64 %r145; .reg .u64 %r146; .reg .u16 %r147; .reg .u16 %r148; .reg .pred %r149; .reg .pred %r150; .reg .u64 %r151; .reg .u64 %r152; .reg .u64 %r153; .reg .u16 %r154; .reg .u16 %r155; .reg .pred %r156; .reg .pred %r157; .reg .u64 %r158; .reg .u64 %r159; .reg .u64 %r160; .reg .u16 %r161; .reg .u16 %r162; .reg .pred %r163; .reg .u64 %r164; .reg .pred %r165; .reg .u64 %r166; .reg .pred %r167; .reg .u64 %r168; .reg .u64 %r169; .reg .u64 %r171; .reg .u64 %r173; .reg .u64 %r174; .reg .u64 %r175; .reg .pred %r176; .reg .u64 %r179; .reg .u16 %r181; .reg .u16 %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 .pred %r201; .reg .u64 %r204; .reg .u16 %r205; .reg .u16 %r206; .reg .pred %r207; .reg .pred %r212; .reg .u64 %r214; .reg .u64 %r215; .reg .u16 %r216; .reg .u16 %r217; .reg .pred %r218; .reg .u64 %r219; .reg .u64 %r220; .reg .u64 %r221; .reg .u64 %r222; .reg .u64 %r223; .reg .u64 %r224; .reg .u64 %r225; .reg .pred %r226; .reg .u64 %r227; .reg .u64 %r228; .reg .u64 %r229; mov.u64 %r109,%ar0; mov.u64 %r110,%ar1; mov.u64 %r111,%ar2; mov.u64 %r112,%ar3; .loc 1 304 12 add.u64 %r116,%frame,2048; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r111; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r112; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r116; call (%value_in),critical_factorization,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r117,[%value_in]; } mov.u64 %r104,%frame; $L16: .loc 1 311 20 st.u64 [%r104],%r112; add.u64 %r104,%r104,8; .loc 1 310 3 setp.ne.u64 %r118,%r116,%r104; @ %r118 bra $L16; add.u64 %r89,%r112,-1; .loc 1 312 3 setp.ne.u64 %r119,%r112,0; @ %r119 bra $L17; $L21: .loc 1 317 32 ld.u64 %r124,[%frame+2048]; add.u64 %r123,%r111,%r124; .loc 1 317 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r111; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r123; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r117; call (%value_in),memcmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r125,[%value_in]; } .loc 1 317 6 setp.eq.u32 %r126,%r125,0; @ %r126 bra $L18; bra $L64; $L17: add.u64 %r103,%r111,%r112; .loc 1 312 3 mov.u64 %r39,%r111; add.u64 %r221,%r111,%r89; $L20: .loc 1 313 44 ld.u8 %r128,[%r39]; shl.b64 %r129,%r128,3; add.u64 %r130,%frame,%r129; sub.u64 %r132,%r221,%r39; st.u64 [%r130],%r132; add.u64 %r39,%r39,1; .loc 1 312 3 setp.ne.u64 %r133,%r39,%r103; @ %r133 bra $L20; bra $L21; $L18: .loc 1 360 10 ld.u64 %r41,[%frame+2048]; .loc 1 361 15 sub.u64 %r74,%r112,%r41; .loc 1 322 14 mov.u64 %r58,0; .loc 1 324 9 mov.u64 %r62,%r58; .loc 1 352 10 add.u64 %r222,%r117,-1; .loc 1 353 34 add.u64 %r223,%r111,%r222; mov.u64 %r224,1; sub.u64 %r225,%r224,%r117; $L32: .loc 1 329 24 add.u64 %r220,%r109,%r62; add.u64 %r135,%r220,%r89; .loc 1 329 10 ld.u8 %r137,[%r135]; shl.b64 %r138,%r137,3; add.u64 %r139,%frame,%r138; ld.u64 %r65,[%r139]; .loc 1 330 7 setp.eq.u64 %r140,%r65,0; @ %r140 bra $L22; .loc 1 332 11 setp.eq.u64 %r141,%r58,0; @ %r141 bra $L23; .loc 1 332 19 setp.gt.u64 %r142,%r41,%r65; .loc 1 337 11 selp.u64 %r65,%r74,%r65,%r142; $L23: .loc 1 340 10 add.u64 %r62,%r62,%r65; .loc 1 339 15 mov.u64 %r58,0; .loc 1 341 8 bra $L24; $L22: .loc 1 345 6 max.u64 %r72,%r58,%r117; .loc 1 346 10 setp.ge.u64 %r143,%r72,%r89; @ %r143 bra $L25; .loc 1 347 9 add.u64 %r145,%r220,%r72; .loc 1 346 34 add.u64 %r146,%r111,%r72; .loc 1 346 30 ld.u8 %r147,[%r145]; ld.u8 %r148,[%r146]; setp.ne.u16 %r149,%r147,%r148; @ %r149 bra $L26; $L27: .loc 1 348 6 add.u64 %r72,%r72,1; .loc 1 346 10 setp.ge.u64 %r150,%r72,%r89; @ %r150 bra $L25; .loc 1 346 34 add.u64 %r151,%r111,%r72; .loc 1 347 9 add.u64 %r152,%r62,%r72; add.u64 %r153,%r109,%r152; .loc 1 346 30 ld.u8 %r154,[%r151]; ld.u8 %r155,[%r153]; setp.eq.u16 %r156,%r154,%r155; @ %r156 bra $L27; bra $L26; $L43: mov.u64 %r73,%r61; $L29: .loc 1 355 3 add.u64 %r61,%r73,-1; .loc 1 353 14 setp.eq.u64 %r157,%r58,%r73; @ %r157 bra $L28; .loc 1 353 34 add.u64 %r158,%r111,%r61; .loc 1 354 9 add.u64 %r159,%r62,%r61; add.u64 %r160,%r109,%r159; .loc 1 353 30 ld.u8 %r161,[%r158]; ld.u8 %r162,[%r160]; setp.eq.u16 %r163,%r161,%r162; @ %r163 bra $L43; bra $L28; $L45: .loc 1 353 14 mov.u64 %r73,%r117; $L28: .loc 1 356 27 add.u64 %r164,%r58,1; .loc 1 356 11 setp.le.u64 %r165,%r164,%r73; @ %r165 bra $L30; .loc 1 357 10 mov.u64 %r108,%r220; bra $L15; $L30: .loc 1 360 10 add.u64 %r62,%r62,%r41; .loc 1 361 15 mov.u64 %r58,%r74; $L24: .loc 1 325 14 sub.u64 %r166,%r110,%r112; .loc 1 325 13 setp.ge.u64 %r167,%r166,%r62; @ %r167 bra $L32; .loc 1 408 10 mov.u64 %r108,0; bra $L15; $L64: .loc 1 375 16 sub.u64 %r169,%r112,%r117; max.u64 %r168,%r169,%r117; .loc 1 375 50 add.u64 %r46,%r168,1; .loc 1 376 9 mov.u64 %r55,0; .loc 1 390 10 setp.ge.u64 %r226,%r117,%r89; .loc 1 390 34 add.u64 %r227,%r111,%r117; mov.u64 %r228,1; sub.u64 %r229,%r228,%r117; $L41: .loc 1 381 24 add.u64 %r219,%r109,%r55; add.u64 %r171,%r219,%r89; .loc 1 381 10 ld.u8 %r173,[%r171]; shl.b64 %r174,%r173,3; add.u64 %r175,%frame,%r174; ld.u64 %r75,[%r175]; .loc 1 382 7 setp.ne.u64 %r176,%r75,0; @ %r176 bra $L33; .loc 1 390 10 @ %r226 bra $L34; .loc 1 391 9 add.u64 %r179,%r219,%r117; .loc 1 390 30 ld.u8 %r181,[%r179]; ld.u8 %r182,[%r227]; setp.eq.u16 %r183,%r181,%r182; @ %r183 bra $L44; mov.u64 %r77,%r117; bra $L36; $L33: .loc 1 384 10 add.u64 %r55,%r55,%r75; .loc 1 385 8 bra $L37; $L44: .loc 1 390 30 mov.u64 %r77,%r117; $L35: .loc 1 392 6 add.u64 %r77,%r77,1; .loc 1 390 10 setp.ge.u64 %r184,%r77,%r89; @ %r184 bra $L34; .loc 1 390 34 add.u64 %r185,%r111,%r77; .loc 1 391 9 add.u64 %r186,%r77,%r55; add.u64 %r187,%r109,%r186; .loc 1 390 30 ld.u8 %r188,[%r185]; ld.u8 %r189,[%r187]; setp.eq.u16 %r190,%r188,%r189; @ %r190 bra $L35; bra $L36; $L39: .loc 1 399 3 add.u64 %r78,%r78,-1; .loc 1 397 14 setp.eq.u64 %r191,%r78,-1; @ %r191 bra $L38; .loc 1 397 33 add.u64 %r192,%r111,%r78; .loc 1 398 15 add.u64 %r193,%r78,%r55; add.u64 %r194,%r109,%r193; .loc 1 397 29 ld.u8 %r195,[%r192]; ld.u8 %r196,[%r194]; setp.eq.u16 %r197,%r195,%r196; @ %r197 bra $L39; bra $L40; $L37: .loc 1 377 14 sub.u64 %r198,%r110,%r112; .loc 1 377 13 setp.le.u64 %r199,%r55,%r198; @ %r199 bra $L41; .loc 1 408 10 mov.u64 %r108,0; bra $L15; $L25: .loc 1 352 10 mov.u64 %r73,%r222; .loc 1 353 14 setp.ge.u64 %r201,%r58,%r117; @ %r201 bra $L45; .loc 1 354 9 add.u64 %r204,%r220,%r222; .loc 1 353 30 ld.u8 %r205,[%r223]; ld.u8 %r206,[%r204]; setp.eq.u16 %r207,%r205,%r206; @ %r207 bra $L29; mov.u64 %r73,%r117; bra $L28; $L26: add.u64 %r82,%r225,%r62; .loc 1 365 10 add.u64 %r62,%r82,%r72; .loc 1 366 15 mov.u64 %r58,%r65; bra $L24; $L38: .loc 1 401 10 mov.u64 %r108,%r219; bra $L15; $L40: .loc 1 402 10 add.u64 %r55,%r55,%r46; bra $L37; $L36: add.u64 %r63,%r229,%r55; .loc 1 405 8 add.u64 %r55,%r63,%r77; bra $L37; $L34: .loc 1 396 10 add.u64 %r78,%r117,-1; .loc 1 397 14 setp.eq.u64 %r212,%r78,-1; @ %r212 bra $L38; .loc 1 398 15 add.u64 %r214,%r219,%r78; .loc 1 397 33 add.u64 %r215,%r111,%r78; .loc 1 397 29 ld.u8 %r216,[%r214]; ld.u8 %r217,[%r215]; setp.eq.u16 %r218,%r216,%r217; @ %r218 bra $L39; bra $L40; $L15: .loc 1 409 1 mov.u64 %value,%r108; st.shared.u64 [%sspslot],%sspprev; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: memmem .visible .func (.param .u64 %value_out) memmem (.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 .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r36; .reg .u64 %r38; .reg .u64 %r43; .reg .u64 %r45; .reg .u64 %r51; .reg .u64 %r52; .reg .u64 %r56; .reg .u64 %r57; .reg .u32 %r64; .reg .u32 %r65; .reg .u64 %r68; .reg .u64 %r76; .reg .u64 %r89; .reg .u64 %r92; .reg .u64 %r101; .reg .u64 %r102; .reg .u64 %r103; .reg .u64 %r104; .reg .u64 %r105; .reg .pred %r106; .reg .pred %r107; .reg .pred %r108; .reg .u32 %r112; .reg .u64 %r113; .reg .u32 %r115; .reg .u32 %r116; .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 .u64 %r126; .reg .pred %r127; .reg .u64 %r131; .reg .u64 %r135; .reg .u64 %r136; .reg .u32 %r137; .reg .pred %r138; .reg .pred %r139; .reg .u64 %r140; .reg .u64 %r141; .reg .u64 %r142; .reg .u16 %r143; .reg .u16 %r144; .reg .pred %r145; .reg .pred %r146; .reg .u64 %r147; .reg .u64 %r148; .reg .u64 %r149; .reg .u16 %r150; .reg .u16 %r151; .reg .pred %r152; .reg .u64 %r153; .reg .u64 %r154; .reg .u16 %r156; .reg .u16 %r157; .reg .pred %r158; .reg .pred %r159; .reg .u64 %r160; .reg .u64 %r161; .reg .u64 %r162; .reg .u16 %r163; .reg .u16 %r164; .reg .pred %r165; .reg .u64 %r166; .reg .pred %r167; .reg .u64 %r168; .reg .pred %r169; .reg .u64 %r170; .reg .u64 %r171; .reg .pred %r172; .reg .u64 %r173; .reg .u64 %r174; .reg .u64 %r175; .reg .u16 %r176; .reg .u16 %r177; .reg .pred %r178; .reg .u64 %r180; .reg .u64 %r181; .reg .u16 %r182; .reg .u16 %r183; .reg .pred %r184; .reg .u64 %r185; .reg .pred %r186; .reg .u16 %r187; .reg .u16 %r188; .reg .pred %r189; .reg .u64 %r190; .reg .pred %r191; .reg .u64 %r193; .reg .u64 %r194; .reg .u64 %r195; .reg .u16 %r196; .reg .u16 %r197; .reg .pred %r198; .reg .u64 %r203; .reg .pred %r205; .reg .pred %r211; .reg .u64 %r212; .reg .u64 %r213; .reg .u64 %r214; .reg .u64 %r215; .reg .u64 %r216; .reg .pred %r217; .reg .u64 %r218; .reg .u64 %r219; .reg .u64 %r220; .reg .u64 %r221; .reg .u64 %r222; mov.u64 %r102,%ar0; mov.u64 %r103,%ar1; mov.u64 %r104,%ar2; mov.u64 %r105,%ar3; .loc 2 60 6 setp.eq.u64 %r106,%r105,0; @ %r106 bra $L90; .loc 2 83 6 setp.le.u64 %r107,%r105,%r103; @ %r107 bra $L67; $L69: .loc 2 84 12 mov.u64 %r101,0; bra $L65; $L67: .loc 2 90 6 setp.gt.u64 %r108,%r105,31; @ %r108 bra $L68; .loc 2 92 18 ld.u8 %r112,[%r104]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r102; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r112; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r103; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r113,[%value_in]; } mov.u64 %r101,%r113; .loc 2 93 11 set.u32.eq.u64 %r115,%r113,0; neg.s32 %r116,%r115; .loc 2 93 35 set.u32.eq.u64 %r118,%r105,1; neg.s32 %r119,%r118; .loc 2 93 21 cvt.u16.u32 %r121,%r116; cvt.u16.u32 %r122,%r119; or.b16 %r120,%r121,%r122; .loc 2 93 10 cvt.u32.u16 %r123,%r120; cvt.u16.u8 %r124,%r123; setp.ne.u16 %r125,%r124,0; @ %r125 bra $L65; .loc 2 95 32 sub.u64 %r126,%r113,%r102; .loc 2 95 20 sub.u64 %r29,%r103,%r126; .loc 2 96 10 setp.gt.u64 %r127,%r105,%r29; @ %r127 bra $L69; .loc 1 209 12 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r104; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r105; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call (%value_in),critical_factorization,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r131,[%value_in]; } .loc 1 213 32 ld.u64 %r136,[%frame]; add.u64 %r135,%r104,%r136; .loc 1 213 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r104; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r135; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r131; call (%value_in),memcmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r137,[%value_in]; } .loc 1 213 6 setp.ne.u32 %r138,%r137,0; @ %r138 bra $L70; .loc 1 238 10 ld.u64 %r51,[%frame]; .loc 1 239 15 sub.u64 %r52,%r105,%r51; .loc 1 219 9 mov.u64 %r31,0; .loc 1 218 14 mov.u64 %r30,%r31; .loc 1 230 10 add.u64 %r212,%r131,-1; .loc 1 231 34 add.u64 %r213,%r104,%r212; mov.u64 %r214,1; sub.u64 %r215,%r214,%r131; $L78: .loc 1 223 6 max.u64 %r38,%r30,%r131; .loc 1 224 10 setp.le.u64 %r139,%r105,%r38; @ %r139 bra $L71; .loc 1 224 30 add.u64 %r140,%r104,%r38; .loc 1 225 12 add.u64 %r141,%r113,%r31; add.u64 %r142,%r141,%r38; .loc 1 224 26 ld.u8 %r143,[%r140]; ld.u8 %r144,[%r142]; setp.ne.u16 %r145,%r143,%r144; @ %r145 bra $L72; $L73: .loc 1 226 6 add.u64 %r38,%r38,1; .loc 1 224 10 setp.eq.u64 %r146,%r105,%r38; @ %r146 bra $L71; .loc 1 224 30 add.u64 %r147,%r104,%r38; .loc 1 225 12 add.u64 %r148,%r31,%r38; add.u64 %r149,%r113,%r148; .loc 1 224 26 ld.u8 %r150,[%r147]; ld.u8 %r151,[%r149]; setp.eq.u16 %r152,%r150,%r151; @ %r152 bra $L73; bra $L72; $L87: .loc 1 232 9 add.u64 %r153,%r113,%r31; add.u64 %r154,%r153,%r212; .loc 1 231 30 ld.u8 %r156,[%r154]; ld.u8 %r157,[%r213]; setp.ne.u16 %r158,%r156,%r157; @ ! %r158 bra $L75; bra $L91; $L92: mov.u64 %r43,%r45; $L75: .loc 1 233 3 add.u64 %r45,%r43,-1; .loc 1 231 14 setp.eq.u64 %r159,%r30,%r43; @ %r159 bra $L74; .loc 1 231 34 add.u64 %r160,%r104,%r45; .loc 1 232 9 add.u64 %r161,%r31,%r45; add.u64 %r162,%r113,%r161; .loc 1 231 30 ld.u8 %r163,[%r160]; ld.u8 %r164,[%r162]; setp.eq.u16 %r165,%r163,%r164; @ %r165 bra $L92; bra $L74; $L91: mov.u64 %r43,%r131; $L74: .loc 1 234 27 add.u64 %r166,%r30,1; .loc 1 234 11 setp.le.u64 %r167,%r166,%r43; @ %r167 bra $L76; .loc 1 235 10 add.u64 %r101,%r113,%r31; bra $L65; $L76: .loc 1 238 10 add.u64 %r31,%r31,%r51; .loc 1 239 15 mov.u64 %r30,%r52; $L88: .loc 1 220 14 sub.u64 %r168,%r29,%r105; .loc 1 220 13 setp.ge.u64 %r169,%r168,%r31; @ %r169 bra $L78; .loc 1 276 10 mov.u64 %r101,0; bra $L65; $L70: .loc 1 252 16 sub.u64 %r171,%r105,%r131; max.u64 %r170,%r171,%r131; .loc 1 252 50 add.u64 %r56,%r170,1; .loc 1 253 9 mov.u64 %r68,0; setp.le.u64 %r211,%r105,%r131; .loc 1 264 10 add.u64 %r216,%r131,-1; .loc 1 265 14 setp.ne.u64 %r217,%r216,-1; .loc 1 266 15 add.u64 %r218,%r113,%r216; add.u64 %r219,%r131,-2; add.u64 %r220,%r104,-1; mov.u64 %r221,1; sub.u64 %r222,%r221,%r131; bra $L79; $L94: .loc 1 258 26 mov.u64 %r57,%r131; $L81: .loc 1 260 6 add.u64 %r57,%r57,1; .loc 1 258 10 setp.eq.u64 %r172,%r105,%r57; @ %r172 bra $L80; .loc 1 258 30 add.u64 %r173,%r104,%r57; .loc 1 259 12 add.u64 %r174,%r57,%r68; add.u64 %r175,%r113,%r174; .loc 1 258 26 ld.u8 %r176,[%r173]; ld.u8 %r177,[%r175]; setp.eq.u16 %r178,%r176,%r177; @ %r178 bra $L81; bra $L82; $L89: .loc 1 266 15 add.u64 %r180,%r218,%r68; .loc 1 265 33 add.u64 %r181,%r104,%r216; .loc 1 265 29 ld.u8 %r182,[%r180]; ld.u8 %r183,[%r181]; setp.ne.u16 %r184,%r182,%r183; @ %r184 bra $L83; add.u64 %r89,%r104,%r219; add.u64 %r185,%r68,%r219; add.u64 %r92,%r113,%r185; $L85: .loc 1 265 14 setp.eq.u64 %r186,%r89,%r220; @ %r186 bra $L84; .loc 1 265 33 ld.u8 %r64,[%r89]; .loc 1 266 15 ld.u8 %r65,[%r92]; add.u64 %r89,%r89,-1; add.u64 %r92,%r92,-1; .loc 1 265 29 cvt.u16.u32 %r187,%r64; cvt.u16.u32 %r188,%r65; setp.eq.u16 %r189,%r187,%r188; @ %r189 bra $L85; bra $L83; $L86: .loc 1 254 14 sub.u64 %r190,%r29,%r105; .loc 1 254 13 setp.lt.u64 %r191,%r190,%r68; @ %r191 bra $L93; $L79: .loc 1 258 10 @ %r211 bra $L80; .loc 1 259 12 add.u64 %r193,%r113,%r131; add.u64 %r194,%r193,%r68; .loc 1 258 30 add.u64 %r195,%r104,%r131; .loc 1 258 26 ld.u8 %r196,[%r194]; ld.u8 %r197,[%r195]; setp.eq.u16 %r198,%r196,%r197; @ %r198 bra $L94; mov.u64 %r57,%r131; bra $L82; $L93: .loc 1 276 10 mov.u64 %r101,0; .loc 2 98 14 bra $L65; $L68: .loc 2 100 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r102; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r103; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r104; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r105; call (%value_in),two_way_long_needle,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r203,[%value_in]; } mov.u64 %r101,%r203; bra $L65; $L90: .loc 2 63 12 mov.u64 %r101,%r102; bra $L65; $L84: .loc 1 269 10 add.u64 %r101,%r113,%r68; bra $L65; $L83: .loc 1 270 10 add.u64 %r68,%r68,%r56; bra $L86; $L71: .loc 1 230 10 mov.u64 %r43,%r212; .loc 1 231 14 setp.lt.u64 %r205,%r30,%r131; @ %r205 bra $L87; mov.u64 %r43,%r131; bra $L74; $L72: add.u64 %r36,%r215,%r31; .loc 1 243 10 add.u64 %r31,%r36,%r38; .loc 1 244 15 mov.u64 %r30,0; bra $L88; $L82: add.u64 %r76,%r222,%r68; .loc 1 273 8 add.u64 %r68,%r57,%r76; bra $L86; $L80: .loc 1 265 14 @ %r217 bra $L89; bra $L84; $L65: .loc 2 102 1 mov.u64 %value,%r101; st.shared.u64 [%sspslot],%sspprev; st.param.u64 [%value_out],%value; ret; } lib_a-memmove.o/1591654536 399 399 100644 3628 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r23; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r34; .reg .u64 %r36; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r41; .reg .u64 %r42; .reg .u64 %r43; .reg .u64 %r45; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u64 %r59; .reg .u64 %r60; .reg .u64 %r66; .reg .u64 %r67; .reg .u64 %r68; .reg .pred %r69; .reg .pred %r70; .reg .pred %r71; .reg .u32 %r72; .reg .pred %r73; .reg .pred %r74; .reg .u64 %r75; .reg .u64 %r76; .reg .pred %r77; .reg .u64 %r78; .reg .u64 %r80; .reg .pred %r81; .reg .u64 %r82; .reg .u64 %r84; .reg .pred %r85; .reg .u64 %r86; .reg .pred %r87; .reg .u64 %r88; .reg .pred %r89; .reg .u64 %r90; .reg .u32 %r91; .reg .pred %r92; .reg .u64 %r94; mov.u64 %r66,%ar0; mov.u64 %r67,%ar1; mov.u64 %r68,%ar2; .loc 1 94 6 setp.le.u64 %r69,%r66,%r67; @ %r69 bra $L2; .loc 1 94 30 add.u64 %r42,%r67,%r68; .loc 1 94 17 setp.le.u64 %r70,%r42,%r66; @ %r70 bra $L2; .loc 1 98 11 add.u64 %r43,%r66,%r68; .loc 1 99 13 setp.eq.u64 %r71,%r68,0; @ %r71 bra $L16; $L4: .loc 1 101 11 add.u64 %r42,%r42,-1; add.u64 %r43,%r43,-1; ld.u8 %r72,[%r42]; st.u8 [%r43],%r72; .loc 1 99 13 setp.ne.u64 %r73,%r67,%r42; @ %r73 bra $L4; bra $L16; $L2: .loc 1 109 10 setp.le.u64 %r74,%r68,31; @ %r74 bra $L13; .loc 1 109 34 or.b64 %r75,%r67,%r66; and.b64 %r76,%r75,7; .loc 1 109 30 setp.eq.u64 %r77,%r76,0; @ %r77 bra $L6; bra $L23; $L24: and.b64 %r68,%r68,7; add.u64 %r78,%r38,-8; and.b64 %r80,%r78,-8; add.u64 %r36,%r80,8; add.u64 %r23,%r23,%r36; add.u64 %r67,%r67,%r36; bra $L5; $L13: mov.u64 %r23,%r66; bra $L5; $L14: .loc 1 125 17 mov.u64 %r68,%r38; $L5: .loc 1 136 20 add.u64 %r41,%r68,-1; .loc 1 136 13 setp.ne.u64 %r81,%r68,0; @ %r81 bra $L8; bra $L16; $L6: add.u64 %r82,%r68,-32; and.b64 %r84,%r82,-32; add.u64 %r59,%r84,32; add.u64 %r60,%r67,%r59; .loc 1 109 30 mov.u64 %r34,%r66; $L9: .loc 1 117 32 ld.u64 %r28,[%r67]; .loc 1 117 30 st.u64 [%r34],%r28; .loc 1 118 32 ld.u64 %r29,[%r67+8]; .loc 1 118 30 st.u64 [%r34+8],%r29; .loc 1 119 32 ld.u64 %r30,[%r67+16]; .loc 1 119 30 st.u64 [%r34+16],%r30; add.u64 %r67,%r67,32; add.u64 %r34,%r34,32; .loc 1 120 32 ld.u64 %r31,[%r67+-8]; .loc 1 120 30 st.u64 [%r34+-8],%r31; .loc 1 115 17 setp.ne.u64 %r85,%r60,%r67; @ %r85 bra $L9; add.u64 %r23,%r66,%r59; and.b64 %r38,%r68,31; .loc 1 125 17 and.b64 %r86,%r68,24; setp.eq.u64 %r87,%r86,0; @ %r87 bra $L14; mov.u64 %r51,%r23; mov.u64 %r50,%r67; add.u64 %r94,%r67,%r38; $L10: .loc 1 127 32 ld.u64 %r32,[%r50]; .loc 1 127 30 st.u64 [%r51],%r32; add.u64 %r50,%r50,8; add.u64 %r51,%r51,8; .loc 1 125 17 sub.u64 %r88,%r94,%r50; setp.gt.u64 %r89,%r88,7; @ %r89 bra $L10; bra $L24; $L8: mov.u64 %r39,%r23; mov.u64 %r45,%r67; add.u64 %r90,%r41,1; add.u64 %r49,%r39,%r90; $L12: .loc 1 138 18 ld.u8 %r91,[%r45]; st.u8 [%r39],%r91; add.u64 %r39,%r39,1; add.u64 %r45,%r45,1; .loc 1 136 13 setp.ne.u64 %r92,%r39,%r49; @ %r92 bra $L12; bra $L16; $L23: .loc 1 136 20 add.u64 %r41,%r68,-1; mov.u64 %r23,%r66; bra $L8; $L16: .loc 1 144 1 mov.u64 %value,%r66; st.param.u64 [%value_out],%value; ret; } lib_a-mempcpy.o/1591654536 399 399 100644 3056 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: mempcpy .visible .func (.param .u64 %value_out) mempcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/string/mempcpy.c" // BEGIN GLOBAL FUNCTION DEF: mempcpy .visible .func (.param .u64 %value_out) mempcpy (.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 %r29; .reg .u64 %r30; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .u64 %r55; .reg .u64 %r56; .reg .u64 %r61; .reg .u64 %r62; .reg .u64 %r63; .reg .u64 %r64; .reg .pred %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .pred %r68; .reg .pred %r69; .reg .u64 %r70; .reg .u64 %r72; .reg .pred %r73; .reg .u64 %r74; .reg .pred %r75; .reg .u64 %r76; .reg .pred %r77; .reg .u64 %r78; .reg .u64 %r80; .reg .u32 %r81; .reg .pred %r82; .reg .u64 %r84; mov.u64 %r62,%ar0; mov.u64 %r63,%ar1; mov.u64 %r64,%ar2; .loc 1 75 6 setp.le.u64 %r65,%r64,31; @ %r65 bra $L2; .loc 1 75 28 or.b64 %r66,%r63,%r62; and.b64 %r67,%r66,7; .loc 1 75 24 setp.eq.u64 %r68,%r67,0; @ %r68 bra $L3; bra $L14; $L10: .loc 1 91 13 mov.u64 %r64,%r38; $L2: .loc 1 102 14 add.u64 %r35,%r64,-1; .loc 1 102 9 setp.ne.u64 %r69,%r64,0; @ %r69 bra $L5; mov.u64 %r61,%r62; bra $L1; $L3: add.u64 %r70,%r64,-32; and.b64 %r72,%r70,-32; add.u64 %r55,%r72,32; add.u64 %r56,%r63,%r55; .loc 1 77 19 mov.u64 %r39,%r62; $L7: .loc 1 83 28 ld.u64 %r26,[%r63]; .loc 1 83 26 st.u64 [%r39],%r26; .loc 1 84 28 ld.u64 %r27,[%r63+8]; .loc 1 84 26 st.u64 [%r39+8],%r27; .loc 1 85 28 ld.u64 %r28,[%r63+16]; .loc 1 85 26 st.u64 [%r39+16],%r28; add.u64 %r63,%r63,32; add.u64 %r39,%r39,32; .loc 1 86 28 ld.u64 %r29,[%r63+-8]; .loc 1 86 26 st.u64 [%r39+-8],%r29; .loc 1 81 13 setp.ne.u64 %r73,%r56,%r63; @ %r73 bra $L7; add.u64 %r62,%r62,%r55; and.b64 %r38,%r64,31; .loc 1 91 13 and.b64 %r74,%r64,24; setp.eq.u64 %r75,%r74,0; @ %r75 bra $L10; mov.u64 %r47,%r62; mov.u64 %r46,%r63; add.u64 %r84,%r63,%r38; $L8: .loc 1 93 28 ld.u64 %r30,[%r46]; .loc 1 93 26 st.u64 [%r47],%r30; add.u64 %r46,%r46,8; add.u64 %r47,%r47,8; .loc 1 91 13 sub.u64 %r76,%r84,%r46; setp.gt.u64 %r77,%r76,7; @ %r77 bra $L8; add.u64 %r78,%r38,-8; and.b64 %r80,%r78,-8; add.u64 %r37,%r80,8; add.u64 %r63,%r63,%r37; add.u64 %r62,%r62,%r37; and.b64 %r64,%r64,7; bra $L2; $L5: mov.u64 %r40,%r63; mov.u64 %r41,%r62; add.u64 %r36,%r35,1; add.u64 %r45,%r40,%r36; $L9: .loc 1 103 12 ld.u8 %r81,[%r40]; st.u8 [%r41],%r81; add.u64 %r40,%r40,1; add.u64 %r41,%r41,1; .loc 1 102 9 setp.ne.u64 %r82,%r40,%r45; @ %r82 bra $L9; add.u64 %r61,%r62,%r36; .loc 1 105 10 bra $L1; $L14: .loc 1 102 14 add.u64 %r35,%r64,-1; bra $L5; $L1: .loc 1 107 1 mov.u64 %value,%r61; st.param.u64 [%value_out],%value; ret; } lib_a-memrchr.o/1591654536 399 399 100644 3606 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: memrchr .visible .func (.param .u64 %value_out) memrchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/string/memrchr.c" // BEGIN GLOBAL FUNCTION DEF: memrchr .visible .func (.param .u64 %value_out) memrchr (.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 %r28; .reg .u64 %r29; .reg .u64 %r31; .reg .u64 %r37; .reg .u32 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .u64 %r43; .reg .u64 %r45; .reg .u64 %r46; .reg .u64 %r52; .reg .u64 %r53; .reg .u32 %r54; .reg .u64 %r55; .reg .u32 %r56; .reg .u64 %r57; .reg .u64 %r58; .reg .pred %r59; .reg .pred %r60; .reg .u16 %r61; .reg .u16 %r62; .reg .pred %r63; .reg .pred %r64; .reg .u16 %r65; .reg .pred %r67; .reg .u64 %r69; .reg .pred %r70; .reg .pred %r71; .reg .u32 %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .u64 %r76; .reg .u64 %r77; .reg .u64 %r78; .reg .u64 %r79; .reg .u64 %r80; .reg .pred %r81; .reg .pred %r82; .reg .pred %r83; .reg .u16 %r84; .reg .u16 %r85; .reg .pred %r86; .reg .u16 %r87; .reg .pred %r89; .reg .pred %r90; .reg .u16 %r92; .reg .u16 %r93; mov.u64 %r53,%ar0; mov.u32 %r54,%ar1; mov.u64 %r55,%ar2; .loc 1 77 74 add.u64 %r41,%r55,-1; .loc 1 77 25 add.u64 %r52,%r53,%r41; .loc 1 78 17 cvt.u32.u32 %r56,%r54; cvt.u32.u8 %r40,%r56; .loc 1 85 10 add.u64 %r57,%r53,%r55; and.b64 %r58,%r57,7; .loc 1 85 9 setp.eq.u64 %r59,%r58,0; @ %r59 bra $L11; .loc 1 87 10 setp.eq.u64 %r60,%r55,0; @ %r60 bra $L12; .loc 1 89 10 ld.u8 %r61,[%r52]; cvt.u16.u32 %r62,%r40; setp.eq.u16 %r63,%r61,%r62; @ %r63 bra $L1; cvt.u16.u32 %r93,%r40; bra $L4; $L5: .loc 1 87 18 add.u64 %r41,%r41,-1; .loc 1 87 10 setp.eq.u64 %r64,%r41,-1; @ %r64 bra $L13; .loc 1 89 10 ld.u8 %r65,[%r52]; setp.eq.u16 %r67,%r65,%r93; @ %r67 bra $L1; $L4: .loc 1 91 10 add.u64 %r52,%r52,-1; .loc 1 85 10 shl.b64 %r69,%r52,61; .loc 1 85 9 setp.ne.u64 %r70,%r69,-2305843009213693952; @ %r70 bra $L5; bra $L2; $L11: mov.u64 %r41,%r55; $L2: .loc 1 94 6 setp.le.u64 %r71,%r41,7; @ %r71 bra $L6; .loc 1 104 12 add.u64 %r46,%r52,-7; .loc 1 105 16 shl.b32 %r72,%r54,8; and.b32 %r73,%r72,65535; .loc 1 105 21 and.b32 %r74,%r54,255; or.b32 %r75,%r73,%r74; .loc 1 105 12 cvt.s64.s32 %r42,%r75; .loc 1 106 19 shl.b64 %r28,%r42,16; .loc 1 106 12 or.b64 %r43,%r28,%r42; .loc 1 108 22 shl.b64 %r29,%r43,32; .loc 1 108 14 or.b64 %r45,%r29,%r43; $L8: .loc 1 112 15 ld.u64 %r76,[%r46]; xor.b64 %r31,%r45,%r76; add.u64 %r77,%r31,-72340172838076673; not.b64 %r78,%r31; and.b64 %r79,%r77,%r78; and.b64 %r80,%r79,-9187201950435737472; .loc 1 112 14 setp.ne.u64 %r81,%r80,0; @ %r81 bra $L7; .loc 1 114 18 add.u64 %r41,%r41,-8; .loc 1 115 15 add.u64 %r46,%r46,-8; .loc 1 110 13 setp.gt.u64 %r82,%r41,7; @ %r82 bra $L8; $L7: .loc 1 121 11 add.u64 %r52,%r46,7; $L6: .loc 1 126 9 setp.eq.u64 %r83,%r41,0; @ %r83 bra $L14; .loc 1 128 10 ld.u8 %r84,[%r52]; cvt.u16.u32 %r85,%r40; setp.eq.u16 %r86,%r84,%r85; @ %r86 bra $L1; sub.u64 %r37,%r52,%r41; cvt.u16.u32 %r92,%r40; bra $L9; $L10: ld.u8 %r87,[%r52]; setp.eq.u16 %r89,%r87,%r92; @ %r89 bra $L1; $L9: .loc 1 130 10 add.u64 %r52,%r52,-1; .loc 1 126 9 setp.ne.u64 %r90,%r37,%r52; @ %r90 bra $L10; .loc 1 88 16 mov.u64 %r52,0; bra $L1; $L12: mov.u64 %r52,%r55; bra $L1; $L13: mov.u64 %r52,0; bra $L1; $L14: mov.u64 %r52,%r41; $L1: .loc 1 134 1 mov.u64 %value,%r52; st.param.u64 [%value_out],%value; ret; } lib_a-memset.o/ 1591654536 399 399 100644 3558 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r32; .reg .u64 %r38; .reg .u32 %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .u64 %r43; .reg .u64 %r44; .reg .u64 %r49; .reg .u64 %r52; .reg .u64 %r58; .reg .u64 %r62; .reg .u32 %r63; .reg .u64 %r64; .reg .u64 %r65; .reg .pred %r66; .reg .pred %r67; .reg .u32 %r69; .reg .pred %r70; .reg .u32 %r71; .reg .u64 %r72; .reg .pred %r73; .reg .pred %r74; .reg .u32 %r75; .reg .u32 %r76; .reg .pred %r77; .reg .u64 %r78; .reg .u64 %r80; .reg .u64 %r81; .reg .pred %r82; .reg .u64 %r83; .reg .pred %r84; .reg .u64 %r85; .reg .pred %r86; .reg .u64 %r87; .reg .u64 %r89; .reg .u64 %r90; .reg .pred %r91; .reg .u32 %r92; .reg .u32 %r93; .reg .pred %r94; .reg .u64 %r95; mov.u64 %r62,%ar0; mov.u32 %r63,%ar1; mov.u64 %r64,%ar2; .loc 1 59 10 mov.u64 %r58,%r62; and.b64 %r65,%r62,7; .loc 1 59 9 setp.eq.u64 %r66,%r65,0; @ %r66 bra $L12; .loc 1 61 12 add.u64 %r40,%r64,-1; .loc 1 61 10 setp.ne.u64 %r67,%r64,0; @ ! %r67 bra $L17; cvt.u32.u32 %r69,%r63; .loc 1 50 9 mov.u64 %r41,%r62; .loc 1 62 14 mov.u32 %r71,%r69; bra $L4; $L6: .loc 1 61 12 add.u64 %r40,%r40,-1; add.u64 %r58,%r58,1; .loc 1 61 10 setp.eq.u64 %r70,%r40,-1; @ %r70 bra $L17; $L4: .loc 1 62 11 add.u64 %r41,%r41,1; .loc 1 62 14 st.u8 [%r58],%r71; .loc 1 59 10 and.b64 %r72,%r41,7; .loc 1 59 9 setp.ne.u64 %r73,%r72,0; @ %r73 bra $L6; bra $L2; $L12: .loc 1 50 9 mov.u64 %r41,%r62; .loc 1 59 9 mov.u64 %r40,%r64; $L2: .loc 1 67 6 setp.le.u64 %r74,%r40,7; @ %r74 bra $L7; .loc 1 56 16 and.b32 %r39,%r63,255; .loc 1 74 19 shl.b32 %r75,%r39,8; .loc 1 74 25 or.b32 %r76,%r75,%r39; .loc 1 74 14 cvt.u64.u32 %r42,%r76; .loc 1 75 25 shl.b64 %r27,%r42,16; .loc 1 75 14 or.b64 %r43,%r27,%r42; .loc 1 77 26 shl.b64 %r28,%r43,32; .loc 1 77 16 or.b64 %r44,%r28,%r43; .loc 1 80 13 setp.le.u64 %r77,%r40,31; @ %r77 bra $L13; add.u64 %r78,%r40,-32; and.b64 %r80,%r78,-32; add.u64 %r81,%r80,32; add.u64 %r49,%r41,%r81; $L9: .loc 1 82 27 st.u64 [%r41],%r44; .loc 1 83 27 st.u64 [%r41+8],%r44; .loc 1 84 27 st.u64 [%r41+16],%r44; add.u64 %r41,%r41,32; .loc 1 85 27 st.u64 [%r41+-8],%r44; .loc 1 80 13 setp.ne.u64 %r82,%r49,%r41; @ %r82 bra $L9; and.b64 %r52,%r40,31; .loc 1 89 13 and.b64 %r83,%r40,24; setp.eq.u64 %r84,%r83,0; @ ! %r84 bra $L8; bra $L14; $L13: .loc 1 80 13 mov.u64 %r52,%r40; $L8: mov.u64 %r31,%r41; add.u64 %r95,%r41,%r52; $L10: .loc 1 91 27 st.u64 [%r31],%r44; add.u64 %r31,%r31,8; .loc 1 89 13 sub.u64 %r85,%r95,%r31; setp.gt.u64 %r86,%r85,7; @ %r86 bra $L10; add.u64 %r87,%r52,-8; and.b64 %r89,%r87,-8; add.u64 %r90,%r89,8; add.u64 %r41,%r41,%r90; and.b64 %r40,%r52,7; bra $L7; $L14: mov.u64 %r40,%r52; $L7: .loc 1 100 9 setp.eq.u64 %r91,%r40,0; @ %r91 bra $L17; cvt.u32.u32 %r92,%r63; mov.u64 %r32,%r41; add.u64 %r38,%r32,%r40; .loc 1 101 10 mov.u32 %r93,%r92; $L11: st.u8 [%r32],%r93; add.u64 %r32,%r32,1; .loc 1 100 9 setp.ne.u64 %r94,%r32,%r38; @ %r94 bra $L11; $L17: .loc 1 104 1 mov.u64 %value,%r62; st.param.u64 [%value_out],%value; ret; } lib_a-mprec.o/ 1591654536 399 399 100644 54494 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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: 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 GLOBAL VAR DEF: __mprec_tinytens .visible .const .align 8 .u64 __mprec_tinytens[5] = {4367597403136100796,4128101167230658355,3649340653511681853,2691949749288605597,776877706278891331 }; // BEGIN VAR DEF: p05$2626 .const .align 4 .u32 p05$2626[3] = {5,25,125 }; // BEGIN GLOBAL VAR DEF: __mprec_bigtens .visible .const .align 8 .u64 __mprec_bigtens[5] = {4846369599423283200,5085611494797045271,5564284217833028085,6521906365687930162,8436737289693151036 }; // 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 %r25; .reg .u64 %r26; .reg .u32 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u32 %r34; .reg .pred %r35; .reg .u64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .pred %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .pred %r43; .reg .u32 %r44; .reg .u64 %r46; .reg .u32 %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .pred %r53; .reg .u64 %r54; mov.u64 %r33,%ar0; mov.u32 %r34,%ar1; .loc 1 103 7 ld.u64 %r22,[%r33+120]; .loc 1 103 6 setp.ne.u64 %r35,%r22,0; @ %r35 bra $L2; .loc 1 106 53 mov.u64 %r38,65; mov.u64 %r37,8; { .param .u64 %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],%r38; call (%value_in),_calloc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r39,[%value_in]; } mov.u64 %r22,%r39; .loc 1 106 31 st.u64 [%r33+120],%r22; .loc 1 109 10 setp.ne.u64 %r40,%r22,0; @ %r40 bra $L2; $L6: .loc 1 111 11 mov.u64 %r32,0; bra $L1; $L2: .loc 1 115 36 cvt.s64.s32 %r41,%r34; shl.b64 %r42,%r41,3; add.u64 %r25,%r22,%r42; .loc 1 115 11 ld.u64 %r32,[%r25]; .loc 1 115 6 setp.eq.u64 %r43,%r32,0; @ %r43 bra $L4; .loc 1 117 38 ld.u64 %r26,[%r32]; .loc 1 117 34 st.u64 [%r25],%r26; bra $L5; $L4: .loc 1 121 9 mov.u32 %r44,1; shl.b32 %r31,%r44,%r34; .loc 1 126 9 add.u32 %r48,%r31,-1; cvt.s64.s32 %r49,%r48; .loc 1 123 24 add.u64 %r50,%r49,8; shl.b64 %r51,%r50,2; mov.u64 %r46,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r33; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r46; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r51; call (%value_in),_calloc_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r52,[%value_in]; } mov.u64 %r32,%r52; .loc 1 127 10 setp.eq.u64 %r53,%r32,0; @ %r53 bra $L6; .loc 1 128 14 st.u32 [%r32+8],%r34; .loc 1 129 19 st.u32 [%r32+12],%r31; $L5: .loc 1 131 13 mov.u64 %r54,0; st.u64 [%r32+16],%r54; $L1: .loc 1 133 1 mov.u64 %value,%r32; 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 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .pred %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; mov.u64 %r28,%ar0; mov.u64 %r29,%ar1; .loc 1 139 6 setp.eq.u64 %r30,%r29,0; @ %r30 bra $L10; .loc 1 141 43 ld.s32 %r31,[%r29+8]; .loc 1 141 41 shl.b64 %r32,%r31,3; ld.u64 %r33,[%r28+120]; add.u64 %r26,%r33,%r32; ld.u64 %r27,[%r26]; .loc 1 141 16 st.u64 [%r29],%r27; .loc 1 142 38 st.u64 [%r26],%r29; $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 %r52; .reg .u64 %r53; .reg .u64 %r56; .reg .u64 %r59; .reg .u64 %r60; .reg .u32 %r61; .reg .u32 %r62; .reg .u32 %r63; .reg .u32 %r65; .reg .u32 %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .u32 %r70; .reg .pred %r71; .reg .pred %r72; .reg .u32 %r73; .reg .pred %r74; .reg .u32 %r77; .reg .u32 %r78; .reg .u64 %r79; .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 %r91; .reg .u64 %r92; .reg .u64 %r93; .reg .u64 %r94; .reg .u64 %r95; .reg .u32 %r97; mov.u64 %r59,%ar0; mov.u64 %r60,%ar1; mov.u32 %r61,%ar2; mov.u32 %r62,%ar3; .loc 1 160 7 ld.u32 %r42,[%r60+20]; add.u64 %r56,%r60,24; .loc 1 162 5 mov.u32 %r41,0; $L16: .loc 1 166 10 ld.u32 %r43,[%r56]; .loc 1 167 15 and.b32 %r63,%r43,65535; .loc 1 167 9 mad.lo.u32 %r44,%r63,%r61,%r62; .loc 1 168 15 shr.u32 %r65,%r43,16; .loc 1 168 31 shr.u32 %r67,%r44,16; .loc 1 168 9 mad.lo.u32 %r45,%r65,%r61,%r67; .loc 1 169 20 shr.u32 %r62,%r45,16; .loc 1 170 17 shl.b32 %r68,%r45,16; .loc 1 170 29 and.b32 %r69,%r44,65535; .loc 1 170 24 add.u32 %r70,%r68,%r69; .loc 1 170 12 st.u32 [%r56],%r70; .loc 1 177 3 add.u32 %r41,%r41,1; add.u64 %r56,%r56,4; setp.gt.s32 %r71,%r42,%r41; @ %r71 bra $L16; .loc 1 178 6 setp.eq.u32 %r72,%r62,0; @ %r72 bra $L15; .loc 1 180 10 ld.u32 %r73,[%r60+12]; setp.gt.s32 %r74,%r73,%r42; @ %r74 bra $L18; .loc 1 182 9 ld.u32 %r78,[%r60+8]; add.u32 %r77,%r78,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r59; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r77; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r79,[%value_in]; } .loc 1 183 4 ld.s32 %r83,[%r60+20]; add.u64 %r84,%r83,2; shl.b64 %r85,%r84,2; add.u64 %r86,%r60,16; add.u64 %r87,%r79,16; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r87; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r86; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r85; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r88,[%value_in]; } .loc 1 141 43 ld.s32 %r89,[%r60+8]; .loc 1 141 41 shl.b64 %r90,%r89,3; ld.u64 %r91,[%r59+120]; add.u64 %r52,%r91,%r90; ld.u64 %r53,[%r52]; .loc 1 141 16 st.u64 [%r60],%r53; .loc 1 142 38 st.u64 [%r52],%r60; .loc 1 185 6 mov.u64 %r60,%r79; $L18: .loc 1 187 20 cvt.s64.s32 %r92,%r42; add.u64 %r93,%r92,4; shl.b64 %r94,%r93,2; add.u64 %r95,%r60,%r94; st.u32 [%r95+8],%r62; .loc 1 187 16 add.u32 %r97,%r42,1; .loc 1 188 15 st.u32 [%r60+20],%r97; $L15: .loc 1 191 1 mov.u64 %value,%r60; 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 .u32 %r32; .reg .u64 %r33; .reg .u32 %r34; .reg .u32 %r35; .reg .u64 %r36; .reg .u64 %r39; .reg .u64 %r43; .reg .u64 %r44; .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 .u32 %r65; .reg .pred %r66; .reg .u32 %r67; .reg .u64 %r68; .reg .u32 %r71; .reg .u32 %r73; .reg .u32 %r74; .reg .u64 %r75; .reg .pred %r76; .reg .u64 %r77; .reg .pred %r78; .reg .u32 %r79; .reg .u32 %r80; .reg .u64 %r81; .reg .u64 %r82; .reg .u32 %r85; .reg .u32 %r87; .reg .u32 %r88; .reg .u64 %r89; .reg .pred %r90; mov.u64 %r53,%ar0; mov.u64 %r54,%ar1; mov.u32 %r55,%ar2; mov.u32 %r56,%ar3; mov.u32 %r57,%ar4; .loc 1 205 11 add.u32 %r58,%r56,8; .loc 1 205 5 div.s32 %r32,%r58,9; .loc 1 206 3 setp.le.s32 %r59,%r56,9; @ %r59 bra $L30; .loc 1 206 17 mov.u32 %r34,1; .loc 1 206 10 mov.u32 %r35,0; $L24: .loc 1 206 31 add.u32 %r34,%r34,%r34; .loc 1 206 39 add.u32 %r35,%r35,1; .loc 1 206 3 setp.gt.s32 %r61,%r32,%r34; @ %r61 bra $L24; bra $L23; $L30: .loc 1 206 10 mov.u32 %r35,0; $L23: .loc 1 208 7 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r53; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r35; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r64,[%value_in]; } mov.u64 %r52,%r64; .loc 1 209 12 st.u32 [%r52+24],%r57; .loc 1 210 11 mov.u32 %r65,1; st.u32 [%r52+20],%r65; .loc 1 218 6 setp.le.s32 %r66,%r55,9; @ %r66 bra $L25; .loc 1 220 9 add.u64 %r36,%r54,9; mov.u64 %r44,%r36; add.u32 %r67,%r55,-10; cvt.u64.u32 %r49,%r67; add.u64 %r68,%r54,10; add.u64 %r51,%r68,%r49; $L26: .loc 1 222 27 ld.s8 %r73,[%r44]; .loc 1 222 6 add.u32 %r74,%r73,-48; mov.u32 %r71,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],%r71; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r74; call (%value_in),__multadd,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r75,[%value_in]; } mov.u64 %r52,%r75; add.u64 %r44,%r44,1; .loc 1 223 7 setp.ne.u64 %r76,%r44,%r51; @ %r76 bra $L26; .loc 1 224 8 add.u64 %r77,%r49,2; add.u64 %r39,%r36,%r77; bra $L27; $L25: .loc 1 227 7 add.u64 %r39,%r54,10; .loc 1 217 5 mov.u32 %r55,9; $L27: .loc 1 228 3 setp.le.s32 %r78,%r56,%r55; @ %r78 bra $L22; mov.u64 %r33,%r39; add.u32 %r79,%r56,-1; sub.u32 %r80,%r79,%r55; cvt.u64.u32 %r81,%r80; add.u64 %r82,%r33,1; add.u64 %r43,%r81,%r82; $L29: .loc 1 229 30 ld.s8 %r87,[%r33]; .loc 1 229 9 add.u32 %r88,%r87,-48; mov.u32 %r85,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],%r85; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r88; call (%value_in),__multadd,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r89,[%value_in]; } mov.u64 %r52,%r89; add.u64 %r33,%r33,1; .loc 1 228 3 setp.ne.u64 %r90,%r33,%r43; @ %r90 bra $L29; $L22: .loc 1 231 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 239 11 and.b32 %r30,%r29,-65536; .loc 1 239 6 setp.ne.u32 %r31,%r30,0; @ %r31 bra $L40; .loc 1 242 9 shl.b32 %r29,%r29,16; .loc 1 241 9 mov.u32 %r28,16; bra $L35; $L40: .loc 1 237 16 mov.u32 %r28,0; $L35: .loc 1 244 11 and.b32 %r32,%r29,-16777216; .loc 1 244 6 setp.ne.u32 %r33,%r32,0; @ %r33 bra $L36; .loc 1 246 9 add.u32 %r28,%r28,8; .loc 1 247 9 shl.b32 %r29,%r29,8; $L36: .loc 1 249 11 and.b32 %r34,%r29,-268435456; .loc 1 249 6 setp.ne.u32 %r35,%r34,0; @ %r35 bra $L37; .loc 1 251 9 add.u32 %r28,%r28,4; .loc 1 252 9 shl.b32 %r29,%r29,4; $L37: .loc 1 254 11 and.b32 %r36,%r29,-1073741824; .loc 1 254 6 setp.ne.u32 %r37,%r36,0; @ %r37 bra $L38; .loc 1 256 9 add.u32 %r28,%r28,2; .loc 1 257 9 shl.b32 %r29,%r29,2; $L38: .loc 1 259 6 setp.lt.s32 %r38,%r29,0; @ %r38 bra $L34; .loc 1 261 8 add.u32 %r28,%r28,1; .loc 1 262 15 and.b32 %r39,%r29,1073741824; .loc 1 262 10 setp.ne.u32 %r40,%r39,0; .loc 1 263 9 selp.u32 %r28,%r28,32,%r40; $L34: .loc 1 266 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 272 20 ld.u32 %r32,[%r34]; .loc 1 274 9 and.b32 %r35,%r32,7; .loc 1 274 6 setp.eq.u32 %r36,%r35,0; @ %r36 bra $L42; .loc 1 276 13 and.b32 %r37,%r32,1; .loc 1 276 10 setp.ne.u32 %r38,%r37,0; @ %r38 bra $L50; .loc 1 278 13 and.b32 %r39,%r32,2; .loc 1 278 10 setp.eq.u32 %r40,%r39,0; @ %r40 bra $L44; .loc 1 280 11 shr.u32 %r41,%r32,1; .loc 1 280 7 st.u32 [%r34],%r41; .loc 1 281 11 mov.u32 %r33,1; bra $L41; $L44: .loc 1 283 14 shr.u32 %r42,%r32,2; .loc 1 283 10 st.u32 [%r34],%r42; .loc 1 284 14 mov.u32 %r33,2; bra $L41; $L42: .loc 1 287 11 and.b32 %r43,%r32,65535; .loc 1 287 6 setp.ne.u32 %r44,%r43,0; @ %r44 bra $L51; .loc 1 290 9 shr.u32 %r32,%r32,16; .loc 1 289 9 mov.u32 %r33,16; bra $L45; $L51: .loc 1 286 5 mov.u32 %r33,%r35; $L45: .loc 1 292 11 and.b32 %r45,%r32,255; .loc 1 292 6 setp.ne.u32 %r46,%r45,0; @ %r46 bra $L46; .loc 1 294 9 add.u32 %r33,%r33,8; .loc 1 295 9 shr.u32 %r32,%r32,8; $L46: .loc 1 297 11 and.b32 %r47,%r32,15; .loc 1 297 6 setp.ne.u32 %r48,%r47,0; @ %r48 bra $L47; .loc 1 299 9 add.u32 %r33,%r33,4; .loc 1 300 9 shr.u32 %r32,%r32,4; $L47: .loc 1 302 11 and.b32 %r49,%r32,3; .loc 1 302 6 setp.ne.u32 %r50,%r49,0; @ %r50 bra $L48; .loc 1 304 9 add.u32 %r33,%r33,2; .loc 1 305 9 shr.u32 %r32,%r32,2; $L48: .loc 1 307 11 and.b32 %r51,%r32,1; .loc 1 307 6 setp.ne.u32 %r52,%r51,0; @ %r52 bra $L49; .loc 1 309 8 add.u32 %r33,%r33,1; .loc 1 310 9 shr.u32 %r32,%r32,1; .loc 1 311 10 setp.eq.u32 %r53,%r32,0; @ %r53 bra $L52; $L49: .loc 1 314 6 st.u32 [%r34],%r32; .loc 1 315 10 bra $L41; $L50: .loc 1 277 9 mov.u32 %r33,0; bra $L41; $L52: .loc 1 312 9 mov.u32 %r33,32; $L41: .loc 1 316 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 %r24; .reg .u32 %r25; .reg .u32 %r27; .reg .u64 %r28; mov.u64 %r24,%ar0; mov.u32 %r25,%ar1; .loc 1 323 7 mov.u32 %r27,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r27; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r28,[%value_in]; } .loc 1 324 12 st.u32 [%r28+24],%r25; .loc 1 325 11 st.u32 [%r28+20],%r27; .loc 1 327 1 mov.u64 %value,%r28; 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 %r31; .reg .u32 %r32; .reg .u32 %r35; .reg .u32 %r56; .reg .u32 %r61; .reg .u32 %r62; .reg .u32 %r63; .reg .u64 %r64; .reg .u64 %r65; .reg .u32 %r66; .reg .u64 %r67; .reg .u64 %r68; .reg .u64 %r70; .reg .u64 %r71; .reg .u32 %r72; .reg .u32 %r73; .reg .u32 %r75; .reg .u32 %r76; .reg .u32 %r77; .reg .u64 %r79; .reg .u64 %r80; .reg .u64 %r81; .reg .u32 %r82; .reg .u64 %r83; .reg .u64 %r85; .reg .u64 %r89; .reg .u64 %r91; .reg .u64 %r92; .reg .u64 %r93; .reg .u32 %r94; .reg .u64 %r95; .reg .pred %r96; .reg .u32 %r97; .reg .pred %r98; .reg .u64 %r101; .reg .u64 %r102; .reg .u64 %r103; .reg .pred %r104; .reg .u64 %r105; .reg .u64 %r106; .reg .u64 %r107; .reg .u64 %r108; .reg .pred %r109; .reg .u32 %r110; .reg .pred %r111; .reg .pred %r112; .reg .pred %r113; .reg .u32 %r114; .reg .u32 %r116; .reg .u32 %r117; .reg .u32 %r118; .reg .u32 %r120; .reg .u32 %r121; .reg .u32 %r122; .reg .u32 %r123; .reg .u32 %r124; .reg .u32 %r125; .reg .pred %r126; .reg .pred %r127; .reg .u32 %r128; .reg .u32 %r131; .reg .u32 %r132; .reg .u32 %r133; .reg .u32 %r134; .reg .u32 %r135; .reg .u32 %r136; .reg .u32 %r137; .reg .u32 %r139; .reg .u32 %r140; .reg .u32 %r141; .reg .pred %r142; .reg .pred %r143; .reg .u32 %r144; .reg .pred %r145; .reg .pred %r146; .reg .u32 %r147; .reg .pred %r148; .reg .u64 %r150; .reg .u32 %r151; mov.u64 %r91,%ar0; mov.u64 %r92,%ar1; mov.u64 %r93,%ar2; .loc 1 340 8 ld.u32 %r22,[%r92+20]; .loc 1 340 18 ld.u32 %r23,[%r93+20]; .loc 1 340 6 setp.lt.s32 %r96,%r22,%r23; @ %r96 bra $L55; mov.u32 %r94,%r23; mov.u32 %r23,%r22; mov.u32 %r22,%r94; mov.u64 %r95,%r93; mov.u64 %r93,%r92; mov.u64 %r92,%r95; $L55: .loc 1 346 5 ld.u32 %r61,[%r93+8]; .loc 1 349 6 add.u32 %r82,%r23,%r22; .loc 1 350 6 ld.u32 %r97,[%r93+12]; setp.ge.s32 %r98,%r97,%r82; @ %r98 bra $L56; .loc 1 351 6 add.u32 %r61,%r61,1; $L56: .loc 1 352 7 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r91; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r61; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r101,[%value_in]; } .loc 1 353 10 add.u64 %r80,%r101,24; .loc 1 353 26 cvt.s64.s32 %r102,%r82; shl.b64 %r103,%r102,2; .loc 1 353 22 add.u64 %r67,%r80,%r103; .loc 1 353 3 setp.lt.u64 %r104,%r80,%r67; @ %r104 bra $L68; $L60: .loc 1 355 6 add.u64 %r150,%r93,24; .loc 1 356 12 cvt.s64.s32 %r105,%r23; shl.b64 %r106,%r105,2; .loc 1 356 7 add.u64 %r70,%r150,%r106; .loc 1 357 6 add.u64 %r79,%r92,24; .loc 1 358 12 cvt.s64.s32 %r107,%r22; shl.b64 %r108,%r107,2; .loc 1 358 7 add.u64 %r71,%r79,%r108; .loc 1 361 3 setp.lt.u64 %r109,%r79,%r71; @ ! %r109 bra $L59; .loc 1 367 10 mov.u32 %r151,0; bra $L58; $L68: .loc 1 353 3 mov.u64 %r68,%r80; .loc 1 354 8 mov.u32 %r110,0; $L57: st.u32 [%r68],%r110; .loc 1 353 41 add.u64 %r68,%r68,4; .loc 1 353 3 setp.gt.u64 %r111,%r67,%r68; @ %r111 bra $L57; bra $L60; $L59: .loc 1 416 3 setp.gt.s32 %r112,%r82,0; @ %r112 bra $L61; bra $L62; $L58: .loc 1 363 16 ld.u32 %r31,[%r79]; .loc 1 363 14 and.b32 %r72,%r31,65535; .loc 1 363 10 setp.eq.u32 %r113,%r72,0; @ %r113 bra $L63; mov.u64 %r85,%r80; .loc 1 365 6 mov.u64 %r64,%r150; .loc 1 367 10 mov.u32 %r62,%r151; $L64: .loc 1 370 13 ld.u32 %r32,[%r64]; mov.u64 %r83,%r85; .loc 1 370 33 ld.u32 %r35,[%r85]; .loc 1 370 16 and.b32 %r114,%r32,65535; .loc 1 370 37 and.b32 %r116,%r35,65535; .loc 1 370 30 mad.lo.u32 %r117,%r114,%r72,%r116; .loc 1 370 10 add.u32 %r73,%r117,%r62; .loc 1 372 16 add.u64 %r64,%r64,4; .loc 1 372 19 shr.u32 %r118,%r32,16; .loc 1 372 37 shr.u32 %r120,%r35,16; .loc 1 372 30 mad.lo.u32 %r121,%r118,%r72,%r120; .loc 1 371 14 shr.u32 %r122,%r73,16; .loc 1 372 11 add.u32 %r75,%r121,%r122; .loc 1 373 14 shr.u32 %r62,%r75,16; add.u64 %r85,%r85,4; .loc 1 374 8 shl.b32 %r123,%r75,16; and.b32 %r124,%r73,65535; or.b32 %r125,%r123,%r124; st.u32 [%r83],%r125; .loc 1 376 4 setp.gt.u64 %r126,%r70,%r64; @ %r126 bra $L64; .loc 1 377 8 st.u32 [%r85],%r62; ld.u32 %r31,[%r79]; $L63: .loc 1 379 14 shr.u32 %r76,%r31,16; .loc 1 379 10 setp.eq.u32 %r127,%r76,0; @ %r127 bra $L65; .loc 1 384 7 ld.u32 %r66,[%r80]; mov.u64 %r89,%r150; mov.u32 %r56,%r66; mov.u64 %r65,%r80; .loc 1 383 10 mov.u32 %r63,%r151; $L66: .loc 1 387 16 ld.u16 %r128,[%r89]; .loc 1 387 37 shr.u32 %r131,%r56,16; .loc 1 387 30 mad.lo.u32 %r132,%r128,%r76,%r131; .loc 1 387 10 add.u32 %r77,%r132,%r63; .loc 1 389 8 add.u64 %r65,%r65,4; shl.b32 %r133,%r77,16; and.b32 %r134,%r66,65535; or.b32 %r135,%r133,%r134; st.u32 [%r65+-4],%r135; .loc 1 390 33 ld.u32 %r56,[%r65]; .loc 1 390 19 ld.u32 %r137,[%r89]; shr.u32 %r136,%r137,16; .loc 1 390 37 and.b32 %r139,%r56,65535; .loc 1 390 30 mad.lo.u32 %r140,%r136,%r76,%r139; .loc 1 388 14 shr.u32 %r141,%r77,16; .loc 1 390 11 add.u32 %r66,%r140,%r141; .loc 1 391 14 shr.u32 %r63,%r66,16; add.u64 %r89,%r89,4; .loc 1 393 4 setp.gt.u64 %r142,%r70,%r89; @ %r142 bra $L66; .loc 1 394 8 st.u32 [%r65],%r66; $L65: .loc 1 361 22 add.u64 %r79,%r79,4; .loc 1 361 29 add.u64 %r80,%r80,4; .loc 1 361 3 setp.gt.u64 %r143,%r71,%r79; @ %r143 bra $L58; bra $L59; $L61: .loc 1 416 43 add.u64 %r81,%r67,-4; ld.u32 %r144,[%r67+-4]; setp.ne.u32 %r145,%r144,0; @ %r145 bra $L62; $L67: .loc 1 416 54 add.u32 %r82,%r82,-1; .loc 1 416 3 setp.eq.u32 %r146,%r82,0; @ %r146 bra $L62; .loc 1 416 43 add.u64 %r81,%r81,-4; ld.u32 %r147,[%r81]; setp.eq.u32 %r148,%r147,0; @ %r148 bra $L67; $L62: .loc 1 417 11 st.u32 [%r101+20],%r82; .loc 1 419 1 mov.u64 %value,%r101; 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 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .u32 %r39; .reg .pred %r40; .reg .u32 %r43; .reg .u32 %r44; .reg .u64 %r45; .reg .u32 %r46; .reg .u64 %r47; .reg .u64 %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .pred %r51; .reg .pred %r52; .reg .u32 %r54; .reg .u64 %r55; .reg .u32 %r56; .reg .u64 %r58; .reg .u32 %r59; .reg .pred %r60; .reg .u64 %r64; .reg .pred %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .u64 %r68; .reg .pred %r69; .reg .pred %r70; .reg .u64 %r74; .reg .u64 %r75; mov.u64 %r37,%ar0; mov.u64 %r38,%ar1; mov.u32 %r39,%ar2; .loc 1 429 10 and.b32 %r26,%r39,3; .loc 1 429 6 setp.eq.u32 %r40,%r26,0; @ %r40 bra $L86; .loc 1 430 9 cvta.const.u64 %r45,p05$2626; .loc 1 430 32 add.u32 %r46,%r26,-1; .loc 1 430 9 cvt.s64.s32 %r47,%r46; shl.b64 %r48,%r47,2; add.u64 %r49,%r45,%r48; mov.u32 %r44,0; ld.u32 %r43,[%r49]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r37; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r38; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r43; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r44; call (%value_in),__multadd,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r50,[%value_in]; } mov.u64 %r38,%r50; $L86: .loc 1 432 11 shr.s32 %r25,%r39,2; .loc 1 432 6 setp.eq.u32 %r51,%r25,0; @ %r51 bra $L92; .loc 1 435 12 ld.u64 %r27,[%r37+112]; .loc 1 435 6 setp.ne.u64 %r52,%r27,0; @ %r52 bra $L88; .loc 1 323 7 mov.u32 %r54,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r37; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r54; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r55,[%value_in]; } mov.u64 %r27,%r55; .loc 1 324 12 mov.u32 %r56,625; st.u32 [%r27+24],%r56; .loc 1 325 11 st.u32 [%r27+20],%r54; .loc 1 438 31 st.u64 [%r37+112],%r27; .loc 1 439 17 mov.u64 %r58,0; st.u64 [%r27],%r58; $L88: .loc 1 424 1 mov.u64 %r36,%r38; bra $L89; $L91: mov.u64 %r27,%r29; $L89: .loc 1 443 13 and.b32 %r59,%r25,1; .loc 1 443 10 setp.eq.u32 %r60,%r59,0; @ %r60 bra $L90; .loc 1 445 9 { .param .u64 %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],%r27; call (%value_in),__multiply,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r64,[%value_in]; } .loc 1 139 6 setp.eq.u64 %r65,%r36,0; @ %r65 bra $L93; .loc 1 141 43 ld.s32 %r66,[%r36+8]; .loc 1 141 41 shl.b64 %r67,%r66,3; ld.u64 %r68,[%r37+120]; add.u64 %r34,%r68,%r67; ld.u64 %r35,[%r34]; .loc 1 141 16 st.u64 [%r36],%r35; .loc 1 142 38 st.u64 [%r34],%r36; .loc 1 447 6 mov.u64 %r36,%r64; bra $L90; $L93: mov.u64 %r36,%r64; $L90: .loc 1 449 15 shr.s32 %r25,%r25,1; .loc 1 449 10 setp.eq.u32 %r69,%r25,0; @ %r69 bra $L85; .loc 1 451 17 ld.u64 %r29,[%r27]; .loc 1 451 10 setp.ne.u64 %r70,%r29,0; @ %r70 bra $L91; .loc 1 453 22 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r37; .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 %r74,[%value_in]; } mov.u64 %r29,%r74; .loc 1 453 20 st.u64 [%r27],%r29; .loc 1 454 15 mov.u64 %r75,0; st.u64 [%r74],%r75; bra $L91; $L92: .loc 1 433 12 mov.u64 %r36,%r38; $L85: .loc 1 459 1 mov.u64 %value,%r36; 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 .u64 %r29; .reg .u32 %r34; .reg .u32 %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .u64 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u64 %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .u64 %r56; .reg .u64 %r60; .reg .u64 %r61; .reg .u64 %r65; .reg .u64 %r70; .reg .u64 %r73; .reg .u64 %r75; .reg .u64 %r76; .reg .u32 %r77; .reg .u32 %r78; .reg .pred %r79; .reg .pred %r81; .reg .u64 %r84; .reg .pred %r85; .reg .u32 %r86; .reg .u64 %r87; .reg .u64 %r88; .reg .u32 %r89; .reg .pred %r90; .reg .u64 %r91; .reg .u64 %r92; .reg .u64 %r93; .reg .u64 %r94; .reg .u64 %r95; .reg .pred %r96; .reg .u32 %r97; .reg .u32 %r98; .reg .u32 %r99; .reg .u32 %r100; .reg .u32 %r101; .reg .pred %r102; .reg .pred %r103; .reg .pred %r104; .reg .u64 %r105; .reg .u64 %r106; .reg .u64 %r107; mov.u64 %r75,%ar0; mov.u64 %r76,%ar1; mov.u32 %r77,%ar2; .loc 1 469 5 shr.s32 %r40,%r77,5; .loc 1 473 6 ld.u32 %r42,[%r76+8]; .loc 1 474 10 ld.u32 %r78,[%r76+20]; add.u32 %r23,%r40,%r78; .loc 1 474 6 add.u32 %r41,%r23,1; .loc 1 475 10 ld.u32 %r43,[%r76+12]; .loc 1 475 3 setp.le.s32 %r79,%r41,%r43; @ %r79 bra $L104; $L105: .loc 1 476 7 add.u32 %r42,%r42,1; .loc 1 475 34 add.u32 %r43,%r43,%r43; .loc 1 475 3 setp.gt.s32 %r81,%r41,%r43; @ %r81 bra $L105; $L104: .loc 1 477 8 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r75; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r42; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r84,[%value_in]; } .loc 1 478 6 add.u64 %r54,%r84,24; .loc 1 479 3 setp.le.s32 %r85,%r40,0; @ %r85 bra $L106; mov.u64 %r65,%r54; add.u32 %r86,%r40,-1; cvt.u64.u32 %r70,%r86; shl.b64 %r87,%r70,2; add.u64 %r88,%r87,28; add.u64 %r73,%r84,%r88; .loc 1 480 11 mov.u32 %r89,0; $L107: st.u32 [%r65],%r89; add.u64 %r65,%r65,4; .loc 1 479 3 setp.ne.u64 %r90,%r65,%r73; @ %r90 bra $L107; add.u64 %r91,%r70,1; shl.b64 %r92,%r91,2; add.u64 %r54,%r54,%r92; $L106: .loc 1 481 5 add.u64 %r93,%r76,24; .loc 1 482 13 ld.s32 %r94,[%r76+20]; .loc 1 482 10 shl.b64 %r95,%r94,2; .loc 1 482 6 add.u64 %r45,%r93,%r95; .loc 1 484 9 and.b32 %r46,%r77,31; .loc 1 484 6 setp.eq.u32 %r96,%r46,0; @ %r96 bra $L108; .loc 1 486 10 mov.u32 %r97,32; sub.u32 %r47,%r97,%r46; mov.u64 %r60,%r93; mov.u64 %r56,%r54; .loc 1 487 9 mov.u32 %r39,0; $L109: .loc 1 490 15 ld.u32 %r99,[%r60]; shl.b32 %r98,%r99,%r46; .loc 1 490 20 or.b32 %r100,%r98,%r39; .loc 1 490 10 st.u32 [%r56],%r100; .loc 1 491 6 ld.u32 %r101,[%r60]; shr.u32 %r39,%r101,%r47; add.u64 %r60,%r60,4; add.u64 %r56,%r56,4; .loc 1 493 7 setp.gt.u64 %r102,%r45,%r60; @ %r102 bra $L109; .loc 1 494 16 st.u32 [%r56],%r39; .loc 1 494 10 setp.eq.u32 %r103,%r39,0; .loc 1 474 6 selp.u32 %r23,%r23,%r41,%r103; bra $L110; $L108: mov.u64 %r29,%r93; mov.u64 %r61,%r54; $L111: .loc 1 514 15 ld.u32 %r34,[%r29]; .loc 1 514 13 st.u32 [%r61],%r34; add.u64 %r29,%r29,4; add.u64 %r61,%r61,4; .loc 1 515 5 setp.gt.u64 %r104,%r45,%r29; @ %r104 bra $L111; $L110: .loc 1 516 12 st.u32 [%r84+20],%r23; .loc 1 141 43 ld.s32 %r105,[%r76+8]; .loc 1 141 41 shl.b64 %r106,%r105,3; ld.u64 %r107,[%r75+120]; add.u64 %r52,%r107,%r106; ld.u64 %r53,[%r52]; .loc 1 141 16 st.u64 [%r76],%r53; .loc 1 142 38 st.u64 [%r52],%r76; .loc 1 519 1 mov.u64 %value,%r84; 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 %r23; .reg .u32 %r24; .reg .u32 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u32 %r28; .reg .u32 %r29; .reg .u64 %r30; .reg .u32 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .pred %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .pred %r38; .reg .pred %r39; .reg .pred %r40; mov.u64 %r33,%ar0; mov.u64 %r34,%ar1; .loc 1 527 5 ld.u32 %r28,[%r33+20]; .loc 1 528 5 ld.u32 %r29,[%r34+20]; .loc 1 535 9 sub.u32 %r32,%r28,%r29; .loc 1 535 6 setp.ne.u32 %r35,%r32,0; @ %r35 bra $L118; .loc 1 537 7 add.u64 %r30,%r33,24; .loc 1 538 12 cvt.s64.s32 %r36,%r29; shl.b64 %r23,%r36,2; .loc 1 538 6 add.u64 %r26,%r30,%r23; .loc 1 539 7 add.u64 %r37,%r34,24; .loc 1 540 6 add.u64 %r27,%r37,%r23; $L121: .loc 1 543 10 add.u64 %r26,%r26,-4; .loc 1 543 11 ld.u32 %r24,[%r26]; .loc 1 543 10 add.u64 %r27,%r27,-4; .loc 1 543 20 ld.u32 %r25,[%r27]; .loc 1 543 10 setp.eq.u32 %r38,%r24,%r25; @ %r38 bra $L120; .loc 1 544 24 setp.lt.u32 %r39,%r24,%r25; selp.u32 %r32,-1,1,%r39; bra $L118; $L120: .loc 1 545 10 setp.lt.u64 %r40,%r30,%r26; @ %r40 bra $L121; $L118: .loc 1 549 1 mov.u32 %value,%r32; 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 %r27; .reg .u32 %r29; .reg .u32 %r41; .reg .u32 %r51; .reg .u32 %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .u64 %r58; .reg .u64 %r60; .reg .u32 %r61; .reg .u32 %r63; .reg .u32 %r64; .reg .u64 %r66; .reg .u32 %r67; .reg .u64 %r68; .reg .u32 %r69; .reg .u32 %r70; .reg .u64 %r72; .reg .u64 %r73; .reg .u32 %r74; .reg .u64 %r75; .reg .u32 %r76; .reg .u64 %r79; .reg .u64 %r81; .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 .pred %r96; .reg .u64 %r97; .reg .pred %r98; .reg .pred %r99; .reg .pred %r100; .reg .u32 %r103; .reg .u64 %r104; .reg .u64 %r105; .reg .u64 %r106; .reg .u64 %r107; .reg .u64 %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 .pred %r118; .reg .pred %r119; .reg .u32 %r120; .reg .u32 %r121; .reg .u32 %r122; .reg .u32 %r123; .reg .u32 %r124; .reg .pred %r125; .reg .u64 %r126; .reg .u64 %r127; .reg .u64 %r129; .reg .pred %r130; .reg .u32 %r131; .reg .pred %r132; .reg .u32 %r135; .reg .u64 %r136; .reg .u32 %r137; .reg .pred %r139; mov.u64 %r89,%ar0; mov.u64 %r90,%ar1; mov.u64 %r91,%ar2; .loc 1 527 5 ld.u32 %r56,[%r90+20]; .loc 1 528 5 ld.u32 %r70,[%r91+20]; .loc 1 535 9 sub.u32 %r53,%r56,%r70; add.u64 %r54,%r90,24; add.u64 %r55,%r91,24; .loc 1 535 6 setp.ne.u32 %r96,%r53,0; @ %r96 bra $L125; .loc 1 538 12 cvt.s64.s32 %r97,%r70; shl.b64 %r72,%r97,2; .loc 1 538 6 add.u64 %r73,%r54,%r72; .loc 1 540 6 add.u64 %r75,%r55,%r72; $L129: .loc 1 543 10 add.u64 %r73,%r73,-4; .loc 1 543 11 ld.u32 %r74,[%r73]; .loc 1 543 10 add.u64 %r75,%r75,-4; .loc 1 543 20 ld.u32 %r76,[%r75]; .loc 1 543 10 setp.eq.u32 %r98,%r74,%r76; @ %r98 bra $L126; .loc 1 544 24 setp.ge.u32 %r99,%r74,%r76; @ %r99 bra $L127; mov.u64 %r92,%r54; mov.u64 %r54,%r55; mov.u64 %r55,%r92; mov.u64 %r93,%r90; mov.u64 %r90,%r91; mov.u64 %r91,%r93; .loc 1 576 9 mov.u32 %r53,1; bra $L127; $L126: .loc 1 545 10 setp.le.u64 %r100,%r73,%r54; @ ! %r100 bra $L129; bra $L128; $L136: .loc 1 579 7 mov.u32 %r53,0; $L127: .loc 1 580 7 ld.u32 %r103,[%r90+8]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r89; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r103; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r104,[%value_in]; } mov.u64 %r88,%r104; .loc 1 581 12 st.u32 [%r104+16],%r53; .loc 1 582 6 ld.u32 %r69,[%r90+20]; .loc 1 584 12 cvt.s64.s32 %r105,%r69; shl.b64 %r106,%r105,2; .loc 1 584 7 add.u64 %r58,%r54,%r106; .loc 1 587 12 ld.s32 %r107,[%r91+20]; shl.b64 %r108,%r107,2; .loc 1 587 7 add.u64 %r60,%r55,%r108; add.u64 %r81,%r104,24; .loc 1 589 10 mov.u32 %r57,0; $L130: mov.u64 %r68,%r81; .loc 1 593 12 ld.u32 %r27,[%r54]; .loc 1 593 29 ld.u32 %r29,[%r55]; .loc 1 593 16 and.b32 %r109,%r27,65535; .loc 1 593 43 add.u32 %r110,%r109,%r57; .loc 1 593 33 and.b32 %r111,%r29,65535; .loc 1 593 43 sub.u32 %r61,%r110,%r111; .loc 1 596 15 add.u64 %r54,%r54,4; .loc 1 596 31 add.u64 %r55,%r55,4; .loc 1 596 18 shr.u32 %r112,%r27,16; .loc 1 596 34 shr.u32 %r113,%r29,16; .loc 1 596 25 sub.u32 %r114,%r112,%r113; .loc 1 594 14 shr.s32 %r115,%r61,16; .loc 1 596 41 add.u32 %r63,%r114,%r115; .loc 1 597 14 shr.s32 %r57,%r63,16; add.u64 %r81,%r81,4; mov.u64 %r79,%r81; .loc 1 599 7 shl.b32 %r116,%r63,16; and.b32 %r117,%r61,65535; or.b32 %r51,%r116,%r117; st.u32 [%r68],%r51; .loc 1 601 3 setp.gt.u64 %r118,%r60,%r55; @ %r118 bra $L130; .loc 1 602 9 setp.le.u64 %r119,%r58,%r54; @ %r119 bra $L131; mov.u64 %r66,%r54; $L132: .loc 1 604 12 ld.u32 %r41,[%r66]; .loc 1 604 16 and.b32 %r120,%r41,65535; .loc 1 604 26 add.u32 %r64,%r120,%r57; .loc 1 607 15 add.u64 %r66,%r66,4; .loc 1 607 18 shr.u32 %r121,%r41,16; .loc 1 605 14 shr.s32 %r122,%r64,16; .loc 1 607 25 add.u32 %r67,%r121,%r122; .loc 1 608 14 shr.s32 %r57,%r67,16; .loc 1 610 7 shl.b32 %r123,%r67,16; and.b32 %r124,%r64,65535; or.b32 %r51,%r123,%r124; st.u32 [%r81],%r51; add.u64 %r81,%r81,4; .loc 1 602 9 setp.gt.u64 %r125,%r58,%r66; @ %r125 bra $L132; add.u64 %r126,%r58,-1; sub.u64 %r127,%r126,%r54; and.b64 %r129,%r127,-4; add.u64 %r68,%r79,%r129; $L131: .loc 1 629 9 setp.ne.u32 %r130,%r51,0; @ %r130 bra $L133; $L134: .loc 1 630 7 add.u32 %r69,%r69,-1; .loc 1 629 9 add.u64 %r68,%r68,-4; ld.u32 %r131,[%r68]; setp.eq.u32 %r132,%r131,0; @ %r132 bra $L134; $L133: .loc 1 631 11 st.u32 [%r104+20],%r69; .loc 1 632 10 bra $L124; $L128: .loc 1 566 11 mov.u32 %r135,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r89; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r135; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r136,[%value_in]; } mov.u64 %r88,%r136; .loc 1 567 15 mov.u32 %r137,1; st.u32 [%r88+20],%r137; .loc 1 568 16 st.u32 [%r88+24],%r135; .loc 1 569 14 bra $L124; $L125: .loc 1 571 6 setp.ge.s32 %r139,%r53,0; @ %r139 bra $L136; mov.u64 %r94,%r54; mov.u64 %r54,%r55; mov.u64 %r55,%r94; mov.u64 %r95,%r90; mov.u64 %r90,%r91; mov.u64 %r91,%r95; .loc 1 576 9 mov.u32 %r53,1; bra $L127; $L124: .loc 1 633 1 mov.u64 %value,%r88; 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 %r27; .reg .u32 %r29; .reg .u32 %r30; .reg .u64 %r32; .reg .f64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u32 %r37; .reg .u32 %r38; .reg .pred %r39; .reg .u64 %r40; .reg .pred %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u64 %r48; .reg .pred %r54; .reg .u32 %r55; .reg .u64 %r56; .reg .u64 %r57; mov.f64 %r34,%ar0; .loc 1 643 18 mov.b64 %r35,%r34; shr.u64 %r36,%r35,32; cvt.u32.u64 %r38,%r36; and.b32 %r37,%r38,2146435072; .loc 1 643 30 add.u32 %r23,%r37,-54525952; .loc 1 645 6 setp.le.s32 %r39,%r23,0; @ %r39 bra $L142; .loc 1 651 17 cvt.u64.u32 %r40,%r23; .loc 1 653 17 shl.b64 %r32,%r40,32; bra $L143; $L142: .loc 1 660 11 neg.s32 %r24,%r23; .loc 1 660 9 shr.s32 %r29,%r24,20; .loc 1 661 10 setp.gt.s32 %r45,%r29,19; @ %r45 bra $L144; .loc 1 663 24 mov.u32 %r47,524288; shr.s32 %r46,%r47,%r29; .loc 1 663 14 cvt.u64.u32 %r48,%r46; .loc 1 665 14 shl.b64 %r32,%r48,32; bra $L143; $L144: .loc 1 670 14 mov.u64 %r32,0; .loc 1 671 6 add.u32 %r30,%r29,-20; .loc 1 673 34 setp.gt.s32 %r54,%r30,30; @ %r54 bra $L146; mov.u32 %r55,-2147483648; shr.u32 %r27,%r55,%r30; bra $L145; $L146: mov.u32 %r27,1; $L145: .loc 1 673 20 cvt.u64.u32 %r56,%r27; and.b64 %r57,%r32,-4294967296; or.b64 %r32,%r57,%r56; $L143: .loc 1 678 11 mov.b64 %value,%r32; .loc 1 679 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 %r26; .reg .u32 %r33; .reg .u32 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u32 %r42; .reg .u32 %r46; .reg .u32 %r48; .reg .u32 %r49; .reg .u64 %r53; .reg .f64 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .u64 %r58; .reg .u32 %r60; .reg .u32 %r61; .reg .u32 %r62; .reg .pred %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .u32 %r66; .reg .u64 %r67; .reg .pred %r71; .reg .u32 %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .u64 %r76; .reg .u64 %r77; .reg .pred %r79; .reg .pred %r80; .reg .u32 %r82; .reg .u32 %r83; .reg .u32 %r84; .reg .u32 %r85; .reg .u64 %r86; .reg .u64 %r90; .reg .pred %r91; .reg .u32 %r92; .reg .u32 %r93; .reg .u64 %r94; .reg .u64 %r95; .reg .u32 %r97; .reg .u64 %r98; .reg .u64 %r102; .reg .u64 %r103; .reg .u32 %r106; .reg .u32 %r107; .reg .u64 %r108; .reg .pred %r112; mov.u64 %r55,%ar0; mov.u64 %r56,%ar1; .loc 1 695 7 add.u64 %r39,%r55,24; .loc 1 696 15 ld.s32 %r57,[%r55+20]; .loc 1 696 12 shl.b64 %r58,%r57,2; .loc 1 696 6 add.u64 %r40,%r39,%r58; .loc 1 697 5 add.u64 %r41,%r40,-4; ld.u32 %r42,[%r40+-4]; .loc 1 702 7 { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r42; call (%value_in),__hi0bits,(%out_arg1); ld.param.u32 %r60,[%value_in]; } .loc 1 703 11 mov.u32 %r62,32; sub.u32 %r61,%r62,%r60; .loc 1 703 6 st.u32 [%r56],%r61; .loc 1 705 6 setp.gt.s32 %r63,%r60,10; @ %r63 bra $L148; .loc 1 707 32 mov.u32 %r64,11; sub.u32 %r26,%r64,%r60; .loc 1 707 22 shr.u32 %r65,%r42,%r26; .loc 1 707 18 or.b32 %r66,%r65,1072693248; .loc 1 707 10 cvt.u64.u32 %r67,%r66; shl.b64 %r53,%r67,32; .loc 1 708 28 setp.ge.u64 %r71,%r39,%r41; @ %r71 bra $L155; ld.u32 %r72,[%r40+-8]; shr.u32 %r49,%r72,%r26; bra $L149; $L155: mov.u32 %r49,0; $L149: .loc 1 710 31 add.u32 %r73,%r60,21; .loc 1 710 14 shl.b32 %r74,%r42,%r73; .loc 1 710 36 or.b32 %r75,%r74,%r49; .loc 1 710 10 cvt.u64.u32 %r76,%r75; and.b64 %r77,%r53,-4294967296; or.b64 %r53,%r77,%r76; .loc 1 712 7 bra $L150; $L148: add.u32 %r38,%r60,-11; .loc 1 714 24 setp.ge.u64 %r79,%r39,%r41; @ %r79 bra $L151; ld.u32 %r46,[%r40+-8]; .loc 1 715 6 setp.eq.u32 %r80,%r38,0; @ %r80 bra $L152; .loc 1 717 38 sub.u32 %r33,%r62,%r38; .loc 1 717 22 shl.b32 %r82,%r42,%r38; .loc 1 717 31 shr.u32 %r83,%r46,%r33; .loc 1 717 27 or.b32 %r84,%r82,%r83; or.b32 %r85,%r84,1072693248; .loc 1 717 10 cvt.u64.u32 %r86,%r85; shl.b64 %r53,%r86,32; shl.b32 %r48,%r46,%r38; .loc 1 714 24 add.u64 %r90,%r40,-8; .loc 1 718 28 setp.ge.u64 %r91,%r39,%r90; @ %r91 bra $L153; ld.u32 %r93,[%r40+-12]; shr.u32 %r92,%r93,%r33; or.b32 %r48,%r48,%r92; $L153: .loc 1 720 10 cvt.u64.u32 %r94,%r48; and.b64 %r95,%r53,-4294967296; or.b64 %r53,%r95,%r94; bra $L150; $L152: .loc 1 725 18 or.b32 %r97,%r42,1072693248; .loc 1 725 10 cvt.u64.u32 %r98,%r97; .loc 1 727 10 cvt.u64.u32 %r102,%r46; shl.b64 %r103,%r98,32; or.b64 %r53,%r103,%r102; $L150: .loc 1 755 11 mov.b64 %r54,%r53; bra $L159; $L154: .loc 1 717 22 shl.b32 %r106,%r42,%r38; .loc 1 717 27 or.b32 %r107,%r106,1072693248; .loc 1 717 10 cvt.u64.u32 %r108,%r107; shl.b64 %r53,%r108,32; mov.u32 %r48,0; bra $L153; $L151: .loc 1 715 6 setp.ne.u32 %r112,%r38,0; @ %r112 bra $L154; .loc 1 714 24 mov.u32 %r46,%r38; bra $L152; $L159: .loc 1 756 1 mov.f64 %value,%r54; 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 %r25; .reg .u32 %r30; .reg .u32 %r45; .reg .u32 %r46; .reg .u32 %r50; .reg .u32 %r51; .reg .u64 %r54; .reg .f64 %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .u32 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u64 %r62; .reg .u32 %r63; .reg .pred %r64; .reg .u32 %r65; .reg .u64 %r66; .reg .pred %r67; .reg .u64 %r69; .reg .u32 %r70; .reg .pred %r71; .reg .u32 %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .u32 %r76; .reg .u32 %r77; .reg .pred %r78; .reg .u32 %r80; .reg .u32 %r81; .reg .u32 %r82; .reg .pred %r83; .reg .u32 %r84; .reg .u32 %r85; .reg .u32 %r86; .reg .u32 %r87; .reg .u32 %r88; .reg .u32 %r89; .reg .u64 %r90; .reg .u64 %r91; .reg .u64 %r92; .reg .u32 %r94; .reg .u32 %r95; .reg .u32 %r96; mov.u64 %r54,%ar0; mov.f64 %r55,%ar1; mov.u64 %r56,%ar2; mov.u64 %r57,%ar3; .loc 1 785 7 mov.u32 %r59,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r54; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r59; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r60,[%value_in]; } mov.b64 %r61,%r55; shr.u64 %r62,%r61,32; cvt.u32.u64 %r51,%r62; .loc 1 791 10 and.b32 %r22,%r51,1048575; .loc 1 799 23 shr.u32 %r63,%r51,20; and.b32 %r23,%r63,2047; .loc 1 799 6 setp.ne.u32 %r64,%r23,0; @ %r64 bra $L161; .loc 1 791 5 st.u32 [%frame],%r22; bra $L162; $L161: .loc 1 800 7 or.b32 %r65,%r22,1048576; st.u32 [%frame],%r65; $L162: mov.b64 %r66,%r55; cvt.u32.u64 %r50,%r66; .loc 1 804 6 setp.eq.u32 %r67,%r50,0; @ %r67 bra $L163; .loc 1 806 9 st.u32 [%frame+4],%r50; .loc 1 807 11 add.u64 %r69,%frame,4; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r69; call (%value_in),__lo0bits,(%out_arg1); ld.param.u32 %r70,[%value_in]; } mov.u32 %r46,%r70; .loc 1 808 10 setp.eq.u32 %r71,%r46,0; @ %r71 bra $L164; .loc 1 810 23 ld.u32 %r25,[%frame]; .loc 1 810 30 mov.u32 %r73,32; sub.u32 %r72,%r73,%r46; .loc 1 810 23 shl.b32 %r74,%r25,%r72; .loc 1 810 19 ld.u32 %r76,[%frame+4]; or.b32 %r75,%r74,%r76; .loc 1 810 15 st.u32 [%r60+24],%r75; .loc 1 811 6 shr.u32 %r30,%r25,%r46; st.u32 [%frame],%r30; bra $L165; $L164: .loc 1 814 7 ld.u32 %r77,[%frame+4]; st.u32 [%r60+24],%r77; ld.u32 %r30,[%frame]; $L165: .loc 1 815 27 st.u32 [%r60+28],%r30; .loc 1 815 36 setp.ne.u32 %r78,%r30,0; selp.u32 %r45,2,1,%r78; .loc 1 815 19 st.u32 [%r60+20],%r45; bra $L167; $L163: .loc 1 824 11 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; call (%value_in),__lo0bits,(%out_arg1); ld.param.u32 %r80,[%value_in]; } .loc 1 825 12 ld.u32 %r81,[%frame]; st.u32 [%r60+24],%r81; .loc 1 826 19 mov.u32 %r82,1; st.u32 [%r60+20],%r82; .loc 1 828 9 add.u32 %r46,%r80,32; .loc 1 826 9 mov.u32 %r45,%r82; $L167: .loc 1 886 6 setp.eq.u32 %r83,%r23,0; @ %r83 bra $L168; .loc 1 893 22 add.u32 %r84,%r23,-1075; .loc 1 893 32 add.u32 %r85,%r84,%r46; .loc 1 893 10 st.u32 [%r56],%r85; .loc 1 894 17 mov.u32 %r87,53; sub.u32 %r86,%r87,%r46; .loc 1 894 13 st.u32 [%r57],%r86; bra $L160; $L168: .loc 1 900 36 add.u32 %r88,%r46,-1074; .loc 1 900 10 st.u32 [%r56],%r88; .loc 1 902 34 cvt.s64.s32 %r90,%r45; .loc 1 902 24 shl.b64 %r91,%r90,2; add.u64 %r92,%r60,%r91; ld.u32 %r89,[%r92+20]; { .param .u32 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r89; call (%value_in),__hi0bits,(%out_arg1); ld.param.u32 %r94,[%value_in]; } .loc 1 902 18 shl.b32 %r95,%r45,5; .loc 1 902 22 sub.u32 %r96,%r95,%r94; .loc 1 902 13 st.u32 [%r57],%r96; $L160: .loc 1 909 1 mov.u64 %value,%r60; 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 %r56; .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 920 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 920 8 mov.b64 %r40,%r39; .loc 1 921 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 921 8 mov.b64 %r41,%r22; .loc 1 923 31 ld.u32 %r53,[%r43+20]; ld.u32 %r54,[%r44+20]; sub.u32 %r52,%r53,%r54; .loc 1 923 20 shl.b32 %r55,%r52,5; .loc 1 923 10 ld.u32 %r57,[%frame+4]; ld.u32 %r58,[%frame]; sub.u32 %r56,%r57,%r58; .loc 1 923 5 add.u32 %r35,%r55,%r56; .loc 1 942 6 setp.le.s32 %r59,%r35,0; @ %r59 bra $L172; .loc 1 943 21 shl.b32 %r60,%r35,20; .loc 1 943 16 shr.u64 %r62,%r40,32; cvt.u32.u64 %r64,%r62; add.u32 %r63,%r60,%r64; cvt.u64.u32 %r65,%r63; shl.b64 %r66,%r65,32; and.b64 %r67,%r40,4294967295; or.b64 %r68,%r67,%r66; mov.b64 %r39,%r68; bra $L173; $L172: .loc 1 947 23 shl.b32 %r70,%r35,20; .loc 1 947 18 shr.u64 %r73,%r41,32; cvt.u32.u64 %r75,%r73; sub.u32 %r74,%r75,%r70; cvt.u64.u32 %r76,%r74; shl.b64 %r77,%r76,32; and.b64 %r78,%r41,4294967295; or.b64 %r79,%r78,%r77; mov.b64 %r22,%r79; $L173: .loc 1 950 15 div.rn.f64 %value,%r39,%r22; .loc 1 951 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 983 6 setp.gt.s32 %r24,%r23,23; @ %r24 bra $L177; .loc 1 984 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 $L174; $L177: .loc 1 982 10 mov.f64 %r22,0d3ff0000000000000; $L175: .loc 1 987 9 mul.f64 %r22,%r22,0d4024000000000000; .loc 1 988 10 add.u32 %r23,%r23,-1; .loc 1 985 9 setp.ne.u32 %r29,%r23,0; @ %r29 bra $L175; $L174: .loc 1 991 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 %r30; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r44; .reg .u64 %r45; .reg .u64 %r50; .reg .u32 %r51; .reg .u64 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .u64 %r58; .reg .u64 %r59; .reg .pred %r60; .reg .pred %r61; .reg .u64 %r62; .reg .u64 %r64; .reg .u64 %r66; .reg .u64 %r67; .reg .pred %r68; .reg .u32 %r69; .reg .pred %r70; mov.u64 %r50,%ar0; mov.u32 %r51,%ar1; mov.u64 %r52,%ar2; .loc 1 1004 14 add.u32 %r53,%r51,-1; .loc 1 1004 18 shr.s32 %r54,%r53,5; .loc 1 1004 29 cvt.s64.s32 %r55,%r54; add.u64 %r56,%r55,1; shl.b64 %r57,%r56,2; .loc 1 1004 5 add.u64 %r35,%r50,%r57; .loc 1 1005 4 add.u64 %r36,%r52,24; .loc 1 1007 12 ld.s32 %r58,[%r52+20]; .loc 1 1007 9 shl.b64 %r59,%r58,2; .loc 1 1007 5 add.u64 %r37,%r36,%r59; .loc 1 1008 7 setp.ge.u64 %r60,%r36,%r37; @ %r60 bra $L180; mov.u64 %r44,%r50; mov.u64 %r45,%r36; $L181: .loc 1 1009 10 ld.u32 %r30,[%r45]; .loc 1 1009 8 st.u32 [%r44],%r30; add.u64 %r44,%r44,4; add.u64 %r45,%r45,4; .loc 1 1008 7 setp.gt.u64 %r61,%r37,%r45; @ %r61 bra $L181; sub.u64 %r62,%r37,%r52; add.u64 %r64,%r62,-25; and.b64 %r66,%r64,-4; add.u64 %r67,%r66,4; add.u64 %r50,%r50,%r67; $L180: .loc 1 1018 7 setp.le.u64 %r68,%r35,%r50; @ %r68 bra $L179; mov.u64 %r34,%r50; .loc 1 1019 8 mov.u32 %r69,0; $L183: st.u32 [%r34],%r69; add.u64 %r34,%r34,4; .loc 1 1018 7 setp.gt.u64 %r70,%r35,%r34; @ %r70 bra $L183; $L179: .loc 1 1020 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 .u32 %r24; .reg .u32 %r25; .reg .u32 %r26; .reg .u32 %r27; .reg .u32 %r28; .reg .u64 %r30; .reg .u64 %r33; .reg .u32 %r36; .reg .u64 %r37; .reg .u32 %r38; .reg .pred %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .u64 %r43; .reg .pred %r44; .reg .pred %r45; .reg .u32 %r46; .reg .pred %r47; .reg .pred %r48; .reg .pred %r49; .reg .u32 %r50; .reg .pred %r51; .reg .pred %r52; mov.u64 %r37,%ar0; mov.u32 %r38,%ar1; .loc 1 1030 4 add.u64 %r23,%r37,24; .loc 1 1031 7 ld.u32 %r24,[%r37+20]; .loc 1 1032 4 shr.s32 %r25,%r38,5; .loc 1 1033 5 setp.ge.s32 %r39,%r24,%r25; @ %r39 bra $L187; cvt.s64.s32 %r40,%r24; shl.b64 %r41,%r40,2; add.u64 %r33,%r23,%r41; bra $L188; $L187: cvt.s64.s32 %r42,%r25; shl.b64 %r43,%r42,2; add.u64 %r33,%r23,%r43; .loc 1 1035 10 setp.le.s32 %r44,%r24,%r25; @ %r44 bra $L188; .loc 1 1035 26 and.b32 %r26,%r38,31; .loc 1 1035 20 setp.eq.u32 %r45,%r26,0; @ %r45 bra $L188; .loc 1 1036 11 ld.u32 %r27,[%r33]; .loc 1 1037 6 shr.u32 %r28,%r27,%r26; .loc 1 1038 6 shl.b32 %r46,%r28,%r26; .loc 1 1039 6 setp.ne.u32 %r47,%r27,%r46; @ %r47 bra $L192; $L188: .loc 1 1044 7 setp.ge.u64 %r48,%r23,%r33; @ %r48 bra $L193; .loc 1 1045 6 add.u64 %r30,%r33,-4; .loc 1 1045 7 ld.u32 %r36,[%r33+-4]; .loc 1 1045 6 setp.ne.u32 %r49,%r36,0; @ ! %r49 bra $L190; bra $L194; $L191: add.u64 %r30,%r30,-4; ld.u32 %r50,[%r30]; setp.ne.u32 %r51,%r50,0; @ %r51 bra $L195; $L190: .loc 1 1044 7 setp.lt.u64 %r52,%r23,%r30; @ %r52 bra $L191; bra $L186; $L192: .loc 1 1040 11 mov.u32 %r36,1; bra $L186; $L193: .loc 1 1047 9 mov.u32 %r36,0; bra $L186; $L194: .loc 1 1040 11 mov.u32 %r36,1; bra $L186; $L195: mov.u32 %r36,1; $L186: .loc 1 1048 1 mov.u32 %value,%r36; st.param.u32 [%value_out],%value; ret; } lib_a-mrand48.o/1591654536 399 399 100644 1845 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 21 17 add.u64 %r32,%r29,240; .loc 1 21 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 22 11 ld.u16 %r34,[%r29+244]; .loc 1 22 35 shl.b64 %r35,%r34,16; .loc 1 22 44 ld.u16 %r36,[%r29+242]; .loc 1 22 42 add.u64 %value,%r35,%r36; .loc 1 23 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 29 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 21 17 add.u64 %r32,%r22,240; .loc 1 21 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 22 11 ld.u16 %r34,[%r22+244]; .loc 1 22 35 shl.b64 %r35,%r34,16; .loc 1 22 44 ld.u16 %r36,[%r22+242]; .loc 1 22 42 add.u64 %value,%r35,%r36; .loc 1 30 1 st.param.u64 [%value_out],%value; ret; } /158 1591654536 399 399 100644 20530 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // BEGIN GLOBAL FUNCTION DECL: nl_langinfo .visible .func (.param .u64 %value_out) nl_langinfo (.param .u32 %in_ar0); .file 1 "../../../../../../newlib/libc/locale/nl_langinfo.c" // BEGIN GLOBAL FUNCTION DECL: setlocale .extern .func (.param .u64 %value_out) setlocale (.param .u32 %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: strncmp .extern .func (.param .u32 %value_out) strncmp (.param .u64 %in_ar0, .param .u64 %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: __nvptx_realloc .extern .func (.param .u64 %value_out) __nvptx_realloc (.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: strstr .extern .func (.param .u64 %value_out) strstr (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __get_current_time_locale .extern .func (.param .u64 %value_out) __get_current_time_locale; // BEGIN GLOBAL FUNCTION DECL: __get_current_numeric_locale .extern .func (.param .u64 %value_out) __get_current_numeric_locale; // BEGIN GLOBAL FUNCTION DECL: __get_current_messages_locale .extern .func (.param .u64 %value_out) __get_current_messages_locale; // BEGIN GLOBAL FUNCTION DECL: __get_current_monetary_locale .extern .func (.param .u64 %value_out) __get_current_monetary_locale; // BEGIN GLOBAL FUNCTION DECL: localeconv .extern .func (.param .u64 %value_out) localeconv; // 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 VAR DEF: $LC9 .const .align 1 .u8 $LC9[6] = {122,104,95,67,78,0 }; // BEGIN VAR DEF: cset$2318 .global .align 8 .u64 cset$2318[1]; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[6] = {101,117,99,67,78,0 }; // BEGIN VAR DEF: csym$2317 .global .align 8 .u64 csym$2317[1]; // BEGIN VAR DEF: $LC10 .const .align 1 .u8 $LC10[6] = {65,83,67,73,73,0 }; // BEGIN VAR DEF: $LC11 .const .align 1 .u8 $LC11[2] = {67,0 }; // BEGIN VAR DEF: $LC12 .const .align 1 .u8 $LC12[6] = {80,79,83,73,88,0 }; // BEGIN VAR DEF: $LC13 .const .align 1 .u8 $LC13[4] = {73,83,79,0 }; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[1] = {0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[9] = {85,83,45,65,83,67,73,73,0 }; // BEGIN VAR DEF: $LC3 .const .align 1 .u8 $LC3[6] = {101,117,99,75,82,0 }; // BEGIN VAR DEF: $LC4 .const .align 1 .u8 $LC4[6] = {101,117,99,74,80,0 }; // BEGIN VAR DEF: $LC5 .const .align 1 .u8 $LC5[5] = {73,83,79,95,0 }; // BEGIN VAR DEF: $LC6 .const .align 1 .u8 $LC6[4] = {69,85,67,0 }; // BEGIN VAR DEF: $LC7 .const .align 1 .u8 $LC7[6] = {106,97,95,74,80,0 }; // BEGIN VAR DEF: $LC8 .const .align 1 .u8 $LC8[6] = {107,111,95,75,82,0 }; // BEGIN GLOBAL FUNCTION DEF: nl_langinfo .visible .func (.param .u64 %value_out) nl_langinfo (.param .u32 %in_ar0) { .reg .u64 %value; .reg .u32 %ar0; ld.param.u32 %ar0,[%in_ar0]; .reg .u64 %r26; .reg .u64 %r75; .reg .u64 %r82; .reg .u32 %r83; .reg .u32 %r86; .reg .u64 %r87; .reg .u32 %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 .u32 %r116; .reg .u64 %r117; .reg .u64 %r118; .reg .pred %r119; .reg .u32 %r121; .reg .u64 %r122; .reg .pred %r123; .reg .u64 %r125; .reg .u64 %r126; .reg .u32 %r127; .reg .pred %r128; .reg .u64 %r130; .reg .u64 %r133; .reg .u32 %r134; .reg .u64 %r135; .reg .u64 %r136; .reg .pred %r137; .reg .pred %r138; .reg .u64 %r141; .reg .u32 %r142; .reg .pred %r143; .reg .u64 %r145; .reg .u64 %r146; .reg .u32 %r147; .reg .pred %r148; .reg .u64 %r150; .reg .u32 %r152; .reg .pred %r153; .reg .u64 %r155; .reg .u32 %r157; .reg .pred %r158; .reg .u64 %r160; .reg .u32 %r161; .reg .pred %r162; .reg .u64 %r164; .reg .u32 %r165; .reg .pred %r166; .reg .u64 %r168; .reg .u32 %r169; .reg .pred %r170; .reg .u64 %r172; .reg .u64 %r173; .reg .pred %r174; .reg .u64 %r175; .reg .u64 %r176; .reg .u64 %r177; .reg .u64 %r178; .reg .u64 %r179; .reg .u64 %r180; .reg .u64 %r181; .reg .u32 %r182; .reg .u64 %r183; .reg .u64 %r184; .reg .u64 %r185; .reg .u64 %r186; .reg .u64 %r188; .reg .u32 %r189; .reg .u64 %r190; .reg .u64 %r191; .reg .u64 %r192; .reg .u64 %r193; .reg .u64 %r194; .reg .u32 %r195; .reg .u64 %r196; .reg .u64 %r197; .reg .u64 %r198; .reg .u64 %r199; .reg .u64 %r200; .reg .u32 %r201; .reg .u64 %r202; .reg .u64 %r203; .reg .u64 %r204; .reg .u64 %r205; .reg .u64 %r206; .reg .u64 %r207; .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 %r216; .reg .u64 %r217; .reg .u16 %r218; .reg .u32 %r219; .reg .pred %r220; .reg .u64 %r221; .reg .u64 %r222; .reg .u16 %r223; .reg .u32 %r224; .reg .u16 %r225; .reg .pred %r226; .reg .pred %r228; .reg .u64 %r229; .reg .u64 %r232; .reg .u32 %r233; .reg .pred %r234; .reg .pred %r235; .reg .u64 %r237; .reg .u32 %r240; .reg .u32 %r241; .reg .u64 %r242; .reg .u64 %r243; .reg .u64 %r244; .reg .pred %r245; .reg .pred %r246; .reg .u64 %r248; .reg .u64 %r250; .reg .u64 %r252; .reg .u64 %r253; .reg .u64 %r256; .reg .u64 %r257; .reg .u64 %r258; .reg .u32 %r259; .reg .u64 %r262; .reg .u64 %r263; .reg .u64 %r264; mov.u32 %r88,%ar0; setp.gt.s32 %r89,%r88,44; @ %r89 bra $L2; setp.ge.s32 %r90,%r88,33; @ %r90 bra $L3; setp.eq.u32 %r91,%r88,6; @ %r91 bra $L4; setp.gt.s32 %r92,%r88,6; @ %r92 bra $L5; setp.eq.u32 %r93,%r88,2; @ %r93 bra $L6; setp.gt.s32 %r94,%r88,2; @ %r94 bra $L7; setp.eq.u32 %r95,%r88,0; @ %r95 bra $L8; setp.eq.u32 %r96,%r88,1; @ %r96 bra $L9; .loc 1 432 7 cvta.const.u64 %r87,$LC0; bra $L1; $L7: setp.eq.u32 %r97,%r88,4; @ %r97 bra $L11; setp.gt.s32 %r98,%r88,4; @ ! %r98 bra $L65; bra $L12; $L5: setp.gt.s32 %r99,%r88,20; @ %r99 bra $L14; setp.ge.s32 %r100,%r88,14; @ ! %r100 bra $L66; bra $L15; $L2: setp.eq.u32 %r101,%r88,51; @ %r101 bra $L17; setp.gt.s32 %r102,%r88,51; @ %r102 bra $L18; setp.eq.u32 %r103,%r88,47; @ %r103 bra $L19; setp.gt.s32 %r104,%r88,47; @ %r104 bra $L20; setp.eq.u32 %r105,%r88,45; @ %r105 bra $L21; setp.eq.u32 %r106,%r88,46; @ %r106 bra $L22; cvta.const.u64 %r87,$LC0; bra $L1; $L20: setp.eq.u32 %r107,%r88,49; @ %r107 bra $L23; setp.gt.s32 %r108,%r88,49; @ ! %r108 bra $L67; bra $L24; $L18: setp.eq.u32 %r109,%r88,55; @ %r109 bra $L26; setp.gt.s32 %r110,%r88,55; @ %r110 bra $L27; setp.eq.u32 %r111,%r88,53; @ %r111 bra $L28; setp.gt.s32 %r112,%r88,53; @ ! %r112 bra $L68; bra $L29; $L27: setp.eq.u32 %r113,%r88,57; @ %r113 bra $L31; setp.lt.s32 %r114,%r88,57; @ %r114 bra $L32; setp.eq.u32 %r115,%r88,84; @ %r115 bra $L33; cvta.const.u64 %r87,$LC0; bra $L1; $L8: .loc 1 267 12 mov.u64 %r117,0; mov.u32 %r116,2; { .param .u64 %value_in; .param .u32 %out_arg1; st.param.u32 [%out_arg1],%r116; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r117; call (%value_in),setlocale,(%out_arg1,%out_arg2); ld.param.u64 %r118,[%value_in]; } .loc 1 267 6 setp.ne.u64 %r119,%r118,0; @ %r119 bra $L34; $L41: .loc 1 266 7 cvta.const.u64 %r87,$LC0; bra $L1; $L34: .loc 1 268 14 mov.u32 %r121,46; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r118; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r121; call (%value_in),strchr,(%out_arg1,%out_arg2); ld.param.u64 %r122,[%value_in]; } .loc 1 268 7 setp.eq.u64 %r123,%r122,0; @ %r123 bra $L35; .loc 1 269 9 add.u64 %r87,%r122,1; .loc 1 271 9 mov.u64 %r126,4; cvta.const.u64 %r125,$LC5; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r87; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r125; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r126; call (%value_in),strncmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r127,[%value_in]; } .loc 1 271 8 setp.ne.u32 %r128,%r127,0; @ %r128 bra $L36; .loc 1 272 17 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r87; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r130,[%value_in]; } .loc 1 274 48 cvt.u32.u64 %r134,%r130; cvt.s64.s32 %r133,%r134; ld.global.u64 %r135,[cset$2318]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r135; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r133; call (%value_in),__nvptx_realloc,(%out_arg1,%out_arg2); ld.param.u64 %r136,[%value_in]; } .loc 1 276 44 setp.ne.u64 %r137,%r136,0; @ %r137 bra $L37; .loc 1 276 51 ld.global.u64 %r26,[cset$2318]; setp.eq.u64 %r138,%r26,0; @ %r138 bra $L38; .loc 1 277 43 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; call __nvptx_free,(%out_arg1); } bra $L38; $L36: .loc 1 286 16 cvta.const.u64 %r141,$LC6; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r87; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r141; call (%value_in),strcmp,(%out_arg1,%out_arg2); ld.param.u32 %r142,[%value_in]; } .loc 1 286 15 setp.ne.u32 %r143,%r142,0; @ %r143 bra $L39; .loc 1 287 10 mov.u64 %r146,5; cvta.const.u64 %r145,$LC7; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r118; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r145; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r146; call (%value_in),strncmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r147,[%value_in]; } .loc 1 287 9 setp.eq.u32 %r148,%r147,0; @ %r148 bra $L46; .loc 1 289 15 cvta.const.u64 %r150,$LC8; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r118; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r150; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r146; call (%value_in),strncmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r152,[%value_in]; } .loc 1 289 14 setp.eq.u32 %r153,%r152,0; @ %r153 bra $L47; .loc 1 291 15 cvta.const.u64 %r155,$LC9; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r118; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r155; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r146; call (%value_in),strncmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r157,[%value_in]; } .loc 1 291 14 setp.ne.u32 %r158,%r157,0; @ %r158 bra $L1; .loc 1 292 11 cvta.const.u64 %r87,$LC1; bra $L1; $L39: .loc 1 293 16 cvta.const.u64 %r160,$LC10; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r87; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r160; call (%value_in),strcmp,(%out_arg1,%out_arg2); ld.param.u32 %r161,[%value_in]; } .loc 1 293 15 setp.ne.u32 %r162,%r161,0; @ %r162 bra $L1; $L40: .loc 1 294 10 cvta.const.u64 %r87,$LC2; bra $L1; $L35: .loc 1 296 15 cvta.const.u64 %r164,$LC11; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r118; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r164; call (%value_in),strcmp,(%out_arg1,%out_arg2); ld.param.u32 %r165,[%value_in]; } .loc 1 296 14 setp.eq.u32 %r166,%r165,0; @ %r166 bra $L40; .loc 1 297 8 cvta.const.u64 %r168,$LC12; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r118; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r168; call (%value_in),strcmp,(%out_arg1,%out_arg2); ld.param.u32 %r169,[%value_in]; } .loc 1 296 35 setp.eq.u32 %r170,%r169,0; @ %r170 bra $L40; .loc 1 299 11 cvta.const.u64 %r172,$LC10; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r118; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r172; call (%value_in),strstr,(%out_arg1,%out_arg2); ld.param.u64 %r173,[%value_in]; } .loc 1 299 8 setp.ne.u64 %r174,%r173,0; @ %r174 bra $L40; bra $L41; $L9: .loc 1 307 18 { .param .u64 %value_in; call (%value_in),__get_current_time_locale; ld.param.u64 %r175,[%value_in]; } .loc 1 307 7 ld.u64 %r87,[%r175+320]; .loc 1 308 3 bra $L1; $L6: .loc 1 310 18 { .param .u64 %value_in; call (%value_in),__get_current_time_locale; ld.param.u64 %r176,[%value_in]; } .loc 1 310 7 ld.u64 %r87,[%r176+312]; .loc 1 311 3 bra $L1; $L65: .loc 1 313 18 { .param .u64 %value_in; call (%value_in),__get_current_time_locale; ld.param.u64 %r177,[%value_in]; } .loc 1 313 7 ld.u64 %r87,[%r177+304]; .loc 1 314 3 bra $L1; $L11: .loc 1 316 18 { .param .u64 %value_in; call (%value_in),__get_current_time_locale; ld.param.u64 %r178,[%value_in]; } .loc 1 316 7 ld.u64 %r87,[%r178+456]; .loc 1 317 3 bra $L1; $L12: .loc 1 319 18 { .param .u64 %value_in; call (%value_in),__get_current_time_locale; ld.param.u64 %r179,[%value_in]; } .loc 1 319 7 ld.u64 %r87,[%r179+328]; .loc 1 320 3 bra $L1; $L4: .loc 1 322 18 { .param .u64 %value_in; call (%value_in),__get_current_time_locale; ld.param.u64 %r180,[%value_in]; } .loc 1 322 7 ld.u64 %r87,[%r180+336]; .loc 1 323 3 bra $L1; $L66: .loc 1 326 17 { .param .u64 %value_in; call (%value_in),__get_current_time_locale; ld.param.u64 %r181,[%value_in]; } .loc 1 326 54 add.u32 %r182,%r88,-7; .loc 1 326 7 cvt.s64.s32 %r183,%r182; add.u64 %r184,%r183,30; shl.b64 %r185,%r184,3; add.u64 %r186,%r181,%r185; ld.u64 %r87,[%r186+8]; .loc 1 327 3 bra $L1; $L15: .loc 1 330 17 { .param .u64 %value_in; call (%value_in),__get_current_time_locale; ld.param.u64 %r188,[%value_in]; } .loc 1 330 51 add.u32 %r189,%r88,-14; .loc 1 330 7 cvt.s64.s32 %r190,%r189; add.u64 %r191,%r190,24; shl.b64 %r192,%r191,3; add.u64 %r193,%r188,%r192; ld.u64 %r87,[%r193]; .loc 1 331 3 bra $L1; $L14: .loc 1 335 17 { .param .u64 %value_in; call (%value_in),__get_current_time_locale; ld.param.u64 %r194,[%value_in]; } .loc 1 335 52 add.u32 %r195,%r88,-21; .loc 1 335 7 cvt.s64.s32 %r196,%r195; add.u64 %r197,%r196,12; shl.b64 %r198,%r197,3; add.u64 %r199,%r194,%r198; ld.u64 %r87,[%r199]; .loc 1 336 3 bra $L1; $L3: .loc 1 340 17 { .param .u64 %value_in; call (%value_in),__get_current_time_locale; ld.param.u64 %r200,[%value_in]; } .loc 1 340 50 add.u32 %r201,%r88,-33; .loc 1 340 7 cvt.s64.s32 %r202,%r201; shl.b64 %r203,%r202,3; add.u64 %r204,%r200,%r203; ld.u64 %r87,[%r204]; .loc 1 341 3 bra $L1; $L21: .loc 1 343 17 { .param .u64 %value_in; call (%value_in),__get_current_time_locale; ld.param.u64 %r205,[%value_in]; } .loc 1 343 7 ld.u64 %r87,[%r205+464]; .loc 1 344 3 bra $L1; $L22: .loc 1 346 17 { .param .u64 %value_in; call (%value_in),__get_current_time_locale; ld.param.u64 %r206,[%value_in]; } .loc 1 346 7 ld.u64 %r87,[%r206+472]; .loc 1 347 3 bra $L1; $L19: .loc 1 349 17 { .param .u64 %value_in; call (%value_in),__get_current_time_locale; ld.param.u64 %r207,[%value_in]; } .loc 1 349 7 ld.u64 %r87,[%r207+480]; .loc 1 350 3 bra $L1; $L67: .loc 1 352 17 { .param .u64 %value_in; call (%value_in),__get_current_time_locale; ld.param.u64 %r208,[%value_in]; } .loc 1 352 7 ld.u64 %r87,[%r208+488]; .loc 1 353 3 bra $L1; $L23: .loc 1 355 17 { .param .u64 %value_in; call (%value_in),__get_current_time_locale; ld.param.u64 %r209,[%value_in]; } .loc 1 355 7 ld.u64 %r87,[%r209+496]; .loc 1 356 3 bra $L1; $L33: .loc 1 358 17 { .param .u64 %value_in; call (%value_in),__get_current_time_locale; ld.param.u64 %r210,[%value_in]; } .loc 1 358 7 ld.u64 %r87,[%r210+344]; .loc 1 359 3 bra $L1; $L24: .loc 1 361 17 { .param .u64 %value_in; call (%value_in),__get_current_numeric_locale; ld.param.u64 %r211,[%value_in]; } .loc 1 361 7 ld.u64 %r87,[%r211]; .loc 1 362 3 bra $L1; $L17: .loc 1 364 17 { .param .u64 %value_in; call (%value_in),__get_current_numeric_locale; ld.param.u64 %r212,[%value_in]; } .loc 1 364 7 ld.u64 %r87,[%r212+8]; .loc 1 365 3 bra $L1; $L68: .loc 1 367 17 { .param .u64 %value_in; call (%value_in),__get_current_messages_locale; ld.param.u64 %r213,[%value_in]; } .loc 1 367 7 ld.u64 %r87,[%r213]; .loc 1 368 3 bra $L1; $L28: .loc 1 370 17 { .param .u64 %value_in; call (%value_in),__get_current_messages_locale; ld.param.u64 %r214,[%value_in]; } .loc 1 370 7 ld.u64 %r87,[%r214+8]; .loc 1 371 3 bra $L1; $L29: .loc 1 378 17 { .param .u64 %value_in; call (%value_in),__get_current_messages_locale; ld.param.u64 %r215,[%value_in]; } .loc 1 378 7 ld.u64 %r87,[%r215+16]; .loc 1 379 3 bra $L1; $L26: .loc 1 381 17 { .param .u64 %value_in; call (%value_in),__get_current_messages_locale; ld.param.u64 %r216,[%value_in]; } .loc 1 381 7 ld.u64 %r87,[%r216+24]; .loc 1 382 3 bra $L1; $L32: .loc 1 385 16 { .param .u64 %value_in; call (%value_in),__get_current_monetary_locale; ld.param.u64 %r217,[%value_in]; } .loc 1 385 6 ld.u64 %r82,[%r217+8]; .loc 1 386 6 ld.s8 %r219,[%r82]; cvt.u16.u32 %r218,%r219; setp.eq.u16 %r220,%r218,0; @ %r220 bra $L41; .loc 1 387 15 { .param .u64 %value_in; call (%value_in),localeconv; ld.param.u64 %r221,[%value_in]; } .loc 1 387 9 ld.s8 %r83,[%r221+82]; .loc 1 389 15 { .param .u64 %value_in; call (%value_in),localeconv; ld.param.u64 %r222,[%value_in]; } .loc 1 389 7 ld.s8 %r224,[%r222+84]; cvt.u16.u32 %r223,%r224; cvt.u16.u32 %r225,%r83; setp.ne.u16 %r226,%r223,%r225; @ %r226 bra $L41; .loc 1 392 8 setp.ne.u16 %r228,%r223,127; @ %r228 bra $L42; .loc 1 393 21 { .param .u64 %value_in; call (%value_in),__get_current_monetary_locale; ld.param.u64 %r229,[%value_in]; } .loc 1 393 10 ld.u64 %r232,[%r229+16]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r82; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r232; call (%value_in),strcmp,(%out_arg1,%out_arg2); ld.param.u32 %r233,[%value_in]; } .loc 1 393 9 setp.eq.u32 %r234,%r233,0; @ %r234 bra $L48; bra $L41; $L42: .loc 1 396 10 setp.ne.u32 %r235,%r83,0; selp.u32 %r86,45,43,%r235; bra $L43; $L48: .loc 1 394 11 mov.u32 %r86,46; $L43: .loc 1 398 17 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r82; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r237,[%value_in]; } .loc 1 400 67 cvt.u32.u64 %r241,%r237; add.u32 %r240,%r241,2; .loc 1 400 48 cvt.s64.s32 %r242,%r240; ld.global.u64 %r243,[csym$2317]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r243; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r242; call (%value_in),__nvptx_realloc,(%out_arg1,%out_arg2); ld.param.u64 %r244,[%value_in]; } .loc 1 401 44 setp.ne.u64 %r245,%r244,0; @ %r245 bra $L44; .loc 1 401 51 ld.global.u64 %r75,[csym$2317]; setp.eq.u64 %r246,%r75,0; @ %r246 bra $L45; .loc 1 402 43 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r75; call __nvptx_free,(%out_arg1); } bra $L45; $L31: .loc 1 416 18 { .param .u64 %value_in; call (%value_in),__get_current_time_locale; ld.param.u64 %r248,[%value_in]; } .loc 1 416 7 ld.u64 %r87,[%r248+448]; .loc 1 417 3 bra $L1; $L46: .loc 1 288 11 cvta.const.u64 %r87,$LC4; bra $L1; $L47: .loc 1 290 11 cvta.const.u64 %r87,$LC3; .loc 1 434 11 bra $L1; $L38: .loc 1 279 46 mov.u64 %r250,0; st.global.u64 [cset$2318],%r250; .loc 1 285 11 cvta.const.u64 %r87,$LC0; bra $L1; $L37: .loc 1 279 46 st.global.u64 [cset$2318],%r136; .loc 1 281 7 cvta.const.u64 %r252,$LC13; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r136; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r252; call (%value_in),strcpy,(%out_arg1,%out_arg2); ld.param.u64 %r253,[%value_in]; } .loc 1 282 24 add.u64 %r256,%r122,5; .loc 1 282 7 ld.global.u64 %r257,[cset$2318]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r257; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r256; call (%value_in),strcat,(%out_arg1,%out_arg2); ld.param.u64 %r258,[%value_in]; } .loc 1 283 11 ld.global.u64 %r87,[cset$2318]; bra $L1; $L44: .loc 1 404 46 st.global.u64 [csym$2317],%r244; .loc 1 407 13 cvt.u32.u32 %r259,%r86; st.u8 [%r244],%r259; .loc 1 408 7 add.u64 %r262,%r244,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r262; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r82; call (%value_in),strcpy,(%out_arg1,%out_arg2); ld.param.u64 %r263,[%value_in]; } .loc 1 409 11 ld.global.u64 %r87,[csym$2317]; bra $L1; $L45: .loc 1 404 46 mov.u64 %r264,0; st.global.u64 [csym$2317],%r264; .loc 1 384 7 cvta.const.u64 %r87,$LC0; $L1: .loc 1 435 1 mov.u64 %value,%r87; st.param.u64 [%value_out],%value; ret; } lib_a-nrand48.o/1591654536 399 399 100644 2196 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r37; .reg .u32 %r38; .reg .u64 %r39; .reg .u16 %r40; mov.u64 %r30,%ar0; mov.u64 %r31,%ar1; .loc 1 21 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 22 17 ld.u16 %r35,[%r31+4]; .loc 1 22 42 shl.b64 %r36,%r35,15; .loc 1 23 31 ld.u16 %r37,[%r31+2]; shr.u32 %r38,%r37,1; cvt.u16.u32 %r40,%r38; cvt.u64.u16 %r39,%r40; .loc 1 22 49 add.u64 %value,%r36,%r39; .loc 1 24 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 .u32 %r38; .reg .u32 %r39; .reg .u64 %r40; .reg .u16 %r41; mov.u64 %r31,%ar0; .loc 1 21 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 22 17 ld.u16 %r36,[%r31+4]; .loc 1 22 42 shl.b64 %r37,%r36,15; .loc 1 23 31 ld.u16 %r38,[%r31+2]; shr.u32 %r39,%r38,1; cvt.u16.u32 %r41,%r39; cvt.u64.u16 %r40,%r41; .loc 1 22 49 add.u64 %value,%r37,%r40; .loc 1 32 1 st.param.u64 [%value_out],%value; ret; } lib_a-printf.o/ 1591654536 399 399 100644 1419 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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-putchar.o/1591654536 399 399 100644 2090 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } lib_a-puts.o/ 1591654536 399 399 100644 1965 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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-rand.o/ 1591654536 399 399 100644 1199 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 78 27 ld.global.u64 %r25,[_impure_ptr]; cvt.u64.u32 %r26,%r24; st.u64 [%r25+232],%r26; .loc 1 79 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 84 18 ld.global.u64 %r27,[_impure_ptr]; .loc 1 91 30 ld.u64 %r30,[%r27+232]; .loc 1 91 68 mad.lo.u64 %r24,%r30,6364136223846793005,1; .loc 1 90 27 st.u64 [%r27+232],%r24; .loc 1 92 41 shr.u64 %r32,%r24,32; .loc 1 92 10 cvt.u32.u64 %r33,%r32; and.b32 %value,%r33,2147483647; .loc 1 93 1 st.param.u32 [%value_out],%value; ret; } lib_a-rand48.o/ 1591654536 399 399 100644 1988 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u64 %r23; .reg .u32 %r24; .reg .u64 %r25; .reg .u32 %r30; .reg .u32 %r33; .reg .u64 %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .u64 %r58; .reg .u64 %r59; .reg .u16 %r60; .reg .u16 %r61; .reg .u64 %r63; .reg .u64 %r64; .reg .u16 %r65; .reg .u64 %r67; .reg .u16 %r68; .reg .u64 %r69; .reg .u64 %r70; .reg .u32 %r71; .reg .u32 %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .u32 %r77; .reg .u64 %r78; mov.u64 %r58,%ar0; mov.u64 %r59,%ar1; .loc 1 167 39 ld.u16 %r22,[%r58+246]; .loc 1 167 10 cvt.u16.u32 %r60,%r22; cvt.u64.u16 %r23,%r60; .loc 1 167 66 ld.u16 %r24,[%r59]; .loc 1 167 45 cvt.u16.u32 %r61,%r24; cvt.u64.u16 %r25,%r61; .loc 1 168 5 ld.u16 %r63,[%r58+252]; .loc 1 167 8 mad.lo.u64 %r53,%r23,%r25,%r63; .loc 1 170 8 shr.u64 %r54,%r53,16; .loc 1 171 67 ld.u16 %r30,[%r59+2]; .loc 1 172 34 ld.u16 %r33,[%r58+248]; .loc 1 171 46 cvt.u16.u32 %r65,%r30; cvt.u64.u16 %r64,%r65; .loc 1 172 5 cvt.u16.u32 %r68,%r33; cvt.u64.u16 %r67,%r68; .loc 1 172 38 mul.lo.u64 %r69,%r67,%r25; .loc 1 171 71 mad.lo.u64 %r70,%r64,%r23,%r69; .loc 1 171 8 add.u64 %r55,%r70,%r54; .loc 1 174 8 shr.u64 %r56,%r55,16; .loc 1 175 35 ld.u16 %r71,[%r59+4]; .loc 1 175 58 mul.lo.u32 %r73,%r33,%r30; .loc 1 175 39 mad.lo.u32 %r74,%r71,%r22,%r73; .loc 1 175 84 ld.u16 %r75,[%r58+250]; .loc 1 175 69 mad.lo.u32 %r77,%r75,%r24,%r74; cvt.s64.s32 %r78,%r77; .loc 1 175 8 add.u64 %r57,%r78,%r56; .loc 1 169 13 st.u16 [%r59],%r53; .loc 1 173 13 st.u16 [%r59+2],%r55; .loc 1 178 14 st.u16 [%r59+4],%r57; .loc 1 179 1 ret; } lib_a-rand_r.o/ 1591654536 399 399 100644 1257 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r28; .reg .u64 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u32 %r32; .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 %r28,[%r35]; .loc 1 29 12 setp.eq.u64 %r36,%r28,0; @ %r36 bra $L4; .loc 1 31 11 div.s64 %r29,%r28,127773; .loc 1 32 24 mad.lo.u64 %r38,%r29,-127773,%r28; .loc 1 32 45 mul.lo.u64 %r39,%r29,-2836; .loc 1 32 11 mad.lo.u64 %r30,%r38,16807,%r39; .loc 1 33 12 setp.lt.s64 %r40,%r30,0; @ %r40 bra $L3; cvt.u32.u64 %r32,%r30; and.b32 %r34,%r32,2147483647; bra $L2; $L3: .loc 1 34 13 add.u64 %r31,%r30,2147483647; cvt.u32.u64 %r32,%r31; and.b32 %r34,%r32,2147483647; bra $L2; $L4: mov.u32 %r34,719435623; mov.u32 %r32,%r34; $L2: .loc 1 35 17 st.u32 [%r35],%r32; .loc 1 37 1 mov.u32 %value,%r34; st.param.u32 [%value_out],%value; ret; } /179 1591654536 399 399 100644 2873 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: rawmemchr .visible .func (.param .u64 %value_out) rawmemchr (.param .u64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../../newlib/libc/string/rawmemchr.c" // BEGIN GLOBAL FUNCTION DEF: rawmemchr .visible .func (.param .u64 %value_out) rawmemchr (.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 %r26; .reg .u64 %r27; .reg .u64 %r30; .reg .u32 %r37; .reg .u64 %r39; .reg .u64 %r40; .reg .u64 %r42; .reg .u64 %r44; .reg .u64 %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .u64 %r56; .reg .pred %r57; .reg .u16 %r58; .reg .u16 %r59; .reg .pred %r60; .reg .u16 %r61; .reg .pred %r63; .reg .u64 %r64; .reg .pred %r65; .reg .u32 %r66; .reg .u32 %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .u64 %r70; .reg .u64 %r71; .reg .u64 %r72; .reg .u64 %r73; .reg .u64 %r74; .reg .pred %r75; .reg .u16 %r76; .reg .u16 %r77; .reg .pred %r78; .reg .u64 %r79; .reg .u64 %r80; .reg .u64 %r81; .reg .u64 %r82; .reg .u64 %r83; .reg .pred %r84; .reg .u16 %r85; .reg .u16 %r86; .reg .pred %r87; .reg .u16 %r89; mov.u64 %r53,%ar0; mov.u32 %r54,%ar1; .loc 1 75 17 cvt.u32.u32 %r55,%r54; cvt.u32.u8 %r37,%r55; .loc 1 82 10 and.b64 %r56,%r53,7; .loc 1 82 9 setp.eq.u64 %r57,%r56,0; @ %r57 bra $L2; .loc 1 84 10 ld.u8 %r58,[%r53]; cvt.u16.u32 %r59,%r37; setp.eq.u16 %r60,%r58,%r59; @ %r60 bra $L1; cvt.u16.u32 %r89,%r37; bra $L4; $L5: ld.u8 %r61,[%r53]; setp.eq.u16 %r63,%r61,%r89; @ %r63 bra $L1; $L4: .loc 1 86 10 add.u64 %r53,%r53,1; .loc 1 82 10 and.b64 %r64,%r53,7; .loc 1 82 9 setp.ne.u64 %r65,%r64,0; @ %r65 bra $L5; $L2: .loc 1 97 12 shl.b32 %r66,%r54,8; and.b32 %r67,%r66,65535; .loc 1 97 17 and.b32 %r68,%r54,255; or.b32 %r69,%r67,%r68; .loc 1 97 8 cvt.s64.s32 %r39,%r69; .loc 1 98 15 shl.b64 %r26,%r39,16; .loc 1 98 8 or.b64 %r40,%r26,%r39; .loc 1 100 18 shl.b64 %r27,%r40,32; .loc 1 100 10 or.b64 %r42,%r27,%r40; .loc 1 104 11 ld.u64 %r70,[%r53]; xor.b64 %r44,%r42,%r70; add.u64 %r71,%r44,-72340172838076673; not.b64 %r72,%r44; and.b64 %r73,%r71,%r72; and.b64 %r74,%r73,-9187201950435737472; .loc 1 104 10 setp.eq.u64 %r75,%r74,0; @ %r75 bra $L6; $L8: .loc 1 117 10 ld.u8 %r76,[%r53]; cvt.u16.u32 %r77,%r37; setp.eq.u16 %r78,%r76,%r77; @ %r78 bra $L1; cvt.u16.u32 %r86,%r37; bra $L7; $L6: .loc 1 106 11 add.u64 %r53,%r53,8; .loc 1 104 11 ld.u64 %r79,[%r53]; xor.b64 %r30,%r42,%r79; add.u64 %r80,%r30,-72340172838076673; not.b64 %r81,%r30; and.b64 %r82,%r80,%r81; and.b64 %r83,%r82,-9187201950435737472; .loc 1 104 10 setp.ne.u64 %r84,%r83,0; @ ! %r84 bra $L6; bra $L8; $L7: .loc 1 119 10 add.u64 %r53,%r53,1; .loc 1 117 10 ld.u8 %r85,[%r53]; setp.ne.u16 %r87,%r85,%r86; @ %r87 bra $L7; $L1: .loc 1 121 1 mov.u64 %value,%r53; st.param.u64 [%value_out],%value; ret; } lib_a-realloc.o/1591654536 399 399 100644 2194 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %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 .u64 %r45; .reg .u64 %r52; mov.u64 %r28,%ar0; mov.u64 %r29,%ar1; .loc 1 37 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 39 7 set.u32.ne.u64 %r33,%r28,0; neg.s32 %r34,%r33; .loc 1 39 15 set.u32.ne.u64 %r36,%r31,0; neg.s32 %r37,%r36; cvt.u16.u32 %r39,%r34; cvt.u16.u32 %r40,%r37; and.b16 %r38,%r39,%r40; .loc 1 39 6 cvt.u32.u16 %r41,%r38; cvt.u16.u8 %r42,%r41; setp.eq.u16 %r43,%r42,0; @ %r43 bra $L1; .loc 1 42 14 ld.u64 %r45,[%r28+-8]; min.u64 %r44,%r29,%r45; .loc 1 43 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],%r44; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r52,[%value_in]; } .loc 1 44 7 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r28; call __nvptx_free,(%out_arg1); } $L1: .loc 1 48 1 mov.u64 %value,%r31; st.param.u64 [%value_out],%value; ret; } /198 1591654536 399 399 100644 1870 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _realloc_os_r .visible .func (.param .u64 %value_out) _realloc_os_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3); .file 1 "../../../../../../../newlib/libc/machine/nvptx/reallocr.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 DEF: _realloc_os_r .visible .func (.param .u64 %value_out) _realloc_os_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 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .pred %r28; .reg .u64 %r30; .reg .pred %r31; .reg .u64 %r35; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; mov.u64 %r27,%ar3; .loc 1 22 6 setp.ge.u64 %r28,%r27,%r26; @ %r28 bra $L2; .loc 1 24 14 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r26; call (%value_in),__nvptx_malloc,(%out_arg1); ld.param.u64 %r30,[%value_in]; } .loc 1 25 10 setp.eq.u64 %r31,%r25,0; @ %r31 bra $L3; .loc 1 26 2 { .param .u64 %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],%r27; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r35,[%value_in]; } .loc 1 24 14 mov.u64 %r25,%r30; bra $L2; $L3: mov.u64 %r25,%r30; $L2: .loc 1 29 1 mov.u64 %value,%r25; st.param.u64 [%value_out],%value; ret; } lib_a-reent.o/ 1591654536 399 399 100644 4378 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .pred %r25; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; .loc 1 38 11 ld.u64 %r22,[%r24]; .loc 1 38 6 setp.eq.u64 %r25,%r22,0; @ %r25 bra $L2; .loc 1 39 5 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r22; call cleanup_glue,(%out_arg1,%out_arg2); } $L2: .loc 1 41 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; call _free_r,(%out_arg1,%out_arg2); } .loc 1 42 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 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .pred %r38; .reg .pred %r39; .reg .u64 %r40; .reg .pred %r41; .reg .pred %r44; .reg .pred %r45; .reg .pred %r48; .reg .pred %r51; .reg .pred %r52; .reg .pred %r53; .reg .pred %r56; .reg .u32 %r59; .reg .pred %r60; .reg .u64 %r62; .reg .pred %r63; mov.u64 %r36,%ar0; .loc 1 48 6 ld.global.u64 %r37,[_impure_ptr]; setp.ne.u64 %r38,%r37,%r36; @ ! %r38 bra $L6; .loc 1 55 11 ld.u64 %r35,[%r36+120]; .loc 1 55 10 setp.eq.u64 %r39,%r35,0; @ %r39 bra $L9; mov.u64 %r31,0; $L12: .loc 1 62 16 add.u64 %r40,%r35,%r31; ld.u64 %r23,[%r40]; .loc 1 63 14 setp.eq.u64 %r41,%r23,0; @ %r41 bra $L10; $L11: .loc 1 66 13 ld.u64 %r32,[%r23]; .loc 1 67 5 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r36; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r23; call _free_r,(%out_arg1,%out_arg2); } mov.u64 %r23,%r32; .loc 1 63 14 setp.ne.u64 %r44,%r23,0; @ %r44 bra $L11; ld.u64 %r35,[%r36+120]; $L10: add.u64 %r31,%r31,8; .loc 1 58 4 setp.ne.u64 %r45,%r31,512; @ %r45 bra $L12; .loc 1 71 4 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r36; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r35; call _free_r,(%out_arg1,%out_arg2); } $L9: .loc 1 73 11 ld.u64 %r25,[%r36+96]; .loc 1 73 10 setp.eq.u64 %r48,%r25,0; @ %r48 bra $L13; .loc 1 74 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r36; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r25; call _free_r,(%out_arg1,%out_arg2); } $L13: .loc 1 102 15 ld.u64 %r34,[%r36+504]; .loc 1 102 10 setp.ne.u64 %r51,%r34,0; @ %r51 bra $L14; $L17: .loc 1 115 14 ld.u64 %r27,[%r36+136]; .loc 1 115 10 setp.ne.u64 %r52,%r27,0; @ %r52 bra $L15; bra $L16; $L14: .loc 1 102 46 add.u64 %r26,%r36,512; .loc 1 102 26 setp.eq.u64 %r53,%r34,%r26; @ %r53 bra $L17; $L18: .loc 1 108 10 ld.u64 %r33,[%r34]; .loc 1 109 8 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r36; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r34; call _free_r,(%out_arg1,%out_arg2); } mov.u64 %r34,%r33; .loc 1 105 4 setp.ne.u64 %r56,%r26,%r34; @ %r56 bra $L18; bra $L17; $L15: .loc 1 116 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r36; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r27; call _free_r,(%out_arg1,%out_arg2); } $L16: .loc 1 123 10 ld.u32 %r59,[%r36+80]; setp.eq.u32 %r60,%r59,0; @ %r60 bra $L6; .loc 1 127 4 ld.u64 %r62,[%r36+88]; { $LCT0: .callprototype _ ( .param .u64 %in_ar0); .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r36; call %r62,(%out_arg1),$LCT0; } .loc 1 129 20 ld.u64 %r30,[%r36+1312]; .loc 1 129 7 setp.eq.u64 %r63,%r30,0; @ %r63 bra $L6; .loc 1 130 6 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r36; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r30; call cleanup_glue,(%out_arg1,%out_arg2); } $L6: .loc 1 136 1 ret; } lib_a-rindex.o/ 1591654536 399 399 100644 1017 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 44 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 45 1 mov.u64 %value,%r27; st.param.u64 [%value_out],%value; ret; } /216 1591654536 399 399 100644 1186 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 78 2 mov.b64 %r27,%r29; shr.u64 %r32,%r27,32; cvt.u32.u64 %r34,%r32; and.b32 %r33,%r34,2147483647; mov.b64 %r35,%r30; shr.u64 %r36,%r35,32; cvt.u32.u64 %r38,%r36; and.b32 %r37,%r38,-2147483648; or.b32 %r39,%r33,%r37; 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 80 1 st.param.f64 [%value_out],%value; ret; } /236 1591654536 399 399 100644 783 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; .loc 1 32 32 cvt.u32.u64 %r34,%r32; and.b32 %r33,%r34,2147483647; .loc 1 32 44 add.u32 %r35,%r33,-2146435072; .loc 1 32 56 shr.u32 %value,%r35,31; .loc 1 33 1 st.param.u32 [%value_out],%value; ret; } /254 1591654536 399 399 100644 2087 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r27; .reg .u32 %r28; .reg .u32 %r31; .reg .u32 %r33; .reg .f64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u32 %r38; .reg .pred %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u32 %r42; .reg .u32 %r44; .reg .u32 %r45; .reg .u16 %r46; .reg .u16 %r47; .reg .u16 %r48; .reg .u32 %r49; .reg .u16 %r50; .reg .pred %r51; .reg .u32 %r52; .reg .pred %r53; .reg .u32 %r54; .reg .pred %r55; .reg .u32 %r57; .reg .u32 %r58; .reg .u16 %r59; .reg .u16 %r60; .reg .u32 %r62; mov.f64 %r34,%ar0; mov.b64 %r35,%r34; shr.u64 %r36,%r35,32; cvt.u32.u64 %r28,%r36; cvt.u32.u64 %r27,%r35; .loc 1 16 26 or.b32 %r38,%r27,%r28; .loc 1 16 6 setp.eq.u32 %r39,%r38,0; @ %r39 bra $L3; .loc 1 17 33 set.u32.eq.u32 %r41,%r27,0; neg.s32 %r42,%r41; cvt.u32.u32 %r40,%r42; .loc 1 17 12 set.u32.eq.u32 %r44,%r28,-2147483648; neg.s32 %r45,%r44; .loc 1 17 26 cvt.u16.u32 %r47,%r45; cvt.u16.u8 %r48,%r40; and.b16 %r46,%r47,%r48; .loc 1 16 48 cvt.u32.u16 %r49,%r46; cvt.u16.u8 %r50,%r49; setp.ne.u16 %r51,%r50,0; @ %r51 bra $L4; .loc 1 19 31 and.b32 %r31,%r28,2147483647; add.u32 %r52,%r31,-1048576; .loc 1 19 11 setp.le.u32 %r53,%r52,2145386495; @ %r53 bra $L5; .loc 1 22 31 and.b32 %r54,%r28,2146435072; .loc 1 22 11 setp.eq.u32 %r55,%r54,0; @ %r55 bra $L6; .loc 1 26 17 set.u32.eq.u32 %r57,%r31,2146435072; neg.s32 %r58,%r57; .loc 1 26 53 cvt.u16.u32 %r60,%r58; and.b16 %r59,%r60,%r48; .loc 1 18 12 cvt.u32.u16 %r62,%r59; cvt.u32.u8 %r33,%r62; 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/1591654536 399 399 100644 2045 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r42; .reg .pred %r43; .reg .u32 %r45; .reg .u32 %r46; .reg .pred %r47; .reg .u32 %r48; .reg .pred %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .u32 %r55; .reg .u32 %r56; .reg .u64 %r57; .reg .u64 %r58; .reg .u64 %r59; .reg .u64 %r60; mov.f64 %r38,%ar0; mov.u64 %r39,%ar1; mov.b64 %r40,%r38; shr.u64 %r41,%r40,32; cvt.u32.u64 %r33,%r41; .loc 1 99 5 and.b32 %r28,%r33,2147483647; .loc 1 100 8 mov.u32 %r42,0; st.u32 [%r39],%r42; .loc 1 101 4 setp.gt.s32 %r43,%r28,2146435071; @ %r43 bra $L2; .loc 1 101 25 cvt.u32.u64 %r46,%r40; or.b32 %r45,%r28,%r46; .loc 1 101 19 setp.eq.u32 %r47,%r45,0; @ %r47 bra $L2; .loc 1 102 5 and.b32 %r48,%r33,2146435072; setp.ne.u32 %r49,%r48,0; @ %r49 bra $L4; .loc 1 103 8 mul.f64 %r38,%r38,0d4350000000000000; mov.b64 %r50,%r38; shr.u64 %r51,%r50,32; cvt.u32.u64 %r33,%r51; .loc 1 105 9 and.b32 %r28,%r33,2147483647; mov.u32 %r35,-54; bra $L3; $L4: mov.u32 %r35,%r42; $L3: .loc 1 108 14 shr.s32 %r52,%r28,20; .loc 1 108 19 add.u32 %r53,%r52,-1022; .loc 1 108 8 add.u32 %r54,%r53,%r35; st.u32 [%r39],%r54; .loc 1 110 2 mov.b64 %r36,%r38; .loc 1 109 10 and.b32 %r55,%r33,-2146435073; .loc 1 109 22 or.b32 %r56,%r55,1071644672; .loc 1 110 2 cvt.u64.u32 %r57,%r56; shl.b64 %r58,%r57,32; and.b64 %r59,%r36,4294967295; or.b64 %r60,%r59,%r58; mov.b64 %r38,%r60; $L2: .loc 1 112 1 mov.f64 %value,%r38; st.param.f64 [%value_out],%value; ret; } /276 1591654536 399 399 100644 393 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // BEGIN GLOBAL VAR DEF: __infinity .visible .const .align 8 .u64 __infinity[1] = {9218868437227405312 }; // END PREAMBLE // BEGIN GLOBAL VAR DEF: __infinityld .visible .const .align 8 .u64 __infinityld[2] = {9218868437227405312 }; // BEGIN GLOBAL VAR DEF: __infinityf .visible .const .align 4 .u32 __infinityf[1] = {2139095040 }; lib_a-s_isinf.o/1591654536 399 399 100644 1248 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r27; .reg .u32 %r33; .reg .u32 %r34; .reg .f64 %r41; .reg .u64 %r42; .reg .u64 %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 %r41,%ar0; .loc 1 22 2 mov.b64 %r42,%r41; shr.u64 %r43,%r42,32; cvt.u32.u64 %r33,%r43; cvt.u32.u64 %r34,%r42; .loc 1 24 25 neg.s32 %r45,%r34; .loc 1 24 23 or.b32 %r46,%r45,%r34; .loc 1 24 30 shr.u32 %r47,%r46,31; .loc 1 23 5 and.b32 %r48,%r33,2147483647; .loc 1 24 5 or.b32 %r27,%r47,%r48; .loc 1 26 36 add.u32 %r50,%r27,-2146435072; .loc 1 25 5 mov.u32 %r52,2146435072; sub.u32 %r51,%r52,%r27; .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; } /296 1591654536 399 399 100644 1261 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r27; .reg .u32 %r33; .reg .u32 %r34; .reg .f64 %r41; .reg .u64 %r42; .reg .u64 %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 %r41,%ar0; .loc 1 16 2 mov.b64 %r42,%r41; shr.u64 %r43,%r42,32; cvt.u32.u64 %r33,%r43; cvt.u32.u64 %r34,%r42; .loc 1 18 25 neg.s32 %r45,%r34; .loc 1 18 23 or.b32 %r46,%r45,%r34; .loc 1 18 30 shr.u32 %r47,%r46,31; .loc 1 17 5 and.b32 %r48,%r33,2147483647; .loc 1 18 5 or.b32 %r27,%r47,%r48; .loc 1 20 36 add.u32 %r50,%r27,-2146435072; .loc 1 19 5 mov.u32 %r52,2146435072; sub.u32 %r51,%r52,%r27; .loc 1 20 34 or.b32 %r53,%r50,%r51; .loc 1 20 41 shr.u32 %r54,%r53,31; .loc 1 20 11 mov.u32 %r55,1; sub.u32 %value,%r55,%r54; .loc 1 21 1 st.param.u32 [%value_out],%value; ret; } lib_a-s_isnan.o/1591654536 399 399 100644 1060 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r27; .reg .u32 %r30; .reg .u32 %r31; .reg .f64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r47; .reg .u32 %r48; mov.f64 %r38,%ar0; .loc 1 199 2 mov.b64 %r39,%r38; shr.u64 %r40,%r39,32; cvt.u32.u64 %r30,%r40; cvt.u32.u64 %r31,%r39; .loc 1 201 25 neg.s32 %r42,%r31; .loc 1 201 23 or.b32 %r43,%r42,%r31; .loc 1 201 30 shr.u32 %r44,%r43,31; .loc 1 200 5 and.b32 %r45,%r30,2147483647; .loc 1 201 5 or.b32 %r27,%r44,%r45; .loc 1 202 5 mov.u32 %r48,2146435072; sub.u32 %r47,%r48,%r27; .loc 1 203 33 shr.u32 %value,%r47,31; .loc 1 204 1 st.param.u32 [%value_out],%value; ret; } /314 1591654536 399 399 100644 1073 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r27; .reg .u32 %r30; .reg .u32 %r31; .reg .f64 %r38; .reg .u64 %r39; .reg .u64 %r40; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .u32 %r47; .reg .u32 %r48; mov.f64 %r38,%ar0; .loc 1 115 2 mov.b64 %r39,%r38; shr.u64 %r40,%r39,32; cvt.u32.u64 %r30,%r40; cvt.u32.u64 %r31,%r39; .loc 1 117 25 neg.s32 %r42,%r31; .loc 1 117 23 or.b32 %r43,%r42,%r31; .loc 1 117 30 shr.u32 %r44,%r43,31; .loc 1 116 5 and.b32 %r45,%r30,2147483647; .loc 1 117 5 or.b32 %r27,%r44,%r45; .loc 1 118 5 mov.u32 %r48,2146435072; sub.u32 %r47,%r48,%r27; .loc 1 119 33 shr.u32 %value,%r47,31; .loc 1 120 1 st.param.u32 [%value_out],%value; ret; } lib_a-s_ldexp.o/1591654536 399 399 100644 2690 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r37; .reg .u32 %r38; .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 %r54; .reg .u32 %r55; .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; mov.f64 %r32,%ar0; mov.u32 %r33,%ar1; .loc 1 75 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 75 19 set.u32.eq.f64 %r37,%r32,0d0000000000000000; neg.s32 %r38,%r37; .loc 1 75 4 set.u32.eq.u32 %r40,%r35,0; neg.s32 %r41,%r40; .loc 1 75 19 cvt.u16.u32 %r43,%r38; cvt.u16.u32 %r44,%r41; 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 76 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 77 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 77 19 set.u32.eq.f64 %r54,%r32,0d0000000000000000; neg.s32 %r55,%r54; .loc 1 77 4 set.u32.eq.u32 %r57,%r52,0; neg.s32 %r58,%r57; .loc 1 77 19 cvt.u16.u32 %r60,%r55; cvt.u16.u32 %r61,%r58; 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 77 33 { .param .u64 %value_in; call (%value_in),__errno; ld.param.u64 %r65,[%value_in]; } .loc 1 77 39 mov.u32 %r66,34; st.u32 [%r65],%r66; $L2: .loc 1 79 1 mov.f64 %value,%r32; st.param.f64 [%value_out],%value; ret; } lib_a-s_modf.o/ 1591654536 399 399 100644 3233 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 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 .u32 %r38; .reg .f64 %r40; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .u32 %r45; .reg .f64 %r52; .reg .f64 %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u32 %r58; .reg .pred %r59; .reg .pred %r60; .reg .u32 %r61; .reg .u64 %r62; .reg .u64 %r66; .reg .f64 %r67; .reg .u32 %r68; .reg .u32 %r69; .reg .u32 %r70; .reg .pred %r71; .reg .u32 %r72; .reg .u64 %r73; .reg .u64 %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .u64 %r80; .reg .u64 %r84; .reg .pred %r85; .reg .u32 %r86; .reg .u64 %r87; .reg .u64 %r91; .reg .u32 %r92; .reg .u32 %r93; .reg .u32 %r94; .reg .pred %r95; .reg .u32 %r96; .reg .u64 %r97; .reg .u64 %r101; .reg .u64 %r102; .reg .u32 %r106; .reg .u32 %r107; .reg .u64 %r108; .reg .u64 %r109; .reg .u64 %r110; mov.f64 %r53,%ar0; mov.u64 %r54,%ar1; mov.b64 %r55,%r53; shr.u64 %r56,%r55,32; cvt.u32.u64 %r38,%r56; cvt.u32.u64 %r45,%r55; .loc 1 92 11 shr.s32 %r58,%r38,20; .loc 1 92 16 and.b32 %r23,%r58,2047; .loc 1 92 5 add.u32 %r42,%r23,-1023; .loc 1 93 4 setp.gt.s32 %r59,%r42,19; @ %r59 bra $L2; .loc 1 94 8 setp.ge.s32 %r60,%r42,0; @ %r60 bra $L3; .loc 1 95 10 and.b32 %r61,%r38,-2147483648; cvt.u64.u32 %r62,%r61; shl.b64 %r66,%r62,32; mov.b64 %r67,%r66; st.f64 [%r54],%r67; .loc 1 96 10 mov.f64 %r52,%r53; bra $L1; $L3: .loc 1 98 19 mov.u32 %r68,1048575; shr.s32 %r43,%r68,%r42; .loc 1 99 10 and.b32 %r69,%r38,%r43; .loc 1 99 13 or.b32 %r70,%r69,%r45; .loc 1 99 5 setp.ne.u32 %r71,%r70,0; @ %r71 bra $L5; .loc 1 101 13 st.f64 [%r54],%r53; .loc 1 103 7 and.b32 %r72,%r38,-2147483648; cvt.u64.u32 %r73,%r72; shl.b64 %r77,%r73,32; mov.b64 %r52,%r77; .loc 1 104 14 bra $L1; $L5: .loc 1 106 7 not.b32 %r78,%r43; and.b32 %r79,%r78,%r38; cvt.u64.u32 %r80,%r79; shl.b64 %r84,%r80,32; mov.b64 %r32,%r84; st.f64 [%r54],%r32; .loc 1 107 16 sub.f64 %r52,%r53,%r32; bra $L1; $L2: .loc 1 110 12 setp.le.s32 %r85,%r42,51; @ %r85 bra $L6; .loc 1 112 12 st.f64 [%r54],%r53; .loc 1 114 6 and.b32 %r86,%r38,-2147483648; cvt.u64.u32 %r87,%r86; shl.b64 %r91,%r87,32; mov.b64 %r52,%r91; .loc 1 115 13 bra $L1; $L6: .loc 1 117 41 add.u32 %r92,%r23,-1043; .loc 1 117 8 mov.u32 %r93,-1; shr.u32 %r44,%r93,%r92; .loc 1 118 12 and.b32 %r94,%r44,%r45; .loc 1 118 8 setp.ne.u32 %r95,%r94,0; @ %r95 bra $L7; .loc 1 120 9 st.f64 [%r54],%r53; .loc 1 122 3 and.b32 %r96,%r38,-2147483648; cvt.u64.u32 %r97,%r96; shl.b64 %r101,%r97,32; mov.b64 %r52,%r101; .loc 1 123 10 bra $L1; $L7: .loc 1 125 10 cvt.u64.u32 %r102,%r38; not.b32 %r106,%r44; and.b32 %r107,%r106,%r45; cvt.u64.u32 %r108,%r107; shl.b64 %r109,%r102,32; or.b64 %r110,%r109,%r108; mov.b64 %r40,%r110; st.f64 [%r54],%r40; .loc 1 126 12 sub.f64 %r52,%r53,%r40; $L1: .loc 1 129 1 mov.f64 %value,%r52; st.param.f64 [%value_out],%value; ret; } lib_a-s_nan.o/ 1591654536 399 399 100644 500 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 49 9 mov.f64 %value,0d7ff8000000000000; .loc 1 50 1 st.param.f64 [%value_out],%value; ret; } /332 1591654536 399 399 100644 4214 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 DECL: copysign .extern .func (.param .f64 %value_out) copysign (.param .f64 %in_ar0, .param .f64 %in_ar1); // 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 .u32 %r40; .reg .u32 %r42; .reg .u32 %r43; .reg .f64 %r45; .reg .u64 %r49; .reg .u64 %r50; .reg .f64 %r51; .reg .f64 %r52; .reg .u32 %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .u32 %r56; .reg .pred %r57; .reg .u32 %r58; .reg .u32 %r60; .reg .u32 %r61; .reg .pred %r62; .reg .pred %r63; .reg .pred %r64; .reg .u64 %r65; .reg .u64 %r66; .reg .u32 %r67; .reg .u32 %r68; .reg .pred %r69; .reg .f64 %r70; .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 .pred %r82; .reg .f64 %r83; .reg .f64 %r85; .reg .f64 %r86; .reg .f64 %r88; .reg .u32 %r89; .reg .u32 %r90; .reg .u32 %r91; .reg .u32 %r92; .reg .u64 %r93; .reg .u64 %r94; .reg .u64 %r95; .reg .u64 %r96; mov.f64 %r52,%ar0; mov.u32 %r53,%ar1; .loc 1 86 2 mov.b64 %r54,%r52; shr.u64 %r55,%r54,32; cvt.u32.u64 %r40,%r55; .loc 1 87 28 shr.s32 %r56,%r40,20; .loc 1 87 11 and.b32 %r42,%r56,2047; .loc 1 88 12 setp.ne.u32 %r57,%r42,0; @ %r57 bra $L2; .loc 1 89 24 and.b32 %r58,%r40,2147483647; .loc 1 89 20 cvt.u32.u64 %r61,%r54; or.b32 %r60,%r58,%r61; .loc 1 89 16 setp.eq.u32 %r62,%r60,0; @ %r62 bra $L10; .loc 1 90 8 mul.f64 %r52,%r52,0d4350000000000000; .loc 1 93 16 setp.ge.s32 %r63,%r53,-50000; @ %r63 bra $L4; .loc 1 93 39 mul.f64 %r51,%r52,0d01a56e1fc2f8f359; bra $L1; $L2: .loc 1 95 12 setp.ne.u32 %r64,%r42,2047; @ %r64 bra $L5; .loc 1 95 31 add.f64 %r51,%r52,%r52; bra $L1; $L4: .loc 1 91 6 mov.b64 %r65,%r52; shr.u64 %r66,%r65,32; cvt.u32.u64 %r40,%r66; .loc 1 92 26 shr.s32 %r67,%r40,20; and.b32 %r68,%r67,2047; .loc 1 92 8 add.u32 %r42,%r68,-54; $L5: .loc 1 96 11 add.u32 %r43,%r53,%r42; .loc 1 97 12 setp.le.s32 %r69,%r43,2046; @ %r69 bra $L6; .loc 1 97 37 mov.f64 %r70,0d7e37e43c8800759c; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r70; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r52; call (%value_in),copysign,(%out_arg1,%out_arg2); ld.param.f64 %r72,[%value_in]; } .loc 1 97 36 mul.f64 %r51,%r72,0d7e37e43c8800759c; bra $L1; $L6: .loc 1 98 12 setp.le.s32 %r73,%r43,0; @ %r73 bra $L7; .loc 1 99 7 mov.b64 %r49,%r52; and.b32 %r74,%r40,-2146435073; shl.b32 %r75,%r43,20; or.b32 %r76,%r74,%r75; cvt.u64.u32 %r77,%r76; shl.b64 %r78,%r77,32; and.b64 %r79,%r49,4294967295; or.b64 %r80,%r79,%r78; mov.b64 %r51,%r80; .loc 1 99 56 bra $L1; $L7: .loc 1 100 12 setp.ge.s32 %r81,%r43,-53; @ %r81 bra $L8; .loc 1 101 16 setp.le.s32 %r82,%r53,50000; @ %r82 bra $L9; .loc 1 102 15 mov.f64 %r83,0d7e37e43c8800759c; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r83; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r52; call (%value_in),copysign,(%out_arg1,%out_arg2); ld.param.f64 %r85,[%value_in]; } .loc 1 102 14 mul.f64 %r51,%r85,0d7e37e43c8800759c; bra $L1; $L9: .loc 1 103 23 mov.f64 %r86,0d01a56e1fc2f8f359; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r86; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r52; call (%value_in),copysign,(%out_arg1,%out_arg2); ld.param.f64 %r88,[%value_in]; } .loc 1 103 22 mul.f64 %r51,%r88,0d01a56e1fc2f8f359; bra $L1; $L8: .loc 1 106 2 mov.b64 %r50,%r52; .loc 1 105 11 add.u32 %r89,%r43,54; .loc 1 106 2 shl.b32 %r90,%r89,20; and.b32 %r91,%r40,-2146435073; or.b32 %r92,%r90,%r91; cvt.u64.u32 %r93,%r92; shl.b64 %r94,%r93,32; and.b64 %r95,%r50,4294967295; or.b64 %r96,%r95,%r94; mov.b64 %r45,%r96; .loc 1 107 17 mul.f64 %r51,%r45,0d3c90000000000000; bra $L1; $L10: .loc 1 89 49 mov.f64 %r51,%r52; $L1: .loc 1 108 1 mov.f64 %value,%r51; st.param.f64 [%value_out],%value; ret; } lib_a-seed48.o/ 1591654536 399 399 100644 2681 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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$2061 .global .align 2 .u16 sseed$2061[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 24 12 cvta.global.u64 %r31,sseed$2061; ld.u16 %r32,[%r29+240]; st.u16 [%r31],%r32; .loc 1 25 12 ld.u16 %r34,[%r29+242]; st.u16 [%r31+2],%r34; .loc 1 26 12 ld.u16 %r36,[%r29+244]; st.u16 [%r31+4],%r36; .loc 1 27 20 ld.u16 %r37,[%r30]; st.u16 [%r29+240],%r37; .loc 1 28 20 ld.u16 %r38,[%r30+2]; st.u16 [%r29+242],%r38; .loc 1 29 20 ld.u16 %r39,[%r30+4]; st.u16 [%r29+244],%r39; .loc 1 30 20 mov.u16 %r40,-6547; st.u16 [%r29+246],%r40; .loc 1 31 20 mov.u32 %r41,384748; st.u32 [%r29+248],%r41; .loc 1 33 16 mov.u16 %r42,11; st.u16 [%r29+252],%r42; .loc 1 35 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 42 10 ld.global.u64 %r22,[_impure_ptr]; .loc 1 24 12 cvta.global.u64 %r31,sseed$2061; ld.u16 %r32,[%r22+240]; st.u16 [%r31],%r32; .loc 1 25 12 ld.u16 %r34,[%r22+242]; st.u16 [%r31+2],%r34; .loc 1 26 12 ld.u16 %r36,[%r22+244]; st.u16 [%r31+4],%r36; .loc 1 27 20 ld.u16 %r37,[%r30]; st.u16 [%r22+240],%r37; .loc 1 28 20 ld.u16 %r38,[%r30+2]; st.u16 [%r22+242],%r38; .loc 1 29 20 ld.u16 %r39,[%r30+4]; st.u16 [%r22+244],%r39; .loc 1 30 20 mov.u16 %r40,-6547; st.u16 [%r22+246],%r40; .loc 1 31 20 mov.u32 %r41,384748; st.u32 [%r22+248],%r41; .loc 1 33 16 mov.u16 %r42,11; st.u16 [%r22+252],%r42; .loc 1 43 1 mov.u64 %value,%r31; st.param.u64 [%value_out],%value; ret; } /350 1591654536 399 399 100644 888 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } /371 1591654536 399 399 100644 700 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } /390 1591654536 399 399 100644 1220 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } /413 1591654536 399 399 100644 2005 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r32; .reg .u32 %r36; .reg .f32 %r37; .reg .f32 %r38; .reg .u64 %r39; .reg .u32 %r40; .reg .u32 %r42; .reg .u32 %r43; .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; mov.f32 %r38,%ar0; mov.u64 %r39,%ar1; .loc 1 33 2 mov.b32 %r32,%r38; .loc 1 34 5 and.b32 %r30,%r32,2147483647; .loc 1 35 8 mov.u32 %r40,0; st.u32 [%r39],%r40; .loc 1 36 5 set.u32.gt.s32 %r42,%r30,2139095039; neg.s32 %r43,%r42; .loc 1 36 31 set.u32.eq.u32 %r45,%r30,0; neg.s32 %r46,%r45; .loc 1 36 29 cvt.u16.u32 %r48,%r43; cvt.u16.u32 %r49,%r46; or.b16 %r47,%r48,%r49; .loc 1 36 4 cvt.u32.u16 %r50,%r47; cvt.u16.u8 %r51,%r50; setp.ne.u16 %r52,%r51,0; @ %r52 bra $L4; .loc 1 37 5 and.b32 %r53,%r32,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 %r32,%r55; .loc 1 40 9 and.b32 %r30,%r32,2147483647; mov.u32 %r36,-25; bra $L3; $L5: mov.u32 %r36,%r40; $L3: .loc 1 43 14 shr.s32 %r56,%r30,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,%r32,-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; } /431 1591654536 399 399 100644 694 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 21 2 mov.b32 %r23,%r27; .loc 1 22 5 and.b32 %r29,%r23,2147483647; .loc 1 23 9 set.u32.eq.u32 %r31,%r29,2139095040; neg.s32 %value,%r31; .loc 1 24 1 st.param.u32 [%value_out],%value; ret; } /449 1591654536 399 399 100644 703 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 13 2 mov.b32 %r23,%r27; .loc 1 14 5 and.b32 %r29,%r23,2147483647; .loc 1 15 9 set.u32.eq.u32 %r31,%r29,2139095040; neg.s32 %value,%r31; .loc 1 16 1 st.param.u32 [%value_out],%value; ret; } /468 1591654536 399 399 100644 694 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 31 2 mov.b32 %r23,%r27; .loc 1 32 5 and.b32 %r29,%r23,2147483647; .loc 1 33 9 set.u32.gt.s32 %r31,%r29,2139095040; neg.s32 %value,%r31; .loc 1 34 1 st.param.u32 [%value_out],%value; ret; } /486 1591654536 399 399 100644 703 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 23 2 mov.b32 %r23,%r27; .loc 1 24 5 and.b32 %r29,%r23,2147483647; .loc 1 25 9 set.u32.gt.s32 %r31,%r29,2139095040; neg.s32 %value,%r31; .loc 1 26 1 st.param.u32 [%value_out],%value; ret; } /505 1591654536 399 399 100644 2686 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r37; .reg .u32 %r38; .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 %r54; .reg .u32 %r55; .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; 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; .loc 1 26 4 set.u32.eq.u32 %r40,%r35,0; neg.s32 %r41,%r40; .loc 1 26 20 cvt.u16.u32 %r43,%r38; cvt.u16.u32 %r44,%r41; 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; .loc 1 28 4 set.u32.eq.u32 %r57,%r52,0; neg.s32 %r58,%r57; .loc 1 28 20 cvt.u16.u32 %r60,%r55; cvt.u16.u32 %r61,%r58; 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/1591654536 399 399 100644 1821 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 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 %r34; .reg .u32 %r35; .reg .u32 %r36; .reg .f32 %r37; .reg .f32 %r38; .reg .u64 %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .pred %r42; .reg .pred %r43; .reg .u32 %r44; .reg .f32 %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .pred %r48; .reg .u32 %r49; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r52; mov.f32 %r38,%ar0; mov.u64 %r39,%ar1; .loc 1 33 2 mov.b32 %r36,%r38; .loc 1 34 11 shr.s32 %r40,%r36,23; .loc 1 34 16 and.b32 %r41,%r40,255; .loc 1 34 5 add.u32 %r34,%r41,-127; .loc 1 35 4 setp.gt.s32 %r42,%r34,22; @ %r42 bra $L2; .loc 1 36 8 setp.ge.s32 %r43,%r34,0; @ %r43 bra $L3; .loc 1 37 10 and.b32 %r44,%r36,-2147483648; mov.b32 %r45,%r44; st.f32 [%r39],%r45; .loc 1 38 10 mov.f32 %r37,%r38; bra $L1; $L3: .loc 1 40 19 mov.u32 %r46,8388607; shr.s32 %r35,%r46,%r34; .loc 1 41 9 and.b32 %r47,%r35,%r36; .loc 1 41 5 setp.ne.u32 %r48,%r47,0; @ %r48 bra $L5; .loc 1 43 13 st.f32 [%r39],%r38; .loc 1 45 7 and.b32 %r49,%r36,-2147483648; mov.b32 %r37,%r49; .loc 1 46 14 bra $L1; $L5: .loc 1 48 7 not.b32 %r50,%r35; and.b32 %r51,%r50,%r36; mov.b32 %r31,%r51; st.f32 [%r39],%r31; .loc 1 49 16 sub.f32 %r37,%r38,%r31; bra $L1; $L2: .loc 1 54 12 st.f32 [%r39],%r38; .loc 1 56 6 and.b32 %r52,%r36,-2147483648; mov.b32 %r37,%r52; $L1: .loc 1 59 1 mov.f32 %value,%r37; st.param.f32 [%value_out],%value; ret; } lib_a-sf_nan.o/ 1591654536 399 399 100644 497 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } /523 1591654536 399 399 100644 3548 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 DECL: copysignf .extern .func (.param .f32 %value_out) copysignf (.param .f32 %in_ar0, .param .f32 %in_ar1); // 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 .u32 %r39; .reg .u32 %r40; .reg .u32 %r41; .reg .u32 %r43; .reg .u32 %r44; .reg .f32 %r47; .reg .f32 %r48; .reg .u32 %r49; .reg .pred %r50; .reg .pred %r51; .reg .u32 %r52; .reg .pred %r53; .reg .pred %r54; .reg .u32 %r55; .reg .u32 %r56; .reg .pred %r57; .reg .f32 %r58; .reg .f32 %r60; .reg .pred %r61; .reg .u32 %r62; .reg .u32 %r63; .reg .u32 %r64; .reg .pred %r65; .reg .pred %r66; .reg .f32 %r67; .reg .f32 %r69; .reg .f32 %r70; .reg .f32 %r72; .reg .u32 %r73; .reg .u32 %r74; .reg .u32 %r75; .reg .u32 %r76; .reg .f32 %r77; mov.f32 %r48,%ar0; mov.u32 %r49,%ar1; .loc 1 46 2 mov.b32 %r44,%r48; .loc 1 47 5 and.b32 %r41,%r44,2147483647; .loc 1 49 5 setp.eq.u32 %r50,%r41,0; @ %r50 bra $L11; .loc 1 51 12 setp.le.u32 %r51,%r41,2139095039; @ %r51 bra $L3; .loc 1 52 14 add.f32 %r47,%r48,%r48; bra $L1; $L3: .loc 1 53 12 and.b32 %r52,%r44,2139095040; setp.ne.u32 %r53,%r52,0; @ %r53 bra $L4; .loc 1 54 8 mul.f32 %r48,%r48,0f4c000000; .loc 1 57 16 setp.lt.s32 %r54,%r49,-50000; @ %r54 bra $L5; .loc 1 55 6 mov.b32 %r40,%r48; .loc 1 56 26 shr.s32 %r55,%r40,23; and.b32 %r56,%r55,255; .loc 1 56 8 add.u32 %r39,%r56,-25; bra $L6; $L5: .loc 1 57 39 mul.f32 %r47,%r48,0f0da24260; bra $L1; $L4: .loc 1 46 2 mov.u32 %r40,%r44; .loc 1 48 15 shr.u32 %r39,%r41,23; $L6: .loc 1 59 11 add.u32 %r43,%r39,%r49; .loc 1 60 12 setp.le.s32 %r57,%r43,254; @ %r57 bra $L7; .loc 1 60 46 mov.f32 %r58,0f7149f2ca; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r58; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r48; call (%value_in),copysignf,(%out_arg1,%out_arg2); ld.param.f32 %r60,[%value_in]; } .loc 1 60 45 mul.f32 %r47,%r60,0f7149f2ca; bra $L1; $L7: .loc 1 61 12 setp.le.s32 %r61,%r43,0; @ %r61 bra $L8; .loc 1 62 7 and.b32 %r62,%r40,-2139095041; shl.b32 %r63,%r43,23; or.b32 %r64,%r62,%r63; mov.b32 %r47,%r64; .loc 1 62 57 bra $L1; $L8: .loc 1 63 12 setp.ge.s32 %r65,%r43,-22; @ %r65 bra $L9; .loc 1 64 16 setp.le.s32 %r66,%r49,50000; @ %r66 bra $L10; .loc 1 65 15 mov.f32 %r67,0f7149f2ca; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r67; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r48; call (%value_in),copysignf,(%out_arg1,%out_arg2); ld.param.f32 %r69,[%value_in]; } .loc 1 65 14 mul.f32 %r47,%r69,0f7149f2ca; bra $L1; $L10: .loc 1 66 23 mov.f32 %r70,0f0da24260; { .param .f32 %value_in; .param .f32 %out_arg1; st.param.f32 [%out_arg1],%r70; .param .f32 %out_arg2; st.param.f32 [%out_arg2],%r48; call (%value_in),copysignf,(%out_arg1,%out_arg2); ld.param.f32 %r72,[%value_in]; } .loc 1 66 22 mul.f32 %r47,%r72,0f0da24260; bra $L1; $L9: .loc 1 68 11 add.u32 %r73,%r43,25; .loc 1 69 2 shl.b32 %r74,%r73,23; and.b32 %r75,%r40,-2139095041; or.b32 %r76,%r74,%r75; .loc 1 70 17 mov.b32 %r77,%r76; mul.f32 %r47,%r77,0f33000000; bra $L1; $L11: .loc 1 50 13 mov.f32 %r47,%r48; $L1: .loc 1 71 1 mov.f32 %value,%r47; st.param.f32 [%value_out],%value; ret; } /542 1591654536 399 399 100644 4247 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 124 22 st.u64 [%frame],%r26; .loc 1 124 15 st.u64 [%frame+24],%r26; .loc 1 125 15 mov.u32 %r28,2147483647; st.u32 [%frame+32],%r28; .loc 1 125 22 st.u32 [%frame+12],%r28; .loc 1 123 12 mov.u32 %r30,-65016; st.u32 [%frame+16],%r30; .loc 1 132 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 134 5 ld.u64 %r22,[%frame]; .loc 1 134 9 mov.u32 %r37,0; st.u8 [%r22],%r37; .loc 1 136 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 157 22 st.u64 [%frame],%r26; .loc 1 157 15 st.u64 [%frame+24],%r26; .loc 1 158 15 mov.u32 %r28,2147483647; st.u32 [%frame+32],%r28; .loc 1 158 22 st.u32 [%frame+12],%r28; .loc 1 156 12 mov.u32 %r30,-65016; st.u32 [%frame+16],%r30; .loc 1 165 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 167 5 ld.u64 %r23,[%frame]; .loc 1 167 9 mov.u32 %r38,0; st.u8 [%r23],%r38; .loc 1 169 1 mov.u32 %value,%r37; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } lib_a-siscanf.o/1591654536 399 399 100644 5169 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 135 12 mov.u16 %r29,516; st.u16 [%frame+16],%r29; .loc 1 136 22 st.u64 [%frame],%r27; .loc 1 136 15 st.u64 [%frame+24],%r27; .loc 1 137 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 137 22 cvt.u32.u64 %r23,%r31; st.u32 [%frame+8],%r23; .loc 1 137 15 st.u32 [%frame+32],%r23; .loc 1 138 11 mov.u64 %r32,__seofread; st.u64 [%frame+56],%r32; .loc 1 139 15 mov.u64 %r33,0; st.u64 [%frame+88],%r33; .loc 1 140 15 st.u64 [%frame+120],%r33; .loc 1 141 11 mov.u16 %r35,-1; st.u16 [%frame+18],%r35; .loc 1 147 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 150 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 173 12 mov.u16 %r29,516; st.u16 [%frame+16],%r29; .loc 1 174 22 st.u64 [%frame],%r27; .loc 1 174 15 st.u64 [%frame+24],%r27; .loc 1 175 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 175 22 cvt.u32.u64 %r23,%r31; st.u32 [%frame+8],%r23; .loc 1 175 15 st.u32 [%frame+32],%r23; .loc 1 176 11 mov.u64 %r32,__seofread; st.u64 [%frame+56],%r32; .loc 1 177 15 mov.u64 %r33,0; st.u64 [%frame+88],%r33; .loc 1 178 15 st.u64 [%frame+120],%r33; .loc 1 179 11 mov.u16 %r35,-1; st.u16 [%frame+18],%r35; .loc 1 185 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 188 1 mov.u32 %value,%r41; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } /560 1591654536 399 399 100644 7141 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r25; .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 52 6 setp.le.u64 %r33,%r31,2147483647; @ %r33 bra $L2; .loc 1 54 19 mov.u32 %r34,139; st.u32 [%r29],%r34; .loc 1 55 14 mov.u32 %r28,-1; bra $L1; $L2: .loc 1 57 12 mov.u16 %r35,520; st.u16 [%frame+16],%r35; .loc 1 58 22 st.u64 [%frame],%r30; .loc 1 58 15 st.u64 [%frame+24],%r30; .loc 1 59 22 setp.eq.u64 %r36,%r31,0; @ %r36 bra $L4; .loc 1 59 41 cvt.u32.u64 %r37,%r31; add.u32 %r25,%r37,-1; .loc 1 59 22 st.u32 [%frame+12],%r25; .loc 1 59 15 st.u32 [%frame+32],%r25; .loc 1 60 11 mov.u16 %r38,-1; st.u16 [%frame+18],%r38; .loc 1 66 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 68 6 setp.lt.s32 %r45,%r28,-1; @ %r45 bra $L5; $L7: .loc 1 71 7 ld.u64 %r24,[%frame]; .loc 1 71 11 mov.u32 %r46,0; st.u8 [%r24],%r46; bra $L1; $L4: .loc 1 59 22 cvt.u32.u64 %r48,%r31; st.u32 [%frame+12],%r48; .loc 1 59 15 st.u32 [%frame+32],%r48; .loc 1 60 11 mov.u16 %r50,-1; st.u16 [%frame+18],%r50; .loc 1 66 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 68 6 setp.lt.s32 %r57,%r28,-1; @ ! %r57 bra $L1; bra $L6; $L5: .loc 1 69 17 mov.u32 %r58,139; st.u32 [%r29],%r58; bra $L7; $L6: mov.u32 %r59,139; st.u32 [%r29],%r59; $L1: .loc 1 73 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 %r25; .reg .u32 %r26; .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 100 18 ld.global.u64 %r25,[_impure_ptr]; .loc 1 102 6 setp.le.u64 %r33,%r31,2147483647; @ %r33 bra $L9; .loc 1 104 19 mov.u32 %r34,139; st.u32 [%r25],%r34; .loc 1 105 14 mov.u32 %r29,-1; bra $L8; $L9: .loc 1 107 12 mov.u16 %r35,520; st.u16 [%frame+16],%r35; .loc 1 108 22 st.u64 [%frame],%r30; .loc 1 108 15 st.u64 [%frame+24],%r30; .loc 1 109 22 setp.eq.u64 %r36,%r31,0; @ %r36 bra $L11; .loc 1 109 41 cvt.u32.u64 %r37,%r31; add.u32 %r26,%r37,-1; .loc 1 109 22 st.u32 [%frame+12],%r26; .loc 1 109 15 st.u32 [%frame+32],%r26; .loc 1 110 11 mov.u16 %r38,-1; st.u16 [%frame+18],%r38; .loc 1 116 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],%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 118 6 setp.lt.s32 %r45,%r29,-1; @ %r45 bra $L12; $L14: .loc 1 121 7 ld.u64 %r24,[%frame]; .loc 1 121 11 mov.u32 %r46,0; st.u8 [%r24],%r46; bra $L8; $L11: .loc 1 109 22 cvt.u32.u64 %r48,%r31; st.u32 [%frame+12],%r48; .loc 1 109 15 st.u32 [%frame+32],%r48; .loc 1 110 11 mov.u16 %r50,-1; st.u16 [%frame+18],%r50; .loc 1 116 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],%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 118 6 setp.lt.s32 %r57,%r29,-1; @ ! %r57 bra $L8; bra $L13; $L12: .loc 1 119 17 mov.u32 %r58,139; st.u32 [%r25],%r58; bra $L14; $L13: mov.u32 %r59,139; st.u32 [%r25],%r59; $L8: .loc 1 123 1 mov.u32 %value,%r29; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } lib_a-sprintf.o/1591654536 399 399 100644 4234 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 597 22 st.u64 [%frame],%r26; .loc 1 597 15 st.u64 [%frame+24],%r26; .loc 1 598 15 mov.u32 %r28,2147483647; st.u32 [%frame+32],%r28; .loc 1 598 22 st.u32 [%frame+12],%r28; .loc 1 596 12 mov.u32 %r30,-65016; st.u32 [%frame+16],%r30; .loc 1 605 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 607 5 ld.u64 %r22,[%frame]; .loc 1 607 9 mov.u32 %r37,0; st.u8 [%r22],%r37; .loc 1 609 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 636 22 st.u64 [%frame],%r26; .loc 1 636 15 st.u64 [%frame+24],%r26; .loc 1 637 15 mov.u32 %r28,2147483647; st.u32 [%frame+32],%r28; .loc 1 637 22 st.u32 [%frame+12],%r28; .loc 1 635 12 mov.u32 %r30,-65016; st.u32 [%frame+16],%r30; .loc 1 644 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 646 5 ld.u64 %r23,[%frame]; .loc 1 646 9 mov.u32 %r38,0; st.u8 [%r23],%r38; .loc 1 648 1 mov.u32 %value,%r37; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } lib_a-srand48.o/1591654536 399 399 100644 1783 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 22 20 mov.u16 %r28,13070; st.u16 [%r26+240],%r28; .loc 1 23 22 st.u16 [%r26+242],%r27; .loc 1 24 60 shr.u64 %r29,%r27,16; .loc 1 24 22 st.u16 [%r26+244],%r29; .loc 1 25 20 mov.u16 %r30,-6547; st.u16 [%r26+246],%r30; .loc 1 26 20 mov.u32 %r31,384748; st.u32 [%r26+248],%r31; .loc 1 28 16 mov.u16 %r32,11; st.u16 [%r26+252],%r32; .loc 1 29 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 36 3 ld.global.u64 %r22,[_impure_ptr]; .loc 1 22 20 mov.u16 %r28,13070; st.u16 [%r22+240],%r28; .loc 1 23 22 st.u16 [%r22+242],%r27; .loc 1 24 60 shr.u64 %r29,%r27,16; .loc 1 24 22 st.u16 [%r22+244],%r29; .loc 1 25 20 mov.u16 %r30,-6547; st.u16 [%r22+246],%r30; .loc 1 26 20 mov.u32 %r31,384748; st.u32 [%r22+248],%r31; .loc 1 28 16 mov.u16 %r32,11; st.u16 [%r22+252],%r32; .loc 1 37 1 ret; } lib_a-sscanf.o/ 1591654536 399 399 100644 5156 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 416 12 mov.u16 %r29,516; st.u16 [%frame+16],%r29; .loc 1 417 22 st.u64 [%frame],%r27; .loc 1 417 15 st.u64 [%frame+24],%r27; .loc 1 418 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 418 22 cvt.u32.u64 %r23,%r31; st.u32 [%frame+8],%r23; .loc 1 418 15 st.u32 [%frame+32],%r23; .loc 1 419 11 mov.u64 %r32,__seofread; st.u64 [%frame+56],%r32; .loc 1 420 15 mov.u64 %r33,0; st.u64 [%frame+88],%r33; .loc 1 421 15 st.u64 [%frame+120],%r33; .loc 1 422 11 mov.u16 %r35,-1; st.u16 [%frame+18],%r35; .loc 1 428 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 431 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 460 12 mov.u16 %r29,516; st.u16 [%frame+16],%r29; .loc 1 461 22 st.u64 [%frame],%r27; .loc 1 461 15 st.u64 [%frame+24],%r27; .loc 1 462 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 462 22 cvt.u32.u64 %r23,%r31; st.u32 [%frame+8],%r23; .loc 1 462 15 st.u32 [%frame+32],%r23; .loc 1 463 11 mov.u64 %r32,__seofread; st.u64 [%frame+56],%r32; .loc 1 464 15 mov.u64 %r33,0; st.u64 [%frame+88],%r33; .loc 1 465 15 st.u64 [%frame+120],%r33; .loc 1 466 11 mov.u16 %r35,-1; st.u16 [%frame+18],%r35; .loc 1 472 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 475 1 mov.u32 %value,%r41; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } lib_a-stpcpy.o/ 1591654536 399 399 100644 1889 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: stpcpy .visible .func (.param .u64 %value_out) stpcpy (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/string/stpcpy.c" // BEGIN GLOBAL FUNCTION DEF: stpcpy .visible .func (.param .u64 %value_out) stpcpy (.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 .u32 %r31; .reg .u64 %r32; .reg .u64 %r39; .reg .u64 %r40; .reg .u64 %r43; .reg .u64 %r44; .reg .u64 %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .pred %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .pred %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .pred %r58; .reg .u32 %r59; .reg .pred %r60; mov.u64 %r44,%ar0; mov.u64 %r45,%ar1; .loc 1 71 8 mov.u64 %r32,%r44; or.b64 %r46,%r45,%r44; and.b64 %r47,%r46,7; .loc 1 71 6 setp.ne.u64 %r48,%r47,0; @ %r48 bra $L2; .loc 1 78 15 ld.u64 %r25,[%r45]; add.u64 %r49,%r25,-72340172838076673; not.b64 %r50,%r25; and.b64 %r51,%r49,%r50; and.b64 %r52,%r51,-9187201950435737472; .loc 1 78 13 setp.ne.u64 %r53,%r52,0; @ %r53 bra $L2; $L3: .loc 1 80 40 add.u64 %r45,%r45,8; add.u64 %r44,%r44,8; .loc 1 80 26 st.u64 [%r32],%r25; .loc 1 78 15 ld.u64 %r25,[%r45]; mov.u64 %r32,%r44; add.u64 %r54,%r25,-72340172838076673; not.b64 %r55,%r25; and.b64 %r56,%r54,%r55; and.b64 %r57,%r56,-9187201950435737472; .loc 1 78 13 setp.eq.u64 %r58,%r57,0; @ %r58 bra $L3; $L2: mov.u64 %r40,%r44; mov.u64 %r39,%r45; $L4: mov.u64 %r43,%r40; .loc 1 88 20 ld.s8 %r31,[%r39]; .loc 1 88 18 cvt.u32.u32 %r59,%r31; st.u8 [%r40],%r59; add.u64 %r40,%r40,1; add.u64 %r39,%r39,1; .loc 1 88 9 setp.ne.u32 %r60,%r31,0; @ %r60 bra $L4; .loc 1 91 1 mov.u64 %value,%r43; st.param.u64 [%value_out],%value; ret; } lib_a-stpncpy.o/1591654536 399 399 100644 3401 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: stpncpy .visible .func (.param .u64 %value_out) stpncpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/string/stpncpy.c" // BEGIN GLOBAL FUNCTION DEF: stpncpy .visible .func (.param .u64 %value_out) stpncpy (.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 .u32 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r39; .reg .u32 %r40; .reg .u64 %r44; .reg .u64 %r45; .reg .u64 %r46; .reg .u64 %r48; .reg .u64 %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u32 %r58; .reg .u32 %r59; .reg .u32 %r61; .reg .u32 %r62; .reg .u16 %r63; .reg .u16 %r64; .reg .u16 %r65; .reg .u32 %r66; .reg .u16 %r67; .reg .pred %r68; .reg .pred %r69; .reg .u64 %r70; .reg .u64 %r71; .reg .u64 %r72; .reg .u64 %r73; .reg .pred %r74; .reg .u32 %r76; .reg .pred %r77; .reg .pred %r78; .reg .pred %r79; .reg .u32 %r80; .reg .pred %r81; .reg .u32 %r82; .reg .pred %r83; .reg .pred %r85; .reg .u64 %r86; mov.u64 %r52,%ar0; mov.u64 %r53,%ar1; mov.u64 %r54,%ar2; .loc 1 83 8 mov.u64 %r50,%r52; or.b64 %r55,%r53,%r52; and.b64 %r56,%r55,7; .loc 1 83 6 set.u32.eq.u64 %r58,%r56,0; neg.s32 %r59,%r58; .loc 1 83 29 set.u32.gt.u64 %r61,%r54,7; neg.s32 %r62,%r61; cvt.u16.u32 %r64,%r59; cvt.u16.u32 %r65,%r62; and.b16 %r63,%r64,%r65; cvt.u32.u16 %r66,%r63; cvt.u16.u8 %r67,%r66; setp.ne.u16 %r68,%r67,0; @ ! %r68 bra $L3; bra $L2; $L4: .loc 1 92 10 add.u64 %r54,%r54,-8; .loc 1 93 33 add.u64 %r53,%r53,8; add.u64 %r50,%r50,8; mov.u64 %r52,%r50; .loc 1 93 19 st.u64 [%r45],%r25; .loc 1 90 13 setp.le.u64 %r69,%r54,7; @ %r69 bra $L3; $L2: mov.u64 %r45,%r50; .loc 1 90 45 ld.u64 %r25,[%r53]; add.u64 %r70,%r25,-72340172838076673; not.b64 %r71,%r25; and.b64 %r72,%r70,%r71; and.b64 %r73,%r72,-9187201950435737472; .loc 1 90 41 setp.eq.u64 %r74,%r73,0; @ %r74 bra $L4; mov.u64 %r52,%r50; bra $L5; $L7: sub.u64 %r33,%r86,%r36; add.u64 %r36,%r36,1; mov.u64 %r39,%r36; .loc 1 104 21 ld.s8 %r31,[%r46]; .loc 1 104 19 cvt.u32.u32 %r76,%r31; st.u8 [%r51],%r76; add.u64 %r46,%r46,1; .loc 1 104 10 setp.eq.u32 %r77,%r31,0; @ %r77 bra $L6; $L9: mov.u64 %r51,%r36; .loc 1 101 9 setp.ne.u64 %r78,%r36,%r48; @ %r78 bra $L7; bra $L1; $L3: setp.eq.u64 %r79,%r54,0; @ %r79 bra $L12; $L5: .loc 1 103 7 add.u64 %r32,%r54,-1; .loc 1 104 25 add.u64 %r44,%r53,1; .loc 1 104 16 add.u64 %r39,%r52,1; .loc 1 104 21 ld.s8 %r40,[%r53]; .loc 1 104 19 cvt.u32.u32 %r80,%r40; st.u8 [%r52],%r80; .loc 1 104 10 setp.eq.u32 %r81,%r40,0; @ %r81 bra $L13; mov.u64 %r36,%r39; mov.u64 %r46,%r44; add.u64 %r48,%r52,%r54; add.u64 %r86,%r52,%r32; bra $L9; $L11: mov.u64 %r34,%r39; add.u64 %r35,%r34,%r33; .loc 1 112 12 mov.u32 %r82,0; $L10: st.u8 [%r34],%r82; add.u64 %r34,%r34,1; .loc 1 111 9 setp.ne.u64 %r83,%r35,%r34; @ %r83 bra $L10; bra $L1; $L12: .loc 1 101 9 mov.u64 %r51,%r52; .loc 1 114 20 bra $L1; $L13: .loc 1 103 7 mov.u64 %r33,%r32; .loc 1 104 10 mov.u64 %r51,%r52; $L6: .loc 1 111 9 setp.ne.u64 %r85,%r33,0; @ %r85 bra $L11; $L1: .loc 1 115 1 mov.u64 %value,%r51; st.param.u64 [%value_out],%value; ret; } /578 1591654536 399 399 100644 2134 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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_ptr__ .extern .global .align 8 .u64 __ctype_ptr__[1]; // 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 .u64 %r22; .reg .u32 %r31; .reg .u32 %r35; .reg .u64 %r39; .reg .u64 %r40; .reg .u32 %r42; .reg .u64 %r45; .reg .u32 %r46; .reg .u64 %r47; .reg .u16 %r50; .reg .u16 %r51; .reg .u16 %r52; .reg .u32 %r53; .reg .u32 %r54; .reg .pred %r55; .reg .u64 %r56; .reg .u32 %r57; .reg .u64 %r58; .reg .u16 %r61; .reg .u16 %r62; .reg .u16 %r63; .reg .u32 %r64; .reg .u32 %r65; .reg .pred %r66; .reg .u32 %r67; .reg .pred %r68; .reg .pred %r69; .reg .pred %r70; .reg .u16 %r72; .loc 1 54 23 ld.global.u64 %r22,[__ctype_ptr__]; mov.u64 %r40,%ar0; mov.u64 %r39,%ar1; bra $L2; $L6: add.u64 %r40,%r40,1; add.u64 %r39,%r39,1; $L2: ld.u8 %r31,[%r40]; cvt.u32.u32 %r46,%r31; cvt.u64.u8 %r45,%r46; add.u64 %r47,%r22,%r45; ld.u8 %r72,[%r47+1]; mov.u16 %r51,%r72; and.b16 %r50,%r51,3; cvt.u32.u16 %r54,%r50; cvt.s32.s8 %r53,%r54; cvt.u16.u32 %r52,%r53; setp.ne.u16 %r55,%r52,1; @ %r55 bra $L3; add.u32 %r31,%r31,32; $L3: .loc 1 55 23 ld.u8 %r35,[%r39]; cvt.u32.u32 %r57,%r35; cvt.u64.u8 %r56,%r57; add.u64 %r58,%r22,%r56; ld.u8 %r72,[%r58+1]; mov.u16 %r62,%r72; and.b16 %r61,%r62,3; cvt.u32.u16 %r65,%r61; cvt.s32.s8 %r64,%r65; cvt.u16.u32 %r63,%r64; setp.ne.u16 %r66,%r63,1; @ %r66 bra $L4; add.u32 %r67,%r35,32; .loc 1 56 15 sub.u32 %r42,%r31,%r67; .loc 1 56 10 setp.ne.u32 %r68,%r42,0; @ ! %r68 bra $L6; bra $L1; $L4: .loc 1 56 15 sub.u32 %r42,%r31,%r35; .loc 1 56 10 setp.ne.u32 %r69,%r42,0; @ %r69 bra $L1; .loc 1 56 32 setp.ne.u32 %r70,%r35,0; @ %r70 bra $L6; $L1: .loc 1 60 1 mov.u32 %value,%r42; st.param.u32 [%value_out],%value; ret; } /598 1591654536 399 399 100644 36826 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: critical_factorization .func (.param .u64 %value_out) critical_factorization (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/string/str-two-way.h" // 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); // BEGIN GLOBAL FUNCTION DECL: strcasestr .visible .func (.param .u64 %value_out) strcasestr (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 2 "../../../../../../newlib/libc/string/strcasestr.c" // BEGIN GLOBAL VAR DECL: __ctype_ptr__ .extern .global .align 8 .u64 __ctype_ptr__[1]; // BEGIN GLOBAL FUNCTION DECL: strncasecmp .extern .func (.param .u32 %value_out) strncasecmp (.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 VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN FUNCTION DEF: critical_factorization .func (.param .u64 %value_out) critical_factorization (.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 %r35; .reg .u64 %r43; .reg .u64 %r48; .reg .u64 %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .u64 %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .u32 %r60; .reg .u32 %r61; .reg .u32 %r63; .reg .u32 %r64; .reg .u64 %r66; .reg .u64 %r67; .reg .u64 %r68; .reg .u64 %r69; .reg .u64 %r70; .reg .u64 %r71; .reg .u32 %r72; .reg .u64 %r73; .reg .u16 %r76; .reg .u16 %r77; .reg .u16 %r78; .reg .u32 %r79; .reg .u32 %r80; .reg .pred %r81; .reg .u16 %r82; .reg .u16 %r83; .reg .u32 %r84; .reg .u64 %r85; .reg .u64 %r86; .reg .u64 %r87; .reg .u32 %r88; .reg .u64 %r89; .reg .u16 %r92; .reg .u16 %r93; .reg .u16 %r94; .reg .u32 %r95; .reg .u32 %r96; .reg .pred %r97; .reg .u16 %r98; .reg .u16 %r99; .reg .u32 %r100; .reg .u16 %r101; .reg .u16 %r102; .reg .pred %r103; .reg .pred %r106; .reg .pred %r107; .reg .pred %r108; .reg .u64 %r109; .reg .u64 %r110; .reg .u32 %r111; .reg .u64 %r112; .reg .u16 %r115; .reg .u16 %r116; .reg .u16 %r117; .reg .u32 %r118; .reg .u32 %r119; .reg .pred %r120; .reg .u16 %r121; .reg .u16 %r122; .reg .u32 %r123; .reg .u64 %r124; .reg .u64 %r125; .reg .u64 %r126; .reg .u32 %r127; .reg .u64 %r128; .reg .u16 %r131; .reg .u16 %r132; .reg .u16 %r133; .reg .u32 %r134; .reg .u32 %r135; .reg .pred %r136; .reg .u16 %r137; .reg .u16 %r138; .reg .u32 %r139; .reg .u16 %r140; .reg .u16 %r141; .reg .pred %r142; .reg .pred %r145; .reg .pred %r146; .reg .pred %r147; .reg .pred %r148; .reg .u64 %r150; .reg .u64 %r151; .reg .u64 %r152; .reg .u64 %r153; .reg .u16 %r154; mov.u64 %r67,%ar0; mov.u64 %r68,%ar1; mov.u64 %r69,%ar2; .loc 1 116 11 ld.global.u64 %r23,[__ctype_ptr__]; .loc 1 113 9 mov.u64 %r55,1; .loc 1 113 5 mov.u64 %r53,%r55; .loc 1 112 5 mov.u64 %r35,0; .loc 1 111 14 mov.u64 %r51,-1; .loc 1 140 10 mov.u64 %r153,%r55; .loc 1 114 9 bra $L2; $L9: .loc 1 116 11 add.u64 %r70,%r67,%r150; ld.u8 %r60,[%r70]; cvt.u32.u32 %r72,%r60; cvt.u64.u8 %r71,%r72; add.u64 %r73,%r23,%r71; ld.u8 %r154,[%r73+1]; mov.u16 %r77,%r154; and.b16 %r76,%r77,3; cvt.u32.u16 %r80,%r76; cvt.s32.s8 %r79,%r80; cvt.u16.u32 %r78,%r79; setp.ne.u16 %r81,%r78,1; @ %r81 bra $L3; cvt.u16.u32 %r83,%r60; add.u16 %r82,%r83,32; cvt.u32.u16 %r84,%r82; cvt.u32.u8 %r60,%r84; $L3: .loc 1 117 11 add.u64 %r85,%r67,%r51; add.u64 %r86,%r85,%r53; ld.u8 %r61,[%r86]; cvt.u32.u32 %r88,%r61; cvt.u64.u8 %r87,%r88; add.u64 %r89,%r23,%r87; ld.u8 %r154,[%r89+1]; mov.u16 %r93,%r154; and.b16 %r92,%r93,3; cvt.u32.u16 %r96,%r92; cvt.s32.s8 %r95,%r96; cvt.u16.u32 %r94,%r95; setp.ne.u16 %r97,%r94,1; @ %r97 bra $L4; cvt.u16.u32 %r99,%r61; add.u16 %r98,%r99,32; cvt.u32.u16 %r100,%r98; cvt.u32.u8 %r61,%r100; $L4: .loc 1 118 10 cvt.u16.u32 %r101,%r61; cvt.u16.u32 %r102,%r60; setp.le.u16 %r103,%r101,%r102; @ %r103 bra $L5; .loc 1 123 6 sub.u64 %r55,%r150,%r51; mov.u64 %r35,%r150; .loc 1 122 6 mov.u64 %r53,1; bra $L2; $L5: .loc 1 125 15 setp.ne.u16 %r106,%r101,%r102; @ %r106 bra $L7; .loc 1 128 7 setp.eq.u64 %r107,%r53,%r55; @ %r107 bra $L8; .loc 1 129 6 add.u64 %r53,%r53,1; bra $L2; $L8: .loc 1 132 10 mov.u64 %r35,%r150; .loc 1 133 10 mov.u64 %r53,1; bra $L2; $L7: .loc 1 139 15 mov.u64 %r51,%r35; .loc 1 139 18 add.u64 %r35,%r35,1; .loc 1 140 10 mov.u64 %r55,%r153; .loc 1 140 6 mov.u64 %r53,1; $L2: .loc 1 114 12 add.u64 %r150,%r35,%r53; .loc 1 114 9 setp.lt.u64 %r108,%r150,%r68; @ %r108 bra $L9; .loc 1 143 11 st.u64 [%r69],%r55; .loc 1 148 9 mov.u64 %r43,1; .loc 1 148 5 mov.u64 %r54,%r43; .loc 1 147 5 mov.u64 %r48,0; .loc 1 146 18 mov.u64 %r52,-1; .loc 1 175 10 mov.u64 %r152,%r43; .loc 1 149 9 bra $L10; $L17: .loc 1 151 11 add.u64 %r109,%r67,%r151; ld.u8 %r63,[%r109]; cvt.u32.u32 %r111,%r63; cvt.u64.u8 %r110,%r111; add.u64 %r112,%r23,%r110; ld.u8 %r154,[%r112+1]; mov.u16 %r116,%r154; and.b16 %r115,%r116,3; cvt.u32.u16 %r119,%r115; cvt.s32.s8 %r118,%r119; cvt.u16.u32 %r117,%r118; setp.ne.u16 %r120,%r117,1; @ %r120 bra $L11; cvt.u16.u32 %r122,%r63; add.u16 %r121,%r122,32; cvt.u32.u16 %r123,%r121; cvt.u32.u8 %r63,%r123; $L11: .loc 1 152 11 add.u64 %r124,%r67,%r52; add.u64 %r125,%r124,%r54; ld.u8 %r64,[%r125]; cvt.u32.u32 %r127,%r64; cvt.u64.u8 %r126,%r127; add.u64 %r128,%r23,%r126; ld.u8 %r154,[%r128+1]; mov.u16 %r132,%r154; and.b16 %r131,%r132,3; cvt.u32.u16 %r135,%r131; cvt.s32.s8 %r134,%r135; cvt.u16.u32 %r133,%r134; setp.ne.u16 %r136,%r133,1; @ %r136 bra $L12; cvt.u16.u32 %r138,%r64; add.u16 %r137,%r138,32; cvt.u32.u16 %r139,%r137; cvt.u32.u8 %r64,%r139; $L12: .loc 1 153 10 cvt.u16.u32 %r140,%r64; cvt.u16.u32 %r141,%r63; setp.ge.u16 %r142,%r140,%r141; @ %r142 bra $L13; .loc 1 158 6 sub.u64 %r43,%r151,%r52; mov.u64 %r48,%r151; .loc 1 157 6 mov.u64 %r54,1; bra $L10; $L13: .loc 1 160 15 setp.ne.u16 %r145,%r140,%r141; @ %r145 bra $L15; .loc 1 163 7 setp.eq.u64 %r146,%r54,%r43; @ %r146 bra $L16; .loc 1 164 6 add.u64 %r54,%r54,1; bra $L10; $L16: .loc 1 167 10 mov.u64 %r48,%r151; .loc 1 168 10 mov.u64 %r54,1; bra $L10; $L15: .loc 1 174 19 mov.u64 %r52,%r48; .loc 1 174 22 add.u64 %r48,%r48,1; .loc 1 175 10 mov.u64 %r43,%r152; .loc 1 175 6 mov.u64 %r54,1; $L10: .loc 1 149 12 add.u64 %r151,%r48,%r54; .loc 1 149 9 setp.lt.u64 %r147,%r151,%r68; @ %r147 bra $L17; .loc 1 181 22 add.u64 %r50,%r52,1; .loc 1 181 39 add.u64 %r66,%r51,1; .loc 1 181 6 setp.lt.u64 %r148,%r50,%r66; @ %r148 bra $L1; .loc 1 183 11 st.u64 [%r69],%r43; .loc 1 184 25 mov.u64 %r66,%r50; $L1: .loc 1 185 1 mov.u64 %value,%r66; st.param.u64 [%value_out],%value; ret; } // 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,2064; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r22; .reg .u64 %r28; .reg .u64 %r31; .reg .u64 %r36; .reg .u64 %r54; .reg .u64 %r55; .reg .u64 %r65; .reg .u64 %r70; .reg .u64 %r79; .reg .u64 %r90; .reg .u64 %r94; .reg .u64 %r96; .reg .u64 %r97; .reg .u64 %r98; .reg .u64 %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 .u64 %r125; .reg .u64 %r129; .reg .u64 %r134; .reg .u64 %r136; .reg .u64 %r144; .reg .u64 %r151; .reg .u64 %r152; .reg .u64 %r158; .reg .u64 %r168; .reg .u64 %r169; .reg .u64 %r172; .reg .u64 %r173; .reg .u64 %r174; .reg .u64 %r175; .reg .u64 %r176; .reg .u64 %r180; .reg .u64 %r181; .reg .pred %r182; .reg .u64 %r183; .reg .pred %r184; .reg .u64 %r185; .reg .u32 %r186; .reg .u64 %r187; .reg .u16 %r190; .reg .u16 %r191; .reg .u16 %r192; .reg .u32 %r193; .reg .u32 %r194; .reg .pred %r195; .reg .u64 %r196; .reg .u64 %r197; .reg .u64 %r198; .reg .u64 %r200; .reg .pred %r201; .reg .u32 %r205; .reg .pred %r206; .reg .u64 %r207; .reg .u64 %r209; .reg .u32 %r210; .reg .u64 %r211; .reg .u16 %r214; .reg .u16 %r215; .reg .u16 %r216; .reg .u32 %r217; .reg .u32 %r218; .reg .pred %r219; .reg .u64 %r220; .reg .u64 %r221; .reg .u64 %r222; .reg .pred %r223; .reg .pred %r224; .reg .pred %r225; .reg .pred %r226; .reg .pred %r227; .reg .u64 %r228; .reg .u64 %r229; .reg .u32 %r230; .reg .u64 %r231; .reg .u16 %r234; .reg .u16 %r235; .reg .u16 %r236; .reg .u32 %r237; .reg .u32 %r238; .reg .pred %r239; .reg .u64 %r240; .reg .u64 %r241; .reg .u64 %r242; .reg .u32 %r243; .reg .u64 %r244; .reg .u16 %r247; .reg .u16 %r248; .reg .u16 %r249; .reg .u32 %r250; .reg .u32 %r251; .reg .pred %r252; .reg .pred %r253; .reg .pred %r254; .reg .u64 %r255; .reg .u64 %r256; .reg .u32 %r257; .reg .u64 %r258; .reg .u16 %r261; .reg .u16 %r262; .reg .u16 %r263; .reg .u32 %r264; .reg .u32 %r265; .reg .pred %r266; .reg .u64 %r267; .reg .u64 %r268; .reg .u64 %r269; .reg .u32 %r270; .reg .u64 %r271; .reg .u16 %r274; .reg .u16 %r275; .reg .u16 %r276; .reg .u32 %r277; .reg .u32 %r278; .reg .pred %r279; .reg .pred %r280; .reg .u64 %r281; .reg .pred %r282; .reg .u32 %r284; .reg .u64 %r286; .reg .u64 %r287; .reg .u64 %r288; .reg .u32 %r290; .reg .u32 %r291; .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 %r302; .reg .u64 %r303; .reg .u64 %r304; .reg .u64 %r306; .reg .u32 %r307; .reg .u64 %r308; .reg .u16 %r311; .reg .u16 %r312; .reg .u16 %r313; .reg .u32 %r314; .reg .u32 %r315; .reg .pred %r316; .reg .u64 %r317; .reg .u64 %r318; .reg .u64 %r319; .reg .pred %r320; .reg .pred %r321; .reg .pred %r322; .reg .u64 %r323; .reg .u64 %r324; .reg .u32 %r325; .reg .u64 %r326; .reg .u16 %r329; .reg .u16 %r330; .reg .u16 %r331; .reg .u32 %r332; .reg .u32 %r333; .reg .pred %r334; .reg .u64 %r335; .reg .u64 %r336; .reg .u64 %r337; .reg .u32 %r338; .reg .u64 %r339; .reg .u16 %r342; .reg .u16 %r343; .reg .u16 %r344; .reg .u32 %r345; .reg .u32 %r346; .reg .pred %r347; .reg .pred %r348; .reg .pred %r349; .reg .u64 %r350; .reg .u64 %r351; .reg .u32 %r352; .reg .u64 %r353; .reg .u16 %r356; .reg .u16 %r357; .reg .u16 %r358; .reg .u32 %r359; .reg .u32 %r360; .reg .pred %r361; .reg .u64 %r362; .reg .u64 %r363; .reg .u64 %r364; .reg .u32 %r365; .reg .u64 %r366; .reg .u16 %r369; .reg .u16 %r370; .reg .u16 %r371; .reg .u32 %r372; .reg .u32 %r373; .reg .pred %r374; .reg .pred %r375; .reg .u32 %r377; .reg .u64 %r379; .reg .u64 %r380; .reg .u64 %r381; .reg .u32 %r383; .reg .u32 %r384; .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 .u64 %r395; .reg .pred %r397; .reg .u64 %r398; .reg .pred %r399; .reg .u64 %r400; .reg .u64 %r405; .reg .u64 %r406; .reg .u64 %r407; .reg .u32 %r411; .reg .pred %r412; .reg .u64 %r413; .reg .u64 %r414; .reg .u64 %r415; .reg .u16 %r416; mov.u64 %r173,%ar0; mov.u64 %r174,%ar1; mov.u64 %r175,%ar2; mov.u64 %r176,%ar3; .loc 1 304 12 add.u64 %r180,%frame,2048; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r175; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r176; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r180; call (%value_in),critical_factorization,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r181,[%value_in]; } mov.u64 %r151,%frame; $L20: .loc 1 311 20 st.u64 [%r151],%r176; add.u64 %r151,%r151,8; .loc 1 310 3 setp.ne.u64 %r182,%r180,%r151; @ %r182 bra $L20; ld.u64 %r183,[%frame+2048]; add.u64 %r168,%r175,%r183; .loc 1 312 3 setp.eq.u64 %r184,%r176,0; @ %r184 bra $L21; .loc 1 313 17 ld.global.u64 %r22,[__ctype_ptr__]; add.u64 %r169,%r176,-1; add.u64 %r152,%r176,%r175; mov.u64 %r158,%r175; add.u64 %r413,%r175,%r169; $L23: ld.u8 %r100,[%r158]; cvt.u32.u32 %r186,%r100; cvt.u64.u8 %r185,%r186; add.u64 %r187,%r22,%r185; ld.u8 %r416,[%r187+1]; mov.u16 %r191,%r416; and.b16 %r190,%r191,3; cvt.u32.u16 %r194,%r190; cvt.s32.s8 %r193,%r194; cvt.u16.u32 %r192,%r193; setp.ne.u16 %r195,%r192,1; @ %r195 bra $L22; add.u32 %r100,%r100,32; $L22: .loc 1 313 44 cvt.s64.s32 %r196,%r100; shl.b64 %r197,%r196,3; add.u64 %r198,%frame,%r197; sub.u64 %r200,%r413,%r158; st.u64 [%r198],%r200; add.u64 %r158,%r158,1; .loc 1 312 3 setp.ne.u64 %r201,%r152,%r158; @ %r201 bra $L23; .loc 1 317 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r175; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r168; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r181; call (%value_in),strncasecmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r205,[%value_in]; } .loc 1 317 6 setp.eq.u32 %r206,%r205,0; @ ! %r206 bra $L25; bra $L63; $L42: .loc 1 329 24 add.u64 %r207,%r173,%r55; ld.global.u64 %r31,[__ctype_ptr__]; ld.u8 %r101,[%r207+-1]; cvt.u32.u32 %r210,%r101; cvt.u64.u8 %r209,%r210; add.u64 %r211,%r31,%r209; ld.u8 %r416,[%r211+1]; mov.u16 %r215,%r416; and.b16 %r214,%r215,3; cvt.u32.u16 %r218,%r214; cvt.s32.s8 %r217,%r218; cvt.u16.u32 %r216,%r217; setp.ne.u16 %r219,%r216,1; @ %r219 bra $L26; add.u32 %r101,%r101,32; $L26: .loc 1 329 10 cvt.s64.s32 %r220,%r101; shl.b64 %r221,%r220,3; add.u64 %r222,%frame,%r221; ld.u64 %r99,[%r222]; .loc 1 330 7 setp.eq.u64 %r223,%r99,0; @ %r223 bra $L27; .loc 1 332 11 setp.eq.u64 %r224,%r98,0; @ %r224 bra $L28; .loc 1 332 28 ld.u64 %r36,[%frame+2048]; .loc 1 332 19 setp.le.u64 %r225,%r36,%r99; @ %r225 bra $L28; .loc 1 337 11 sub.u64 %r99,%r176,%r36; $L28: .loc 1 340 10 add.u64 %r96,%r96,%r99; .loc 1 339 15 mov.u64 %r98,0; .loc 1 341 8 bra $L29; $L27: .loc 1 345 6 max.u64 %r79,%r98,%r181; .loc 1 346 10 setp.lt.u64 %r226,%r79,%r169; @ %r226 bra $L30; bra $L31; $L34: .loc 1 348 6 add.u64 %r79,%r79,1; .loc 1 346 10 setp.eq.u64 %r227,%r79,%r169; @ %r227 bra $L31; $L30: .loc 1 346 34 add.u64 %r228,%r175,%r79; ld.u8 %r102,[%r228]; cvt.u32.u32 %r230,%r102; cvt.u64.u8 %r229,%r230; add.u64 %r231,%r31,%r229; ld.u8 %r416,[%r231+1]; mov.u16 %r235,%r416; and.b16 %r234,%r235,3; cvt.u32.u16 %r238,%r234; cvt.s32.s8 %r237,%r238; cvt.u16.u32 %r236,%r237; setp.ne.u16 %r239,%r236,1; @ %r239 bra $L32; add.u32 %r102,%r102,32; $L32: .loc 1 347 9 add.u64 %r240,%r79,%r96; add.u64 %r241,%r173,%r240; ld.u8 %r103,[%r241]; cvt.u32.u32 %r243,%r103; cvt.u64.u8 %r242,%r243; add.u64 %r244,%r31,%r242; ld.u8 %r416,[%r244+1]; mov.u16 %r248,%r416; and.b16 %r247,%r248,3; cvt.u32.u16 %r251,%r247; cvt.s32.s8 %r250,%r251; cvt.u16.u32 %r249,%r250; setp.ne.u16 %r252,%r249,1; @ %r252 bra $L33; add.u32 %r103,%r103,32; $L33: .loc 1 346 30 setp.eq.u32 %r253,%r102,%r103; @ %r253 bra $L34; bra $L77; $L39: .loc 1 355 3 add.u64 %r125,%r70,-1; .loc 1 353 14 setp.eq.u64 %r254,%r70,%r98; @ %r254 bra $L64; mov.u64 %r70,%r125; $L60: add.u64 %r134,%r70,1; .loc 1 353 34 add.u64 %r255,%r175,%r70; ld.u8 %r104,[%r255]; cvt.u32.u32 %r257,%r104; cvt.u64.u8 %r256,%r257; add.u64 %r258,%r31,%r256; ld.u8 %r416,[%r258+1]; mov.u16 %r262,%r416; and.b16 %r261,%r262,3; cvt.u32.u16 %r265,%r261; cvt.s32.s8 %r264,%r265; cvt.u16.u32 %r263,%r264; setp.ne.u16 %r266,%r263,1; @ %r266 bra $L37; add.u32 %r104,%r104,32; $L37: .loc 1 354 9 add.u64 %r267,%r70,%r96; add.u64 %r268,%r173,%r267; ld.u8 %r105,[%r268]; cvt.u32.u32 %r270,%r105; cvt.u64.u8 %r269,%r270; add.u64 %r271,%r31,%r269; ld.u8 %r416,[%r271+1]; mov.u16 %r275,%r416; and.b16 %r274,%r275,3; cvt.u32.u16 %r278,%r274; cvt.s32.s8 %r277,%r278; cvt.u16.u32 %r276,%r277; setp.ne.u16 %r279,%r276,1; @ %r279 bra $L38; add.u32 %r105,%r105,32; $L38: .loc 1 353 30 setp.eq.u32 %r280,%r104,%r105; @ %r280 bra $L39; bra $L36; $L64: mov.u64 %r134,%r98; $L36: .loc 1 356 27 add.u64 %r281,%r98,1; .loc 1 356 11 setp.le.u64 %r282,%r281,%r134; @ %r282 bra $L40; .loc 1 357 10 add.u64 %r172,%r173,%r96; bra $L19; $L40: .loc 1 360 10 ld.u64 %r54,[%frame+2048]; add.u64 %r96,%r96,%r54; .loc 1 361 15 sub.u64 %r98,%r176,%r54; $L29: .loc 1 339 15 mov.u64 %r174,%r55; bra $L24; $L63: .loc 1 322 14 mov.u64 %r98,0; .loc 1 324 9 mov.u64 %r96,%r98; .loc 1 352 10 add.u64 %r414,%r181,-1; $L24: .loc 1 325 14 add.u64 %r55,%r96,%r176; sub.u64 %r286,%r55,%r174; add.u64 %r287,%r173,%r174; mov.u32 %r284,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r287; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r284; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r286; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r288,[%value_in]; } .loc 1 325 13 set.u32.eq.u64 %r290,%r288,0; neg.s32 %r291,%r290; .loc 1 325 14 set.u32.ne.u64 %r293,%r55,0; neg.s32 %r294,%r293; cvt.u16.u32 %r296,%r291; cvt.u16.u32 %r297,%r294; and.b16 %r295,%r296,%r297; cvt.u32.u16 %r298,%r295; cvt.u16.u8 %r299,%r298; setp.ne.u16 %r300,%r299,0; @ %r300 bra $L42; $L59: .loc 1 408 10 mov.u64 %r172,0; bra $L19; $L25: .loc 1 375 16 sub.u64 %r302,%r176,%r181; max.u64 %r301,%r302,%r181; .loc 1 375 50 add.u64 %r303,%r301,1; .loc 1 375 14 st.u64 [%frame+2048],%r303; .loc 1 376 9 mov.u64 %r97,0; .loc 1 390 26 add.u64 %r415,%r176,-1; .loc 1 377 13 bra $L43; $L58: .loc 1 381 24 add.u64 %r304,%r173,%r90; ld.global.u64 %r65,[__ctype_ptr__]; ld.u8 %r106,[%r304+-1]; cvt.u32.u32 %r307,%r106; cvt.u64.u8 %r306,%r307; add.u64 %r308,%r65,%r306; ld.u8 %r416,[%r308+1]; mov.u16 %r312,%r416; and.b16 %r311,%r312,3; cvt.u32.u16 %r315,%r311; cvt.s32.s8 %r314,%r315; cvt.u16.u32 %r313,%r314; setp.ne.u16 %r316,%r313,1; @ %r316 bra $L44; add.u32 %r106,%r106,32; $L44: .loc 1 381 10 cvt.s64.s32 %r317,%r106; shl.b64 %r318,%r317,3; add.u64 %r319,%frame,%r318; ld.u64 %r129,[%r319]; .loc 1 382 7 setp.ne.u64 %r320,%r129,0; @ %r320 bra $L45; .loc 1 390 10 setp.lt.u64 %r321,%r181,%r415; @ %r321 bra $L65; bra $L47; $L45: .loc 1 384 10 add.u64 %r97,%r97,%r129; .loc 1 385 8 bra $L48; $L51: .loc 1 392 6 add.u64 %r28,%r28,1; .loc 1 390 10 setp.ge.u64 %r322,%r28,%r415; @ ! %r322 bra $L46; bra $L47; $L65: mov.u64 %r28,%r181; $L46: .loc 1 390 34 add.u64 %r323,%r175,%r28; ld.u8 %r107,[%r323]; cvt.u32.u32 %r325,%r107; cvt.u64.u8 %r324,%r325; add.u64 %r326,%r65,%r324; ld.u8 %r416,[%r326+1]; mov.u16 %r330,%r416; and.b16 %r329,%r330,3; cvt.u32.u16 %r333,%r329; cvt.s32.s8 %r332,%r333; cvt.u16.u32 %r331,%r332; setp.ne.u16 %r334,%r331,1; @ %r334 bra $L49; add.u32 %r107,%r107,32; $L49: .loc 1 391 9 add.u64 %r335,%r28,%r97; add.u64 %r336,%r173,%r335; ld.u8 %r108,[%r336]; cvt.u32.u32 %r338,%r108; cvt.u64.u8 %r337,%r338; add.u64 %r339,%r65,%r337; ld.u8 %r416,[%r339+1]; mov.u16 %r343,%r416; and.b16 %r342,%r343,3; cvt.u32.u16 %r346,%r342; cvt.s32.s8 %r345,%r346; cvt.u16.u32 %r344,%r345; setp.ne.u16 %r347,%r344,1; @ %r347 bra $L50; add.u32 %r108,%r108,32; $L50: .loc 1 390 30 setp.eq.u32 %r348,%r107,%r108; @ %r348 bra $L51; bra $L78; $L56: .loc 1 399 3 add.u64 %r136,%r136,-1; .loc 1 397 14 setp.eq.u64 %r349,%r136,-1; @ %r349 bra $L53; $L61: .loc 1 397 33 add.u64 %r350,%r175,%r136; ld.u8 %r109,[%r350]; cvt.u32.u32 %r352,%r109; cvt.u64.u8 %r351,%r352; add.u64 %r353,%r65,%r351; ld.u8 %r416,[%r353+1]; mov.u16 %r357,%r416; and.b16 %r356,%r357,3; cvt.u32.u16 %r360,%r356; cvt.s32.s8 %r359,%r360; cvt.u16.u32 %r358,%r359; setp.ne.u16 %r361,%r358,1; @ %r361 bra $L54; add.u32 %r109,%r109,32; $L54: .loc 1 398 15 add.u64 %r362,%r97,%r136; add.u64 %r363,%r173,%r362; ld.u8 %r110,[%r363]; cvt.u32.u32 %r365,%r110; cvt.u64.u8 %r364,%r365; add.u64 %r366,%r65,%r364; ld.u8 %r416,[%r366+1]; mov.u16 %r370,%r416; and.b16 %r369,%r370,3; cvt.u32.u16 %r373,%r369; cvt.s32.s8 %r372,%r373; cvt.u16.u32 %r371,%r372; setp.ne.u16 %r374,%r371,1; @ %r374 bra $L55; add.u32 %r110,%r110,32; $L55: .loc 1 397 29 setp.eq.u32 %r375,%r109,%r110; @ %r375 bra $L56; bra $L79; $L48: .loc 1 390 10 mov.u64 %r174,%r90; $L43: .loc 1 377 14 add.u64 %r90,%r97,%r176; sub.u64 %r379,%r90,%r174; add.u64 %r380,%r173,%r174; mov.u32 %r377,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r380; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r377; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r379; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r381,[%value_in]; } set.u32.ne.u64 %r383,%r90,0; neg.s32 %r384,%r383; .loc 1 377 13 set.u32.eq.u64 %r386,%r381,0; neg.s32 %r387,%r386; .loc 1 377 14 cvt.u16.u32 %r389,%r384; cvt.u16.u32 %r390,%r387; and.b16 %r388,%r389,%r390; cvt.u32.u16 %r391,%r388; cvt.u16.u8 %r392,%r391; setp.ne.u16 %r393,%r392,0; @ %r393 bra $L58; bra $L59; $L77: sub.u64 %r395,%r96,%r181; add.u64 %r144,%r395,1; .loc 1 365 10 add.u64 %r96,%r79,%r144; .loc 1 366 15 mov.u64 %r98,%r99; bra $L29; $L31: .loc 1 352 10 mov.u64 %r70,%r414; .loc 1 353 14 setp.lt.u64 %r397,%r98,%r181; @ %r397 bra $L60; mov.u64 %r134,%r181; bra $L36; $L53: .loc 1 401 10 add.u64 %r172,%r173,%r97; bra $L19; $L79: .loc 1 402 10 ld.u64 %r398,[%frame+2048]; add.u64 %r97,%r97,%r398; bra $L48; $L47: .loc 1 396 10 add.u64 %r136,%r181,-1; .loc 1 397 14 setp.ne.u64 %r399,%r136,-1; @ %r399 bra $L61; bra $L53; $L78: sub.u64 %r400,%r97,%r181; add.u64 %r94,%r400,1; .loc 1 405 8 add.u64 %r97,%r28,%r94; bra $L48; $L62: .loc 1 325 14 neg.s64 %r405,%r174; add.u64 %r406,%r173,%r174; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r406; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r411; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r405; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r407,[%value_in]; } .loc 1 408 10 mov.u64 %r172,%r176; bra $L19; $L21: .loc 1 317 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r175; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r168; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r181; call (%value_in),strncasecmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r411,[%value_in]; } .loc 1 317 6 setp.eq.u32 %r412,%r411,0; @ %r412 bra $L62; bra $L25; $L19: .loc 1 409 1 mov.u64 %value,%r172; st.shared.u64 [%sspslot],%sspprev; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: strcasestr .visible .func (.param .u64 %value_out) strcasestr (.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 .u32 %r33; .reg .u32 %r34; .reg .u64 %r38; .reg .u32 %r39; .reg .u32 %r40; .reg .u64 %r43; .reg .u64 %r45; .reg .u32 %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u64 %r56; .reg .u64 %r57; .reg .u64 %r59; .reg .u64 %r65; .reg .u32 %r72; .reg .u32 %r73; .reg .u64 %r75; .reg .u64 %r76; .reg .u64 %r78; .reg .u32 %r90; .reg .u32 %r91; .reg .u64 %r95; .reg .u64 %r96; .reg .u64 %r103; .reg .u64 %r105; .reg .u64 %r111; .reg .u32 %r118; .reg .u32 %r119; .reg .u64 %r120; .reg .u64 %r122; .reg .u32 %r134; .reg .u32 %r135; .reg .u64 %r138; .reg .u64 %r144; .reg .u64 %r145; .reg .u64 %r158; .reg .u64 %r159; .reg .u64 %r160; .reg .pred %r161; .reg .pred %r162; .reg .u32 %r163; .reg .u64 %r164; .reg .u64 %r166; .reg .u16 %r169; .reg .u16 %r170; .reg .u16 %r171; .reg .u32 %r172; .reg .u32 %r173; .reg .pred %r174; .reg .u32 %r175; .reg .u64 %r176; .reg .u64 %r178; .reg .u16 %r181; .reg .u16 %r182; .reg .u16 %r183; .reg .u32 %r184; .reg .u32 %r185; .reg .pred %r186; .reg .u32 %r188; .reg .u32 %r189; .reg .pred %r190; .reg .pred %r191; .reg .pred %r192; .reg .u16 %r193; .reg .u32 %r194; .reg .pred %r195; .reg .pred %r196; .reg .pred %r197; .reg .u64 %r201; .reg .u64 %r205; .reg .u64 %r206; .reg .u32 %r207; .reg .pred %r208; .reg .pred %r209; .reg .pred %r210; .reg .u64 %r211; .reg .u64 %r212; .reg .u32 %r213; .reg .u64 %r214; .reg .u16 %r217; .reg .u16 %r218; .reg .u16 %r219; .reg .u32 %r220; .reg .u32 %r221; .reg .pred %r222; .reg .u64 %r223; .reg .u64 %r224; .reg .u64 %r225; .reg .u32 %r226; .reg .u64 %r227; .reg .u16 %r230; .reg .u16 %r231; .reg .u16 %r232; .reg .u32 %r233; .reg .u32 %r234; .reg .pred %r235; .reg .pred %r236; .reg .pred %r237; .reg .pred %r238; .reg .pred %r239; .reg .u64 %r240; .reg .u64 %r241; .reg .u32 %r242; .reg .u64 %r243; .reg .u16 %r246; .reg .u16 %r247; .reg .u16 %r248; .reg .u32 %r249; .reg .u32 %r250; .reg .pred %r251; .reg .u64 %r252; .reg .u64 %r253; .reg .u64 %r254; .reg .u32 %r255; .reg .u64 %r256; .reg .u16 %r259; .reg .u16 %r260; .reg .u16 %r261; .reg .u32 %r262; .reg .u32 %r263; .reg .pred %r264; .reg .pred %r265; .reg .u64 %r266; .reg .pred %r267; .reg .u64 %r268; .reg .u32 %r271; .reg .u64 %r273; .reg .u64 %r274; .reg .u64 %r275; .reg .u32 %r277; .reg .u32 %r278; .reg .u32 %r280; .reg .u32 %r281; .reg .u16 %r282; .reg .u16 %r283; .reg .u16 %r284; .reg .u32 %r285; .reg .u16 %r286; .reg .pred %r287; .reg .u64 %r288; .reg .u64 %r289; .reg .u64 %r290; .reg .pred %r291; .reg .u64 %r292; .reg .u64 %r293; .reg .u32 %r294; .reg .u64 %r295; .reg .u16 %r298; .reg .u16 %r299; .reg .u16 %r300; .reg .u32 %r301; .reg .u32 %r302; .reg .pred %r303; .reg .u64 %r304; .reg .u64 %r305; .reg .u64 %r306; .reg .u32 %r307; .reg .u64 %r308; .reg .u16 %r311; .reg .u16 %r312; .reg .u16 %r313; .reg .u32 %r314; .reg .u32 %r315; .reg .pred %r316; .reg .pred %r317; .reg .pred %r318; .reg .pred %r319; .reg .pred %r320; .reg .u64 %r321; .reg .u64 %r322; .reg .u32 %r323; .reg .u64 %r324; .reg .u16 %r327; .reg .u16 %r328; .reg .u16 %r329; .reg .u32 %r330; .reg .u32 %r331; .reg .pred %r332; .reg .u64 %r333; .reg .u64 %r334; .reg .u64 %r335; .reg .u32 %r336; .reg .u64 %r337; .reg .u16 %r340; .reg .u16 %r341; .reg .u16 %r342; .reg .u32 %r343; .reg .u32 %r344; .reg .pred %r345; .reg .pred %r346; .reg .u64 %r347; .reg .u32 %r350; .reg .u64 %r352; .reg .u64 %r353; .reg .u64 %r354; .reg .u32 %r356; .reg .u32 %r357; .reg .u32 %r359; .reg .u32 %r360; .reg .u16 %r361; .reg .u16 %r362; .reg .u16 %r363; .reg .u32 %r364; .reg .u16 %r365; .reg .pred %r366; .reg .pred %r367; .reg .u64 %r372; .reg .u64 %r374; .reg .u64 %r375; .reg .u16 %r376; mov.u64 %r159,%ar0; mov.u64 %r160,%ar1; .loc 2 133 10 ld.s8 %r33,[%r159]; ld.s8 %r34,[%r160]; .loc 2 133 9 setp.eq.u32 %r161,%r33,0; @ %r161 bra $L81; .loc 2 133 20 setp.eq.u32 %r162,%r34,0; @ %r162 bra $L121; .loc 2 134 12 ld.global.u64 %r23,[__ctype_ptr__]; mov.u64 %r45,%r160; mov.u64 %r43,%r159; .loc 2 128 7 mov.u32 %r48,1; $L86: .loc 2 134 12 add.u64 %r43,%r43,1; cvt.u32.u32 %r163,%r33; cvt.u32.u8 %r39,%r163; cvt.u64.u8 %r164,%r163; add.u64 %r166,%r23,%r164; ld.u8 %r376,[%r166+1]; mov.u16 %r170,%r376; and.b16 %r169,%r170,3; cvt.u32.u16 %r173,%r169; cvt.s32.s8 %r172,%r173; cvt.u16.u32 %r171,%r172; setp.ne.u16 %r174,%r171,1; @ %r174 bra $L83; add.u32 %r39,%r39,32; $L83: .loc 2 135 8 add.u64 %r45,%r45,1; cvt.u32.u32 %r175,%r34; cvt.u32.u8 %r40,%r175; cvt.u64.u8 %r176,%r175; add.u64 %r178,%r23,%r176; ld.u8 %r376,[%r178+1]; mov.u16 %r182,%r376; and.b16 %r181,%r182,3; cvt.u32.u16 %r185,%r181; cvt.s32.s8 %r184,%r185; cvt.u16.u32 %r183,%r184; setp.ne.u16 %r186,%r183,1; @ %r186 bra $L84; add.u32 %r40,%r40,32; $L84: .loc 2 135 5 set.u32.eq.u32 %r188,%r39,%r40; neg.s32 %r189,%r188; .loc 2 134 8 and.b32 %r48,%r48,%r189; .loc 2 133 10 ld.s8 %r33,[%r43]; .loc 2 133 9 setp.eq.u32 %r190,%r33,0; @ %r190 bra $L85; .loc 2 133 23 ld.s8 %r34,[%r45]; .loc 2 133 20 setp.ne.u32 %r191,%r34,0; @ %r191 bra $L86; bra $L87; $L81: .loc 2 136 6 setp.eq.u32 %r192,%r34,0; .loc 2 137 12 selp.u64 %r158,%r159,0,%r192; bra $L80; $L85: .loc 2 136 6 ld.s8 %r194,[%r45]; cvt.u16.u32 %r193,%r194; setp.ne.u16 %r195,%r193,0; @ %r195 bra $L123; $L87: .loc 2 138 6 setp.ne.u32 %r196,%r48,0; @ %r196 bra $L124; .loc 2 140 23 sub.u64 %r49,%r45,%r160; .loc 2 141 12 add.u64 %r50,%r159,1; .loc 2 142 16 add.u64 %r51,%r49,-1; .loc 2 145 6 setp.gt.u64 %r197,%r49,31; @ %r197 bra $L88; .loc 1 209 12 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r160; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r49; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call (%value_in),critical_factorization,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r201,[%value_in]; } .loc 1 213 32 ld.u64 %r206,[%frame]; add.u64 %r205,%r160,%r206; .loc 1 213 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r160; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r205; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r201; call (%value_in),strncasecmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r207,[%value_in]; } .loc 1 213 6 setp.eq.u32 %r208,%r207,0; @ %r208 bra $L125; bra $L138; $L105: .loc 1 223 6 max.u64 %r57,%r201,%r56; .loc 1 224 10 setp.le.u64 %r209,%r49,%r57; @ %r209 bra $L91; .loc 1 224 30 ld.global.u64 %r59,[__ctype_ptr__]; bra $L92; $L95: .loc 1 226 6 add.u64 %r57,%r57,1; .loc 1 224 10 setp.eq.u64 %r210,%r49,%r57; @ %r210 bra $L91; $L92: .loc 1 224 30 add.u64 %r211,%r160,%r57; ld.u8 %r72,[%r211]; cvt.u32.u32 %r213,%r72; cvt.u64.u8 %r212,%r213; add.u64 %r214,%r59,%r212; ld.u8 %r376,[%r214+1]; mov.u16 %r218,%r376; and.b16 %r217,%r218,3; cvt.u32.u16 %r221,%r217; cvt.s32.s8 %r220,%r221; cvt.u16.u32 %r219,%r220; setp.ne.u16 %r222,%r219,1; @ %r222 bra $L93; add.u32 %r72,%r72,32; $L93: .loc 1 225 12 add.u64 %r223,%r65,%r57; add.u64 %r224,%r159,%r223; ld.u8 %r73,[%r224+1]; cvt.u32.u32 %r226,%r73; cvt.u64.u8 %r225,%r226; add.u64 %r227,%r59,%r225; ld.u8 %r376,[%r227+1]; mov.u16 %r231,%r376; and.b16 %r230,%r231,3; cvt.u32.u16 %r234,%r230; cvt.s32.s8 %r233,%r234; cvt.u16.u32 %r232,%r233; setp.ne.u16 %r235,%r232,1; @ %r235 bra $L94; add.u32 %r73,%r73,32; $L94: .loc 1 224 26 setp.eq.u32 %r236,%r72,%r73; @ %r236 bra $L95; .loc 1 227 7 setp.gt.u64 %r237,%r49,%r57; @ %r237 bra $L96; $L91: .loc 1 230 10 mov.u64 %r75,%r375; .loc 1 231 14 setp.le.u64 %r238,%r201,%r56; @ %r238 bra $L126; .loc 1 231 34 ld.global.u64 %r78,[__ctype_ptr__]; bra $L98; $L101: .loc 1 233 3 add.u64 %r76,%r75,-1; .loc 1 231 14 setp.eq.u64 %r239,%r56,%r75; @ %r239 bra $L127; mov.u64 %r75,%r76; $L98: add.u64 %r144,%r75,1; .loc 1 231 34 add.u64 %r240,%r160,%r75; ld.u8 %r90,[%r240]; cvt.u32.u32 %r242,%r90; cvt.u64.u8 %r241,%r242; add.u64 %r243,%r78,%r241; ld.u8 %r376,[%r243+1]; mov.u16 %r247,%r376; and.b16 %r246,%r247,3; cvt.u32.u16 %r250,%r246; cvt.s32.s8 %r249,%r250; cvt.u16.u32 %r248,%r249; setp.ne.u16 %r251,%r248,1; @ %r251 bra $L99; add.u32 %r90,%r90,32; $L99: .loc 1 232 9 add.u64 %r252,%r65,%r75; add.u64 %r253,%r159,%r252; ld.u8 %r91,[%r253+1]; cvt.u32.u32 %r255,%r91; cvt.u64.u8 %r254,%r255; add.u64 %r256,%r78,%r254; ld.u8 %r376,[%r256+1]; mov.u16 %r260,%r376; and.b16 %r259,%r260,3; cvt.u32.u16 %r263,%r259; cvt.s32.s8 %r262,%r263; cvt.u16.u32 %r261,%r262; setp.ne.u16 %r264,%r261,1; @ %r264 bra $L100; add.u32 %r91,%r91,32; $L100: .loc 1 231 30 setp.eq.u32 %r265,%r90,%r91; @ %r265 bra $L101; bra $L97; $L126: .loc 1 231 14 mov.u64 %r144,%r201; bra $L97; $L127: mov.u64 %r144,%r56; $L97: .loc 1 234 27 add.u64 %r266,%r56,1; .loc 1 234 11 setp.le.u64 %r267,%r266,%r144; @ %r267 bra $L102; .loc 1 235 10 add.u64 %r158,%r50,%r65; bra $L80; $L102: .loc 1 238 10 ld.u64 %r95,[%frame]; add.u64 %r65,%r65,%r95; .loc 1 239 15 sub.u64 %r56,%r49,%r95; bra $L104; $L96: sub.u64 %r268,%r65,%r201; add.u64 %r145,%r268,1; .loc 1 243 10 add.u64 %r65,%r57,%r145; .loc 1 244 15 mov.u64 %r56,0; $L104: mov.u64 %r51,%r96; bra $L89; $L125: .loc 1 218 14 mov.u64 %r56,0; .loc 1 219 9 mov.u64 %r65,%r56; .loc 1 230 10 add.u64 %r375,%r201,-1; $L89: .loc 1 220 14 add.u64 %r96,%r49,%r65; sub.u64 %r273,%r96,%r51; add.u64 %r274,%r50,%r51; mov.u32 %r271,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r274; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r271; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r273; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r275,[%value_in]; } .loc 1 220 13 set.u32.eq.u64 %r277,%r275,0; neg.s32 %r278,%r277; .loc 1 220 14 set.u32.ne.u64 %r280,%r96,0; neg.s32 %r281,%r280; cvt.u16.u32 %r283,%r278; cvt.u16.u32 %r284,%r281; and.b16 %r282,%r283,%r284; cvt.u32.u16 %r285,%r282; cvt.u16.u8 %r286,%r285; setp.ne.u16 %r287,%r286,0; @ %r287 bra $L105; bra $L106; $L138: .loc 1 252 16 sub.u64 %r289,%r49,%r201; max.u64 %r288,%r289,%r201; .loc 1 252 50 add.u64 %r290,%r288,1; .loc 1 252 14 st.u64 [%frame],%r290; .loc 1 253 9 mov.u64 %r111,0; bra $L107; $L111: .loc 1 260 6 add.u64 %r103,%r103,1; .loc 1 258 10 setp.eq.u64 %r291,%r49,%r103; @ %r291 bra $L108; $L119: .loc 1 258 30 add.u64 %r292,%r160,%r103; ld.u8 %r118,[%r292]; cvt.u32.u32 %r294,%r118; cvt.u64.u8 %r293,%r294; add.u64 %r295,%r105,%r293; ld.u8 %r376,[%r295+1]; mov.u16 %r299,%r376; and.b16 %r298,%r299,3; cvt.u32.u16 %r302,%r298; cvt.s32.s8 %r301,%r302; cvt.u16.u32 %r300,%r301; setp.ne.u16 %r303,%r300,1; @ %r303 bra $L109; add.u32 %r118,%r118,32; $L109: .loc 1 259 12 add.u64 %r304,%r111,%r103; add.u64 %r305,%r159,%r304; ld.u8 %r119,[%r305+1]; cvt.u32.u32 %r307,%r119; cvt.u64.u8 %r306,%r307; add.u64 %r308,%r105,%r306; ld.u8 %r376,[%r308+1]; mov.u16 %r312,%r376; and.b16 %r311,%r312,3; cvt.u32.u16 %r315,%r311; cvt.s32.s8 %r314,%r315; cvt.u16.u32 %r313,%r314; setp.ne.u16 %r316,%r313,1; @ %r316 bra $L110; add.u32 %r119,%r119,32; $L110: .loc 1 258 26 setp.eq.u32 %r317,%r118,%r119; @ %r317 bra $L111; .loc 1 261 7 setp.gt.u64 %r318,%r49,%r103; @ %r318 bra $L112; $L108: .loc 1 264 10 add.u64 %r120,%r201,-1; .loc 1 265 14 setp.eq.u64 %r319,%r120,-1; @ %r319 bra $L113; .loc 1 265 33 ld.global.u64 %r122,[__ctype_ptr__]; bra $L114; $L117: .loc 1 267 3 add.u64 %r120,%r120,-1; .loc 1 265 14 setp.eq.u64 %r320,%r120,-1; @ %r320 bra $L113; $L114: .loc 1 265 33 add.u64 %r321,%r160,%r120; ld.u8 %r134,[%r321]; cvt.u32.u32 %r323,%r134; cvt.u64.u8 %r322,%r323; add.u64 %r324,%r122,%r322; ld.u8 %r376,[%r324+1]; mov.u16 %r328,%r376; and.b16 %r327,%r328,3; cvt.u32.u16 %r331,%r327; cvt.s32.s8 %r330,%r331; cvt.u16.u32 %r329,%r330; setp.ne.u16 %r332,%r329,1; @ %r332 bra $L115; add.u32 %r134,%r134,32; $L115: .loc 1 266 15 add.u64 %r333,%r111,%r120; add.u64 %r334,%r159,%r333; ld.u8 %r135,[%r334+1]; cvt.u32.u32 %r336,%r135; cvt.u64.u8 %r335,%r336; add.u64 %r337,%r122,%r335; ld.u8 %r376,[%r337+1]; mov.u16 %r341,%r376; and.b16 %r340,%r341,3; cvt.u32.u16 %r344,%r340; cvt.s32.s8 %r343,%r344; cvt.u16.u32 %r342,%r343; setp.ne.u16 %r345,%r342,1; @ %r345 bra $L116; add.u32 %r135,%r135,32; $L116: .loc 1 265 29 setp.eq.u32 %r346,%r134,%r135; @ %r346 bra $L117; bra $L139; $L112: sub.u64 %r347,%r111,%r201; add.u64 %r38,%r347,1; .loc 1 273 8 add.u64 %r111,%r38,%r103; $L120: .loc 1 258 30 mov.u64 %r51,%r138; $L107: .loc 1 254 14 add.u64 %r138,%r49,%r111; sub.u64 %r352,%r138,%r51; add.u64 %r353,%r50,%r51; mov.u32 %r350,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r353; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r350; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r352; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r354,[%value_in]; } set.u32.ne.u64 %r356,%r138,0; neg.s32 %r357,%r356; .loc 1 254 13 set.u32.eq.u64 %r359,%r354,0; neg.s32 %r360,%r359; .loc 1 254 14 cvt.u16.u32 %r362,%r357; cvt.u16.u32 %r363,%r360; and.b16 %r361,%r362,%r363; cvt.u32.u16 %r364,%r361; cvt.u16.u8 %r365,%r364; setp.eq.u16 %r366,%r365,0; @ %r366 bra $L106; .loc 1 258 10 setp.le.u64 %r367,%r49,%r201; @ %r367 bra $L108; .loc 1 258 30 ld.global.u64 %r105,[__ctype_ptr__]; mov.u64 %r103,%r201; bra $L119; $L106: .loc 1 276 10 mov.u64 %r158,0; .loc 2 146 12 bra $L80; $L88: .loc 2 149 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r50; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r51; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r160; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r49; call (%value_in),two_way_long_needle,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r372,[%value_in]; } mov.u64 %r158,%r372; bra $L80; $L121: .loc 2 133 20 mov.u64 %r158,%r159; bra $L80; $L123: .loc 2 137 12 mov.u64 %r158,0; bra $L80; $L124: mov.u64 %r158,%r159; bra $L80; $L113: .loc 1 269 10 add.u64 %r158,%r50,%r111; bra $L80; $L139: .loc 1 270 10 ld.u64 %r374,[%frame]; add.u64 %r111,%r111,%r374; bra $L120; $L80: .loc 2 152 1 mov.u64 %value,%r158; st.shared.u64 [%sspslot],%sspprev; st.param.u64 [%value_out],%value; ret; } lib_a-strcat.o/ 1591654536 399 399 100644 2242 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 81 7 and.b64 %r40,%r38,7; .loc 1 81 6 setp.ne.u64 %r41,%r40,0; @ %r41 bra $L6; .loc 1 84 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 84 13 setp.eq.u64 %r46,%r45,0; @ %r46 bra $L7; mov.u64 %r30,%r38; bra $L2; $L6: mov.u64 %r30,%r38; $L2: .loc 1 90 9 ld.s8 %r48,[%r30]; cvt.u16.u32 %r47,%r48; setp.ne.u16 %r49,%r47,0; @ %r49 bra $L4; bra $L5; $L7: .loc 1 84 13 mov.u64 %r30,%r38; $L3: .loc 1 85 12 add.u64 %r30,%r30,8; .loc 1 84 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 84 13 setp.eq.u64 %r54,%r53,0; @ %r54 bra $L3; bra $L2; $L4: .loc 1 91 7 add.u64 %r30,%r30,1; .loc 1 90 9 ld.s8 %r56,[%r30]; cvt.u16.u32 %r55,%r56; setp.ne.u16 %r57,%r55,0; @ %r57 bra $L4; $L5: .loc 1 100 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 104 1 mov.u64 %value,%r38; st.param.u64 [%value_out],%value; ret; } lib_a-strchr.o/ 1591654536 399 399 100644 5732 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r32; .reg .u64 %r33; .reg .u64 %r38; .reg .u32 %r44; .reg .u32 %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r52; .reg .u32 %r53; .reg .u64 %r55; .reg .u64 %r56; .reg .u32 %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .u64 %r68; .reg .u64 %r69; .reg .u64 %r73; .reg .u64 %r74; .reg .u64 %r75; .reg .u32 %r76; .reg .u32 %r77; .reg .pred %r78; .reg .pred %r79; .reg .pred %r80; .reg .u16 %r81; .reg .u16 %r82; .reg .pred %r83; .reg .pred %r84; .reg .u16 %r85; .reg .pred %r86; .reg .u16 %r87; .reg .pred %r88; .reg .u64 %r89; .reg .pred %r90; .reg .u64 %r91; .reg .u64 %r92; .reg .u64 %r93; .reg .u64 %r94; .reg .pred %r95; .reg .u64 %r96; .reg .u64 %r97; .reg .u64 %r98; .reg .u64 %r99; .reg .pred %r100; .reg .u16 %r101; .reg .pred %r102; .reg .u16 %r103; .reg .pred %r104; .reg .pred %r105; .reg .u16 %r106; .reg .pred %r108; .reg .u64 %r109; .reg .pred %r110; .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 .u64 %r121; .reg .u64 %r122; .reg .u64 %r123; .reg .u64 %r124; .reg .u64 %r125; .reg .u64 %r126; .reg .u64 %r127; .reg .u64 %r128; .reg .pred %r129; .reg .pred %r130; .reg .u16 %r131; .reg .u16 %r132; .reg .pred %r133; .reg .pred %r134; .reg .u16 %r135; .reg .pred %r137; .reg .u16 %r139; .reg .u16 %r140; mov.u64 %r75,%ar0; mov.u32 %r76,%ar1; .loc 1 66 17 cvt.u32.u32 %r77,%r76; cvt.u32.u8 %r48,%r77; and.b64 %r73,%r75,7; .loc 1 73 6 setp.eq.u32 %r78,%r48,0; @ %r78 bra $L2; .loc 1 93 9 setp.eq.u64 %r79,%r73,0; @ %r79 bra $L3; .loc 1 95 12 ld.u8 %r65,[%r75]; .loc 1 95 10 setp.eq.u32 %r80,%r65,0; @ %r80 bra $L17; .loc 1 97 10 cvt.u16.u32 %r81,%r48; cvt.u16.u32 %r82,%r65; setp.eq.u16 %r83,%r81,%r82; @ %r83 bra $L18; cvt.u16.u32 %r140,%r48; bra $L5; $L2: .loc 1 75 13 setp.eq.u64 %r84,%r73,0; @ %r84 bra $L6; .loc 1 77 14 ld.u8 %r85,[%r75]; setp.eq.u16 %r86,%r85,0; @ ! %r86 bra $L7; bra $L19; $L8: ld.u8 %r87,[%r75]; setp.eq.u16 %r88,%r87,0; @ %r88 bra $L20; $L7: .loc 1 79 12 add.u64 %r75,%r75,1; .loc 1 75 14 and.b64 %r89,%r75,7; .loc 1 75 13 setp.ne.u64 %r90,%r89,0; @ %r90 bra $L8; $L6: .loc 1 83 15 ld.u64 %r52,[%r75]; add.u64 %r91,%r52,-72340172838076673; not.b64 %r92,%r52; and.b64 %r93,%r91,%r92; and.b64 %r94,%r93,-9187201950435737472; .loc 1 83 13 setp.ne.u64 %r95,%r94,0; @ %r95 bra $L9; $L10: .loc 1 84 21 add.u64 %r75,%r75,8; .loc 1 83 15 ld.u64 %r24,[%r75]; add.u64 %r96,%r24,-72340172838076673; not.b64 %r97,%r24; and.b64 %r98,%r96,%r97; and.b64 %r99,%r98,-9187201950435737472; .loc 1 83 13 setp.eq.u64 %r100,%r99,0; @ %r100 bra $L10; $L9: .loc 1 87 13 ld.u8 %r101,[%r75]; setp.eq.u16 %r102,%r101,0; @ %r102 bra $L21; $L11: .loc 1 88 10 add.u64 %r75,%r75,1; .loc 1 87 13 ld.u8 %r103,[%r75]; setp.ne.u16 %r104,%r103,0; @ %r104 bra $L11; .loc 1 88 10 mov.u64 %r74,%r75; bra $L1; $L12: .loc 1 95 12 ld.u8 %r30,[%r75]; .loc 1 95 10 setp.eq.u32 %r105,%r30,0; @ %r105 bra $L22; .loc 1 97 10 cvt.u16.u32 %r106,%r30; setp.eq.u16 %r108,%r106,%r140; @ %r108 bra $L23; $L5: .loc 1 99 8 add.u64 %r75,%r75,1; .loc 1 93 10 and.b64 %r109,%r75,7; .loc 1 93 9 setp.ne.u64 %r110,%r109,0; @ %r110 bra $L12; $L3: .loc 1 102 8 cvt.u64.u8 %r49,%r77; .loc 1 104 18 shl.b64 %r69,%r49,8; .loc 1 104 10 or.b64 %r68,%r49,%r69; .loc 1 104 18 shl.b64 %r67,%r68,16; .loc 1 104 10 or.b64 %r66,%r67,%r68; .loc 1 104 18 shl.b64 %r32,%r66,32; .loc 1 104 10 or.b64 %r50,%r32,%r66; .loc 1 107 11 ld.u64 %r56,[%r75]; .loc 1 107 42 xor.b64 %r55,%r50,%r56; .loc 1 107 11 not.b64 %r112,%r56; add.u64 %r113,%r56,-72340172838076673; and.b64 %r114,%r112,%r113; .loc 1 107 42 not.b64 %r115,%r55; add.u64 %r116,%r55,-72340172838076673; and.b64 %r117,%r115,%r116; .loc 1 107 38 or.b64 %r118,%r114,%r117; and.b64 %r119,%r118,-9187201950435737472; setp.ne.u64 %r120,%r119,0; @ %r120 bra $L13; $L14: .loc 1 108 17 add.u64 %r75,%r75,8; .loc 1 107 11 ld.u64 %r33,[%r75]; .loc 1 107 42 xor.b64 %r38,%r33,%r50; .loc 1 107 11 add.u64 %r121,%r33,-72340172838076673; not.b64 %r122,%r33; and.b64 %r123,%r121,%r122; .loc 1 107 42 add.u64 %r124,%r38,-72340172838076673; not.b64 %r125,%r38; and.b64 %r126,%r124,%r125; .loc 1 107 38 or.b64 %r127,%r123,%r126; and.b64 %r128,%r127,-9187201950435737472; setp.eq.u64 %r129,%r128,0; @ %r129 bra $L14; $L13: .loc 1 118 10 ld.u8 %r53,[%r75]; .loc 1 118 9 setp.eq.u32 %r130,%r53,0; @ %r130 bra $L24; .loc 1 118 13 cvt.u16.u32 %r131,%r48; cvt.u16.u32 %r132,%r53; setp.eq.u16 %r133,%r131,%r132; @ %r133 bra $L15; cvt.u16.u32 %r139,%r48; $L16: .loc 1 119 6 add.u64 %r75,%r75,1; .loc 1 118 10 ld.u8 %r44,[%r75]; .loc 1 118 9 setp.eq.u32 %r134,%r44,0; @ %r134 bra $L25; .loc 1 118 13 cvt.u16.u32 %r135,%r44; setp.ne.u16 %r137,%r135,%r139; @ %r137 bra $L16; $L15: .loc 1 121 12 mov.u64 %r74,%r75; bra $L1; $L17: .loc 1 96 16 mov.u64 %r74,0; bra $L1; $L18: .loc 1 97 10 mov.u64 %r74,%r75; bra $L1; $L19: .loc 1 77 14 mov.u64 %r74,%r75; bra $L1; $L20: .loc 1 79 12 mov.u64 %r74,%r75; bra $L1; $L21: .loc 1 87 13 mov.u64 %r74,%r75; bra $L1; $L22: .loc 1 96 16 mov.u64 %r74,0; bra $L1; $L23: .loc 1 99 8 mov.u64 %r74,%r75; bra $L1; $L24: .loc 1 96 16 mov.u64 %r74,0; bra $L1; $L25: mov.u64 %r74,0; $L1: .loc 1 123 1 mov.u64 %value,%r74; st.param.u64 [%value_out],%value; ret; } /618 1591654536 399 399 100644 1462 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strchrnul .visible .func (.param .u64 %value_out) strchrnul (.param .u64 %in_ar0, .param .u32 %in_ar1); .file 1 "../../../../../../newlib/libc/string/strchrnul.c" // 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 DEF: strchrnul .visible .func (.param .u64 %value_out) strchrnul (.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 .u64 %r28; .reg .pred %r29; .reg .u64 %r31; mov.u64 %r24,%ar0; mov.u32 %r25,%ar1; .loc 1 44 13 { .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 %r28,[%value_in]; } mov.u64 %r23,%r28; .loc 1 46 16 setp.ne.u64 %r29,%r23,0; @ %r29 bra $L1; .loc 1 46 31 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r24; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r31,[%value_in]; } .loc 1 46 16 add.u64 %r23,%r24,%r31; $L1: .loc 1 47 1 mov.u64 %value,%r23; st.param.u64 [%value_out],%value; ret; } lib_a-strcmp.o/ 1591654536 399 399 100644 2867 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r30; .reg .u32 %r32; .reg .u32 %r37; .reg .u32 %r41; .reg .u64 %r43; .reg .u32 %r47; .reg .u64 %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .pred %r52; .reg .u64 %r53; .reg .pred %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .u64 %r58; .reg .pred %r59; .reg .pred %r60; .reg .u16 %r61; .reg .u32 %r62; .reg .u16 %r63; .reg .pred %r64; .reg .u32 %r65; .reg .u64 %r66; .reg .u64 %r67; .reg .u64 %r68; .reg .u64 %r69; .reg .pred %r70; .reg .u64 %r71; .reg .pred %r72; .reg .pred %r73; .reg .u16 %r74; .reg .u32 %r75; .reg .u16 %r76; .reg .pred %r77; .reg .u32 %r78; .reg .u32 %r79; mov.u64 %r48,%ar0; mov.u64 %r49,%ar1; .loc 1 78 8 or.b64 %r50,%r48,%r49; and.b64 %r51,%r50,7; .loc 1 78 6 setp.ne.u64 %r52,%r51,0; @ %r52 bra $L2; .loc 1 83 14 ld.u64 %r43,[%r48]; .loc 1 83 13 ld.u64 %r53,[%r49]; setp.ne.u64 %r54,%r53,%r43; @ %r54 bra $L2; .loc 1 87 15 add.u64 %r55,%r53,-72340172838076673; not.b64 %r56,%r53; and.b64 %r57,%r55,%r56; and.b64 %r58,%r57,-9187201950435737472; .loc 1 87 14 setp.ne.u64 %r59,%r58,0; @ ! %r59 bra $L4; bra $L8; $L2: .loc 1 99 10 ld.s8 %r41,[%r48]; .loc 1 99 9 setp.eq.u32 %r60,%r41,0; @ %r60 bra $L9; .loc 1 99 22 ld.s8 %r62,[%r49]; cvt.u16.u32 %r61,%r62; cvt.u16.u32 %r63,%r41; setp.eq.u16 %r64,%r61,%r63; @ %r64 bra $L6; cvt.u32.u32 %r65,%r41; cvt.u32.u8 %r37,%r65; bra $L5; $L7: .loc 1 87 15 add.u64 %r66,%r30,-72340172838076673; not.b64 %r67,%r30; and.b64 %r68,%r66,%r67; and.b64 %r69,%r68,-9187201950435737472; .loc 1 87 14 setp.ne.u64 %r70,%r69,0; @ %r70 bra $L10; $L4: .loc 1 90 13 add.u64 %r48,%r48,8; .loc 1 91 13 add.u64 %r49,%r49,8; .loc 1 83 14 ld.u64 %r30,[%r48]; .loc 1 83 13 ld.u64 %r71,[%r49]; setp.eq.u64 %r72,%r30,%r71; @ %r72 bra $L7; bra $L2; $L6: .loc 1 101 9 add.u64 %r48,%r48,1; .loc 1 102 9 add.u64 %r49,%r49,1; .loc 1 99 10 ld.s8 %r32,[%r48]; .loc 1 99 9 setp.eq.u32 %r73,%r32,0; @ %r73 bra $L11; .loc 1 99 22 ld.s8 %r75,[%r49]; cvt.u16.u32 %r74,%r75; cvt.u16.u32 %r76,%r32; setp.eq.u16 %r77,%r74,%r76; @ %r77 bra $L6; cvt.u32.u32 %r78,%r32; cvt.u32.u8 %r37,%r78; bra $L5; $L9: .loc 1 99 9 mov.u32 %r37,%r41; bra $L5; $L11: mov.u32 %r37,%r32; $L5: .loc 1 104 37 ld.u8 %r79,[%r49]; .loc 1 104 34 sub.u32 %r47,%r37,%r79; bra $L1; $L8: .loc 1 88 13 cvt.u32.u64 %r47,%r51; bra $L1; $L10: mov.u32 %r47,0; $L1: .loc 1 106 1 mov.u32 %value,%r47; st.param.u32 [%value_out],%value; ret; } lib_a-strcoll.o/1591654536 399 399 100644 1019 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 47 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 48 1 mov.u32 %value,%r27; st.param.u32 [%value_out],%value; ret; } lib_a-strcpy.o/ 1591654536 399 399 100644 1957 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r25; .reg .u32 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r42; .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 79 8 mov.u64 %r42,%r46; or.b64 %r48,%r47,%r46; and.b64 %r49,%r48,7; .loc 1 79 6 setp.eq.u64 %r50,%r49,0; @ %r50 bra $L2; .loc 1 73 9 mov.u64 %r34,%r46; bra $L4; $L6: mov.u64 %r34,%r46; $L4: mov.u64 %r33,%r34; mov.u64 %r32,%r47; bra $L3; $L2: .loc 1 86 15 ld.u64 %r25,[%r47]; add.u64 %r51,%r25,-72340172838076673; not.b64 %r52,%r25; and.b64 %r53,%r51,%r52; and.b64 %r54,%r53,-9187201950435737472; .loc 1 86 13 setp.ne.u64 %r55,%r54,0; @ %r55 bra $L6; $L5: .loc 1 88 40 add.u64 %r47,%r47,8; add.u64 %r34,%r42,8; .loc 1 88 26 st.u64 [%r42],%r25; .loc 1 86 15 ld.u64 %r25,[%r47]; mov.u64 %r42,%r34; add.u64 %r56,%r25,-72340172838076673; not.b64 %r57,%r25; and.b64 %r58,%r56,%r57; and.b64 %r59,%r58,-9187201950435737472; .loc 1 86 13 setp.eq.u64 %r60,%r59,0; @ %r60 bra $L5; bra $L4; $L3: .loc 1 95 20 ld.s8 %r31,[%r32]; .loc 1 95 18 cvt.u32.u32 %r61,%r31; st.u8 [%r33],%r61; add.u64 %r33,%r33,1; add.u64 %r32,%r32,1; .loc 1 95 9 setp.ne.u32 %r62,%r31,0; @ %r62 bra $L3; .loc 1 99 1 mov.u64 %value,%r46; st.param.u64 [%value_out],%value; ret; } lib_a-strcspn.o/1591654536 399 399 100644 1744 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r27; .reg .u64 %r28; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .pred %r33; .reg .u16 %r34; .reg .pred %r36; .reg .pred %r37; .reg .u16 %r40; .reg .pred %r41; .reg .pred %r43; .reg .pred %r44; .reg .u16 %r45; .reg .u16 %r46; mov.u64 %r31,%ar0; mov.u64 %r32,%ar1; .loc 1 41 10 ld.s8 %r25,[%r31]; .loc 1 41 9 setp.ne.u32 %r33,%r25,0; @ %r33 bra $L2; mov.u64 %r30,0; bra $L1; $L5: .loc 1 45 7 cvt.u16.u32 %r34,%r24; setp.ne.u16 %r36,%r34,%r45; @ %r36 bra $L4; sub.u64 %r30,%r28,%r31; bra $L1; $L8: mov.u64 %r27,%r32; cvt.u16.u32 %r45,%r25; $L4: .loc 1 43 25 add.u64 %r27,%r27,1; .loc 1 43 20 ld.s8 %r24,[%r27]; .loc 1 43 7 setp.ne.u32 %r37,%r24,0; @ %r37 bra $L5; bra $L6; $L2: .loc 1 43 20 ld.s8 %r22,[%r32]; mov.u64 %r28,%r31; setp.eq.u32 %r44,%r22,0; .loc 1 45 7 cvt.u16.u32 %r46,%r22; $L7: .loc 1 43 7 @ %r44 bra $L6; .loc 1 45 7 cvt.u16.u32 %r40,%r25; setp.ne.u16 %r41,%r46,%r40; @ %r41 bra $L8; sub.u64 %r30,%r28,%r31; .loc 1 53 13 bra $L1; $L6: .loc 1 50 9 add.u64 %r28,%r28,1; .loc 1 41 10 ld.s8 %r25,[%r28]; .loc 1 41 9 setp.ne.u32 %r43,%r25,0; @ %r43 bra $L7; sub.u64 %r30,%r28,%r31; $L1: .loc 1 54 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } lib_a-strdup.o/ 1591654536 399 399 100644 1035 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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; } /637 1591654536 399 399 100644 1901 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 10 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 10 10 add.u64 %r23,%r28,1; .loc 1 11 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 12 6 setp.eq.u64 %r32,%r31,0; @ %r32 bra $L1; .loc 1 14 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 17 1 mov.u64 %value,%r31; st.param.u64 [%value_out],%value; ret; } /655 1591654536 399 399 100644 22316 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 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: $LC10 .const .align 1 .u8 $LC10[12] = {78,111,32,99,104,105,108,100,114,101,110,0 }; // BEGIN VAR DEF: $LC11 .const .align 1 .u8 $LC11[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: $LC12 .const .align 1 .u8 $LC12[18] = {78,111,32,109,111,114,101,32,112,114,111,99,101,115,115,101,115,0 }; // BEGIN VAR DEF: $LC13 .const .align 1 .u8 $LC13[17] = {78,111,116,32,101,110,111,117,103,104,32,115,112,97,99,101,0 }; // BEGIN VAR DEF: $LC14 .const .align 1 .u8 $LC14[18] = {80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100,0 }; // BEGIN VAR DEF: $LC15 .const .align 1 .u8 $LC15[12] = {66,97,100,32,97,100,100,114,101,115,115,0 }; // BEGIN VAR DEF: $LC16 .const .align 1 .u8 $LC16[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: $LC17 .const .align 1 .u8 $LC17[12] = {70,105,108,101,32,101,120,105,115,116,115,0 }; // BEGIN VAR DEF: $LC18 .const .align 1 .u8 $LC18[18] = {67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0 }; // BEGIN VAR DEF: $LC19 .const .align 1 .u8 $LC19[15] = {78,111,32,115,117,99,104,32,100,101,118,105,99,101,0 }; // BEGIN VAR DEF: $LC20 .const .align 1 .u8 $LC20[16] = {78,111,116,32,97,32,100,105,114,101,99,116,111,114,121,0 }; // BEGIN VAR DEF: $LC21 .const .align 1 .u8 $LC21[13] = {72,111,115,116,32,105,115,32,100,111,119,110,0 }; // BEGIN VAR DEF: $LC22 .const .align 1 .u8 $LC22[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: $LC23 .const .align 1 .u8 $LC23[15] = {73,115,32,97,32,100,105,114,101,99,116,111,114,121,0 }; // BEGIN VAR DEF: $LC24 .const .align 1 .u8 $LC24[17] = {73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0 }; // BEGIN VAR DEF: $LC25 .const .align 1 .u8 $LC25[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: $LC26 .const .align 1 .u8 $LC26[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: $LC27 .const .align 1 .u8 $LC27[20] = {84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,0 }; // BEGIN VAR DEF: $LC28 .const .align 1 .u8 $LC28[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: $LC29 .const .align 1 .u8 $LC29[15] = {84,101,120,116,32,102,105,108,101,32,98,117,115,121,0 }; // BEGIN VAR DEF: $LC30 .const .align 1 .u8 $LC30[15] = {70,105,108,101,32,116,111,111,32,108,97,114,103,101,0 }; // BEGIN VAR DEF: $LC31 .const .align 1 .u8 $LC31[20] = {72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0 }; // BEGIN VAR DEF: $LC32 .const .align 1 .u8 $LC32[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: $LC33 .const .align 1 .u8 $LC33[14] = {78,111,116,32,115,117,112,112,111,114,116,101,100,0 }; // BEGIN VAR DEF: $LC34 .const .align 1 .u8 $LC34[13] = {73,108,108,101,103,97,108,32,115,101,101,107,0 }; // BEGIN VAR DEF: $LC35 .const .align 1 .u8 $LC35[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: $LC36 .const .align 1 .u8 $LC36[15] = {84,111,111,32,109,97,110,121,32,108,105,110,107,115,0 }; // BEGIN VAR DEF: $LC37 .const .align 1 .u8 $LC37[12] = {66,114,111,107,101,110,32,112,105,112,101,0 }; // BEGIN VAR DEF: $LC38 .const .align 1 .u8 $LC38[14] = {77,97,116,104,32,97,114,103,117,109,101,110,116,0 }; // BEGIN VAR DEF: $LC39 .const .align 1 .u8 $LC39[17] = {82,101,115,117,108,116,32,116,111,111,32,108,97,114,103,101,0 }; // BEGIN VAR DEF: $LC40 .const .align 1 .u8 $LC40[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: $LC41 .const .align 1 .u8 $LC41[19] = {73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0 }; // BEGIN VAR DEF: $LC42 .const .align 1 .u8 $LC42[9] = {68,101,97,100,108,111,99,107,0 }; // BEGIN VAR DEF: $LC43 .const .align 1 .u8 $LC43[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: $LC44 .const .align 1 .u8 $LC44[8] = {78,111,32,108,111,99,107,0 }; // BEGIN VAR DEF: $LC45 .const .align 1 .u8 $LC45[13] = {78,111,116,32,97,32,115,116,114,101,97,109,0 }; // BEGIN VAR DEF: $LC46 .const .align 1 .u8 $LC46[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: $LC47 .const .align 1 .u8 $LC47[20] = {78,111,32,115,116,114,101,97,109,32,114,101,115,111,117,114,99,101,115,0 }; // BEGIN VAR DEF: $LC48 .const .align 1 .u8 $LC48[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: $LC49 .const .align 1 .u8 $LC49[15] = {80,114,111,116,111,99,111,108,32,101,114,114,111,114,0 }; // BEGIN VAR DEF: $LC50 .const .align 1 .u8 $LC50[17] = {85,110,107,110,111,119,110,32,112,114,111,116,111,99,111,108,0 }; // BEGIN VAR DEF: $LC51 .const .align 1 .u8 $LC51[19] = {77,117,108,116,105,104,111,112,32,97,116,116,101,109,112,116,101,100,0 }; // BEGIN VAR DEF: $LC52 .const .align 1 .u8 $LC52[12] = {66,97,100,32,109,101,115,115,97,103,101,0 }; // BEGIN VAR DEF: $LC53 .const .align 1 .u8 $LC53[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: $LC54 .const .align 1 .u8 $LC54[20] = {68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0 }; // BEGIN VAR DEF: $LC55 .const .align 1 .u8 $LC55[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: $LC56 .const .align 1 .u8 $LC56[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 }; // BEGIN VAR DEF: $LC57 .const .align 1 .u8 $LC57[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: $LC58 .const .align 1 .u8 $LC58[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: $LC59 .const .align 1 .u8 $LC59[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 }; // END PREAMBLE // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[10] = {78,111,116,32,111,119,110,101,114,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[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: $LC2 .const .align 1 .u8 $LC2[16] = {78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0 }; // BEGIN VAR DEF: $LC3 .const .align 1 .u8 $LC3[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: $LC4 .const .align 1 .u8 $LC4[10] = {73,47,79,32,101,114,114,111,114,0 }; // BEGIN VAR DEF: $LC5 .const .align 1 .u8 $LC5[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: $LC6 .const .align 1 .u8 $LC6[18] = {65,114,103,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0 }; // BEGIN VAR DEF: $LC7 .const .align 1 .u8 $LC7[18] = {69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0 }; // BEGIN VAR DEF: $LC8 .const .align 1 .u8 $LC8[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: $LC9 .const .align 1 .u8 $LC9[16] = {66,97,100,32,102,105,108,101,32,110,117,109,98,101,114,0 }; // BEGIN VAR DEF: $LC60 .const .align 1 .u8 $LC60[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: $LC61 .const .align 1 .u8 $LC61[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: $LC62 .const .align 1 .u8 $LC62[19] = {67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0 }; // BEGIN VAR DEF: $LC63 .const .align 1 .u8 $LC63[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: $LC64 .const .align 1 .u8 $LC64[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: $LC65 .const .align 1 .u8 $LC65[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: $LC66 .const .align 1 .u8 $LC66[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: $LC67 .const .align 1 .u8 $LC67[19] = {79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0 }; // BEGIN VAR DEF: $LC68 .const .align 1 .u8 $LC68[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: $LC69 .const .align 1 .u8 $LC69[20] = {80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0 }; // BEGIN VAR DEF: $LC70 .const .align 1 .u8 $LC70[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: $LC71 .const .align 1 .u8 $LC71[17] = {77,101,115,115,97,103,101,32,116,111,111,32,108,111,110,103,0 }; // BEGIN VAR DEF: $LC72 .const .align 1 .u8 $LC72[21] = {67,111,110,110,101,99,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0 }; // BEGIN VAR DEF: $LC73 .const .align 1 .u8 $LC73[8] = {83,117,99,99,101,115,115,0 }; // BEGIN VAR DEF: $LC74 .const .align 1 .u8 $LC74[1] = {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 .u64 %r120; .reg .pred %r121; mov.u64 %r23,%ar0; mov.u32 %r24,%ar1; mov.u32 %r25,%ar2; mov.u64 %r26,%ar3; setp.eq.u32 %r27,%r24,45; @ %r27 bra $L23; setp.gt.s32 %r28,%r24,45; @ %r28 bra $L3; setp.eq.u32 %r29,%r24,18; @ %r29 bra $L24; setp.gt.s32 %r30,%r24,18; @ %r30 bra $L4; setp.eq.u32 %r31,%r24,8; @ %r31 bra $L25; setp.gt.s32 %r32,%r24,8; @ %r32 bra $L5; setp.eq.u32 %r33,%r24,3; @ %r33 bra $L26; setp.gt.s32 %r34,%r24,3; @ %r34 bra $L6; setp.eq.u32 %r35,%r24,1; @ %r35 bra $L27; setp.gt.s32 %r36,%r24,1; @ %r36 bra $L28; setp.eq.u32 %r37,%r24,0; @ %r37 bra $L29; bra $L7; $L6: setp.eq.u32 %r38,%r24,5; @ %r38 bra $L30; setp.lt.s32 %r39,%r24,5; @ %r39 bra $L31; setp.eq.u32 %r40,%r24,6; @ %r40 bra $L32; setp.eq.u32 %r41,%r24,7; @ %r41 bra $L33; bra $L7; $L5: setp.eq.u32 %r42,%r24,12; @ %r42 bra $L34; setp.gt.s32 %r43,%r24,12; @ %r43 bra $L8; setp.eq.u32 %r44,%r24,10; @ %r44 bra $L35; setp.gt.s32 %r45,%r24,10; @ %r45 bra $L36; .loc 1 419 13 cvta.const.u64 %r22,$LC9; bra $L1; $L8: setp.eq.u32 %r46,%r24,14; @ %r46 bra $L37; setp.lt.s32 %r47,%r24,14; @ %r47 bra $L38; setp.eq.u32 %r48,%r24,16; @ %r48 bra $L39; setp.eq.u32 %r49,%r24,17; @ %r49 bra $L40; bra $L7; $L4: setp.eq.u32 %r50,%r24,27; @ %r50 bra $L41; setp.gt.s32 %r51,%r24,27; @ %r51 bra $L9; setp.eq.u32 %r52,%r24,22; @ %r52 bra $L42; setp.gt.s32 %r53,%r24,22; @ %r53 bra $L10; setp.eq.u32 %r54,%r24,20; @ %r54 bra $L43; setp.gt.s32 %r55,%r24,20; @ %r55 bra $L44; .loc 1 474 13 cvta.const.u64 %r22,$LC19; bra $L1; $L10: setp.eq.u32 %r56,%r24,24; @ %r56 bra $L45; setp.lt.s32 %r57,%r24,24; @ %r57 bra $L46; setp.eq.u32 %r58,%r24,25; @ %r58 bra $L47; setp.eq.u32 %r59,%r24,26; @ %r59 bra $L48; bra $L7; $L9: setp.eq.u32 %r60,%r24,32; @ %r60 bra $L49; setp.gt.s32 %r61,%r24,32; @ %r61 bra $L11; setp.eq.u32 %r62,%r24,29; @ %r62 bra $L50; setp.lt.s32 %r63,%r24,29; @ %r63 bra $L51; setp.eq.u32 %r64,%r24,30; @ %r64 bra $L52; setp.eq.u32 %r65,%r24,31; @ %r65 bra $L53; bra $L7; $L11: setp.eq.u32 %r66,%r24,34; @ %r66 bra $L54; setp.lt.s32 %r67,%r24,34; @ %r67 bra $L55; setp.eq.u32 %r68,%r24,35; @ %r68 bra $L56; setp.eq.u32 %r69,%r24,36; @ %r69 bra $L57; bra $L7; $L3: setp.eq.u32 %r70,%r24,111; @ %r70 bra $L58; setp.gt.s32 %r71,%r24,111; @ %r71 bra $L12; setp.eq.u32 %r72,%r24,88; @ %r72 bra $L59; setp.gt.s32 %r73,%r24,88; @ %r73 bra $L13; setp.eq.u32 %r74,%r24,63; @ %r74 bra $L60; setp.gt.s32 %r75,%r24,63; @ %r75 bra $L14; setp.eq.u32 %r76,%r24,60; @ %r76 bra $L61; setp.eq.u32 %r77,%r24,62; @ %r77 bra $L62; setp.eq.u32 %r78,%r24,46; @ ! %r78 bra $L7; bra $L63; $L14: setp.eq.u32 %r79,%r24,71; @ %r79 bra $L64; setp.gt.s32 %r80,%r24,71; @ %r80 bra $L15; setp.eq.u32 %r81,%r24,67; @ %r81 bra $L65; bra $L7; $L15: setp.eq.u32 %r82,%r24,74; @ %r82 bra $L66; setp.eq.u32 %r83,%r24,77; @ %r83 bra $L67; bra $L7; $L13: setp.eq.u32 %r84,%r24,105; @ %r84 bra $L68; setp.gt.s32 %r85,%r24,105; @ %r85 bra $L16; setp.eq.u32 %r86,%r24,91; @ %r86 bra $L69; setp.gt.s32 %r87,%r24,91; @ %r87 bra $L17; setp.eq.u32 %r88,%r24,90; @ %r88 bra $L70; bra $L7; $L17: setp.eq.u32 %r89,%r24,92; @ %r89 bra $L71; setp.eq.u32 %r90,%r24,95; @ %r90 bra $L72; bra $L7; $L16: setp.eq.u32 %r91,%r24,107; @ %r91 bra $L73; setp.lt.s32 %r92,%r24,107; @ %r92 bra $L74; setp.eq.u32 %r93,%r24,108; @ %r93 bra $L75; setp.eq.u32 %r94,%r24,109; @ %r94 bra $L76; bra $L7; $L12: setp.eq.u32 %r95,%r24,120; @ %r95 bra $L77; setp.gt.s32 %r96,%r24,120; @ %r96 bra $L18; setp.eq.u32 %r97,%r24,115; @ %r97 bra $L78; setp.gt.s32 %r98,%r24,115; @ %r98 bra $L19; setp.eq.u32 %r99,%r24,113; @ %r99 bra $L79; setp.gt.s32 %r100,%r24,113; @ %r100 bra $L80; .loc 1 759 13 cvta.const.u64 %r22,$LC63; bra $L1; $L19: setp.eq.u32 %r101,%r24,117; @ %r101 bra $L81; setp.lt.s32 %r102,%r24,117; @ %r102 bra $L82; setp.eq.u32 %r103,%r24,118; @ %r103 bra $L83; setp.eq.u32 %r104,%r24,119; @ %r104 bra $L84; bra $L7; $L18: setp.eq.u32 %r105,%r24,128; @ %r105 bra $L85; setp.gt.s32 %r106,%r24,128; @ %r106 bra $L20; setp.eq.u32 %r107,%r24,122; @ %r107 bra $L86; setp.lt.s32 %r108,%r24,122; @ %r108 bra $L87; setp.eq.u32 %r109,%r24,123; @ %r109 bra $L88; setp.eq.u32 %r110,%r24,127; @ %r110 bra $L89; bra $L7; $L20: setp.eq.u32 %r111,%r24,140; @ %r111 bra $L90; setp.gt.s32 %r112,%r24,140; @ %r112 bra $L21; setp.eq.u32 %r113,%r24,134; @ %r113 bra $L91; bra $L7; $L21: setp.eq.u32 %r114,%r24,141; @ %r114 bra $L92; setp.eq.u32 %r115,%r24,142; @ %r115 bra $L93; $L7: .loc 1 823 10 setp.ne.u64 %r116,%r26,0; .loc 1 824 16 selp.u64 %r26,%r26,%r23,%r116; .loc 1 825 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 %r120,[%value_in]; } mov.u64 %r22,%r120; .loc 1 825 10 setp.ne.u64 %r121,%r22,0; @ %r121 bra $L1; .loc 1 826 15 cvta.const.u64 %r22,$LC74; bra $L1; $L23: .loc 1 589 13 cvta.const.u64 %r22,$LC42; bra $L1; $L24: .loc 1 469 13 cvta.const.u64 %r22,$LC18; bra $L1; $L25: .loc 1 409 13 cvta.const.u64 %r22,$LC7; bra $L1; $L26: .loc 1 383 13 cvta.const.u64 %r22,$LC2; bra $L1; $L27: .loc 1 373 13 cvta.const.u64 %r22,$LC0; bra $L1; $L28: .loc 1 378 13 cvta.const.u64 %r22,$LC1; bra $L1; $L29: .loc 1 368 13 cvta.const.u64 %r22,$LC73; bra $L1; $L30: .loc 1 393 13 cvta.const.u64 %r22,$LC4; bra $L1; $L31: .loc 1 388 13 cvta.const.u64 %r22,$LC3; bra $L1; $L32: .loc 1 399 13 cvta.const.u64 %r22,$LC5; bra $L1; $L33: .loc 1 404 13 cvta.const.u64 %r22,$LC6; bra $L1; $L34: .loc 1 439 13 cvta.const.u64 %r22,$LC13; bra $L1; $L35: .loc 1 424 13 cvta.const.u64 %r22,$LC10; bra $L1; $L36: .loc 1 434 13 cvta.const.u64 %r22,$LC12; bra $L1; $L37: .loc 1 449 13 cvta.const.u64 %r22,$LC15; bra $L1; $L38: .loc 1 444 13 cvta.const.u64 %r22,$LC14; bra $L1; $L39: .loc 1 459 13 cvta.const.u64 %r22,$LC16; bra $L1; $L40: .loc 1 464 13 cvta.const.u64 %r22,$LC17; bra $L1; $L41: .loc 1 529 13 cvta.const.u64 %r22,$LC30; bra $L1; $L42: .loc 1 499 13 cvta.const.u64 %r22,$LC24; bra $L1; $L43: .loc 1 479 13 cvta.const.u64 %r22,$LC20; bra $L1; $L44: .loc 1 494 13 cvta.const.u64 %r22,$LC23; bra $L1; $L45: .loc 1 514 13 cvta.const.u64 %r22,$LC27; bra $L1; $L46: .loc 1 509 13 cvta.const.u64 %r22,$LC26; bra $L1; $L47: .loc 1 519 13 cvta.const.u64 %r22,$LC28; bra $L1; $L48: .loc 1 524 13 cvta.const.u64 %r22,$LC29; bra $L1; $L49: .loc 1 564 13 cvta.const.u64 %r22,$LC37; bra $L1; $L50: .loc 1 549 13 cvta.const.u64 %r22,$LC34; bra $L1; $L51: .loc 1 539 13 cvta.const.u64 %r22,$LC32; bra $L1; $L52: .loc 1 554 13 cvta.const.u64 %r22,$LC35; bra $L1; $L53: .loc 1 559 13 cvta.const.u64 %r22,$LC36; bra $L1; $L54: .loc 1 574 13 cvta.const.u64 %r22,$LC39; bra $L1; $L55: .loc 1 569 13 cvta.const.u64 %r22,$LC38; bra $L1; $L56: .loc 1 579 13 cvta.const.u64 %r22,$LC40; bra $L1; $L57: .loc 1 584 13 cvta.const.u64 %r22,$LC41; bra $L1; $L58: .loc 1 754 13 cvta.const.u64 %r22,$LC62; bra $L1; $L59: .loc 1 699 13 cvta.const.u64 %r22,$LC53; bra $L1; $L60: .loc 1 614 13 cvta.const.u64 %r22,$LC47; bra $L1; $L61: .loc 1 604 13 cvta.const.u64 %r22,$LC45; bra $L1; $L62: .loc 1 609 13 cvta.const.u64 %r22,$LC46; bra $L1; $L63: .loc 1 599 13 cvta.const.u64 %r22,$LC44; bra $L1; $L64: .loc 1 654 13 cvta.const.u64 %r22,$LC49; bra $L1; $L65: .loc 1 634 13 cvta.const.u64 %r22,$LC48; bra $L1; $L66: .loc 1 664 13 cvta.const.u64 %r22,$LC51; bra $L1; $L67: .loc 1 669 13 cvta.const.u64 %r22,$LC52; bra $L1; $L68: .loc 1 724 13 cvta.const.u64 %r22,$LC57; bra $L1; $L69: .loc 1 714 13 cvta.const.u64 %r22,$LC55; bra $L1; $L70: .loc 1 709 13 cvta.const.u64 %r22,$LC54; bra $L1; $L71: .loc 1 719 13 cvta.const.u64 %r22,$LC56; bra $L1; $L72: .loc 1 809 15 cvta.const.u64 %r22,$LC70; bra $L1; $L73: .loc 1 734 13 cvta.const.u64 %r22,$LC59; bra $L1; $L74: .loc 1 729 13 cvta.const.u64 %r22,$LC58; bra $L1; $L75: .loc 1 739 13 cvta.const.u64 %r22,$LC60; bra $L1; $L76: .loc 1 744 13 cvta.const.u64 %r22,$LC61; bra $L1; $L77: .loc 1 414 13 cvta.const.u64 %r22,$LC8; bra $L1; $L78: .loc 1 504 13 cvta.const.u64 %r22,$LC25; bra $L1; $L79: .loc 1 764 13 cvta.const.u64 %r22,$LC64; bra $L1; $L80: .loc 1 594 13 cvta.const.u64 %r22,$LC43; bra $L1; $L81: .loc 1 484 13 cvta.const.u64 %r22,$LC21; bra $L1; $L82: .loc 1 819 15 cvta.const.u64 %r22,$LC72; bra $L1; $L83: .loc 1 534 13 cvta.const.u64 %r22,$LC31; bra $L1; $L84: .loc 1 489 13 cvta.const.u64 %r22,$LC22; bra $L1; $L85: .loc 1 774 15 cvta.const.u64 %r22,$LC65; bra $L1; $L86: .loc 1 814 15 cvta.const.u64 %r22,$LC71; bra $L1; $L87: .loc 1 429 13 cvta.const.u64 %r22,$LC11; bra $L1; $L88: .loc 1 659 13 cvta.const.u64 %r22,$LC50; bra $L1; $L89: .loc 1 784 15 cvta.const.u64 %r22,$LC66; bra $L1; $L90: .loc 1 789 15 cvta.const.u64 %r22,$LC67; bra $L1; $L91: .loc 1 544 13 cvta.const.u64 %r22,$LC33; bra $L1; $L92: .loc 1 794 15 cvta.const.u64 %r22,$LC68; bra $L1; $L93: .loc 1 799 15 cvta.const.u64 %r22,$LC69; $L1: .loc 1 831 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 837 10 ld.global.u64 %r29,[_impure_ptr]; mov.u64 %r28,0; cvt.u32.u64 %r27,%r28; { .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 838 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } /673 1591654536 399 399 100644 2325 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 80 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 82 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 82 6 setp.ge.u64 %r36,%r35,%r27; @ %r36 bra $L1; .loc 1 84 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 85 1 mov.u64 %value,%r24; st.param.u64 [%value_out],%value; ret; } lib_a-strlcat.o/1591654536 399 399 100644 2643 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .pred %r37; .reg .u16 %r38; .reg .u32 %r39; .reg .pred %r40; .reg .pred %r41; .reg .u16 %r42; .reg .u32 %r43; .reg .pred %r44; .reg .pred %r45; .reg .pred %r46; .reg .u64 %r48; .reg .pred %r49; .reg .u32 %r50; .reg .pred %r51; .reg .u64 %r52; .reg .u32 %r53; mov.u64 %r34,%ar0; mov.u64 %r35,%ar1; mov.u64 %r36,%ar2; .loc 1 56 15 setp.eq.u64 %r37,%r36,0; @ %r37 bra $L10; .loc 1 56 25 ld.s8 %r39,[%r34]; cvt.u16.u32 %r38,%r39; setp.eq.u16 %r40,%r38,0; @ %r40 bra $L11; add.u64 %r26,%r34,%r36; mov.u64 %r27,%r34; $L5: .loc 1 57 18 add.u64 %r27,%r27,1; .loc 1 56 15 setp.eq.u64 %r41,%r27,%r26; @ %r41 bra $L4; .loc 1 56 25 ld.s8 %r43,[%r27]; cvt.u16.u32 %r42,%r43; setp.ne.u16 %r44,%r42,0; @ %r44 bra $L5; mov.u64 %r26,%r27; $L4: .loc 1 58 18 sub.u64 %r33,%r26,%r34; .loc 1 59 11 sub.u64 %r36,%r36,%r33; .loc 1 61 12 setp.eq.u64 %r45,%r36,0; @ ! %r45 bra $L3; bra $L2; $L11: .loc 1 56 25 mov.u64 %r26,%r34; .loc 1 58 14 mov.u64 %r33,0; $L3: .loc 1 63 16 ld.s8 %r25,[%r35]; .loc 1 63 15 setp.ne.u32 %r46,%r25,0; @ %r46 bra $L12; bra $L7; $L10: .loc 1 58 14 mov.u64 %r33,%r36; $L2: .loc 1 62 31 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r35; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r48,[%value_in]; } .loc 1 62 29 add.u64 %r33,%r33,%r48; bra $L1; $L12: .loc 1 63 15 mov.u64 %r29,%r35; $L6: .loc 1 64 20 setp.eq.u64 %r49,%r36,1; @ %r49 bra $L9; .loc 1 65 30 cvt.u32.u32 %r50,%r25; st.u8 [%r26],%r50; .loc 1 66 26 add.u64 %r36,%r36,-1; .loc 1 65 27 add.u64 %r26,%r26,1; $L9: .loc 1 68 18 add.u64 %r29,%r29,1; .loc 1 63 16 ld.s8 %r25,[%r29]; .loc 1 63 15 setp.ne.u32 %r51,%r25,0; @ %r51 bra $L6; sub.u64 %r52,%r29,%r35; add.u64 %r33,%r33,%r52; $L7: .loc 1 70 12 mov.u32 %r53,0; st.u8 [%r26],%r53; $L1: .loc 1 73 1 mov.u64 %value,%r33; st.param.u64 [%value_out],%value; ret; } lib_a-strlcpy.o/1591654536 399 399 100644 1958 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r28; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .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 53 12 setp.eq.u64 %r41,%r40,0; @ %r41 bra $L7; .loc 1 53 20 add.u64 %r31,%r40,-1; setp.eq.u64 %r42,%r31,0; @ %r42 bra $L8; mov.u64 %r33,%r38; mov.u64 %r32,%r39; .loc 1 57 17 add.u64 %r53,%r39,%r31; $L5: add.u64 %r28,%r32,1; add.u64 %r38,%r38,1; .loc 1 55 37 ld.s8 %r22,[%r32]; .loc 1 55 35 cvt.u32.u32 %r43,%r22; st.u8 [%r33],%r43; .loc 1 55 28 setp.eq.u32 %r44,%r22,0; @ %r44 bra $L4; mov.u64 %r33,%r38; mov.u64 %r32,%r28; .loc 1 57 17 setp.ne.u64 %r46,%r53,%r32; @ %r46 bra $L5; bra $L3; $L7: .loc 1 49 30 mov.u64 %r28,%r39; $L2: mov.u64 %r36,%r28; $L6: add.u64 %r36,%r36,1; mov.u64 %r28,%r36; .loc 1 64 23 ld.s8 %r48,[%r36+-1]; cvt.u16.u32 %r47,%r48; setp.ne.u16 %r49,%r47,0; @ %r49 bra $L6; $L4: .loc 1 68 18 sub.u64 %r51,%r28,%r39; .loc 1 68 24 add.u64 %r50,%r51,-1; bra $L14; $L8: .loc 1 49 30 mov.u64 %r28,%r39; $L3: .loc 1 63 28 mov.u32 %r52,0; st.u8 [%r38],%r52; bra $L2; $L14: .loc 1 69 1 mov.u64 %value,%r50; st.param.u64 [%value_out],%value; ret; } lib_a-strlen.o/ 1591654536 399 399 100644 2288 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r24; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r43; .reg .u64 %r44; .reg .u64 %r45; .reg .pred %r46; .reg .u16 %r47; .reg .u32 %r48; .reg .pred %r49; .reg .u16 %r50; .reg .u32 %r51; .reg .pred %r52; .reg .u64 %r53; .reg .pred %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .u64 %r58; .reg .pred %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u64 %r62; .reg .u64 %r63; .reg .pred %r64; .reg .u16 %r65; .reg .u32 %r66; .reg .pred %r67; .reg .u16 %r68; .reg .u32 %r69; .reg .pred %r70; mov.u64 %r44,%ar0; .loc 1 66 10 and.b64 %r45,%r44,7; .loc 1 66 9 setp.eq.u64 %r46,%r45,0; @ %r46 bra $L11; .loc 1 68 10 ld.s8 %r48,[%r44]; cvt.u16.u32 %r47,%r48; setp.eq.u16 %r49,%r47,0; @ %r49 bra $L12; mov.u64 %r31,%r44; bra $L4; $L6: ld.s8 %r51,[%r31]; cvt.u16.u32 %r50,%r51; setp.ne.u16 %r52,%r50,0; @ %r52 bra $L4; sub.u64 %r43,%r31,%r44; bra $L1; $L12: mov.u64 %r43,0; .loc 1 69 13 bra $L1; $L4: .loc 1 70 10 add.u64 %r31,%r31,1; .loc 1 66 10 and.b64 %r53,%r31,7; .loc 1 66 9 setp.ne.u64 %r54,%r53,0; @ %r54 bra $L6; bra $L2; $L11: mov.u64 %r31,%r44; $L2: .loc 1 76 11 ld.u64 %r32,[%r31]; add.u64 %r55,%r32,-72340172838076673; not.b64 %r56,%r32; and.b64 %r57,%r55,%r56; and.b64 %r58,%r57,-9187201950435737472; .loc 1 76 9 setp.ne.u64 %r59,%r58,0; @ %r59 bra $L7; $L8: .loc 1 77 17 add.u64 %r31,%r31,8; .loc 1 76 11 ld.u64 %r24,[%r31]; add.u64 %r60,%r24,-72340172838076673; not.b64 %r61,%r24; and.b64 %r62,%r60,%r61; and.b64 %r63,%r62,-9187201950435737472; .loc 1 76 9 setp.eq.u64 %r64,%r63,0; @ %r64 bra $L8; $L7: .loc 1 85 9 ld.s8 %r66,[%r31]; cvt.u16.u32 %r65,%r66; setp.eq.u16 %r67,%r65,0; @ %r67 bra $L9; $L10: .loc 1 86 8 add.u64 %r31,%r31,1; .loc 1 85 9 ld.s8 %r69,[%r31]; cvt.u16.u32 %r68,%r69; setp.ne.u16 %r70,%r68,0; @ %r70 bra $L10; $L9: .loc 1 87 14 sub.u64 %r43,%r31,%r44; $L1: .loc 1 88 1 mov.u64 %value,%r43; st.param.u64 [%value_out],%value; ret; } lib_a-strlwr.o/ 1591654536 399 399 100644 1590 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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_ptr__ .extern .global .align 8 .u64 __ctype_ptr__[1]; // 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 %r27; .reg .u64 %r29; .reg .u64 %r31; .reg .pred %r32; .reg .u64 %r34; .reg .u32 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .u16 %r40; .reg .u16 %r41; .reg .u16 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .pred %r45; .reg .u16 %r46; .reg .u16 %r47; .reg .u32 %r48; .reg .u32 %r49; .reg .pred %r50; .reg .u16 %r51; mov.u64 %r31,%ar0; .loc 1 41 11 ld.u8 %r27,[%r31]; .loc 1 41 3 setp.ne.u32 %r32,%r27,0; @ ! %r32 bra $L7; mov.u64 %r29,%r31; $L2: .loc 1 43 14 cvt.u32.u32 %r35,%r27; cvt.u64.u8 %r34,%r35; ld.global.u64 %r36,[__ctype_ptr__]; add.u64 %r37,%r36,%r34; ld.u8 %r51,[%r37+1]; mov.u16 %r41,%r51; and.b16 %r40,%r41,3; cvt.u32.u16 %r44,%r40; cvt.s32.s8 %r43,%r44; cvt.u16.u32 %r42,%r43; setp.ne.u16 %r45,%r42,1; @ %r45 bra $L3; cvt.u16.u32 %r47,%r27; add.u16 %r46,%r47,32; cvt.u32.u16 %r48,%r46; cvt.u32.u8 %r27,%r48; $L3: .loc 1 43 12 cvt.u32.u32 %r49,%r27; st.u8 [%r29],%r49; .loc 1 41 28 add.u64 %r29,%r29,1; .loc 1 41 11 ld.u8 %r27,[%r29]; .loc 1 41 3 setp.ne.u32 %r50,%r27,0; @ %r50 bra $L2; $L7: .loc 1 46 1 mov.u64 %value,%r31; st.param.u64 [%value_out],%value; ret; } /693 1591654536 399 399 100644 2558 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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_ptr__ .extern .global .align 8 .u64 __ctype_ptr__[1]; // 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 .u64 %r22; .reg .u32 %r31; .reg .u32 %r35; .reg .u64 %r38; .reg .u64 %r40; .reg .u64 %r41; .reg .u32 %r43; .reg .u64 %r44; .reg .u64 %r45; .reg .u64 %r46; .reg .pred %r47; .reg .u64 %r48; .reg .u32 %r49; .reg .u64 %r50; .reg .u16 %r53; .reg .u16 %r54; .reg .u16 %r55; .reg .u32 %r56; .reg .u32 %r57; .reg .pred %r58; .reg .u64 %r59; .reg .u32 %r60; .reg .u64 %r61; .reg .u16 %r64; .reg .u16 %r65; .reg .u16 %r66; .reg .u32 %r67; .reg .u32 %r68; .reg .pred %r69; .reg .u32 %r70; .reg .pred %r71; .reg .pred %r72; .reg .pred %r73; .reg .pred %r74; .reg .u16 %r76; mov.u64 %r44,%ar0; mov.u64 %r45,%ar1; mov.u64 %r46,%ar2; .loc 1 55 3 setp.eq.u64 %r47,%r46,0; @ %r47 bra $L7; .loc 1 57 23 ld.global.u64 %r22,[__ctype_ptr__]; mov.u64 %r41,%r44; mov.u64 %r40,%r45; add.u64 %r38,%r41,%r46; $L6: ld.u8 %r31,[%r41]; cvt.u32.u32 %r49,%r31; cvt.u64.u8 %r48,%r49; add.u64 %r50,%r22,%r48; ld.u8 %r76,[%r50+1]; mov.u16 %r54,%r76; and.b16 %r53,%r54,3; cvt.u32.u16 %r57,%r53; cvt.s32.s8 %r56,%r57; cvt.u16.u32 %r55,%r56; setp.ne.u16 %r58,%r55,1; @ %r58 bra $L3; add.u32 %r31,%r31,32; $L3: .loc 1 58 23 ld.u8 %r35,[%r40]; cvt.u32.u32 %r60,%r35; cvt.u64.u8 %r59,%r60; add.u64 %r61,%r22,%r59; ld.u8 %r76,[%r61+1]; mov.u16 %r65,%r76; and.b16 %r64,%r65,3; cvt.u32.u16 %r68,%r64; cvt.s32.s8 %r67,%r68; cvt.u16.u32 %r66,%r67; setp.ne.u16 %r69,%r66,1; @ %r69 bra $L4; add.u32 %r70,%r35,32; .loc 1 59 15 sub.u32 %r43,%r31,%r70; .loc 1 59 10 setp.ne.u32 %r71,%r43,0; @ ! %r71 bra $L5; bra $L1; $L4: .loc 1 59 15 sub.u32 %r43,%r31,%r35; .loc 1 59 10 setp.ne.u32 %r72,%r43,0; @ %r72 bra $L1; .loc 1 59 32 setp.eq.u32 %r73,%r35,0; @ %r73 bra $L1; $L5: add.u64 %r41,%r41,1; add.u64 %r40,%r40,1; .loc 1 55 3 setp.ne.u64 %r74,%r38,%r41; @ %r74 bra $L6; mov.u32 %r43,0; bra $L1; $L7: cvt.u32.u64 %r43,%r46; $L1: .loc 1 63 1 mov.u32 %value,%r43; st.param.u32 [%value_out],%value; ret; } lib_a-strncat.o/1591654536 399 399 100644 2671 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u64 %r31; .reg .u32 %r32; .reg .u64 %r34; .reg .u64 %r36; .reg .u64 %r42; .reg .u64 %r44; .reg .u64 %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .pred %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u64 %r52; .reg .pred %r53; .reg .u16 %r54; .reg .u32 %r55; .reg .pred %r56; .reg .u64 %r57; .reg .u64 %r58; .reg .u64 %r59; .reg .u64 %r60; .reg .pred %r61; .reg .u16 %r62; .reg .u32 %r63; .reg .pred %r64; .reg .pred %r65; .reg .u32 %r66; .reg .pred %r67; .reg .u32 %r68; .reg .pred %r69; mov.u64 %r44,%ar0; mov.u64 %r45,%ar1; mov.u64 %r46,%ar2; .loc 1 89 7 and.b64 %r47,%r44,7; .loc 1 89 6 setp.ne.u64 %r48,%r47,0; @ %r48 bra $L11; .loc 1 92 15 ld.u64 %r31,[%r44]; not.b64 %r49,%r31; add.u64 %r50,%r31,-72340172838076673; and.b64 %r51,%r49,%r50; and.b64 %r52,%r51,-9187201950435737472; .loc 1 92 13 setp.eq.u64 %r53,%r52,0; @ %r53 bra $L12; mov.u64 %r34,%r44; bra $L2; $L11: mov.u64 %r34,%r44; $L2: .loc 1 98 9 ld.s8 %r55,[%r34]; cvt.u16.u32 %r54,%r55; setp.ne.u16 %r56,%r54,0; @ %r56 bra $L4; bra $L5; $L12: .loc 1 92 13 mov.u64 %r34,%r44; $L3: .loc 1 93 12 add.u64 %r34,%r34,8; .loc 1 92 15 ld.u64 %r24,[%r34]; add.u64 %r57,%r24,-72340172838076673; not.b64 %r58,%r24; and.b64 %r59,%r57,%r58; and.b64 %r60,%r59,-9187201950435737472; .loc 1 92 13 setp.eq.u64 %r61,%r60,0; @ %r61 bra $L3; bra $L2; $L4: .loc 1 99 7 add.u64 %r34,%r34,1; .loc 1 98 9 ld.s8 %r63,[%r34]; cvt.u16.u32 %r62,%r63; setp.ne.u16 %r64,%r62,0; @ %r64 bra $L4; bra $L5; $L9: add.u64 %r36,%r36,1; add.u64 %r30,%r30,1; .loc 1 109 10 setp.ne.u64 %r65,%r46,0; @ %r65 bra $L6; .loc 1 110 6 cvt.u32.u64 %r66,%r46; st.u8 [%r34],%r66; bra $L7; $L5: mov.u64 %r36,%r34; mov.u64 %r30,%r45; add.u64 %r42,%r34,%r46; $L6: .loc 1 107 11 add.u64 %r46,%r46,-1; .loc 1 107 9 setp.ne.u64 %r67,%r34,%r42; @ ! %r67 bra $L7; .loc 1 107 26 add.u64 %r34,%r34,1; .loc 1 107 31 ld.s8 %r32,[%r30]; .loc 1 107 29 cvt.u32.u32 %r68,%r32; st.u8 [%r36],%r68; .loc 1 107 19 setp.ne.u32 %r69,%r32,0; @ %r69 bra $L9; $L7: .loc 1 115 1 mov.u64 %value,%r44; st.param.u64 [%value_out],%value; ret; } lib_a-strncmp.o/1591654536 399 399 100644 4425 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r30; .reg .u32 %r32; .reg .u64 %r42; .reg .u32 %r49; .reg .u64 %r51; .reg .u64 %r57; .reg .u32 %r58; .reg .u64 %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .pred %r62; .reg .u64 %r63; .reg .u64 %r64; .reg .pred %r65; .reg .pred %r66; .reg .u64 %r67; .reg .pred %r68; .reg .pred %r69; .reg .u64 %r70; .reg .u64 %r71; .reg .u64 %r72; .reg .u64 %r73; .reg .pred %r74; .reg .pred %r75; .reg .u64 %r76; .reg .u64 %r77; .reg .u64 %r78; .reg .u64 %r79; .reg .pred %r80; .reg .pred %r81; .reg .u64 %r82; .reg .pred %r83; .reg .u16 %r84; .reg .u32 %r85; .reg .u16 %r86; .reg .pred %r87; .reg .u32 %r90; .reg .u32 %r91; .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 .u64 %r101; .reg .u64 %r102; .reg .u32 %r104; .reg .u32 %r105; .reg .u32 %r108; .reg .u32 %r109; .reg .u16 %r110; .reg .u16 %r111; .reg .u16 %r112; .reg .u32 %r113; .reg .u16 %r114; .reg .pred %r115; .reg .u16 %r116; .reg .u32 %r117; .reg .u16 %r118; .reg .pred %r119; .reg .u32 %r120; .reg .u32 %r121; mov.u64 %r59,%ar0; mov.u64 %r60,%ar1; mov.u64 %r61,%ar2; .loc 1 84 6 setp.eq.u64 %r62,%r61,0; @ %r62 bra $L9; .loc 1 88 8 or.b64 %r63,%r59,%r60; and.b64 %r64,%r63,7; .loc 1 88 6 setp.ne.u64 %r65,%r64,0; @ %r65 bra $L3; .loc 1 93 13 setp.le.u64 %r66,%r61,7; @ %r66 bra $L3; .loc 1 93 36 ld.u64 %r51,[%r59]; .loc 1 93 33 ld.u64 %r67,[%r60]; setp.ne.u64 %r68,%r51,%r67; @ %r68 bra $L3; .loc 1 95 13 add.u64 %r61,%r61,-8; .loc 1 99 14 setp.eq.u64 %r69,%r61,0; @ %r69 bra $L10; .loc 1 99 25 add.u64 %r70,%r51,-72340172838076673; not.b64 %r71,%r51; and.b64 %r72,%r70,%r71; and.b64 %r73,%r72,-9187201950435737472; .loc 1 99 22 setp.ne.u64 %r74,%r73,0; @ ! %r74 bra $L4; bra $L11; $L5: .loc 1 95 13 add.u64 %r61,%r61,-8; .loc 1 99 14 setp.eq.u64 %r75,%r61,0; @ %r75 bra $L12; .loc 1 99 25 add.u64 %r76,%r30,-72340172838076673; not.b64 %r77,%r30; and.b64 %r78,%r76,%r77; and.b64 %r79,%r78,-9187201950435737472; .loc 1 99 22 setp.ne.u64 %r80,%r79,0; @ %r80 bra $L13; $L4: .loc 1 102 13 add.u64 %r59,%r59,8; .loc 1 103 13 add.u64 %r60,%r60,8; .loc 1 93 13 setp.le.u64 %r81,%r61,7; @ %r81 bra $L3; .loc 1 93 36 ld.u64 %r30,[%r59]; .loc 1 93 33 ld.u64 %r82,[%r60]; setp.eq.u64 %r83,%r30,%r82; @ %r83 bra $L5; $L3: .loc 1 111 21 ld.s8 %r49,[%r59]; .loc 1 111 18 ld.s8 %r85,[%r60]; cvt.u16.u32 %r84,%r85; cvt.u16.u32 %r86,%r49; setp.ne.u16 %r87,%r84,%r86; @ %r87 bra $L14; .loc 1 115 18 set.u32.eq.u16 %r90,%r84,0; neg.s32 %r91,%r90; .loc 1 115 10 set.u32.eq.u64 %r93,%r61,1; neg.s32 %r94,%r93; .loc 1 115 18 cvt.u16.u32 %r96,%r91; cvt.u16.u32 %r97,%r94; or.b16 %r95,%r96,%r97; cvt.u32.u16 %r98,%r95; cvt.u16.u8 %r99,%r98; setp.ne.u16 %r100,%r99,0; @ %r100 bra $L15; mov.u64 %r42,%r59; bra $L7; $L8: not.b64 %r101,%r42; add.u64 %r57,%r101,%r61; .loc 1 115 10 add.u64 %r102,%r59,%r57; set.u32.eq.u64 %r104,%r102,0; neg.s32 %r105,%r104; .loc 1 115 18 set.u32.eq.u16 %r108,%r116,0; neg.s32 %r109,%r108; cvt.u16.u32 %r111,%r105; cvt.u16.u32 %r112,%r109; or.b16 %r110,%r111,%r112; cvt.u32.u16 %r113,%r110; cvt.u16.u8 %r114,%r113; setp.ne.u16 %r115,%r114,0; @ %r115 bra $L16; $L7: .loc 1 117 9 add.u64 %r42,%r42,1; .loc 1 118 9 add.u64 %r60,%r60,1; .loc 1 111 21 ld.s8 %r32,[%r42]; .loc 1 111 18 ld.s8 %r117,[%r60]; cvt.u16.u32 %r116,%r117; cvt.u16.u32 %r118,%r32; setp.eq.u16 %r119,%r116,%r118; @ %r119 bra $L8; bra $L6; $L14: mov.u64 %r42,%r59; $L6: .loc 1 120 11 ld.u8 %r120,[%r42]; .loc 1 120 37 ld.u8 %r121,[%r60]; .loc 1 120 34 sub.u32 %r58,%r120,%r121; bra $L1; $L9: .loc 1 85 12 cvt.u32.u64 %r58,%r61; bra $L1; $L10: cvt.u32.u64 %r58,%r61; bra $L1; $L11: cvt.u32.u64 %r58,%r64; bra $L1; $L12: cvt.u32.u64 %r58,%r61; bra $L1; $L13: mov.u32 %r58,0; bra $L1; $L15: mov.u32 %r58,0; bra $L1; $L16: mov.u32 %r58,0; $L1: .loc 1 122 1 mov.u32 %value,%r58; st.param.u32 [%value_out],%value; ret; } lib_a-strncpy.o/1591654536 399 399 100644 3253 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r25; .reg .u32 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .u32 %r41; .reg .u64 %r42; .reg .u64 %r46; .reg .u64 %r51; .reg .u64 %r53; .reg .u64 %r54; .reg .u64 %r55; .reg .u64 %r56; .reg .u64 %r57; .reg .u32 %r59; .reg .u32 %r60; .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 .pred %r70; .reg .u64 %r71; .reg .u64 %r72; .reg .u64 %r73; .reg .u64 %r74; .reg .pred %r75; .reg .u32 %r77; .reg .pred %r78; .reg .pred %r79; .reg .pred %r80; .reg .pred %r81; .reg .u32 %r82; .reg .pred %r83; .reg .u32 %r84; .reg .pred %r85; .reg .u64 %r87; mov.u64 %r53,%ar0; mov.u64 %r54,%ar1; mov.u64 %r55,%ar2; .loc 1 97 8 mov.u64 %r51,%r53; or.b64 %r56,%r54,%r53; and.b64 %r57,%r56,7; .loc 1 97 6 set.u32.eq.u64 %r59,%r57,0; neg.s32 %r60,%r59; .loc 1 97 29 set.u32.gt.u64 %r62,%r55,7; neg.s32 %r63,%r62; cvt.u16.u32 %r65,%r60; cvt.u16.u32 %r66,%r63; and.b16 %r64,%r65,%r66; cvt.u32.u16 %r67,%r64; cvt.u16.u8 %r68,%r67; setp.ne.u16 %r69,%r68,0; @ %r69 bra $L2; .loc 1 91 9 mov.u64 %r38,%r53; bra $L3; $L4: .loc 1 106 10 add.u64 %r55,%r55,-8; .loc 1 107 33 add.u64 %r54,%r54,8; add.u64 %r51,%r51,8; mov.u64 %r38,%r51; .loc 1 107 19 st.u64 [%r46],%r25; .loc 1 104 13 setp.le.u64 %r70,%r55,7; @ %r70 bra $L3; $L2: mov.u64 %r46,%r51; .loc 1 104 45 ld.u64 %r25,[%r54]; add.u64 %r71,%r25,-72340172838076673; not.b64 %r72,%r25; and.b64 %r73,%r71,%r72; and.b64 %r74,%r73,-9187201950435737472; .loc 1 104 41 setp.eq.u64 %r75,%r74,0; @ %r75 bra $L4; mov.u64 %r38,%r51; bra $L5; $L7: .loc 1 116 7 add.u64 %r36,%r36,-1; sub.u64 %r39,%r87,%r36; .loc 1 117 21 ld.s8 %r31,[%r33]; .loc 1 117 19 cvt.u32.u32 %r77,%r31; st.u8 [%r32],%r77; add.u64 %r33,%r33,1; add.u64 %r32,%r32,1; .loc 1 117 10 setp.eq.u32 %r78,%r31,0; @ %r78 bra $L6; $L10: .loc 1 114 9 setp.ne.u64 %r79,%r36,0; @ %r79 bra $L7; bra $L8; $L6: .loc 1 121 9 setp.ne.u64 %r80,%r36,0; @ %r80 bra $L9; bra $L8; $L3: .loc 1 114 9 setp.eq.u64 %r81,%r55,0; @ %r81 bra $L8; $L5: .loc 1 116 7 add.u64 %r36,%r55,-1; .loc 1 117 25 add.u64 %r42,%r54,1; .loc 1 117 16 add.u64 %r39,%r38,1; .loc 1 117 21 ld.s8 %r41,[%r54]; .loc 1 117 19 cvt.u32.u32 %r82,%r41; st.u8 [%r38],%r82; .loc 1 117 10 setp.eq.u32 %r83,%r41,0; @ %r83 bra $L6; mov.u64 %r33,%r42; mov.u64 %r32,%r39; add.u64 %r87,%r38,%r55; bra $L10; $L9: mov.u64 %r37,%r39; add.u64 %r34,%r37,%r36; .loc 1 122 12 mov.u32 %r84,0; $L11: st.u8 [%r37],%r84; add.u64 %r37,%r37,1; .loc 1 121 9 setp.ne.u64 %r85,%r34,%r37; @ %r85 bra $L11; $L8: .loc 1 126 1 mov.u64 %value,%r53; st.param.u64 [%value_out],%value; ret; } lib_a-strndup.o/1591654536 399 399 100644 1250 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strndup .visible .func (.param .u64 %value_out) strndup (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/string/strndup.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // BEGIN GLOBAL FUNCTION DECL: _strndup_r .extern .func (.param .u64 %value_out) _strndup_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: strndup .visible .func (.param .u64 %value_out) strndup (.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 13 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),_strndup_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r30,[%value_in]; } .loc 1 14 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } /714 1591654536 399 399 100644 2545 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: _strndup_r .visible .func (.param .u64 %value_out) _strndup_r (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/string/strndup_r.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: memcpy .extern .func (.param .u64 %value_out) memcpy (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DEF: _strndup_r .visible .func (.param .u64 %value_out) _strndup_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 %r26; .reg .u64 %r28; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .pred %r33; .reg .u16 %r34; .reg .u32 %r35; .reg .pred %r36; .reg .pred %r37; .reg .u16 %r38; .reg .u32 %r39; .reg .pred %r40; .reg .u64 %r43; .reg .pred %r44; .reg .u64 %r48; .reg .u64 %r49; .reg .u32 %r50; mov.u64 %r30,%ar0; mov.u64 %r31,%ar1; mov.u64 %r32,%ar2; .loc 1 15 9 setp.eq.u64 %r33,%r32,0; @ %r33 bra $L6; .loc 1 15 18 ld.s8 %r35,[%r31]; cvt.u16.u32 %r34,%r35; setp.eq.u16 %r36,%r34,0; @ %r36 bra $L7; add.u64 %r26,%r31,%r32; mov.u64 %r24,%r31; $L4: .loc 1 16 8 add.u64 %r24,%r24,1; .loc 1 15 9 setp.ne.u64 %r37,%r24,%r26; @ %r37 bra $L3; add.u64 %r28,%r32,1; bra $L2; $L3: .loc 1 15 18 ld.s8 %r39,[%r24]; cvt.u16.u32 %r38,%r39; setp.ne.u16 %r40,%r38,0; @ %r40 bra $L4; sub.u64 %r32,%r24,%r31; add.u64 %r28,%r32,1; bra $L2; $L6: .loc 1 15 9 mov.u64 %r28,1; bra $L2; $L7: .loc 1 15 18 mov.u64 %r32,0; mov.u64 %r28,1; $L2: .loc 1 20 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r30; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r28; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r43,[%value_in]; } .loc 1 21 6 setp.eq.u64 %r44,%r43,0; @ %r44 bra $L1; .loc 1 23 7 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r43; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r31; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r32; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r48,[%value_in]; } .loc 1 24 17 add.u64 %r49,%r43,%r32; mov.u32 %r50,0; st.u8 [%r49],%r50; $L1: .loc 1 27 1 mov.u64 %value,%r43; st.param.u64 [%value_out],%value; ret; } lib_a-strnlen.o/1591654536 399 399 100644 1254 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r23; .reg .u64 %r24; .reg .u64 %r28; .reg .u64 %r29; .reg .pred %r30; .reg .u16 %r31; .reg .u32 %r32; .reg .pred %r33; .reg .pred %r34; .reg .u16 %r35; .reg .u32 %r36; .reg .pred %r37; mov.u64 %r28,%ar0; mov.u64 %r29,%ar1; .loc 1 45 9 setp.eq.u64 %r30,%r29,0; @ %r30 bra $L2; .loc 1 45 18 ld.s8 %r32,[%r28]; cvt.u16.u32 %r31,%r32; setp.eq.u16 %r33,%r31,0; @ %r33 bra $L4; add.u64 %r24,%r28,%r29; mov.u64 %r23,%r28; $L3: .loc 1 46 8 add.u64 %r23,%r23,1; .loc 1 45 9 setp.eq.u64 %r34,%r23,%r24; @ %r34 bra $L2; .loc 1 45 18 ld.s8 %r36,[%r23]; cvt.u16.u32 %r35,%r36; setp.ne.u16 %r37,%r35,0; @ %r37 bra $L3; sub.u64 %r29,%r23,%r28; bra $L2; $L4: mov.u64 %r29,0; $L2: .loc 1 49 1 mov.u64 %value,%r29; st.param.u64 [%value_out],%value; ret; } lib_a-strpbrk.o/1591654536 399 399 100644 1876 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r32; .reg .pred %r33; .reg .pred %r34; .reg .u16 %r36; .reg .pred %r38; .reg .u16 %r39; .reg .u32 %r40; .reg .pred %r41; .reg .pred %r43; .reg .pred %r44; .reg .u16 %r45; .reg .u16 %r46; mov.u64 %r28,%ar0; mov.u64 %r29,%ar1; .loc 1 39 8 ld.s8 %r22,[%r28]; .loc 1 39 6 setp.eq.u32 %r30,%r22,0; @ ! %r30 bra $L13; bra $L9; $L4: .loc 1 46 7 cvt.u16.u32 %r32,%r23; setp.eq.u16 %r33,%r45,%r32; @ %r33 bra $L1; $L6: .loc 1 44 25 add.u64 %r25,%r25,1; .loc 1 44 20 ld.s8 %r23,[%r25]; .loc 1 44 7 setp.ne.u32 %r34,%r23,0; @ %r34 bra $L4; bra $L5; $L13: .loc 1 44 20 ld.s8 %r26,[%r29]; mov.u64 %r27,%r28; setp.eq.u32 %r44,%r26,0; .loc 1 46 7 cvt.u16.u32 %r46,%r26; $L7: .loc 1 44 7 @ %r44 bra $L10; .loc 1 46 7 cvt.u16.u32 %r36,%r22; setp.eq.u16 %r38,%r36,%r46; @ %r38 bra $L1; mov.u64 %r25,%r29; cvt.u16.u32 %r45,%r22; bra $L6; $L14: .loc 1 54 6 ld.s8 %r40,[%r25]; cvt.u16.u32 %r39,%r40; setp.eq.u16 %r41,%r39,0; .loc 1 55 8 selp.u64 %r27,0,%r27,%r41; bra $L1; $L9: mov.u64 %r27,0; bra $L1; $L10: .loc 1 44 7 mov.u64 %r25,%r29; $L5: .loc 1 51 9 add.u64 %r27,%r27,1; .loc 1 42 10 ld.s8 %r22,[%r27]; .loc 1 42 9 setp.ne.u32 %r43,%r22,0; @ %r43 bra $L7; bra $L14; $L1: .loc 1 58 1 mov.u64 %value,%r27; st.param.u64 [%value_out],%value; ret; } lib_a-strrchr.o/1591654536 399 399 100644 1570 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 45 6 setp.ne.u32 %r26,%r25,0; @ %r26 bra $L6; bra $L7; $L4: .loc 1 50 5 add.u64 %r24,%r29,1; mov.u64 %r23,%r29; bra $L2; $L6: .loc 1 43 16 mov.u64 %r23,0; $L2: .loc 1 47 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 47 13 setp.ne.u64 %r30,%r29,0; @ %r30 bra $L4; bra $L1; $L7: .loc 1 55 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 59 1 mov.u64 %value,%r23; st.param.u64 [%value_out],%value; ret; } lib_a-strsep.o/ 1591654536 399 399 100644 1263 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 18 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 19 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } /733 1591654536 399 399 100644 8944 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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[5] = {81,117,105,116,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[20] = {73,108,108,101,103,97,108,32,105,110,115,116,114,117,99,116,105,111,110,0 }; // BEGIN VAR DEF: $LC3 .const .align 1 .u8 $LC3[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: $LC4 .const .align 1 .u8 $LC4[9] = {73,79,84,32,116,114,97,112,0 }; // BEGIN VAR DEF: $LC5 .const .align 1 .u8 $LC5[9] = {69,77,84,32,116,114,97,112,0 }; // BEGIN VAR DEF: $LC6 .const .align 1 .u8 $LC6[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: $LC7 .const .align 1 .u8 $LC7[7] = {75,105,108,108,101,100,0 }; // BEGIN VAR DEF: $LC8 .const .align 1 .u8 $LC8[10] = {66,117,115,32,101,114,114,111,114,0 }; // BEGIN VAR DEF: $LC9 .const .align 1 .u8 $LC9[19] = {83,101,103,109,101,110,116,97,116,105,111,110,32,102,97,117,108,116,0 }; // BEGIN VAR DEF: $LC10 .const .align 1 .u8 $LC10[16] = {66,97,100,32,115,121,115,116,101,109,32,99,97,108,108,0 }; // BEGIN VAR DEF: $LC11 .const .align 1 .u8 $LC11[12] = {66,114,111,107,101,110,32,112,105,112,101,0 }; // BEGIN VAR DEF: $LC12 .const .align 1 .u8 $LC12[12] = {65,108,97,114,109,32,99,108,111,99,107,0 }; // BEGIN VAR DEF: $LC13 .const .align 1 .u8 $LC13[11] = {84,101,114,109,105,110,97,116,101,100,0 }; // BEGIN VAR DEF: $LC14 .const .align 1 .u8 $LC14[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: $LC15 .const .align 1 .u8 $LC15[17] = {83,116,111,112,112,101,100,32,40,115,105,103,110,97,108,41,0 }; // BEGIN VAR DEF: $LC16 .const .align 1 .u8 $LC16[8] = {83,116,111,112,112,101,100,0 }; // BEGIN VAR DEF: $LC17 .const .align 1 .u8 $LC17[10] = {67,111,110,116,105,110,117,101,100,0 }; // BEGIN VAR DEF: $LC18 .const .align 1 .u8 $LC18[13] = {67,104,105,108,100,32,101,120,105,116,101,100,0 }; // BEGIN VAR DEF: $LC19 .const .align 1 .u8 $LC19[20] = {83,116,111,112,112,101,100,32,40,116,116,121,32,105,110,112,117,116,41,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[13] = {73,47,79,32,112,111,115,115,105,98,108,101,0 }; // BEGIN VAR DEF: $LC21 .const .align 1 .u8 $LC21[15] = {87,105,110,100,111,119,32,99,104,97,110,103,101,100,0 }; // BEGIN VAR DEF: $LC22 .const .align 1 .u8 $LC22[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: $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,50,0 }; // BEGIN VAR DEF: $LC24 .const .align 1 .u8 $LC24[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: $LC25 .const .align 1 .u8 $LC25[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: $LC26 .const .align 1 .u8 $LC26[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: $LC27 .const .align 1 .u8 $LC27[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: $LC28 .const .align 1 .u8 $LC28[14] = {82,101,115,111,117,114,99,101,32,108,111,115,116,0 }; // BEGIN VAR DEF: $LC29 .const .align 1 .u8 $LC29[10] = {73,110,116,101,114,114,117,112,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 .u64 %r57; .reg .u64 %r59; .reg .u32 %r60; mov.u32 %r24,%ar0; setp.eq.u32 %r25,%r24,15; @ %r25 bra $L11; setp.gt.s32 %r26,%r24,15; @ %r26 bra $L3; setp.eq.u32 %r27,%r24,7; @ %r27 bra $L12; setp.gt.s32 %r28,%r24,7; @ %r28 bra $L4; setp.eq.u32 %r29,%r24,3; @ %r29 bra $L13; setp.gt.s32 %r30,%r24,3; @ %r30 bra $L5; setp.eq.u32 %r31,%r24,1; @ %r31 bra $L14; setp.eq.u32 %r32,%r24,2; @ %r32 bra $L15; bra $L6; $L5: setp.eq.u32 %r33,%r24,5; @ %r33 bra $L16; setp.gt.s32 %r34,%r24,5; @ %r34 bra $L17; .loc 1 98 14 cvta.const.u64 %r23,$LC2; bra $L1; $L4: setp.eq.u32 %r35,%r24,11; @ %r35 bra $L18; setp.gt.s32 %r36,%r24,11; @ %r36 bra $L7; setp.eq.u32 %r37,%r24,9; @ %r37 bra $L19; setp.gt.s32 %r38,%r24,9; @ %r38 bra $L20; .loc 1 121 14 cvta.const.u64 %r23,$LC6; bra $L1; $L7: setp.eq.u32 %r39,%r24,13; @ %r39 bra $L21; setp.gt.s32 %r40,%r24,13; @ %r40 bra $L22; .loc 1 141 14 cvta.const.u64 %r23,$LC10; bra $L1; $L3: setp.eq.u32 %r41,%r24,24; @ %r41 bra $L23; setp.gt.s32 %r42,%r24,24; @ %r42 bra $L8; setp.eq.u32 %r43,%r24,19; @ %r43 bra $L24; setp.gt.s32 %r44,%r24,19; @ %r44 bra $L9; setp.eq.u32 %r45,%r24,17; @ %r45 bra $L25; setp.gt.s32 %r46,%r24,17; @ %r46 bra $L26; .loc 1 161 14 cvta.const.u64 %r23,$LC14; bra $L1; $L9: setp.eq.u32 %r47,%r24,21; @ %r47 bra $L27; setp.lt.s32 %r48,%r24,21; @ %r48 bra $L28; setp.eq.u32 %r49,%r24,23; @ %r49 bra $L29; bra $L6; $L8: setp.eq.u32 %r50,%r24,28; @ %r50 bra $L30; setp.gt.s32 %r51,%r24,28; @ %r51 bra $L10; setp.eq.u32 %r52,%r24,26; @ %r52 bra $L31; setp.gt.s32 %r53,%r24,26; @ %r53 bra $L32; .loc 1 232 14 cvta.const.u64 %r23,$LC25; bra $L1; $L10: setp.eq.u32 %r54,%r24,30; @ %r54 bra $L33; setp.lt.s32 %r55,%r24,30; @ %r55 bra $L34; setp.eq.u32 %r56,%r24,31; @ %r56 bra $L35; $L6: .loc 1 71 10 ld.global.u64 %r57,[_impure_ptr]; add.u64 %r23,%r57,288; .loc 1 251 7 st.u32 [%stack],%r24; cvta.const.u64 %r59,$LC30; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r23; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r59; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%stack; call (%value_in),siprintf,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r60,[%value_in]; } .loc 1 252 7 bra $L1; $L11: .loc 1 156 14 cvta.const.u64 %r23,$LC13; bra $L1; $L12: .loc 1 116 14 cvta.const.u64 %r23,$LC5; bra $L1; $L13: .loc 1 93 14 cvta.const.u64 %r23,$LC1; bra $L1; $L14: .loc 1 83 14 cvta.const.u64 %r23,$LC0; bra $L1; $L15: .loc 1 88 14 cvta.const.u64 %r23,$LC29; bra $L1; $L16: .loc 1 103 14 cvta.const.u64 %r23,$LC3; bra $L1; $L17: .loc 1 111 14 cvta.const.u64 %r23,$LC4; bra $L1; $L18: .loc 1 136 14 cvta.const.u64 %r23,$LC9; bra $L1; $L19: .loc 1 126 14 cvta.const.u64 %r23,$LC7; bra $L1; $L20: .loc 1 131 14 cvta.const.u64 %r23,$LC8; bra $L1; $L21: .loc 1 146 14 cvta.const.u64 %r23,$LC11; bra $L1; $L22: .loc 1 151 14 cvta.const.u64 %r23,$LC12; bra $L1; $L23: .loc 1 227 14 cvta.const.u64 %r23,$LC24; bra $L1; $L24: .loc 1 176 14 cvta.const.u64 %r23,$LC17; bra $L1; $L25: .loc 1 166 14 cvta.const.u64 %r23,$LC15; bra $L1; $L26: .loc 1 171 14 cvta.const.u64 %r23,$LC16; bra $L1; $L27: .loc 1 189 14 cvta.const.u64 %r23,$LC19; bra $L1; $L28: .loc 1 184 14 cvta.const.u64 %r23,$LC18; bra $L1; $L29: .loc 1 202 14 cvta.const.u64 %r23,$LC20; bra $L1; $L30: .loc 1 207 14 cvta.const.u64 %r23,$LC21; bra $L1; $L31: .loc 1 237 14 cvta.const.u64 %r23,$LC26; bra $L1; $L32: .loc 1 242 14 cvta.const.u64 %r23,$LC27; bra $L1; $L33: .loc 1 212 14 cvta.const.u64 %r23,$LC22; bra $L1; $L34: .loc 1 247 14 cvta.const.u64 %r23,$LC28; bra $L1; $L35: .loc 1 217 14 cvta.const.u64 %r23,$LC23; $L1: .loc 1 256 1 mov.u64 %value,%r23; st.shared.u64 [%sspslot],%sspprev; st.param.u64 [%value_out],%value; ret; } lib_a-strspn.o/ 1591654536 399 399 100644 1726 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r27; .reg .u64 %r28; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .pred %r33; .reg .u16 %r34; .reg .pred %r36; .reg .pred %r37; .reg .u16 %r40; .reg .pred %r41; .reg .pred %r43; .reg .pred %r44; .reg .u16 %r45; .reg .u16 %r46; mov.u64 %r31,%ar0; mov.u64 %r32,%ar1; .loc 1 46 10 ld.s8 %r25,[%r31]; .loc 1 46 9 setp.ne.u32 %r33,%r25,0; @ %r33 bra $L2; mov.u64 %r30,0; bra $L1; $L5: .loc 1 50 7 cvt.u16.u32 %r34,%r24; setp.eq.u16 %r36,%r34,%r45; @ %r36 bra $L4; $L7: .loc 1 48 25 add.u64 %r27,%r27,1; .loc 1 48 20 ld.s8 %r24,[%r27]; .loc 1 48 7 setp.ne.u32 %r37,%r24,0; @ %r37 bra $L5; sub.u64 %r30,%r28,%r31; bra $L1; $L2: .loc 1 48 20 ld.s8 %r22,[%r32]; mov.u64 %r28,%r31; setp.ne.u32 %r44,%r22,0; .loc 1 50 7 cvt.u16.u32 %r46,%r22; $L8: .loc 1 48 7 @ %r44 bra $L6; sub.u64 %r30,%r28,%r31; bra $L1; $L6: .loc 1 50 7 cvt.u16.u32 %r40,%r25; setp.eq.u16 %r41,%r46,%r40; @ %r41 bra $L4; mov.u64 %r27,%r32; cvt.u16.u32 %r45,%r25; bra $L7; $L4: .loc 1 55 9 add.u64 %r28,%r28,1; .loc 1 46 10 ld.s8 %r25,[%r28]; .loc 1 46 9 setp.ne.u32 %r43,%r25,0; @ %r43 bra $L8; sub.u64 %r30,%r28,%r31; $L1: .loc 1 59 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } lib_a-strstr.o/ 1591654536 399 399 100644 27455 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: critical_factorization .func (.param .u64 %value_out) critical_factorization (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); .file 1 "../../../../../../newlib/libc/string/str-two-way.h" // 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); // 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: memchr .extern .func (.param .u64 %value_out) memchr (.param .u64 %in_ar0, .param .u32 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: strchr .extern .func (.param .u64 %value_out) strchr (.param .u64 %in_ar0, .param .u32 %in_ar1); // BEGIN GLOBAL VAR DECL: __nvptx_stacks .extern .shared .u64 __nvptx_stacks[32]; // BEGIN FUNCTION DEF: critical_factorization .func (.param .u64 %value_out) critical_factorization (.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 %r26; .reg .u64 %r27; .reg .u64 %r28; .reg .u64 %r32; .reg .u64 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .u64 %r38; .reg .u64 %r45; .reg .u64 %r46; .reg .u64 %r47; .reg .u64 %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r51; .reg .u16 %r52; .reg .u16 %r53; .reg .pred %r54; .reg .pred %r57; .reg .pred %r58; .reg .pred %r59; .reg .u64 %r60; .reg .u64 %r61; .reg .u64 %r62; .reg .u16 %r63; .reg .u16 %r64; .reg .pred %r65; .reg .pred %r68; .reg .pred %r69; .reg .pred %r70; .reg .pred %r71; .reg .u64 %r73; .reg .u64 %r74; mov.u64 %r46,%ar0; mov.u64 %r47,%ar1; mov.u64 %r48,%ar2; .loc 1 113 9 mov.u64 %r37,1; .loc 1 113 5 mov.u64 %r35,%r37; .loc 1 112 5 mov.u64 %r28,0; .loc 1 111 14 mov.u64 %r32,-1; .loc 1 140 10 mov.u64 %r74,%r37; .loc 1 114 9 bra $L2; $L7: .loc 1 116 9 add.u64 %r49,%r46,%r27; .loc 1 117 9 add.u64 %r50,%r46,%r32; add.u64 %r51,%r50,%r35; .loc 1 118 10 ld.u8 %r52,[%r49]; ld.u8 %r53,[%r51]; setp.ge.u16 %r54,%r52,%r53; @ %r54 bra $L3; .loc 1 123 6 sub.u64 %r37,%r27,%r32; mov.u64 %r28,%r27; .loc 1 122 6 mov.u64 %r35,1; bra $L2; $L3: .loc 1 125 15 setp.ne.u16 %r57,%r52,%r53; @ %r57 bra $L5; .loc 1 128 7 setp.eq.u64 %r58,%r35,%r37; @ %r58 bra $L6; .loc 1 129 6 add.u64 %r35,%r35,1; bra $L2; $L6: .loc 1 132 10 mov.u64 %r28,%r27; .loc 1 133 10 mov.u64 %r35,1; bra $L2; $L5: .loc 1 139 15 mov.u64 %r32,%r28; .loc 1 139 18 add.u64 %r28,%r28,1; .loc 1 140 10 mov.u64 %r37,%r74; .loc 1 140 6 mov.u64 %r35,1; $L2: .loc 1 114 12 add.u64 %r27,%r28,%r35; .loc 1 114 9 setp.lt.u64 %r59,%r27,%r47; @ %r59 bra $L7; .loc 1 143 11 st.u64 [%r48],%r37; .loc 1 148 9 mov.u64 %r38,1; .loc 1 148 5 mov.u64 %r36,%r38; .loc 1 147 5 mov.u64 %r22,0; .loc 1 146 18 mov.u64 %r26,-1; .loc 1 175 10 mov.u64 %r73,%r38; .loc 1 149 9 bra $L8; $L13: .loc 1 151 9 add.u64 %r60,%r46,%r33; .loc 1 152 9 add.u64 %r61,%r46,%r26; add.u64 %r62,%r61,%r36; .loc 1 153 10 ld.u8 %r63,[%r60]; ld.u8 %r64,[%r62]; setp.le.u16 %r65,%r63,%r64; @ %r65 bra $L9; .loc 1 158 6 sub.u64 %r38,%r33,%r26; mov.u64 %r22,%r33; .loc 1 157 6 mov.u64 %r36,1; bra $L8; $L9: .loc 1 160 15 setp.ne.u16 %r68,%r63,%r64; @ %r68 bra $L11; .loc 1 163 7 setp.eq.u64 %r69,%r36,%r38; @ %r69 bra $L12; .loc 1 164 6 add.u64 %r36,%r36,1; bra $L8; $L12: .loc 1 167 10 mov.u64 %r22,%r33; .loc 1 168 10 mov.u64 %r36,1; bra $L8; $L11: .loc 1 174 19 mov.u64 %r26,%r22; .loc 1 174 22 add.u64 %r22,%r22,1; .loc 1 175 10 mov.u64 %r38,%r73; .loc 1 175 6 mov.u64 %r36,1; $L8: .loc 1 149 12 add.u64 %r33,%r22,%r36; .loc 1 149 9 setp.lt.u64 %r70,%r33,%r47; @ %r70 bra $L13; .loc 1 181 22 add.u64 %r34,%r26,1; .loc 1 181 39 add.u64 %r45,%r32,1; .loc 1 181 6 setp.lt.u64 %r71,%r34,%r45; @ %r71 bra $L1; .loc 1 183 11 st.u64 [%r48],%r38; .loc 1 184 25 mov.u64 %r45,%r34; $L1: .loc 1 185 1 mov.u64 %value,%r45; st.param.u64 [%value_out],%value; ret; } // 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,2064; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u64 %r22; .reg .u64 %r30; .reg .u64 %r39; .reg .u64 %r40; .reg .u64 %r42; .reg .u64 %r57; .reg .u64 %r62; .reg .u64 %r69; .reg .u64 %r71; .reg .u64 %r72; .reg .u64 %r73; .reg .u64 %r81; .reg .u64 %r82; .reg .u64 %r84; .reg .u64 %r85; .reg .u64 %r88; .reg .u64 %r109; .reg .u64 %r111; .reg .u64 %r113; .reg .u64 %r115; .reg .u64 %r117; .reg .u64 %r125; .reg .u64 %r126; .reg .u64 %r127; .reg .u64 %r128; .reg .u64 %r129; .reg .u64 %r133; .reg .u64 %r134; .reg .pred %r135; .reg .u64 %r136; .reg .pred %r137; .reg .u64 %r139; .reg .u64 %r140; .reg .u64 %r141; .reg .u64 %r143; .reg .pred %r144; .reg .u32 %r148; .reg .pred %r149; .reg .u64 %r150; .reg .u64 %r153; .reg .u64 %r154; .reg .u64 %r155; .reg .pred %r156; .reg .pred %r157; .reg .pred %r158; .reg .pred %r159; .reg .u64 %r160; .reg .u64 %r161; .reg .u64 %r162; .reg .u16 %r163; .reg .u16 %r164; .reg .pred %r165; .reg .pred %r166; .reg .u64 %r167; .reg .u64 %r168; .reg .u64 %r169; .reg .u16 %r170; .reg .u16 %r171; .reg .pred %r172; .reg .pred %r173; .reg .u64 %r174; .reg .u64 %r175; .reg .u64 %r176; .reg .u16 %r177; .reg .u16 %r178; .reg .pred %r179; .reg .u64 %r180; .reg .pred %r181; .reg .u32 %r183; .reg .u64 %r185; .reg .u64 %r186; .reg .u64 %r187; .reg .u32 %r189; .reg .u32 %r190; .reg .u32 %r192; .reg .u32 %r193; .reg .u16 %r194; .reg .u16 %r195; .reg .u16 %r196; .reg .u32 %r197; .reg .u16 %r198; .reg .pred %r199; .reg .u64 %r200; .reg .u64 %r201; .reg .u64 %r202; .reg .u64 %r203; .reg .u64 %r206; .reg .u64 %r207; .reg .u64 %r208; .reg .pred %r209; .reg .pred %r210; .reg .u64 %r212; .reg .u64 %r213; .reg .u16 %r214; .reg .u16 %r215; .reg .pred %r216; .reg .pred %r217; .reg .u64 %r218; .reg .u64 %r219; .reg .u64 %r220; .reg .u16 %r221; .reg .u16 %r222; .reg .pred %r223; .reg .pred %r224; .reg .u64 %r225; .reg .u64 %r226; .reg .u64 %r227; .reg .u16 %r228; .reg .u16 %r229; .reg .pred %r230; .reg .u32 %r232; .reg .u64 %r234; .reg .u64 %r235; .reg .u64 %r236; .reg .u32 %r238; .reg .u32 %r239; .reg .u32 %r241; .reg .u32 %r242; .reg .u16 %r243; .reg .u16 %r244; .reg .u16 %r245; .reg .u32 %r246; .reg .u16 %r247; .reg .pred %r248; .reg .pred %r250; .reg .u64 %r251; .reg .u64 %r252; .reg .u64 %r253; .reg .u16 %r254; .reg .u16 %r255; .reg .pred %r256; .reg .u64 %r257; .reg .u64 %r259; .reg .u64 %r260; .reg .pred %r262; .reg .u64 %r264; .reg .u64 %r265; .reg .u16 %r266; .reg .u16 %r267; .reg .pred %r268; .reg .u64 %r272; .reg .u64 %r273; .reg .u64 %r274; .reg .u32 %r278; .reg .pred %r279; .reg .u64 %r280; .reg .u64 %r281; .reg .u64 %r282; .reg .u64 %r283; mov.u64 %r126,%ar0; mov.u64 %r127,%ar1; mov.u64 %r128,%ar2; mov.u64 %r129,%ar3; .loc 1 304 12 add.u64 %r133,%frame,2048; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r128; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r129; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r133; call (%value_in),critical_factorization,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r134,[%value_in]; } mov.u64 %r111,%frame; $L16: .loc 1 311 20 st.u64 [%r111],%r129; add.u64 %r111,%r111,8; .loc 1 310 3 setp.ne.u64 %r135,%r133,%r111; @ %r135 bra $L16; ld.u64 %r136,[%frame+2048]; add.u64 %r115,%r128,%r136; .loc 1 312 3 setp.eq.u64 %r137,%r129,0; @ %r137 bra $L17; add.u64 %r117,%r129,-1; add.u64 %r113,%r129,%r128; mov.u64 %r22,%r128; add.u64 %r280,%r128,%r117; $L18: .loc 1 313 44 ld.u8 %r139,[%r22]; shl.b64 %r140,%r139,3; add.u64 %r141,%frame,%r140; sub.u64 %r143,%r280,%r22; st.u64 [%r141],%r143; add.u64 %r22,%r22,1; .loc 1 312 3 setp.ne.u64 %r144,%r22,%r113; @ %r144 bra $L18; .loc 1 317 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r128; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r115; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r134; call (%value_in),memcmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r148,[%value_in]; } .loc 1 317 6 setp.eq.u32 %r149,%r148,0; @ ! %r149 bra $L20; bra $L44; $L31: .loc 1 329 24 add.u64 %r150,%r126,%r42; .loc 1 329 10 ld.u8 %r153,[%r150+-1]; shl.b64 %r154,%r153,3; add.u64 %r155,%frame,%r154; ld.u64 %r73,[%r155]; .loc 1 330 7 setp.eq.u64 %r156,%r73,0; @ %r156 bra $L21; .loc 1 332 11 setp.eq.u64 %r157,%r72,0; @ %r157 bra $L22; .loc 1 332 28 ld.u64 %r30,[%frame+2048]; .loc 1 332 19 setp.le.u64 %r158,%r30,%r73; @ %r158 bra $L22; .loc 1 337 11 sub.u64 %r73,%r129,%r30; $L22: .loc 1 340 10 add.u64 %r57,%r57,%r73; .loc 1 339 15 mov.u64 %r72,0; .loc 1 341 8 bra $L23; $L21: .loc 1 345 6 max.u64 %r81,%r72,%r134; .loc 1 346 10 setp.ge.u64 %r159,%r81,%r117; @ %r159 bra $L24; .loc 1 347 9 add.u64 %r160,%r126,%r57; add.u64 %r161,%r160,%r81; .loc 1 346 34 add.u64 %r162,%r128,%r81; .loc 1 346 30 ld.u8 %r163,[%r161]; ld.u8 %r164,[%r162]; setp.ne.u16 %r165,%r163,%r164; @ %r165 bra $L25; $L26: .loc 1 348 6 add.u64 %r81,%r81,1; .loc 1 346 10 setp.eq.u64 %r166,%r81,%r117; @ %r166 bra $L24; .loc 1 346 34 add.u64 %r167,%r128,%r81; .loc 1 347 9 add.u64 %r168,%r57,%r81; add.u64 %r169,%r126,%r168; .loc 1 346 30 ld.u8 %r170,[%r167]; ld.u8 %r171,[%r169]; setp.eq.u16 %r172,%r170,%r171; @ %r172 bra $L26; bra $L25; $L45: mov.u64 %r88,%r40; $L28: .loc 1 355 3 add.u64 %r40,%r88,-1; .loc 1 353 14 setp.eq.u64 %r173,%r72,%r88; @ %r173 bra $L27; .loc 1 353 34 add.u64 %r174,%r128,%r40; .loc 1 354 9 add.u64 %r175,%r57,%r40; add.u64 %r176,%r126,%r175; .loc 1 353 30 ld.u8 %r177,[%r174]; ld.u8 %r178,[%r176]; setp.eq.u16 %r179,%r177,%r178; @ %r179 bra $L45; bra $L27; $L47: .loc 1 353 14 mov.u64 %r88,%r134; $L27: .loc 1 356 27 add.u64 %r180,%r72,1; .loc 1 356 11 setp.le.u64 %r181,%r180,%r88; @ %r181 bra $L29; .loc 1 357 10 add.u64 %r125,%r126,%r57; bra $L15; $L29: .loc 1 360 10 ld.u64 %r39,[%frame+2048]; add.u64 %r57,%r57,%r39; .loc 1 361 15 sub.u64 %r72,%r129,%r39; $L23: .loc 1 339 15 mov.u64 %r127,%r42; bra $L19; $L44: .loc 1 322 14 mov.u64 %r72,0; .loc 1 324 9 mov.u64 %r57,%r72; .loc 1 352 10 add.u64 %r282,%r134,-1; $L19: .loc 1 325 14 add.u64 %r42,%r57,%r129; sub.u64 %r185,%r42,%r127; add.u64 %r186,%r126,%r127; mov.u32 %r183,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r186; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r183; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r185; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r187,[%value_in]; } .loc 1 325 13 set.u32.eq.u64 %r189,%r187,0; neg.s32 %r190,%r189; .loc 1 325 14 set.u32.ne.u64 %r192,%r42,0; neg.s32 %r193,%r192; cvt.u16.u32 %r195,%r190; cvt.u16.u32 %r196,%r193; and.b16 %r194,%r195,%r196; cvt.u32.u16 %r197,%r194; cvt.u16.u8 %r198,%r197; setp.ne.u16 %r199,%r198,0; @ %r199 bra $L31; $L42: .loc 1 408 10 mov.u64 %r125,0; bra $L15; $L20: .loc 1 375 16 sub.u64 %r201,%r129,%r134; max.u64 %r200,%r201,%r134; .loc 1 375 50 add.u64 %r202,%r200,1; .loc 1 375 14 st.u64 [%frame+2048],%r202; .loc 1 376 9 mov.u64 %r71,0; .loc 1 390 26 add.u64 %r283,%r129,-1; .loc 1 377 13 bra $L32; $L41: .loc 1 381 24 add.u64 %r203,%r126,%r62; .loc 1 381 10 ld.u8 %r206,[%r203+-1]; shl.b64 %r207,%r206,3; add.u64 %r208,%frame,%r207; ld.u64 %r82,[%r208]; .loc 1 382 7 setp.ne.u64 %r209,%r82,0; @ %r209 bra $L33; .loc 1 390 10 setp.ge.u64 %r210,%r134,%r283; @ ! %r210 bra $L65; add.u64 %r281,%r126,%r71; bra $L34; $L65: .loc 1 391 9 add.u64 %r281,%r126,%r71; add.u64 %r212,%r281,%r134; .loc 1 390 34 add.u64 %r213,%r128,%r134; .loc 1 390 30 ld.u8 %r214,[%r212]; ld.u8 %r215,[%r213]; setp.eq.u16 %r216,%r214,%r215; @ %r216 bra $L46; mov.u64 %r84,%r134; bra $L36; $L33: .loc 1 384 10 add.u64 %r71,%r71,%r82; .loc 1 385 8 bra $L37; $L46: .loc 1 390 30 mov.u64 %r84,%r134; $L35: .loc 1 392 6 add.u64 %r84,%r84,1; .loc 1 390 10 setp.ge.u64 %r217,%r84,%r283; @ %r217 bra $L34; .loc 1 390 34 add.u64 %r218,%r128,%r84; .loc 1 391 9 add.u64 %r219,%r71,%r84; add.u64 %r220,%r126,%r219; .loc 1 390 30 ld.u8 %r221,[%r218]; ld.u8 %r222,[%r220]; setp.eq.u16 %r223,%r221,%r222; @ %r223 bra $L35; bra $L36; $L39: .loc 1 399 3 add.u64 %r85,%r85,-1; .loc 1 397 14 setp.eq.u64 %r224,%r85,-1; @ %r224 bra $L38; .loc 1 397 33 add.u64 %r225,%r128,%r85; .loc 1 398 15 add.u64 %r226,%r71,%r85; add.u64 %r227,%r126,%r226; .loc 1 397 29 ld.u8 %r228,[%r225]; ld.u8 %r229,[%r227]; setp.eq.u16 %r230,%r228,%r229; @ %r230 bra $L39; bra $L40; $L37: .loc 1 390 30 mov.u64 %r127,%r62; $L32: .loc 1 377 14 add.u64 %r62,%r71,%r129; sub.u64 %r234,%r62,%r127; add.u64 %r235,%r126,%r127; mov.u32 %r232,0; { .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],%r234; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r236,[%value_in]; } set.u32.ne.u64 %r238,%r62,0; neg.s32 %r239,%r238; .loc 1 377 13 set.u32.eq.u64 %r241,%r236,0; neg.s32 %r242,%r241; .loc 1 377 14 cvt.u16.u32 %r244,%r239; cvt.u16.u32 %r245,%r242; and.b16 %r243,%r244,%r245; cvt.u32.u16 %r246,%r243; cvt.u16.u8 %r247,%r246; setp.ne.u16 %r248,%r247,0; @ %r248 bra $L41; bra $L42; $L24: .loc 1 352 10 mov.u64 %r88,%r282; .loc 1 353 14 setp.ge.u64 %r250,%r72,%r134; @ %r250 bra $L47; .loc 1 354 9 add.u64 %r251,%r126,%r57; add.u64 %r252,%r251,%r282; .loc 1 353 34 add.u64 %r253,%r128,%r282; .loc 1 353 30 ld.u8 %r254,[%r252]; ld.u8 %r255,[%r253]; setp.eq.u16 %r256,%r254,%r255; @ %r256 bra $L28; mov.u64 %r88,%r134; bra $L27; $L25: sub.u64 %r257,%r57,%r134; add.u64 %r109,%r257,1; .loc 1 365 10 add.u64 %r57,%r81,%r109; .loc 1 366 15 mov.u64 %r72,%r73; bra $L23; $L40: .loc 1 402 10 ld.u64 %r259,[%frame+2048]; add.u64 %r71,%r71,%r259; bra $L37; $L38: .loc 1 401 10 mov.u64 %r125,%r281; bra $L15; $L36: sub.u64 %r260,%r71,%r134; add.u64 %r69,%r260,1; .loc 1 405 8 add.u64 %r71,%r69,%r84; bra $L37; $L34: .loc 1 396 10 add.u64 %r85,%r134,-1; .loc 1 397 14 setp.eq.u64 %r262,%r85,-1; @ %r262 bra $L38; .loc 1 398 15 add.u64 %r264,%r281,%r85; .loc 1 397 33 add.u64 %r265,%r128,%r85; .loc 1 397 29 ld.u8 %r266,[%r264]; ld.u8 %r267,[%r265]; setp.eq.u16 %r268,%r266,%r267; @ %r268 bra $L39; bra $L40; $L43: .loc 1 325 14 neg.s64 %r272,%r127; add.u64 %r273,%r126,%r127; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r273; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r278; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r272; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r274,[%value_in]; } .loc 1 408 10 mov.u64 %r125,%r129; bra $L15; $L17: .loc 1 317 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r128; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r115; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r134; call (%value_in),memcmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r278,[%value_in]; } .loc 1 317 6 setp.eq.u32 %r279,%r278,0; @ %r279 bra $L43; bra $L20; $L15: .loc 1 409 1 mov.u64 %value,%r125; 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,16; sub.u64 %stack,%frame,0; st.shared.u64 [%sspslot],%stack; } .reg .u32 %r25; .reg .u64 %r34; .reg .u64 %r37; .reg .u64 %r38; .reg .u64 %r39; .reg .u32 %r41; .reg .u64 %r42; .reg .u64 %r48; .reg .u64 %r49; .reg .u64 %r50; .reg .u64 %r52; .reg .u64 %r55; .reg .u64 %r62; .reg .u64 %r63; .reg .u64 %r71; .reg .u64 %r73; .reg .u64 %r77; .reg .u64 %r82; .reg .u64 %r89; .reg .u64 %r98; .reg .u32 %r110; .reg .u32 %r112; .reg .u64 %r116; .reg .u64 %r117; .reg .u64 %r118; .reg .pred %r119; .reg .pred %r120; .reg .u16 %r122; .reg .u16 %r123; .reg .u32 %r124; .reg .u32 %r125; .reg .pred %r126; .reg .pred %r127; .reg .pred %r128; .reg .pred %r129; .reg .pred %r130; .reg .u64 %r133; .reg .u64 %r134; .reg .u32 %r136; .reg .u32 %r137; .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 .pred %r148; .reg .u64 %r152; .reg .u64 %r156; .reg .u64 %r157; .reg .u32 %r158; .reg .pred %r159; .reg .pred %r160; .reg .u64 %r161; .reg .u64 %r162; .reg .u64 %r163; .reg .u16 %r164; .reg .u16 %r165; .reg .pred %r166; .reg .pred %r167; .reg .u64 %r168; .reg .u64 %r169; .reg .u64 %r170; .reg .u16 %r171; .reg .u16 %r172; .reg .pred %r173; .reg .u64 %r174; .reg .u64 %r175; .reg .u64 %r176; .reg .u16 %r177; .reg .u16 %r178; .reg .pred %r179; .reg .pred %r180; .reg .u64 %r181; .reg .u64 %r182; .reg .u64 %r183; .reg .u16 %r184; .reg .u16 %r185; .reg .pred %r186; .reg .u64 %r187; .reg .pred %r188; .reg .u32 %r190; .reg .u64 %r192; .reg .u64 %r193; .reg .u64 %r194; .reg .u32 %r196; .reg .u32 %r197; .reg .u32 %r199; .reg .u32 %r200; .reg .u16 %r201; .reg .u16 %r202; .reg .u16 %r203; .reg .u32 %r204; .reg .u16 %r205; .reg .pred %r206; .reg .u64 %r207; .reg .u64 %r208; .reg .u64 %r209; .reg .pred %r210; .reg .u64 %r211; .reg .u64 %r212; .reg .u64 %r213; .reg .u16 %r214; .reg .u16 %r215; .reg .pred %r216; .reg .u64 %r218; .reg .u64 %r219; .reg .u16 %r220; .reg .u16 %r221; .reg .pred %r222; .reg .pred %r223; .reg .u64 %r224; .reg .u64 %r225; .reg .u64 %r226; .reg .u16 %r227; .reg .u16 %r228; .reg .pred %r229; .reg .u32 %r231; .reg .u64 %r233; .reg .u64 %r234; .reg .u64 %r235; .reg .u32 %r237; .reg .u32 %r238; .reg .u32 %r240; .reg .u32 %r241; .reg .u16 %r242; .reg .u16 %r243; .reg .u16 %r244; .reg .u32 %r245; .reg .u16 %r246; .reg .pred %r247; .reg .pred %r248; .reg .u64 %r249; .reg .u64 %r250; .reg .u64 %r251; .reg .u16 %r252; .reg .u16 %r253; .reg .pred %r254; .reg .u64 %r259; .reg .u64 %r261; .reg .u64 %r262; .reg .pred %r264; .reg .pred %r265; .reg .u64 %r266; .reg .u64 %r268; .reg .u64 %r269; mov.u64 %r117,%ar0; mov.u64 %r118,%ar1; .loc 2 97 10 ld.s8 %r25,[%r117]; ld.s8 %r112,[%r118]; .loc 2 97 9 setp.eq.u32 %r119,%r25,0; @ %r119 bra $L67; .loc 2 97 20 setp.eq.u32 %r120,%r112,0; @ %r120 bra $L96; mov.u64 %r39,%r118; mov.u64 %r38,%r117; mov.u32 %r110,%r112; .loc 2 92 7 mov.u32 %r41,1; $L70: .loc 2 98 20 add.u64 %r38,%r38,1; .loc 2 98 33 add.u64 %r39,%r39,1; .loc 2 98 23 cvt.u16.u32 %r122,%r25; cvt.u16.u32 %r123,%r110; set.u32.eq.u16 %r124,%r122,%r123; neg.s32 %r125,%r124; .loc 2 98 8 and.b32 %r41,%r41,%r125; .loc 2 97 10 ld.s8 %r25,[%r38]; ld.s8 %r110,[%r39]; .loc 2 97 9 setp.eq.u32 %r126,%r25,0; @ %r126 bra $L69; .loc 2 97 20 setp.ne.u32 %r127,%r110,0; @ %r127 bra $L70; bra $L71; $L67: .loc 2 99 6 setp.eq.u32 %r128,%r112,0; .loc 2 100 12 selp.u64 %r116,%r117,0,%r128; bra $L66; $L69: .loc 2 99 6 setp.ne.u32 %r129,%r110,0; @ %r129 bra $L98; $L71: .loc 2 101 6 setp.ne.u32 %r130,%r41,0; @ %r130 bra $L99; .loc 2 106 23 sub.u64 %r42,%r39,%r118; .loc 2 107 14 add.u64 %r133,%r117,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r133; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r112; call (%value_in),strchr,(%out_arg1,%out_arg2); ld.param.u64 %r134,[%value_in]; } mov.u64 %r116,%r134; .loc 2 108 7 set.u32.eq.u64 %r136,%r134,0; neg.s32 %r137,%r136; .loc 2 108 31 set.u32.eq.u64 %r139,%r42,1; neg.s32 %r140,%r139; .loc 2 108 17 cvt.u16.u32 %r142,%r137; cvt.u16.u32 %r143,%r140; or.b16 %r141,%r142,%r143; .loc 2 108 6 cvt.u32.u16 %r144,%r141; cvt.u16.u8 %r145,%r144; setp.ne.u16 %r146,%r145,0; @ %r146 bra $L66; .loc 2 110 39 add.u64 %r34,%r117,%r42; .loc 2 111 5 setp.lt.u64 %r147,%r34,%r134; @ %r147 bra $L100; .loc 2 111 29 sub.u64 %r37,%r34,%r134; bra $L72; $L100: .loc 2 111 5 mov.u64 %r37,1; $L72: .loc 2 114 6 setp.gt.u64 %r148,%r42,31; @ %r148 bra $L73; .loc 1 209 12 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r118; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r42; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call (%value_in),critical_factorization,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r152,[%value_in]; } .loc 1 213 32 ld.u64 %r157,[%frame]; add.u64 %r156,%r118,%r157; .loc 1 213 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r118; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r156; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r152; call (%value_in),memcmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r158,[%value_in]; } .loc 1 213 6 setp.eq.u32 %r159,%r158,0; @ %r159 bra $L101; bra $L115; $L83: .loc 1 223 6 max.u64 %r50,%r152,%r48; .loc 1 224 10 setp.le.u64 %r160,%r42,%r50; @ %r160 bra $L76; .loc 1 225 12 add.u64 %r161,%r134,%r50; add.u64 %r162,%r161,%r52; .loc 1 224 30 add.u64 %r163,%r118,%r50; .loc 1 224 26 ld.u8 %r164,[%r162]; ld.u8 %r165,[%r163]; setp.ne.u16 %r166,%r164,%r165; @ %r166 bra $L77; $L78: .loc 1 226 6 add.u64 %r50,%r50,1; .loc 1 224 10 setp.eq.u64 %r167,%r42,%r50; @ %r167 bra $L76; .loc 1 224 30 add.u64 %r168,%r118,%r50; .loc 1 225 12 add.u64 %r169,%r50,%r52; add.u64 %r170,%r134,%r169; .loc 1 224 26 ld.u8 %r171,[%r168]; ld.u8 %r172,[%r170]; setp.eq.u16 %r173,%r171,%r172; @ %r173 bra $L78; bra $L77; $L94: .loc 1 231 34 add.u64 %r174,%r118,%r269; .loc 1 232 9 add.u64 %r175,%r134,%r52; add.u64 %r176,%r175,%r269; .loc 1 231 30 ld.u8 %r177,[%r174]; ld.u8 %r178,[%r176]; setp.ne.u16 %r179,%r177,%r178; @ ! %r179 bra $L80; bra $L102; $L103: mov.u64 %r55,%r49; $L80: .loc 1 233 3 add.u64 %r49,%r55,-1; .loc 1 231 14 setp.eq.u64 %r180,%r48,%r55; @ %r180 bra $L79; .loc 1 231 34 add.u64 %r181,%r118,%r49; .loc 1 232 9 add.u64 %r182,%r52,%r49; add.u64 %r183,%r134,%r182; .loc 1 231 30 ld.u8 %r184,[%r181]; ld.u8 %r185,[%r183]; setp.eq.u16 %r186,%r184,%r185; @ %r186 bra $L103; bra $L79; $L102: mov.u64 %r55,%r152; $L79: .loc 1 234 27 add.u64 %r187,%r48,1; .loc 1 234 11 setp.le.u64 %r188,%r187,%r55; @ %r188 bra $L81; .loc 1 235 10 add.u64 %r116,%r134,%r52; bra $L66; $L81: .loc 1 238 10 ld.u64 %r62,[%frame]; add.u64 %r52,%r52,%r62; .loc 1 239 15 sub.u64 %r48,%r42,%r62; $L93: .loc 1 244 15 mov.u64 %r37,%r63; bra $L74; $L101: .loc 1 218 14 mov.u64 %r48,0; .loc 1 219 9 mov.u64 %r52,%r48; .loc 1 230 10 add.u64 %r269,%r152,-1; $L74: .loc 1 220 14 add.u64 %r63,%r42,%r52; sub.u64 %r192,%r63,%r37; add.u64 %r193,%r134,%r37; mov.u32 %r190,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r193; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r190; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r192; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r194,[%value_in]; } .loc 1 220 13 set.u32.eq.u64 %r196,%r194,0; neg.s32 %r197,%r196; .loc 1 220 14 set.u32.ne.u64 %r199,%r63,0; neg.s32 %r200,%r199; cvt.u16.u32 %r202,%r197; cvt.u16.u32 %r203,%r200; and.b16 %r201,%r202,%r203; cvt.u32.u16 %r204,%r201; cvt.u16.u8 %r205,%r204; setp.ne.u16 %r206,%r205,0; @ %r206 bra $L83; bra $L84; $L115: .loc 1 252 16 sub.u64 %r208,%r42,%r152; max.u64 %r207,%r208,%r152; .loc 1 252 50 add.u64 %r209,%r207,1; .loc 1 252 14 st.u64 [%frame],%r209; .loc 1 253 9 mov.u64 %r73,0; bra $L85; $L104: .loc 1 258 26 mov.u64 %r71,%r152; $L87: .loc 1 260 6 add.u64 %r71,%r71,1; .loc 1 258 10 setp.eq.u64 %r210,%r42,%r71; @ %r210 bra $L86; .loc 1 258 30 add.u64 %r211,%r118,%r71; .loc 1 259 12 add.u64 %r212,%r71,%r73; add.u64 %r213,%r134,%r212; .loc 1 258 26 ld.u8 %r214,[%r211]; ld.u8 %r215,[%r213]; setp.eq.u16 %r216,%r214,%r215; @ %r216 bra $L87; bra $L88; $L95: .loc 1 266 15 add.u64 %r268,%r134,%r73; add.u64 %r218,%r268,%r77; .loc 1 265 33 add.u64 %r219,%r118,%r77; .loc 1 265 29 ld.u8 %r220,[%r218]; ld.u8 %r221,[%r219]; setp.ne.u16 %r222,%r220,%r221; @ %r222 bra $L89; $L91: .loc 1 267 3 add.u64 %r77,%r77,-1; .loc 1 265 14 setp.eq.u64 %r223,%r77,-1; @ %r223 bra $L90; .loc 1 265 33 add.u64 %r224,%r118,%r77; .loc 1 266 15 add.u64 %r225,%r73,%r77; add.u64 %r226,%r134,%r225; .loc 1 265 29 ld.u8 %r227,[%r224]; ld.u8 %r228,[%r226]; setp.eq.u16 %r229,%r227,%r228; @ %r229 bra $L91; bra $L89; $L92: .loc 1 258 26 mov.u64 %r37,%r82; $L85: .loc 1 254 14 add.u64 %r82,%r42,%r73; sub.u64 %r233,%r82,%r37; add.u64 %r234,%r134,%r37; mov.u32 %r231,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r234; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r231; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r233; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r235,[%value_in]; } set.u32.ne.u64 %r237,%r82,0; neg.s32 %r238,%r237; .loc 1 254 13 set.u32.eq.u64 %r240,%r235,0; neg.s32 %r241,%r240; .loc 1 254 14 cvt.u16.u32 %r243,%r238; cvt.u16.u32 %r244,%r241; and.b16 %r242,%r243,%r244; cvt.u32.u16 %r245,%r242; cvt.u16.u8 %r246,%r245; setp.eq.u16 %r247,%r246,0; @ %r247 bra $L84; .loc 1 258 10 setp.le.u64 %r248,%r42,%r152; @ %r248 bra $L86; .loc 1 259 12 add.u64 %r249,%r134,%r152; add.u64 %r250,%r249,%r73; .loc 1 258 30 add.u64 %r251,%r118,%r152; .loc 1 258 26 ld.u8 %r252,[%r250]; ld.u8 %r253,[%r251]; setp.eq.u16 %r254,%r252,%r253; @ %r254 bra $L104; mov.u64 %r71,%r152; bra $L88; $L84: .loc 1 276 10 mov.u64 %r116,0; .loc 2 115 12 bra $L66; $L73: .loc 2 118 10 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r134; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r37; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r118; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r42; call (%value_in),two_way_long_needle,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r259,[%value_in]; } mov.u64 %r116,%r259; bra $L66; $L96: .loc 2 97 20 mov.u64 %r116,%r117; bra $L66; $L98: .loc 2 100 12 mov.u64 %r116,0; bra $L66; $L99: mov.u64 %r116,%r117; bra $L66; $L90: .loc 1 269 10 mov.u64 %r116,%r268; bra $L66; $L89: .loc 1 270 10 ld.u64 %r261,[%frame]; add.u64 %r73,%r73,%r261; bra $L92; $L77: sub.u64 %r262,%r52,%r152; add.u64 %r89,%r262,1; .loc 1 243 10 add.u64 %r52,%r89,%r50; .loc 1 244 15 mov.u64 %r48,0; bra $L93; $L76: .loc 1 230 10 mov.u64 %r55,%r269; .loc 1 231 14 setp.gt.u64 %r264,%r152,%r48; @ %r264 bra $L94; mov.u64 %r55,%r152; bra $L79; $L86: .loc 1 264 10 add.u64 %r77,%r152,-1; .loc 1 265 14 setp.ne.u64 %r265,%r77,-1; @ %r265 bra $L95; add.u64 %r268,%r134,%r73; bra $L90; $L88: sub.u64 %r266,%r73,%r152; add.u64 %r98,%r266,1; .loc 1 273 8 add.u64 %r73,%r71,%r98; bra $L92; $L66: .loc 2 121 1 mov.u64 %value,%r116; st.shared.u64 [%sspslot],%sspprev; st.param.u64 [%value_out],%value; ret; } lib_a-strtod.o/ 1591654536 399 399 100644 61830 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN FUNCTION DECL: sulp .func (.param .f64 %value_out) sulp (.param .u64 %in_ar0, .param .u32 %in_ar1); .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 .visible .func (.param .f64 %value_out) strtod (.param .u64 %in_ar0, .param .u64 %in_ar1); // 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: __mprec_bigtens .extern .const .align 8 .u64 __mprec_bigtens[5]; // BEGIN GLOBAL VAR DECL: __mprec_tens .extern .const .align 8 .u64 __mprec_tens[25]; // BEGIN GLOBAL FUNCTION DECL: __ulp .extern .func (.param .f64 %value_out) __ulp (.param .f64 %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); // 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: _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: strncmp .extern .func (.param .u32 %value_out) strncmp (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // 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: __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: __ratio .extern .func (.param .f64 %value_out) __ratio (.param .u64 %in_ar0, .param .u64 %in_ar1); // BEGIN GLOBAL FUNCTION DECL: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0); // 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: fpinan$2631 .const .align 4 .u32 fpinan$2631[5] = {52,4294966222,971,1,0 }; // BEGIN VAR DEF: fpi$2595 .const .align 4 .u32 fpi$2595[5] = {53,4294966222,971,1,0 }; // BEGIN VAR DEF: tinytens .const .align 8 .u64 tinytens[5] = {4367597403136100796,4128101167230658355,3649340653511681853,2691949749288605597,1254259266780163907 }; // 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 FUNCTION DEF: sulp .func (.param .f64 %value_out) sulp (.param .u64 %in_ar0, .param .u32 %in_ar1) { .reg .f64 %value; .reg .u64 %ar0; ld.param.u64 %ar0,[%in_ar0]; .reg .u32 %ar1; ld.param.u32 %ar1,[%in_ar1]; .reg .u32 %r31; .reg .f64 %r33; .reg .u64 %r34; .reg .u64 %r35; .reg .u32 %r36; .reg .f64 %r37; .reg .f64 %r38; .reg .pred %r39; .reg .u64 %r40; .reg .u32 %r41; .reg .u32 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .pred %r45; .reg .u32 %r46; .reg .u32 %r47; .reg .u64 %r48; .reg .u64 %r52; .reg .f64 %r53; mov.u64 %r34,%ar0; ld.u64 %r35,[%r34]; mov.u32 %r36,%ar1; .loc 1 163 14 mov.b64 %r37,%r35; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r37; call (%value_in),__ulp,(%out_arg1); ld.param.f64 %r38,[%value_in]; } mov.f64 %r33,%r38; .loc 1 164 12 setp.eq.u32 %r39,%r36,0; @ %r39 bra $L1; .loc 1 164 40 shr.u64 %r40,%r35,32; .loc 1 164 62 cvt.u32.u64 %r42,%r40; shr.u32 %r41,%r42,20; and.b32 %r43,%r41,2047; .loc 1 164 36 mov.u32 %r44,107; sub.u32 %r31,%r44,%r43; .loc 1 164 20 setp.le.s32 %r45,%r31,0; @ %r45 bra $L1; .loc 1 166 32 shl.b32 %r46,%r31,20; .loc 1 166 27 add.u32 %r47,%r46,1072693248; .loc 1 166 19 cvt.u64.u32 %r48,%r47; .loc 1 168 19 shl.b64 %r52,%r48,32; .loc 1 170 19 mov.b64 %r53,%r52; mul.f64 %r33,%r33,%r53; $L1: .loc 1 171 9 mov.f64 %value,%r33; 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 %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 .u32 %r23; .reg .u64 %r24; .reg .u32 %r26; .reg .u32 %r27; .reg .u32 %r29; .reg .u64 %r30; .reg .u32 %r32; .reg .u32 %r39; .reg .u64 %r50; .reg .u64 %r51; .reg .u64 %r59; .reg .f64 %r69; .reg .u32 %r75; .reg .u64 %r81; .reg .u32 %r87; .reg .u64 %r88; .reg .u64 %r93; .reg .f64 %r99; .reg .f64 %r127; .reg .u32 %r128; .reg .u32 %r134; .reg .u32 %r137; .reg .u32 %r157; .reg .u64 %r158; .reg .u32 %r159; .reg .u32 %r173; .reg .u32 %r175; .reg .u32 %r193; .reg .u32 %r194; .reg .f64 %r196; .reg .f64 %r197; .reg .f64 %r199; .reg .f64 %r207; .reg .u64 %r210; .reg .f64 %r211; .reg .f64 %r216; .reg .u32 %r219; .reg .u32 %r220; .reg .u32 %r221; .reg .u32 %r222; .reg .u32 %r223; .reg .u64 %r224; .reg .u32 %r225; .reg .u32 %r226; .reg .u32 %r227; .reg .u32 %r228; .reg .u32 %r229; .reg .u64 %r230; .reg .u32 %r232; .reg .u32 %r233; .reg .u64 %r234; .reg .u32 %r235; .reg .u32 %r236; .reg .f64 %r237; .reg .u64 %r238; .reg .u32 %r239; .reg .u32 %r240; .reg .u64 %r241; .reg .u64 %r243; .reg .u64 %r244; .reg .u32 %r245; .reg .u32 %r246; .reg .u32 %r247; .reg .f64 %r248; .reg .f64 %r249; .reg .f64 %r250; .reg .u32 %r251; .reg .u64 %r254; .reg .u64 %r257; .reg .u64 %r259; .reg .u32 %r260; .reg .u32 %r261; .reg .u32 %r263; .reg .u64 %r264; .reg .u64 %r266; .reg .u32 %r267; .reg .u32 %r269; .reg .u32 %r270; .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 %r285; .reg .u32 %r286; .reg .u32 %r287; .reg .u32 %r290; .reg .u32 %r292; .reg .u32 %r297; .reg .u32 %r298; .reg .f64 %r301; .reg .u64 %r303; .reg .u32 %r305; .reg .u32 %r306; .reg .u32 %r311; .reg .u32 %r312; .reg .u64 %r315; .reg .u32 %r317; .reg .u32 %r318; .reg .u32 %r335; .reg .u64 %r337; .reg .u32 %r341; .reg .u32 %r342; .reg .f64 %r344; .reg .u32 %r345; .reg .u64 %r347; .reg .f64 %r348; .reg .u32 %r349; .reg .u32 %r350; .reg .u64 %r351; .reg .u64 %r355; .reg .u32 %r359; .reg .u64 %r365; .reg .u64 %r366; .reg .f64 %r368; .reg .u64 %r369; .reg .u64 %r370; .reg .u64 %r371; .reg .u64 %r372; .reg .u16 %r373; .reg .pred %r374; .reg .pred %r376; .reg .pred %r377; .reg .pred %r379; .reg .pred %r381; .reg .pred %r383; .reg .pred %r384; .reg .u16 %r385; .reg .pred %r386; .reg .u16 %r387; .reg .pred %r388; .reg .pred %r390; .reg .u64 %r393; .reg .u64 %r397; .reg .u64 %r398; .reg .u64 %r399; .reg .u32 %r400; .reg .pred %r401; .reg .pred %r402; .reg .pred %r403; .reg .pred %r404; .reg .u32 %r406; .reg .u64 %r410; .reg .pred %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 .pred %r451; .reg .pred %r452; .reg .u32 %r454; .reg .u32 %r455; .reg .u32 %r456; .reg .u32 %r459; .reg .u32 %r460; .reg .u32 %r461; .reg .pred %r464; .reg .u64 %r466; .reg .u64 %r467; .reg .u64 %r468; .reg .u64 %r470; .reg .u64 %r472; .reg .u64 %r474; .reg .u32 %r475; .reg .pred %r476; .reg .u64 %r478; .reg .u64 %r479; .reg .u64 %r480; .reg .u64 %r481; .reg .pred %r482; .reg .pred %r483; .reg .pred %r484; .reg .u32 %r485; .reg .pred %r486; .reg .pred %r487; .reg .pred %r488; .reg .pred %r489; .reg .u32 %r491; .reg .u32 %r492; .reg .pred %r495; .reg .u32 %r497; .reg .u32 %r498; .reg .pred %r500; .reg .pred %r501; .reg .u32 %r503; .reg .u32 %r504; .reg .u32 %r505; .reg .pred %r506; .reg .u32 %r508; .reg .u32 %r509; .reg .u32 %r510; .reg .u64 %r511; .reg .u32 %r512; .reg .pred %r513; .reg .u32 %r514; .reg .pred %r515; .reg .u32 %r516; .reg .u32 %r517; .reg .pred %r518; .reg .u64 %r519; .reg .u16 %r520; .reg .pred %r521; .reg .pred %r523; .reg .u64 %r524; .reg .u32 %r525; .reg .pred %r526; .reg .pred %r527; .reg .u64 %r528; .reg .pred %r529; .reg .u32 %r530; .reg .pred %r531; .reg .u64 %r532; .reg .u32 %r533; .reg .pred %r534; .reg .u32 %r536; .reg .u32 %r537; .reg .u32 %r538; .reg .u32 %r539; .reg .pred %r540; .reg .u64 %r541; .reg .u32 %r543; .reg .u32 %r544; .reg .u32 %r546; .reg .u32 %r547; .reg .u16 %r548; .reg .u16 %r549; .reg .u16 %r550; .reg .u32 %r551; .reg .u16 %r552; .reg .pred %r553; .reg .pred %r554; .reg .pred %r555; .reg .u32 %r556; .reg .pred %r557; .reg .pred %r558; .reg .pred %r559; .reg .pred %r560; .reg .pred %r561; .reg .pred %r562; .reg .pred %r563; .reg .u32 %r564; .reg .pred %r565; .reg .pred %r566; .reg .pred %r567; .reg .u32 %r568; .reg .pred %r569; .reg .pred %r570; .reg .pred %r571; .reg .u64 %r572; .reg .u64 %r573; .reg .u32 %r576; .reg .pred %r577; .reg .pred %r578; .reg .pred %r579; .reg .u64 %r580; .reg .u16 %r581; .reg .u32 %r582; .reg .pred %r583; .reg .u64 %r585; .reg .u64 %r587; .reg .u32 %r588; .reg .pred %r589; .reg .u32 %r590; .reg .u32 %r591; .reg .u64 %r592; .reg .u64 %r596; .reg .u64 %r597; .reg .pred %r601; .reg .pred %r602; .reg .pred %r603; .reg .f64 %r604; .reg .u64 %r605; .reg .u32 %r606; .reg .u64 %r607; .reg .u64 %r608; .reg .u64 %r609; .reg .f64 %r610; .reg .f64 %r611; .reg .pred %r612; .reg .pred %r613; .reg .pred %r614; .reg .pred %r615; .reg .u64 %r616; .reg .u64 %r617; .reg .u64 %r618; .reg .u64 %r619; .reg .f64 %r620; .reg .f64 %r621; .reg .u32 %r622; .reg .u32 %r623; .reg .pred %r624; .reg .u32 %r625; .reg .u64 %r626; .reg .u64 %r627; .reg .u64 %r628; .reg .u64 %r629; .reg .f64 %r630; .reg .f64 %r631; .reg .f64 %r632; .reg .u32 %r634; .reg .u64 %r635; .reg .u64 %r636; .reg .u64 %r637; .reg .f64 %r638; .reg .pred %r639; .reg .u64 %r640; .reg .u32 %r641; .reg .u64 %r642; .reg .u64 %r643; .reg .u64 %r644; .reg .f64 %r645; .reg .f64 %r646; .reg .u32 %r647; .reg .pred %r648; .reg .pred %r649; .reg .u64 %r650; .reg .u64 %r651; .reg .u64 %r652; .reg .u64 %r653; .reg .f64 %r654; .reg .f64 %r655; .reg .f64 %r656; .reg .pred %r657; .reg .pred %r658; .reg .u32 %r659; .reg .u32 %r660; .reg .u32 %r661; .reg .pred %r662; .reg .u32 %r663; .reg .pred %r664; .reg .f64 %r665; .reg .pred %r666; .reg .pred %r667; .reg .u64 %r668; .reg .u32 %r669; .reg .u32 %r670; .reg .u64 %r671; .reg .u64 %r672; .reg .u64 %r673; .reg .u64 %r676; .reg .u64 %r677; .reg .u64 %r678; .reg .f64 %r679; .reg .f64 %r680; .reg .u64 %r682; .reg .pred %r683; .reg .pred %r684; .reg .u32 %r685; .reg .u64 %r686; .reg .u64 %r687; .reg .u64 %r688; .reg .pred %r690; .reg .pred %r691; .reg .u64 %r692; .reg .u64 %r693; .reg .u64 %r694; .reg .u64 %r695; .reg .f64 %r696; .reg .f64 %r697; .reg .f64 %r698; .reg .pred %r699; .reg .pred %r700; .reg .u32 %r702; .reg .pred %r703; .reg .f64 %r704; .reg .pred %r705; .reg .pred %r706; .reg .u32 %r709; .reg .u32 %r710; .reg .u32 %r711; .reg .pred %r712; .reg .pred %r713; .reg .pred %r715; .reg .u32 %r718; .reg .u32 %r719; .reg .u32 %r720; .reg .u32 %r721; .reg .u64 %r722; .reg .u64 %r723; .reg .u64 %r724; .reg .u32 %r726; .reg .u32 %r727; .reg .u32 %r728; .reg .u32 %r729; .reg .u64 %r730; .reg .u64 %r731; .reg .f64 %r733; .reg .pred %r734; .reg .u32 %r735; .reg .u64 %r741; .reg .pred %r742; .reg .u32 %r743; .reg .pred %r744; .reg .u32 %r747; .reg .u64 %r748; .reg .pred %r749; .reg .u64 %r753; .reg .u64 %r754; .reg .u64 %r755; .reg .u64 %r757; .reg .u64 %r758; .reg .u64 %r764; .reg .pred %r765; .reg .u32 %r767; .reg .u64 %r768; .reg .pred %r769; .reg .pred %r770; .reg .u32 %r771; .reg .u32 %r772; .reg .u32 %r773; .reg .pred %r774; .reg .u32 %r775; .reg .pred %r776; .reg .u32 %r777; .reg .u32 %r778; .reg .u32 %r779; .reg .u32 %r780; .reg .u32 %r781; .reg .pred %r782; .reg .u64 %r787; .reg .pred %r788; .reg .u64 %r792; .reg .u64 %r793; .reg .pred %r794; .reg .u64 %r797; .reg .pred %r798; .reg .u64 %r803; .reg .u64 %r804; .reg .pred %r805; .reg .u64 %r809; .reg .pred %r810; .reg .pred %r811; .reg .u64 %r815; .reg .pred %r816; .reg .pred %r817; .reg .u64 %r821; .reg .pred %r822; .reg .u64 %r826; .reg .u64 %r827; .reg .pred %r828; .reg .u32 %r829; .reg .u32 %r832; .reg .pred %r833; .reg .pred %r834; .reg .u64 %r835; .reg .u64 %r836; .reg .pred %r837; .reg .u32 %r839; .reg .u32 %r840; .reg .pred %r841; .reg .u32 %r842; .reg .pred %r843; .reg .u32 %r844; .reg .pred %r845; .reg .u32 %r848; .reg .u64 %r849; .reg .u32 %r852; .reg .pred %r853; .reg .pred %r854; .reg .u64 %r856; .reg .u32 %r857; .reg .pred %r858; .reg .pred %r860; .reg .u32 %r861; .reg .u32 %r862; .reg .u32 %r863; .reg .u32 %r864; .reg .pred %r865; .reg .u64 %r866; .reg .pred %r867; .reg .u32 %r868; .reg .u32 %r869; .reg .u64 %r870; .reg .u64 %r875; .reg .u64 %r876; .reg .pred %r877; .reg .pred %r880; .reg .pred %r881; .reg .u32 %r883; .reg .u32 %r884; .reg .u64 %r885; .reg .u64 %r886; .reg .pred %r890; .reg .u64 %r891; .reg .u32 %r892; .reg .u32 %r893; .reg .pred %r894; .reg .u32 %r895; .reg .u32 %r896; .reg .pred %r897; .reg .u64 %r901; .reg .f64 %r902; .reg .u64 %r905; .reg .f64 %r906; .reg .pred %r907; .reg .f64 %r910; .reg .pred %r911; .reg .pred %r912; .reg .u64 %r913; .reg .pred %r914; .reg .pred %r915; .reg .pred %r916; .reg .pred %r917; .reg .u64 %r918; .reg .pred %r919; .reg .u32 %r920; .reg .u64 %r921; .reg .u64 %r922; .reg .u64 %r923; .reg .f64 %r926; .reg .u64 %r928; .reg .u32 %r929; .reg .pred %r930; .reg .u64 %r931; .reg .pred %r932; .reg .u64 %r933; .reg .u64 %r934; .reg .u64 %r935; .reg .u32 %r941; .reg .u32 %r942; .reg .u16 %r943; .reg .u16 %r945; .reg .u32 %r946; .reg .u16 %r947; .reg .pred %r948; .reg .pred %r949; .reg .pred %r950; .reg .pred %r951; .reg .u64 %r952; .reg .u32 %r953; .reg .u32 %r954; .reg .u32 %r955; .reg .u64 %r956; .reg .u64 %r957; .reg .u64 %r958; .reg .f64 %r961; .reg .f64 %r962; .reg .u32 %r964; .reg .u32 %r966; .reg .u32 %r967; .reg .u16 %r971; .reg .u16 %r972; .reg .u32 %r974; .reg .u16 %r975; .reg .pred %r976; .reg .u32 %r977; .reg .pred %r978; .reg .u64 %r979; .reg .pred %r980; .reg .pred %r981; .reg .pred %r982; .reg .pred %r983; .reg .u64 %r986; .reg .pred %r996; .reg .u32 %r997; .reg .pred %r1008; .reg .u64 %r1009; .reg .pred %r1010; .reg .u32 %r1012; .reg .u32 %r1013; .reg .u32 %r1014; .reg .pred %r1015; .reg .u32 %r1016; .reg .u64 %r1017; .reg .u32 %r1018; .reg .u64 %r1019; .reg .u64 %r1020; .reg .pred %r1021; .reg .u32 %r1022; .reg .u64 %r1025; .reg .u64 %r1026; .reg .pred %r1027; .reg .pred %r1028; .reg .u32 %r1029; .reg .u32 %r1030; .reg .u16 %r1031; .reg .u32 %r1032; .reg .u32 %r1033; .reg .u16 %r1034; .reg .u32 %r1035; .reg .u32 %r1036; mov.u64 %r369,%ar0; mov.u64 %r370,%ar1; mov.u64 %r371,%ar2; .loc 1 252 11 mov.u64 %r372,0; st.u64 [%frame+8],%r372; .loc 1 265 11 mov.u64 %r366,%r372; .loc 1 266 8 st.u64 [%frame+16],%r370; mov.u64 %r230,%r370; $L12: mov.u64 %r355,%r230; .loc 1 266 27 ld.s8 %r23,[%r230]; cvt.u16.u32 %r373,%r23; setp.gt.s16 %r374,%r373,13; @ %r374 bra $L7; setp.ge.s16 %r376,%r373,9; @ %r376 bra $L8; setp.eq.u32 %r377,%r23,0; @ %r377 bra $L9; .loc 1 264 7 mov.u32 %r236,0; bra $L10; $L7: setp.eq.u16 %r379,%r373,43; @ %r379 bra $L164; setp.eq.u16 %r381,%r373,45; @ %r381 bra $L165; setp.eq.u16 %r383,%r373,32; @ %r383 bra $L8; mov.u32 %r236,0; bra $L10; $L164: mov.u32 %r236,0; bra $L11; $L165: .loc 1 268 9 mov.u32 %r236,1; $L11: .loc 1 271 9 add.u64 %r24,%r230,1; .loc 1 271 7 st.u64 [%frame+16],%r24; .loc 1 271 8 ld.s8 %r23,[%r230+1]; .loc 1 271 7 setp.ne.u32 %r384,%r23,0; @ %r384 bra $L166; bra $L9; $L8: add.u64 %r230,%r230,1; .loc 1 266 16 st.u64 [%frame+16],%r230; .loc 1 266 20 bra $L12; $L166: mov.u64 %r355,%r24; $L10: .loc 1 287 5 cvt.u16.u32 %r385,%r23; setp.ne.u16 %r386,%r385,48; @ %r386 bra $L167; .loc 1 293 11 ld.s8 %r27,[%r355+1]; cvt.u16.u32 %r387,%r27; setp.eq.u16 %r388,%r387,88; @ %r388 bra $L14; setp.ne.u16 %r390,%r387,120; @ %r390 bra $L15; $L14: .loc 1 310 16 add.u64 %r397,%frame,8; add.u64 %r398,%frame,24; add.u64 %r399,%frame,16; cvta.const.u64 %r393,fpi$2595; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r399; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r393; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r398; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r397; .param .u32 %out_arg6; st.param.u32 [%out_arg6],%r236; call (%value_in),__gethex,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6); ld.param.u32 %r400,[%value_in]; } .loc 1 310 57 and.b32 %r29,%r400,7; setp.eq.u32 %r401,%r29,0; @ %r401 bra $L168; setp.ne.u32 %r402,%r29,6; @ %r402 bra $L17; add.u64 %r347,%r355,1; .loc 1 1249 5 setp.eq.u64 %r403,%r371,0; @ %r403 bra $L18; .loc 1 1250 7 st.u64 [%r371],%r347; mov.f64 %r368,0d0000000000000000; bra $L6; $L17: .loc 1 318 9 ld.u64 %r30,[%frame+8]; .loc 1 318 8 setp.eq.u64 %r404,%r30,0; @ %r404 bra $L20; .loc 1 319 6 mov.u32 %r406,53; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%frame; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r406; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r30; call __copybits,(%out_arg1,%out_arg2,%out_arg3); } .loc 1 320 6 ld.u64 %r410,[%frame+8]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r410; call _Bfree,(%out_arg1,%out_arg2); } $L20: setp.eq.u32 %r411,%r29,3; @ %r411 bra $L21; setp.gt.s32 %r412,%r29,3; @ %r412 bra $L22; setp.eq.u32 %r413,%r29,1; @ %r413 bra $L23; setp.eq.u32 %r414,%r29,2; @ %r414 bra $L24; bra $L25; $L22: setp.eq.u32 %r415,%r29,4; @ %r415 bra $L26; setp.eq.u32 %r416,%r29,5; @ ! %r416 bra $L25; bra $L23; $L24: .loc 1 192 9 ld.u32 %r420,[%frame+4]; shl.b64 %r421,%r420,32; ld.u32 %r422,[%frame]; or.b64 %r366,%r422,%r421; bra $L25; $L23: .loc 1 322 5 ld.u32 %r32,[%frame+24]; .loc 1 198 20 ld.u32 %r428,[%frame+4]; and.b32 %r427,%r428,-1048577; .loc 1 198 49 add.u32 %r429,%r32,1075; .loc 1 198 55 shl.b32 %r430,%r429,20; .loc 1 198 33 or.b32 %r431,%r427,%r430; .loc 1 198 9 cvt.u64.u32 %r432,%r431; shl.b64 %r433,%r432,32; ld.u32 %r434,[%frame]; or.b64 %r366,%r434,%r433; bra $L25; $L21: .loc 1 202 9 mov.u64 %r366,9218868437227405312; bra $L25; $L26: .loc 1 208 9 mov.u64 %r366,9223372036854775807; $L25: .loc 1 210 8 and.b32 %r438,%r400,8; .loc 1 210 5 setp.ne.u32 %r439,%r438,0; @ %r439 bra $L27; mov.b64 %r368,%r366; bra $L28; $L27: .loc 1 211 9 shr.u64 %r440,%r366,32; cvt.u32.u64 %r442,%r440; or.b32 %r441,%r442,-2147483648; cvt.u64.u32 %r443,%r441; shl.b64 %r444,%r443,32; and.b64 %r445,%r366,4294967295; or.b64 %r366,%r445,%r444; mov.b64 %r368,%r366; bra $L28; $L168: .loc 1 310 57 mov.f64 %r368,0d0000000000000000; bra $L28; $L15: add.u64 %r234,%r355,1; $L29: .loc 1 329 10 mov.u64 %r355,%r234; .loc 1 329 8 st.u64 [%frame+16],%r355; add.u64 %r234,%r355,1; .loc 1 329 9 ld.s8 %r23,[%r355]; .loc 1 329 8 cvt.u16.u32 %r447,%r23; setp.eq.u16 %r448,%r447,48; @ %r448 bra $L29; .loc 1 330 6 setp.ne.u32 %r449,%r23,0; @ %r449 bra $L169; $L57: .loc 1 693 18 mov.f64 %r368,0d0000000000000000; bra $L28; $L167: .loc 1 264 13 mov.u32 %r235,0; bra $L13; $L169: .loc 1 328 7 mov.u32 %r235,1; $L13: .loc 1 335 35 add.u32 %r1018,%r23,-48; setp.gt.u32 %r451,%r1018,9; @ %r451 bra $L30; add.u64 %r210,%r355,1; .loc 1 334 8 mov.u32 %r239,0; .loc 1 334 4 mov.u32 %r194,%r239; .loc 1 335 9 mov.u32 %r261,%r239; $L33: .loc 1 336 6 setp.gt.s32 %r452,%r261,8; @ %r452 bra $L31; .loc 1 337 10 shl.b32 %r454,%r194,2; add.u32 %r455,%r454,%r194; add.u32 %r456,%r455,%r455; .loc 1 337 6 add.u32 %r194,%r1018,%r456; bra $L32; $L31: .loc 1 339 10 shl.b32 %r459,%r239,2; add.u32 %r460,%r459,%r239; add.u32 %r461,%r460,%r460; .loc 1 339 6 add.u32 %r239,%r1018,%r461; $L32: .loc 1 335 50 add.u32 %r261,%r261,1; .loc 1 335 55 st.u64 [%frame+16],%r210; .loc 1 335 24 ld.s8 %r23,[%r210]; add.u64 %r210,%r210,1; .loc 1 335 35 add.u32 %r1018,%r23,-48; setp.le.u32 %r464,%r1018,9; @ %r464 bra $L33; .loc 1 335 22 mov.u32 %r226,%r23; bra $L34; $L30: mov.u32 %r226,%r23; .loc 1 334 8 mov.u32 %r239,0; .loc 1 334 4 mov.u32 %r194,%r239; .loc 1 335 9 mov.u32 %r261,%r239; $L34: .loc 1 342 16 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; call (%value_in),_localeconv_r,(%out_arg1); ld.param.u64 %r466,[%value_in]; } .loc 1 341 6 ld.u64 %r467,[%r466]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r467; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r468,[%value_in]; } .loc 1 341 18 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; call (%value_in),_localeconv_r,(%out_arg1); ld.param.u64 %r470,[%value_in]; } .loc 1 341 6 ld.u64 %r474,[%frame+16]; ld.u64 %r472,[%r470]; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r474; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r472; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r468; call (%value_in),strncmp,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r475,[%value_in]; } .loc 1 341 5 setp.ne.u32 %r476,%r475,0; @ %r476 bra $L170; .loc 1 345 22 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; call (%value_in),_localeconv_r,(%out_arg1); ld.param.u64 %r478,[%value_in]; } .loc 1 345 14 ld.u64 %r479,[%r478]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r479; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r480,[%value_in]; } .loc 1 345 11 ld.u64 %r481,[%frame+16]; add.u64 %r50,%r481,%r480; st.u64 [%frame+16],%r50; .loc 1 345 5 ld.s8 %r226,[%r50]; .loc 1 346 6 setp.ne.u32 %r482,%r261,0; @ %r482 bra $L171; .loc 1 347 4 setp.ne.u32 %r483,%r226,48; @ %r483 bra $L172; add.u64 %r238,%r50,1; .loc 1 264 18 mov.u32 %r26,%r261; $L38: .loc 1 348 7 add.u32 %r26,%r26,1; .loc 1 347 22 st.u64 [%frame+16],%r238; ld.s8 %r226,[%r238]; add.u64 %r238,%r238,1; .loc 1 347 4 setp.eq.u32 %r484,%r226,48; @ %r484 bra $L38; bra $L37; $L172: .loc 1 264 18 mov.u32 %r26,%r261; $L37: .loc 1 349 16 add.u32 %r485,%r226,-49; .loc 1 349 7 setp.gt.u32 %r486,%r485,8; @ %r486 bra $L173; .loc 1 350 8 ld.u64 %r355,[%frame+16]; .loc 1 360 10 add.u32 %r359,%r226,-48; .loc 1 361 8 add.u32 %r232,%r26,1; mov.u64 %r158,%r355; mov.u32 %r350,1; bra $L39; $L40: .loc 1 359 6 add.u32 %r26,%r26,1; .loc 1 360 10 mov.u32 %r359,%r512; ld.u64 %r158,[%frame+16]; .loc 1 360 7 setp.eq.u32 %r487,%r512,0; @ %r487 bra $L41; add.u32 %r342,%r350,1; .loc 1 361 8 add.u32 %r232,%r232,%r26; .loc 1 362 5 setp.eq.u32 %r488,%r26,1; @ %r488 bra $L174; mov.u32 %r225,%r350; add.u32 %r240,%r26,%r225; add.u32 %r341,%r240,-1; $L45: .loc 1 363 9 setp.gt.s32 %r489,%r225,8; @ %r489 bra $L43; .loc 1 364 9 shl.b32 %r491,%r194,2; add.u32 %r492,%r491,%r194; add.u32 %r194,%r492,%r492; add.u32 %r1022,%r225,1; bra $L44; $L43: .loc 1 365 14 add.u32 %r1022,%r225,1; setp.gt.s32 %r495,%r1022,16; @ %r495 bra $L44; .loc 1 366 9 shl.b32 %r497,%r239,2; add.u32 %r498,%r497,%r239; add.u32 %r239,%r498,%r498; $L44: mov.u32 %r225,%r1022; .loc 1 362 5 setp.ne.u32 %r500,%r1022,%r341; @ %r500 bra $L45; mov.u32 %r349,%r1022; mov.u32 %r350,%r240; bra $L42; $L174: mov.u32 %r349,%r350; mov.u32 %r350,%r342; $L42: .loc 1 367 8 setp.gt.s32 %r501,%r349,8; @ %r501 bra $L46; $L39: .loc 1 368 12 shl.b32 %r503,%r194,2; add.u32 %r504,%r503,%r194; add.u32 %r505,%r504,%r504; .loc 1 368 8 add.u32 %r194,%r359,%r505; .loc 1 371 8 mov.u32 %r26,%r475; bra $L41; $L46: mov.u32 %r26,%r475; .loc 1 369 13 setp.gt.s32 %r506,%r350,16; @ %r506 bra $L41; .loc 1 370 12 shl.b32 %r508,%r239,2; add.u32 %r509,%r508,%r239; add.u32 %r510,%r509,%r509; .loc 1 370 8 add.u32 %r239,%r512,%r510; .loc 1 371 8 mov.u32 %r26,%r475; $L41: .loc 1 357 36 add.u64 %r511,%r158,1; .loc 1 357 33 st.u64 [%frame+16],%r511; ld.s8 %r226,[%r158+1]; bra $L36; $L171: .loc 1 264 18 mov.u32 %r26,%r475; .loc 1 335 14 mov.u32 %r232,%r475; mov.u32 %r350,%r261; $L36: .loc 1 357 18 add.u32 %r512,%r226,-48; .loc 1 357 3 setp.le.u32 %r513,%r512,9; @ %r513 bra $L40; .loc 1 344 9 mov.u32 %r227,1; .loc 1 375 2 bra $L35; $L170: mov.u32 %r350,%r261; .loc 1 264 18 mov.u32 %r26,0; .loc 1 335 14 mov.u32 %r232,%r26; .loc 1 264 26 mov.u32 %r227,%r26; bra $L35; $L173: .loc 1 335 14 mov.u32 %r232,%r261; mov.u32 %r350,%r261; .loc 1 344 9 mov.u32 %r227,1; $L35: .loc 1 377 20 and.b32 %r514,%r226,-33; .loc 1 377 5 setp.ne.u32 %r515,%r514,69; @ %r515 bra $L175; .loc 1 378 18 or.b32 %r516,%r350,%r26; or.b32 %r517,%r516,%r235; .loc 1 378 6 setp.eq.u32 %r518,%r517,0; @ %r518 bra $L9; .loc 1 381 7 ld.u64 %r370,[%frame+16]; .loc 1 383 15 add.u64 %r519,%r370,1; .loc 1 383 3 st.u64 [%frame+16],%r519; .loc 1 383 14 ld.s8 %r75,[%r370+1]; cvt.u16.u32 %r520,%r75; setp.eq.u16 %r521,%r520,43; @ %r521 bra $L176; setp.eq.u16 %r523,%r520,45; @ %r523 bra $L177; .loc 1 383 12 mov.u32 %r226,%r75; .loc 1 382 9 mov.u32 %r228,0; bra $L50; $L176: mov.u32 %r228,0; bra $L49; $L177: .loc 1 385 11 mov.u32 %r228,1; $L49: .loc 1 387 10 add.u64 %r524,%r370,2; .loc 1 387 7 st.u64 [%frame+16],%r524; ld.s8 %r226,[%r370+2]; $L50: .loc 1 389 16 add.u32 %r525,%r226,-48; .loc 1 389 6 setp.gt.u32 %r526,%r525,9; @ %r526 bra $L51; .loc 1 390 9 setp.ne.u32 %r527,%r226,48; @ %r527 bra $L52; ld.u64 %r528,[%frame+16]; add.u64 %r81,%r528,1; $L53: .loc 1 391 7 st.u64 [%frame+16],%r81; .loc 1 391 9 ld.s8 %r226,[%r81]; add.u64 %r81,%r81,1; .loc 1 390 9 setp.eq.u32 %r529,%r226,48; @ %r529 bra $L53; $L52: .loc 1 392 16 add.u32 %r530,%r226,-49; .loc 1 392 7 setp.gt.u32 %r531,%r530,8; @ %r531 bra $L178; .loc 1 393 7 add.u32 %r251,%r226,-48; .loc 1 394 8 ld.u64 %r266,[%frame+16]; .loc 1 395 17 add.u64 %r532,%r266,1; .loc 1 395 10 st.u64 [%frame+16],%r532; .loc 1 395 16 ld.s8 %r226,[%r266+1]; .loc 1 395 29 add.u32 %r533,%r226,-48; setp.gt.u32 %r534,%r533,9; @ %r534 bra $L54; add.u64 %r51,%r266,2; $L55: .loc 1 396 12 shl.b32 %r536,%r251,2; add.u32 %r537,%r536,%r251; add.u32 %r538,%r537,%r537; .loc 1 396 15 add.u32 %r87,%r538,%r226; .loc 1 396 8 add.u32 %r251,%r87,-48; .loc 1 395 17 mov.u64 %r88,%r51; .loc 1 395 10 st.u64 [%frame+16],%r51; .loc 1 395 16 ld.s8 %r226,[%r51]; add.u64 %r51,%r51,1; .loc 1 395 29 add.u32 %r539,%r226,-48; setp.le.u32 %r540,%r539,9; @ %r540 bra $L55; .loc 1 397 11 sub.u64 %r541,%r88,%r266; .loc 1 397 8 set.u32.gt.s64 %r543,%r541,8; neg.s32 %r544,%r543; .loc 1 397 20 set.u32.gt.s32 %r546,%r251,19999; neg.s32 %r547,%r546; cvt.u16.u32 %r549,%r544; cvt.u16.u32 %r550,%r547; or.b16 %r548,%r549,%r550; cvt.u32.u16 %r551,%r548; cvt.u16.u8 %r552,%r551; setp.eq.u16 %r553,%r552,0; .loc 1 401 8 selp.u32 %r251,%r251,19999,%r553; $L54: .loc 1 404 8 setp.eq.u32 %r554,%r228,0; @ %r554 bra $L47; .loc 1 405 8 neg.s32 %r251,%r251; bra $L47; $L51: .loc 1 411 6 st.u64 [%frame+16],%r370; .loc 1 376 4 mov.u32 %r251,0; bra $L47; $L175: mov.u32 %r251,0; bra $L47; $L178: .loc 1 408 7 mov.u32 %r251,0; $L47: .loc 1 413 5 setp.ne.u32 %r555,%r350,0; @ %r555 bra $L56; .loc 1 414 11 or.b32 %r556,%r26,%r235; .loc 1 414 6 setp.ne.u32 %r557,%r556,0; @ %r557 bra $L57; .loc 1 420 7 setp.ne.u32 %r558,%r227,0; @ %r558 bra $L9; setp.eq.u32 %r559,%r226,78; @ %r559 bra $L58; setp.gt.s32 %r560,%r226,78; @ %r560 bra $L59; setp.eq.u32 %r561,%r226,73; @ %r561 bra $L60; bra $L9; $L59: setp.eq.u32 %r562,%r226,105; @ %r562 bra $L60; setp.eq.u32 %r563,%r226,110; @ %r563 bra $L58; bra $L9; $L60: .loc 1 222 15 ld.u64 %r303,[%frame+16]; cvta.const.u64 %r351,$LC0+1; .loc 1 224 12 mov.u32 %r306,110; bra $L62; $L179: .loc 1 224 7 mov.u64 %r303,%r93; $L62: .loc 1 225 6 add.u64 %r93,%r303,1; .loc 1 225 12 ld.s8 %r305,[%r93]; .loc 1 225 25 add.u32 %r564,%r305,-65; setp.gt.u32 %r565,%r564,25; @ %r565 bra $L61; .loc 1 226 6 add.u32 %r305,%r305,32; $L61: .loc 1 227 6 setp.ne.u32 %r566,%r305,%r306; @ %r566 bra $L9; .loc 1 224 12 ld.s8 %r306,[%r351]; add.u64 %r351,%r351,1; .loc 1 224 7 setp.ne.u32 %r567,%r306,0; @ %r567 bra $L179; .loc 1 425 6 st.u64 [%frame+16],%r93; cvta.const.u64 %r59,$LC1+1; .loc 1 224 12 mov.u32 %r312,105; bra $L65; $L180: .loc 1 224 7 mov.u64 %r93,%r264; $L65: .loc 1 225 6 add.u64 %r264,%r93,1; .loc 1 225 12 ld.s8 %r311,[%r264]; .loc 1 225 25 add.u32 %r568,%r311,-65; setp.gt.u32 %r569,%r568,25; @ %r569 bra $L63; .loc 1 226 6 add.u32 %r311,%r311,32; $L63: .loc 1 227 6 setp.ne.u32 %r570,%r311,%r312; @ %r570 bra $L64; .loc 1 224 12 ld.s8 %r312,[%r59]; add.u64 %r59,%r59,1; .loc 1 224 7 setp.ne.u32 %r571,%r312,0; @ %r571 bra $L180; .loc 1 230 10 add.u64 %r572,%r93,2; .loc 1 230 6 st.u64 [%frame+16],%r572; bra $L66; $L64: .loc 1 230 10 add.u64 %r573,%r303,2; .loc 1 427 7 st.u64 [%frame+16],%r573; $L66: .loc 1 428 17 mov.u64 %r366,9218868437227405312; .loc 1 432 6 bra $L67; $L58: .loc 1 222 15 ld.u64 %r315,[%frame+16]; cvta.const.u64 %r22,$LC2+1; .loc 1 224 12 mov.u32 %r318,97; bra $L69; $L181: .loc 1 224 7 mov.u64 %r315,%r254; $L69: .loc 1 225 6 add.u64 %r254,%r315,1; .loc 1 225 12 ld.s8 %r317,[%r254]; .loc 1 225 25 add.u32 %r576,%r317,-65; setp.gt.u32 %r577,%r576,25; @ %r577 bra $L68; .loc 1 226 6 add.u32 %r317,%r317,32; $L68: .loc 1 227 6 setp.ne.u32 %r578,%r317,%r318; @ %r578 bra $L9; .loc 1 224 12 ld.s8 %r318,[%r22]; add.u64 %r22,%r22,1; .loc 1 224 7 setp.ne.u32 %r579,%r318,0; @ %r579 bra $L181; .loc 1 230 10 add.u64 %r580,%r315,2; .loc 1 230 6 st.u64 [%frame+16],%r580; .loc 1 439 9 ld.s8 %r582,[%r254+1]; cvt.u16.u32 %r581,%r582; setp.ne.u16 %r583,%r581,40; @ %r583 bra $L70; .loc 1 440 10 add.u64 %r587,%frame,16; cvta.const.u64 %r585,fpinan$2631; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r587; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r585; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%frame; call (%value_in),__hexnan,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r588,[%value_in]; } .loc 1 440 7 setp.ne.u32 %r589,%r588,5; @ %r589 bra $L70; .loc 1 442 31 ld.u32 %r591,[%frame+4]; or.b32 %r590,%r591,2146435072; .loc 1 442 18 cvt.u64.u32 %r592,%r590; .loc 1 444 18 ld.u32 %r596,[%frame]; shl.b64 %r597,%r592,32; or.b64 %r366,%r597,%r596; bra $L67; $L70: .loc 1 449 18 mov.u64 %r366,-2251799813685248; bra $L67; $L9: .loc 1 1249 5 setp.eq.u64 %r601,%r371,0; @ %r601 bra $L18; .loc 1 1250 7 st.u64 [%r371],%r370; mov.f64 %r368,0d0000000000000000; bra $L6; $L67: mov.b64 %r368,%r366; bra $L28; $L56: .loc 1 466 9 sub.u32 %r267,%r251,%r232; .loc 1 473 5 setp.ne.u32 %r602,%r261,0; selp.u32 %r261,%r261,%r350,%r602; .loc 1 475 4 min.s32 %r269,%r350,16; .loc 1 476 11 cvt.rn.f64.u32 %r99,%r194; mov.b64 %r366,%r99; .loc 1 477 5 setp.le.s32 %r603,%r350,9; @ %r603 bra $L72; .loc 1 482 37 cvt.rn.f64.u32 %r604,%r239; .loc 1 482 18 cvta.const.u64 %r605,__mprec_tens; .loc 1 482 21 add.u32 %r606,%r269,-9; .loc 1 482 18 cvt.s64.s32 %r607,%r606; shl.b64 %r608,%r607,3; add.u64 %r609,%r605,%r608; .loc 1 482 37 ld.f64 %r611,[%r609]; fma.rn.f64 %r610,%r99,%r611,%r604; .loc 1 482 12 mov.b64 %r366,%r610; $L72: .loc 1 485 5 setp.gt.s32 %r612,%r350,15; @ %r612 bra $L73; .loc 1 492 6 setp.ne.u32 %r613,%r267,0; @ %r613 bra $L74; mov.b64 %r368,%r366; bra $L28; $L74: .loc 1 494 6 setp.le.s32 %r614,%r267,0; @ %r614 bra $L75; .loc 1 495 7 setp.gt.s32 %r615,%r267,22; @ %r615 bra $L76; .loc 1 506 16 cvta.const.u64 %r616,__mprec_tens; cvt.s64.s32 %r617,%r267; shl.b64 %r618,%r617,3; add.u64 %r619,%r616,%r618; ld.f64 %r620,[%r619]; mov.b64 %r621,%r366; mul.f64 %r368,%r620,%r621; .loc 1 507 5 bra $L28; $L76: .loc 1 511 22 mov.u32 %r623,37; sub.u32 %r622,%r623,%r350; .loc 1 511 7 setp.lt.s32 %r624,%r622,%r267; @ %r624 bra $L77; .loc 1 510 6 mov.u32 %r625,15; sub.u32 %r270,%r625,%r350; .loc 1 523 21 cvta.const.u64 %r626,__mprec_tens; cvt.s64.s32 %r627,%r270; shl.b64 %r628,%r627,3; add.u64 %r629,%r626,%r628; .loc 1 523 14 ld.f64 %r631,[%r629]; mov.b64 %r632,%r366; mul.f64 %r630,%r631,%r632; .loc 1 522 7 sub.u32 %r634,%r267,%r270; .loc 1 536 16 cvt.s64.s32 %r635,%r634; shl.b64 %r636,%r635,3; add.u64 %r637,%r626,%r636; ld.f64 %r638,[%r637]; mul.f64 %r368,%r630,%r638; .loc 1 538 5 bra $L28; $L75: .loc 1 542 11 setp.lt.s32 %r639,%r267,-22; @ %r639 bra $L73; .loc 1 550 15 cvta.const.u64 %r640,__mprec_tens; sub.u32 %r641,%r232,%r251; cvt.s64.s32 %r642,%r641; shl.b64 %r643,%r642,3; add.u64 %r644,%r640,%r643; mov.b64 %r645,%r366; ld.f64 %r646,[%r644]; div.rn.f64 %r368,%r645,%r646; .loc 1 551 4 bra $L28; $L73: .loc 1 555 11 sub.u32 %r647,%r350,%r269; .loc 1 555 5 add.u32 %r272,%r647,%r267; .loc 1 579 5 setp.le.s32 %r648,%r272,0; @ %r648 bra $L78; $L163: .loc 1 580 11 and.b32 %r273,%r272,15; .loc 1 580 6 setp.eq.u32 %r649,%r273,0; @ %r649 bra $L79; .loc 1 581 20 cvta.const.u64 %r650,__mprec_tens; cvt.s64.s32 %r651,%r273; shl.b64 %r652,%r651,3; add.u64 %r653,%r650,%r652; .loc 1 581 13 ld.f64 %r655,[%r653]; mov.b64 %r656,%r366; mul.f64 %r654,%r655,%r656; mov.b64 %r366,%r654; $L79: .loc 1 582 10 and.b32 %r274,%r272,-16; .loc 1 582 6 setp.eq.u32 %r657,%r274,0; @ %r657 bra $L80; .loc 1 583 7 setp.le.s32 %r658,%r274,308; @ %r658 bra $L81; .loc 1 586 17 mov.u32 %r659,34; st.u32 [%r369],%r659; mov.f64 %r368,0d7ff0000000000000; bra $L28; $L98: mov.u32 %r660,34; st.u32 [%r369],%r660; mov.f64 %r368,0d7ff0000000000000; bra $L28; $L86: mov.u32 %r661,34; st.u32 [%r369],%r661; mov.f64 %r368,0d7ff0000000000000; bra $L28; $L81: .loc 1 626 7 shr.s32 %r276,%r274,4; .loc 1 627 4 setp.le.s32 %r662,%r276,1; @ %r662 bra $L182; mov.b64 %r250,%r366; cvta.const.u64 %r1019,__mprec_bigtens; mov.u64 %r257,%r1019; mov.u32 %r39,0; .loc 1 627 10 mov.u32 %r275,%r39; .loc 1 629 15 mov.u32 %r1035,1; $L84: .loc 1 628 12 and.b32 %r663,%r276,1; .loc 1 628 8 setp.eq.u32 %r664,%r663,0; @ %r664 bra $L83; .loc 1 629 15 ld.f64 %r665,[%r257]; mul.f64 %r250,%r250,%r665; mov.u32 %r39,%r1035; $L83: .loc 1 627 24 add.u32 %r275,%r275,1; .loc 1 627 31 shr.s32 %r276,%r276,1; add.u64 %r257,%r257,8; .loc 1 627 4 setp.ne.u32 %r666,%r276,1; @ %r666 bra $L84; setp.eq.u32 %r667,%r39,0; @ %r667 bra $L82; mov.b64 %r366,%r250; bra $L82; $L182: .loc 1 627 10 mov.u32 %r275,0; cvta.const.u64 %r1019,__mprec_bigtens; $L82: .loc 1 631 15 shr.u64 %r668,%r366,32; cvt.u32.u64 %r670,%r668; add.u32 %r669,%r670,-55574528; cvt.u64.u32 %r671,%r669; shl.b64 %r672,%r671,32; and.b64 %r673,%r366,4294967295; or.b64 %r366,%r673,%r672; .loc 1 632 23 cvt.s64.s32 %r676,%r275; shl.b64 %r677,%r676,3; add.u64 %r678,%r1019,%r677; .loc 1 632 13 ld.f64 %r679,[%r678]; mov.b64 %r680,%r366; mul.f64 %r127,%r679,%r680; mov.b64 %r366,%r127; shr.u64 %r682,%r366,32; cvt.u32.u64 %r260,%r682; .loc 1 633 11 and.b32 %r277,%r260,2146435072; .loc 1 633 7 setp.gt.u32 %r683,%r277,2090860544; @ %r683 bra $L86; .loc 1 636 7 setp.le.u32 %r684,%r277,2089811968; @ %r684 bra $L87; .loc 1 641 16 mov.u64 %r366,9218868437227405311; .loc 1 564 8 mov.u32 %r134,0; bra $L88; $L87: .loc 1 645 16 add.u32 %r685,%r260,55574528; cvt.u64.u32 %r686,%r685; shl.b64 %r687,%r686,32; and.b64 %r688,%r366,4294967295; or.b64 %r366,%r688,%r687; .loc 1 564 8 mov.u32 %r134,0; bra $L88; $L78: .loc 1 648 10 setp.eq.u32 %r690,%r272,0; @ %r690 bra $L80; .loc 1 649 6 neg.s32 %r278,%r272; .loc 1 650 11 and.b32 %r279,%r278,15; .loc 1 650 6 setp.eq.u32 %r691,%r279,0; @ %r691 bra $L89; .loc 1 651 20 cvta.const.u64 %r692,__mprec_tens; cvt.s64.s32 %r693,%r279; shl.b64 %r694,%r693,3; add.u64 %r695,%r692,%r694; .loc 1 651 13 mov.b64 %r697,%r366; ld.f64 %r698,[%r695]; div.rn.f64 %r696,%r697,%r698; mov.b64 %r366,%r696; $L89: .loc 1 652 10 shr.s32 %r280,%r278,4; .loc 1 652 6 setp.eq.u32 %r699,%r280,0; @ %r699 bra $L80; .loc 1 653 7 setp.gt.s32 %r700,%r280,31; @ %r700 bra $L90; .loc 1 656 11 and.b32 %r134,%r280,16; .loc 1 656 7 setp.eq.u32 %r1021,%r134,0; @ %r1021 bra $L91; .loc 1 657 11 mov.u32 %r134,106; setp.eq.u32 %r1021,1,0; $L91: mov.b64 %r69,%r366; cvta.const.u64 %r259,tinytens; mov.u32 %r233,0; .loc 1 660 15 mov.u32 %r1036,1; $L93: .loc 1 659 12 and.b32 %r702,%r280,1; .loc 1 659 8 setp.eq.u32 %r703,%r702,0; @ %r703 bra $L92; .loc 1 660 15 ld.f64 %r704,[%r259]; mul.f64 %r69,%r69,%r704; mov.u32 %r233,%r1036; $L92: .loc 1 658 31 shr.s32 %r280,%r280,1; add.u64 %r259,%r259,8; .loc 1 658 4 setp.ne.u32 %r705,%r280,0; @ %r705 bra $L93; setp.eq.u32 %r706,%r233,0; @ %r706 bra $L94; mov.b64 %r366,%r69; $L94: .loc 1 661 7 @ %r1021 bra $L95; .loc 1 661 34 shr.u64 %r1017,%r366,32; cvt.u32.u64 %r137,%r1017; .loc 1 662 7 shr.u32 %r709,%r137,20; and.b32 %r710,%r709,2047; .loc 1 661 30 mov.u32 %r711,107; sub.u32 %r281,%r711,%r710; .loc 1 661 14 setp.le.s32 %r712,%r281,0; @ %r712 bra $L95; .loc 1 664 8 setp.le.s32 %r713,%r281,31; @ %r713 bra $L96; .loc 1 666 17 and.b64 %r366,%r366,-4294967296; .loc 1 668 9 setp.le.s32 %r715,%r281,52; @ %r715 bra $L97; .loc 1 669 18 mov.u64 %r366,247697979505377280; bra $L95; $L97: .loc 1 671 37 add.u32 %r718,%r281,-32; .loc 1 671 32 mov.u32 %r720,-1; shl.b32 %r719,%r720,%r718; .loc 1 671 18 and.b32 %r721,%r719,%r137; cvt.u64.u32 %r722,%r721; shl.b64 %r723,%r722,32; and.b64 %r724,%r366,4294967295; or.b64 %r366,%r724,%r723; bra $L95; $L96: .loc 1 675 31 mov.u32 %r727,-1; shl.b32 %r726,%r727,%r281; .loc 1 675 17 cvt.u32.u64 %r729,%r366; and.b32 %r728,%r726,%r729; cvt.u64.u32 %r730,%r728; and.b64 %r731,%r366,-4294967296; or.b64 %r366,%r731,%r730; $L95: .loc 1 689 8 mov.b64 %r733,%r366; setp.neu.f64 %r734,%r733,0d0000000000000000; @ %r734 bra $L88; $L90: .loc 1 693 18 mov.u32 %r735,34; st.u32 [%r369],%r735; mov.f64 %r368,0d0000000000000000; bra $L28; $L80: .loc 1 564 8 mov.u32 %r134,0; $L88: .loc 1 718 8 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r355; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r261; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r350; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r194; call (%value_in),__s2b,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u64 %r741,[%value_in]; } .loc 1 719 5 setp.eq.u64 %r742,%r741,0; @ %r742 bra $L98; setp.ge.s32 %r744,%r267,0; @ %r744 bra $L99; .loc 1 739 14 sub.u32 %r743,%r232,%r251; bra $L100; $L99: mov.u32 %r743,0; $L100: max.s32 %r221,%r267,0; .loc 1 263 8 mov.u64 %r244,0; .loc 1 263 13 mov.u64 %r243,%r244; .loc 1 726 3 add.u64 %r1025,%r741,16; .loc 1 727 8 add.u64 %r1026,%frame,24; .loc 1 794 6 setp.le.s32 %r1027,%r743,0; .loc 1 809 6 setp.gt.s32 %r1028,%r267,0; .loc 1 1187 6 set.u32.eq.u32 %r1029,%r134,0; neg.s32 %r1030,%r1029; .loc 1 1189 6 cvt.u16.u32 %r1031,%r1030; .loc 1 1124 8 set.u32.ne.u32 %r1032,%r134,0; neg.s32 %r1033,%r1032; .loc 1 1124 14 cvt.u16.u32 %r1034,%r1033; $L160: .loc 1 723 8 ld.u32 %r747,[%r741+8]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r747; call (%value_in),_Balloc,(%out_arg1,%out_arg2); ld.param.u64 %r748,[%value_in]; } mov.u64 %r241,%r748; .loc 1 724 6 setp.eq.u64 %r749,%r241,0; @ %r749 bra $L101; .loc 1 726 3 ld.s32 %r753,[%r741+20]; add.u64 %r754,%r753,2; shl.b64 %r755,%r754,2; add.u64 %r757,%r241,16; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r757; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r1025; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r755; call (%value_in),memcpy,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r758,[%value_in]; } .loc 1 727 8 mov.b64 %r348,%r366; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r348; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1026; .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 %r764,[%value_in]; } mov.u64 %r337,%r764; .loc 1 727 6 st.u64 [%frame+8],%r337; .loc 1 728 6 setp.eq.u64 %r765,%r337,0; @ %r765 bra $L102; .loc 1 730 8 mov.u32 %r767,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r767; call (%value_in),__i2b,(%out_arg1,%out_arg2); ld.param.u64 %r768,[%value_in]; } mov.u64 %r243,%r768; .loc 1 731 6 setp.ne.u64 %r769,%r243,0; @ %r769 bra $L103; ld.u64 %r337,[%frame+8]; bra $L102; $L103: .loc 1 742 11 ld.u32 %r157,[%frame+24]; .loc 1 742 6 setp.lt.s32 %r770,%r157,0; @ %r770 bra $L104; .loc 1 743 8 add.u32 %r219,%r157,%r743; mov.u32 %r222,%r221; bra $L105; $L104: .loc 1 745 8 sub.u32 %r222,%r221,%r157; mov.u32 %r219,%r743; $L105: .loc 1 755 9 ld.u32 %r159,[%frame]; .loc 1 754 5 sub.u32 %r771,%r157,%r134; .loc 1 755 9 add.u32 %r772,%r771,%r159; .loc 1 755 5 add.u32 %r285,%r772,-1; .loc 1 756 5 mov.u32 %r773,54; sub.u32 %r229,%r773,%r159; .loc 1 757 6 setp.ge.s32 %r774,%r285,-1022; @ %r774 bra $L183; .loc 1 758 6 mov.u32 %r775,-1022; sub.u32 %r286,%r775,%r285; .loc 1 759 6 sub.u32 %r229,%r229,%r286; .loc 1 760 7 setp.gt.s32 %r776,%r286,31; @ %r776 bra $L107; .loc 1 761 9 mov.u32 %r777,1; shl.b32 %r245,%r777,%r286; .loc 1 753 8 mov.u32 %r246,0; bra $L106; $L107: .loc 1 763 21 mov.u32 %r779,-1054; sub.u32 %r778,%r779,%r285; .loc 1 763 10 mov.u32 %r780,1; shl.b32 %r246,%r780,%r778; .loc 1 752 7 mov.u32 %r245,%r780; bra $L106; $L183: .loc 1 753 8 mov.u32 %r246,0; .loc 1 752 7 mov.u32 %r245,1; $L106: .loc 1 781 7 add.u32 %r220,%r219,%r229; .loc 1 782 7 add.u32 %r287,%r222,%r229; .loc 1 784 7 add.u32 %r223,%r134,%r287; min.s32 %r781,%r219,%r220; min.s32 %r128,%r781,%r223; .loc 1 789 6 setp.le.s32 %r782,%r128,0; @ %r782 bra $L108; .loc 1 790 8 sub.u32 %r220,%r220,%r128; .loc 1 791 8 sub.u32 %r223,%r223,%r128; .loc 1 792 8 sub.u32 %r219,%r219,%r128; $L108: .loc 1 794 6 @ %r1027 bra $L109; .loc 1 795 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r768; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r743; call (%value_in),__pow5mult,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r787,[%value_in]; } mov.u64 %r243,%r787; .loc 1 796 7 setp.ne.u64 %r788,%r243,0; @ %r788 bra $L110; ld.u64 %r337,[%frame+8]; bra $L102; $L110: .loc 1 798 10 ld.u64 %r792,[%frame+8]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r243; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r792; call (%value_in),__multiply,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r793,[%value_in]; } .loc 1 799 7 setp.ne.u64 %r794,%r793,0; @ %r794 bra $L111; ld.u64 %r337,[%frame+8]; bra $L102; $L111: .loc 1 801 4 ld.u64 %r797,[%frame+8]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r797; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 802 7 st.u64 [%frame+8],%r793; $L109: .loc 1 804 6 setp.gt.s32 %r798,%r220,0; @ %r798 bra $L112; $L115: .loc 1 809 6 @ ! %r1028 bra $L114; bra $L113; $L112: .loc 1 805 9 ld.u64 %r803,[%frame+8]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r803; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r220; call (%value_in),__lshift,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r804,[%value_in]; } mov.u64 %r337,%r804; .loc 1 805 7 st.u64 [%frame+8],%r337; .loc 1 806 7 setp.eq.u64 %r805,%r337,0; @ ! %r805 bra $L115; bra $L102; $L113: .loc 1 810 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r748; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r221; call (%value_in),__pow5mult,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r809,[%value_in]; } mov.u64 %r241,%r809; .loc 1 811 7 setp.ne.u64 %r810,%r241,0; @ %r810 bra $L114; ld.u64 %r337,[%frame+8]; bra $L102; $L114: .loc 1 814 6 setp.le.s32 %r811,%r223,0; @ %r811 bra $L116; .loc 1 815 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r241; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r223; call (%value_in),__lshift,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r815,[%value_in]; } mov.u64 %r241,%r815; .loc 1 816 7 setp.ne.u64 %r816,%r241,0; @ %r816 bra $L116; ld.u64 %r337,[%frame+8]; bra $L102; $L116: .loc 1 819 6 setp.le.s32 %r817,%r219,0; @ %r817 bra $L117; .loc 1 820 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r243; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r219; call (%value_in),__lshift,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r821,[%value_in]; } mov.u64 %r243,%r821; .loc 1 821 7 setp.ne.u64 %r822,%r243,0; @ %r822 bra $L117; ld.u64 %r337,[%frame+8]; bra $L102; $L117: .loc 1 824 11 ld.u64 %r826,[%frame+8]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r826; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r241; call (%value_in),__mdiff,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r827,[%value_in]; } mov.u64 %r244,%r827; .loc 1 825 6 setp.ne.u64 %r828,%r244,0; @ %r828 bra $L118; ld.u64 %r337,[%frame+8]; bra $L102; $L118: .loc 1 827 9 ld.u32 %r290,[%r827+16]; .loc 1 828 16 mov.u32 %r829,0; st.u32 [%r827+16],%r829; .loc 1 829 7 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r244; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r243; call (%value_in),__mcmp,(%out_arg1,%out_arg2); ld.param.u32 %r832,[%value_in]; } .loc 1 923 6 setp.ge.s32 %r833,%r832,0; @ %r833 bra $L119; .loc 1 927 7 setp.ne.u32 %r834,%r290,0; @ %r834 bra $L120; .loc 1 927 28 mov.b64 %r836,%r348; and.b64 %r835,%r836,4503599627370495; setp.eq.u64 %r837,%r835,0; @ %r837 bra $L121; ld.u64 %r337,[%frame+8]; setp.eq.u32 %r1021,%r134,0; bra $L122; $L121: .loc 1 930 9 shr.u64 %r1017,%r366,32; .loc 1 930 20 cvt.u32.u64 %r840,%r1017; and.b32 %r839,%r840,2146435072; .loc 1 930 5 setp.gt.u32 %r841,%r839,112197632; @ %r841 bra $L123; ld.u64 %r337,[%frame+8]; setp.eq.u32 %r1021,%r134,0; bra $L122; $L123: .loc 1 942 7 ld.u32 %r842,[%r244+24]; setp.ne.u32 %r843,%r842,0; @ %r843 bra $L124; .loc 1 942 22 ld.u32 %r844,[%r244+20]; setp.gt.s32 %r845,%r844,1; @ %r845 bra $L124; ld.u64 %r337,[%frame+8]; setp.eq.u32 %r1021,%r134,0; bra $L122; $L124: .loc 1 949 12 mov.u32 %r848,1; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r827; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r848; call (%value_in),__lshift,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r849,[%value_in]; } mov.u64 %r244,%r849; .loc 1 950 8 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r244; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r243; call (%value_in),__mcmp,(%out_arg1,%out_arg2); ld.param.u32 %r852,[%value_in]; } .loc 1 950 7 setp.gt.s32 %r853,%r852,0; @ %r853 bra $L125; ld.u64 %r337,[%frame+8]; setp.eq.u32 %r1021,%r134,0; bra $L122; $L119: .loc 1 954 6 setp.ne.u32 %r854,%r832,0; @ %r854 bra $L126; .loc 1 956 7 setp.eq.u32 %r1015,%r290,0; @ %r1015 bra $L127; .loc 1 957 10 shr.u64 %r856,%r366,32; cvt.u32.u64 %r173,%r856; .loc 1 957 21 and.b32 %r857,%r173,1048575; .loc 1 957 8 setp.ne.u32 %r858,%r857,1048575; @ %r858 bra $L128; .loc 1 958 10 cvt.u32.u64 %r175,%r366; .loc 1 961 59 setp.eq.u32 %r1021,%r134,0; @ %r1021 bra $L184; .loc 1 960 17 and.b32 %r292,%r173,2146435072; .loc 1 960 11 setp.gt.u32 %r860,%r292,111149056; @ %r860 bra $L185; .loc 1 961 43 shr.u32 %r861,%r292,20; .loc 1 961 40 mov.u32 %r863,107; sub.u32 %r862,%r863,%r861; .loc 1 961 59 mov.u32 %r864,-1; shl.b32 %r247,%r864,%r862; bra $L129; $L184: mov.u32 %r247,-1; bra $L129; $L185: mov.u32 %r247,-1; $L129: .loc 1 958 6 setp.ne.u32 %r865,%r175,%r247; @ %r865 bra $L128; ld.u64 %r337,[%frame+8]; .loc 1 965 9 mov.b64 %r866,%r348; setp.eq.u64 %r867,%r866,9218868437227405311; @ %r867 bra $L102; .loc 1 967 31 and.b32 %r868,%r173,2146435072; .loc 1 968 7 add.u32 %r869,%r868,1048576; .loc 1 967 17 cvt.u64.u32 %r870,%r869; .loc 1 974 17 shl.b64 %r366,%r870,32; mov.b64 %r348,%r366; .loc 1 979 6 bra $L122; $L127: .loc 1 982 40 mov.b64 %r876,%r348; and.b64 %r875,%r876,4503599627370495; .loc 1 982 12 setp.ne.u64 %r877,%r875,0; @ %r877 bra $L128; shr.u64 %r1017,%r366,32; $L125: cvt.u32.u64 %r335,%r1017; ld.u64 %r337,[%frame+8]; mov.u64 %r1020,%r337; .loc 1 1000 8 setp.eq.u32 %r1021,%r134,0; @ ! %r1021 bra $L311; and.b32 %r1016,%r335,2146435072; bra $L130; $L311: .loc 1 1001 8 and.b32 %r1016,%r335,2146435072; .loc 1 1002 9 setp.gt.s32 %r880,%r1016,112197632; @ %r880 bra $L130; .loc 1 1003 10 setp.gt.s32 %r881,%r1016,57671680; @ %r881 bra $L131; bra $L132; $L130: .loc 1 1012 33 add.u32 %r883,%r1016,-1048576; .loc 1 1014 20 or.b32 %r884,%r883,1048575; .loc 1 1014 16 cvt.u64.u32 %r885,%r884; shl.b64 %r886,%r885,32; .loc 1 1016 16 or.b64 %r366,%r886,4294967295; mov.b64 %r348,%r366; .loc 1 1021 5 bra $L122; $L128: .loc 1 1026 7 setp.eq.u32 %r890,%r246,0; @ %r890 bra $L133; .loc 1 1027 11 shr.u64 %r891,%r366,32; .loc 1 1027 22 cvt.u32.u64 %r893,%r891; and.b32 %r892,%r246,%r893; .loc 1 1027 8 setp.ne.u32 %r894,%r892,0; @ %r894 bra $L134; ld.u64 %r337,[%frame+8]; setp.eq.u32 %r1021,%r134,0; bra $L122; $L133: .loc 1 1030 26 cvt.u32.u64 %r896,%r366; and.b32 %r895,%r245,%r896; .loc 1 1030 12 setp.ne.u32 %r897,%r895,0; @ %r897 bra $L134; ld.u64 %r337,[%frame+8]; setp.eq.u32 %r1021,%r134,0; bra $L122; $L134: .loc 1 1037 7 @ %r1015 bra $L135; .loc 1 1039 17 st.u64 [%frame+32],%r366; add.u64 %r901,%frame,32; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r901; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r134; call (%value_in),sulp,(%out_arg1,%out_arg2); ld.param.f64 %r902,[%value_in]; } .loc 1 1039 14 add.f64 %r348,%r348,%r902; mov.b64 %r366,%r348; ld.u64 %r337,[%frame+8]; setp.eq.u32 %r1021,%r134,0; bra $L122; $L135: .loc 1 1046 17 st.u64 [%frame+32],%r366; add.u64 %r905,%frame,32; { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r905; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r134; call (%value_in),sulp,(%out_arg1,%out_arg2); ld.param.f64 %r906,[%value_in]; } .loc 1 1046 14 sub.f64 %r348,%r348,%r906; mov.b64 %r366,%r348; .loc 1 1051 8 setp.eq.f64 %r907,%r348,0d0000000000000000; @ ! %r907 bra $L312; ld.u64 %r1020,[%frame+8]; bra $L132; $L312: ld.u64 %r337,[%frame+8]; setp.eq.u32 %r1021,%r134,0; bra $L122; $L126: .loc 1 1061 15 { .param .f64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r827; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r243; call (%value_in),__ratio,(%out_arg1,%out_arg2); ld.param.f64 %r910,[%value_in]; } .loc 1 1061 6 setp.le.f64 %r911,%r910,0d4000000000000000; @ ! %r911 bra $L313; .loc 1 1062 7 setp.eq.u32 %r912,%r290,0; @ %r912 bra $L138; .loc 1 1063 24 mov.u64 %r365,4607182418800017408; .loc 1 1063 10 mov.f64 %r237,0d3ff0000000000000; bra $L139; $L138: mov.b64 %r224,%r348; .loc 1 1064 24 and.b64 %r913,%r224,4503599627370495; .loc 1 1064 12 setp.eq.u64 %r914,%r913,0; @ %r914 bra $L140; .loc 1 1066 8 setp.eq.u64 %r915,%r224,1; @ ! %r915 bra $L314; ld.u64 %r1020,[%frame+8]; bra $L132; $L314: .loc 1 1070 17 mov.u64 %r365,-4616189618054758400; .loc 1 1069 10 mov.f64 %r237,0d3ff0000000000000; bra $L139; $L140: .loc 1 1076 8 setp.lt.f64 %r916,%r910,0d3ff0000000000000; @ %r916 bra $L186; .loc 1 1079 11 mul.f64 %r237,%r910,0d3fe0000000000000; neg.f64 %r344,%r237; bra $L141; $L186: mov.f64 %r344,0dbfe0000000000000; .loc 1 1077 11 mov.f64 %r237,0d3fe0000000000000; $L141: .loc 1 1080 17 mov.b64 %r365,%r344; bra $L139; $L313: .loc 1 1084 9 mul.f64 %r237,%r910,0d3fe0000000000000; .loc 1 1085 31 setp.ne.u32 %r917,%r290,0; @ %r917 bra $L187; neg.f64 %r248,%r237; bra $L142; $L187: mov.f64 %r248,%r237; $L142: .loc 1 1085 16 mov.b64 %r365,%r248; $L139: .loc 1 1100 7 shr.u64 %r918,%r366,32; cvt.u32.u64 %r193,%r918; .loc 1 1100 5 and.b32 %r297,%r193,2146435072; .loc 1 1104 6 setp.ne.u32 %r919,%r297,2145386496; @ %r919 bra $L143; .loc 1 1106 15 add.u32 %r920,%r193,-55574528; cvt.u64.u32 %r921,%r920; shl.b64 %r922,%r921,32; and.b64 %r923,%r366,4294967295; or.b64 %r366,%r923,%r922; .loc 1 1107 10 mov.b64 %r196,%r365; .loc 1 1107 24 mov.b64 %r197,%r366; { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r197; call (%value_in),__ulp,(%out_arg1); ld.param.f64 %r926,[%value_in]; } .loc 1 1108 13 fma.rn.f64 %r199,%r196,%r926,%r197; mov.b64 %r366,%r199; shr.u64 %r928,%r366,32; cvt.u32.u64 %r263,%r928; .loc 1 1109 20 and.b32 %r929,%r263,2146435072; .loc 1 1109 7 setp.le.u32 %r930,%r929,2090860543; @ %r930 bra $L144; .loc 1 1111 8 mov.b64 %r931,%r348; setp.ne.u64 %r932,%r931,9218868437227405311; @ %r932 bra $L145; ld.u64 %r337,[%frame+8]; bra $L102; $L145: .loc 1 1115 16 mov.u64 %r366,9218868437227405311; .loc 1 1117 5 bra $L146; $L144: .loc 1 1120 16 add.u32 %r345,%r263,55574528; cvt.u64.u32 %r933,%r345; shl.b64 %r934,%r933,32; and.b64 %r935,%r366,4294967295; or.b64 %r366,%r935,%r934; bra $L147; $L143: .loc 1 1124 19 set.u32.le.u32 %r941,%r297,111149056; neg.s32 %r942,%r941; .loc 1 1124 14 cvt.u16.u32 %r945,%r942; and.b16 %r943,%r1034,%r945; .loc 1 1124 7 cvt.u32.u16 %r946,%r943; cvt.u16.u8 %r947,%r946; setp.eq.u16 %r948,%r947,0; @ %r948 bra $L148; .loc 1 1125 8 setp.le.f64 %r949,%r237,0d41dfffffffc00000; @ ! %r949 bra $L149; .loc 1 1126 13 cvt.rzi.u32.f64 %r298,%r237; .loc 1 1126 9 setp.eq.u32 %r950,%r298,0; @ %r950 bra $L188; cvt.rn.f64.u32 %r237,%r298; bra $L151; $L188: mov.f64 %r237,0d3ff0000000000000; $L151: .loc 1 1129 33 setp.ne.u32 %r951,%r290,0; @ %r951 bra $L189; neg.f64 %r249,%r237; bra $L152; $L189: mov.f64 %r249,%r237; $L152: .loc 1 1129 18 mov.b64 %r365,%r249; $L149: .loc 1 1131 19 shr.u64 %r952,%r365,32; cvt.u32.u64 %r954,%r952; add.u32 %r953,%r954,112197632; sub.u32 %r955,%r953,%r297; cvt.u64.u32 %r956,%r955; shl.b64 %r957,%r956,32; and.b64 %r958,%r365,4294967295; or.b64 %r365,%r958,%r957; $L148: .loc 1 1133 10 mov.b64 %r207,%r365; .loc 1 1133 24 { .param .f64 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r348; call (%value_in),__ulp,(%out_arg1); ld.param.f64 %r961,[%value_in]; } .loc 1 1134 13 fma.rn.f64 %r962,%r207,%r961,%r348; mov.b64 %r366,%r962; shr.u64 %r1017,%r366,32; cvt.u32.u64 %r345,%r1017; $L147: .loc 1 1184 5 and.b32 %r964,%r345,2146435072; .loc 1 1189 6 set.u32.eq.u32 %r966,%r964,%r297; neg.s32 %r967,%r966; cvt.u16.u32 %r972,%r967; and.b16 %r971,%r972,%r1031; cvt.u32.u16 %r974,%r971; cvt.u16.u8 %r975,%r974; setp.eq.u16 %r976,%r975,0; @ %r976 bra $L146; .loc 1 1191 6 cvt.rzi.s32.f64 %r977,%r237; .loc 1 1192 9 cvt.rn.f64.s32 %r211,%r977; sub.f64 %r301,%r237,%r211; .loc 1 1194 7 setp.ne.u32 %r978,%r290,0; @ %r978 bra $L153; .loc 1 1194 28 and.b64 %r979,%r366,4503599627370495; setp.eq.u64 %r980,%r979,0; @ %r980 bra $L154; $L153: .loc 1 1195 8 setp.lt.f64 %r981,%r301,0d3fdfffff94a03595; @ ! %r981 bra $L315; ld.u64 %r337,[%frame+8]; bra $L157; $L315: .loc 1 1195 25 setp.gt.f64 %r982,%r301,0d3fe0000035afe535; @ ! %r982 bra $L146; ld.u64 %r337,[%frame+8]; bra $L157; $L154: .loc 1 1198 12 setp.lt.f64 %r983,%r301,0d3fcfffff94a03595; @ ! %r983 bra $L146; ld.u64 %r337,[%frame+8]; bra $L157; $L146: .loc 1 1203 3 ld.u64 %r986,[%frame+8]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r986; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 1204 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r241; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 1205 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r243; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 1206 3 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r827; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 723 6 bra $L160; $L120: ld.u64 %r337,[%frame+8]; setp.eq.u32 %r1021,%r134,0; $L122: .loc 1 1222 5 @ %r1021 bra $L157; $L131: .loc 1 1227 12 mul.f64 %r216,%r348,0d3950000000000000; mov.b64 %r366,%r216; .loc 1 1230 6 setp.ne.u64 %r996,%r366,0; @ %r996 bra $L157; .loc 1 1231 16 mov.u32 %r997,34; st.u32 [%r369],%r997; $L157: .loc 1 1243 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r337; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 1244 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r241; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 1245 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r243; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 1246 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r741; call _Bfree,(%out_arg1,%out_arg2); } .loc 1 1247 2 { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r369; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r244; call _Bfree,(%out_arg1,%out_arg2); } mov.b64 %r368,%r366; $L28: .loc 1 1249 5 setp.eq.u64 %r1008,%r371,0; @ %r1008 bra $L161; .loc 1 1250 7 ld.u64 %r1009,[%frame+16]; st.u64 [%r371],%r1009; $L161: .loc 1 1251 26 setp.eq.u32 %r1010,%r236,0; @ %r1010 bra $L6; neg.f64 %r368,%r368; bra $L6; $L18: .loc 1 693 18 mov.f64 %r368,0d0000000000000000; .loc 1 1251 26 bra $L6; $L101: ld.u64 %r337,[%frame+8]; $L102: .loc 1 586 17 mov.u32 %r1012,34; st.u32 [%r369],%r1012; .loc 1 608 16 mov.u64 %r366,9218868437227405312; bra $L157; $L132: .loc 1 691 15 mov.u64 %r366,0; .loc 1 693 18 mov.u32 %r1013,34; st.u32 [%r369],%r1013; mov.u64 %r337,%r1020; bra $L157; $L77: .loc 1 555 11 sub.u32 %r1014,%r350,%r269; .loc 1 555 5 add.u32 %r272,%r1014,%r267; bra $L163; $L6: .loc 1 1252 1 mov.f64 %value,%r368; st.shared.u64 [%sspslot],%sspprev; 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 .f64 %r30; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; .loc 1 1260 10 ld.global.u64 %r29,[_impure_ptr]; { .param .f64 %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),_strtod_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r30,[%value_in]; } .loc 1 1261 1 mov.f64 %value,%r30; st.param.f64 [%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 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r31; .reg .f64 %r32; .reg .u32 %r34; .reg .pred %r35; .reg .u64 %r36; .reg .f32 %r37; mov.u64 %r26,%ar0; mov.u64 %r27,%ar1; .loc 1 1268 19 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],%r26; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r27; call (%value_in),_strtod_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.f64 %r32,[%value_in]; } .loc 1 1269 7 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r32; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r34,[%value_in]; } .loc 1 1269 6 setp.ne.u32 %r35,%r34,0; @ %r35 bra $L318; .loc 1 1270 12 mov.u64 %r36,0; { .param .f32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r36; call (%value_in),nanf,(%out_arg1); ld.param.f32 %r37,[%value_in]; } mov.f32 %r25,%r37; bra $L317; $L318: .loc 1 1271 10 cvt.rn.f32.f64 %r25,%r32; $L317: .loc 1 1272 1 mov.f32 %value,%r25; st.param.f32 [%value_out],%value; ret; } lib_a-strtok.o/ 1591654536 399 399 100644 1402 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 103 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 104 1 mov.u64 %value,%r33; st.param.u64 [%value_out],%value; ret; } /752 1591654536 399 399 100644 3714 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 .u32 %r25; .reg .u32 %r26; .reg .u64 %r27; .reg .u32 %r28; .reg .u32 %r29; .reg .u64 %r30; .reg .u64 %r34; .reg .u64 %r35; .reg .u64 %r39; .reg .u64 %r40; .reg .u64 %r41; .reg .u64 %r42; .reg .u32 %r43; .reg .pred %r44; .reg .pred %r45; .reg .pred %r46; .reg .u32 %r48; .reg .pred %r49; .reg .pred %r50; .reg .u64 %r51; .reg .u16 %r52; .reg .u16 %r53; .reg .pred %r54; .reg .pred %r55; .reg .u32 %r56; .reg .pred %r57; .reg .pred %r59; mov.u64 %r40,%ar0; mov.u64 %r41,%ar1; mov.u64 %r42,%ar2; mov.u32 %r43,%ar3; .loc 1 44 5 setp.ne.u64 %r44,%r40,0; @ %r44 bra $L2; .loc 1 44 22 ld.u64 %r40,[%r42]; .loc 1 44 16 setp.eq.u64 %r45,%r40,0; @ %r45 bra $L11; $L2: mov.u64 %r34,%r40; .loc 1 54 7 setp.ne.u32 %r59,%r43,0; $L5: mov.u64 %r39,%r34; add.u64 %r34,%r34,1; .loc 1 51 4 ld.s8 %r28,[%r39]; .loc 1 52 2 mov.u64 %r35,%r41; bra $L4; $L6: add.u64 %r35,%r35,1; .loc 1 53 6 setp.ne.u32 %r46,%r28,%r29; @ %r46 bra $L4; .loc 1 54 7 @ %r59 bra $L5; .loc 1 58 12 st.u64 [%r42],%r34; .loc 1 59 11 mov.u32 %r48,0; st.u8 [%r39],%r48; .loc 1 60 15 bra $L1; $L4: .loc 1 52 34 ld.s8 %r29,[%r35]; .loc 1 52 2 setp.ne.u32 %r49,%r29,0; @ %r49 bra $L6; .loc 1 65 5 setp.ne.u32 %r50,%r28,0; @ %r50 bra $L7; .loc 1 66 10 mov.u64 %r51,0; st.u64 [%r42],%r51; .loc 1 67 10 mov.u64 %r39,%r51; bra $L1; $L7: add.u64 %r30,%r34,1; mov.u64 %r27,%r30; .loc 1 76 7 ld.s8 %r25,[%r34]; mov.u64 %r22,%r41; .loc 1 79 7 cvt.u16.u32 %r52,%r25; $L10: .loc 1 79 14 ld.s8 %r26,[%r22]; .loc 1 79 7 cvt.u16.u32 %r53,%r26; setp.ne.u16 %r54,%r52,%r53; @ %r54 bra $L8; .loc 1 80 8 setp.eq.u32 %r55,%r26,0; @ %r55 bra $L12; .loc 1 83 12 mov.u32 %r56,0; st.u8 [%r30+-1],%r56; bra $L9; $L12: .loc 1 81 8 mov.u64 %r27,0; $L9: .loc 1 84 12 st.u64 [%r42],%r27; .loc 1 85 12 bra $L1; $L8: add.u64 %r22,%r22,1; .loc 1 87 3 setp.ne.u32 %r57,%r26,0; @ %r57 bra $L10; mov.u64 %r34,%r30; bra $L7; $L11: .loc 1 45 10 mov.u64 %r39,%r40; $L1: .loc 1 90 1 mov.u64 %value,%r39; 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 98 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 99 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } lib_a-strtol.o/ 1591654536 399 399 100644 7704 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // 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); .file 1 "../../../../../../newlib/libc/stdlib/strtol.c" // 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_ptr__ .extern .global .align 8 .u64 __ctype_ptr__[1]; // 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 .u32 %r22; .reg .u64 %r23; .reg .u32 %r29; .reg .u64 %r34; .reg .u32 %r38; .reg .u64 %r47; .reg .u64 %r49; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u64 %r54; .reg .u32 %r55; .reg .u64 %r58; .reg .u32 %r61; .reg .u64 %r62; .reg .u64 %r66; .reg .u64 %r67; .reg .u64 %r69; .reg .u64 %r70; .reg .u64 %r71; .reg .u32 %r72; .reg .u64 %r73; .reg .u32 %r74; .reg .u64 %r75; .reg .u16 %r78; .reg .u16 %r79; .reg .u32 %r80; .reg .u16 %r81; .reg .u32 %r82; .reg .pred %r83; .reg .u16 %r84; .reg .pred %r85; .reg .pred %r87; .reg .u32 %r88; .reg .pred %r89; .reg .pred %r90; .reg .u16 %r92; .reg .u16 %r93; .reg .u16 %r94; .reg .u32 %r95; .reg .pred %r96; .reg .pred %r97; .reg .pred %r98; .reg .u64 %r100; .reg .u64 %r101; .reg .u64 %r102; .reg .u16 %r104; .reg .u16 %r105; .reg .u32 %r106; .reg .u16 %r107; .reg .u32 %r108; .reg .pred %r109; .reg .u16 %r110; .reg .u32 %r112; .reg .pred %r113; .reg .u16 %r114; .reg .pred %r115; .reg .pred %r116; .reg .u32 %r118; .reg .u32 %r120; .reg .u32 %r121; .reg .u16 %r123; .reg .u16 %r124; .reg .u16 %r125; .reg .u32 %r126; .reg .u16 %r127; .reg .pred %r128; .reg .u32 %r130; .reg .u32 %r131; .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 .pred %r142; .reg .u32 %r143; .reg .pred %r144; .reg .pred %r145; .reg .pred %r146; .reg .pred %r147; .reg .pred %r149; .reg .u32 %r151; .reg .u32 %r152; .reg .u16 %r153; mov.u64 %r69,%ar0; mov.u64 %r70,%ar1; mov.u64 %r71,%ar2; mov.u32 %r72,%ar3; .loc 1 153 11 ld.global.u64 %r23,[__ctype_ptr__]; mov.u64 %r58,%r70; $L2: mov.u64 %r47,%r58; add.u64 %r34,%r58,1; mov.u64 %r58,%r34; .loc 1 152 7 ld.u8 %r22,[%r47]; .loc 1 153 11 cvt.u32.u32 %r74,%r22; cvt.u64.u8 %r73,%r74; add.u64 %r75,%r23,%r73; .loc 1 153 2 ld.u8 %r153,[%r75+1]; mov.u16 %r79,%r153; and.b16 %r78,%r79,8; cvt.u32.u16 %r80,%r78; cvt.s32.s8 %r82,%r80; cvt.u16.u32 %r81,%r82; setp.ne.u16 %r83,%r81,0; @ %r83 bra $L2; .loc 1 154 5 cvt.u16.u32 %r84,%r22; setp.ne.u16 %r85,%r84,45; @ %r85 bra $L3; .loc 1 156 5 ld.u8 %r50,[%r34]; .loc 1 156 9 add.u64 %r34,%r47,2; .loc 1 155 7 mov.u32 %r52,1; bra $L4; $L3: .loc 1 157 12 setp.eq.u16 %r87,%r84,43; @ %r87 bra $L5; .loc 1 152 5 mov.u32 %r50,%r22; .loc 1 144 15 mov.u32 %r52,0; bra $L4; $L5: .loc 1 158 5 ld.u8 %r50,[%r34]; .loc 1 158 9 add.u64 %r34,%r47,2; .loc 1 144 15 mov.u32 %r52,0; $L4: .loc 1 159 12 and.b32 %r88,%r72,-17; .loc 1 159 5 setp.eq.u32 %r89,%r88,0; @ %r89 bra $L6; cvt.s64.s32 %r66,%r72; bra $L7; $L6: .loc 1 159 32 setp.ne.u32 %r90,%r50,48; @ %r90 bra $L8; .loc 1 160 29 ld.u8 %r153,[%r34]; mov.u16 %r93,%r153; and.b16 %r92,%r93,-33; .loc 1 160 15 cvt.u32.u16 %r95,%r92; cvt.u16.u8 %r94,%r95; setp.ne.u16 %r96,%r94,88; @ %r96 bra $L9; .loc 1 161 5 ld.u8 %r50,[%r34+1]; .loc 1 162 5 add.u64 %r34,%r34,2; mov.u64 %r66,16; .loc 1 163 8 cvt.u32.u64 %r72,%r66; bra $L7; $L9: .loc 1 165 5 setp.eq.u32 %r97,%r72,0; @ %r97 bra $L22; cvt.s64.s32 %r66,%r72; bra $L7; $L22: mov.u64 %r66,8; .loc 1 166 23 cvt.u32.u64 %r72,%r66; bra $L7; $L27: .loc 1 165 5 mov.u64 %r66,10; .loc 1 166 23 cvt.u32.u64 %r72,%r66; $L7: .loc 1 185 42 setp.ne.u32 %r98,%r52,0; selp.u64 %r54,-9223372036854775808,9223372036854775807,%r98; .loc 1 186 18 rem.u64 %r100,%r54,%r66; .loc 1 186 9 cvt.u32.u64 %r61,%r100; .loc 1 187 9 div.u64 %r62,%r54,%r66; mov.u64 %r67,%r34; .loc 1 188 20 mov.u32 %r53,0; .loc 1 188 11 mov.u64 %r49,0; .loc 1 198 8 mov.u32 %r151,-1; .loc 1 200 8 mov.u32 %r152,1; $L16: .loc 1 189 7 cvt.s64.s32 %r101,%r50; add.u64 %r102,%r23,%r101; ld.s8 %r38,[%r102+1]; .loc 1 189 6 cvt.u16.u32 %r105,%r38; and.b16 %r104,%r105,4; cvt.u32.u16 %r106,%r104; cvt.s32.s8 %r108,%r106; cvt.u16.u32 %r107,%r108; setp.eq.u16 %r109,%r107,0; @ %r109 bra $L11; .loc 1 190 6 add.u32 %r51,%r50,-48; bra $L12; $L11: and.b16 %r110,%r105,3; cvt.u32.u16 %r112,%r110; cvt.s32.s8 %r29,%r112; .loc 1 191 11 setp.eq.u32 %r113,%r29,0; @ %r113 bra $L13; .loc 1 192 31 cvt.u16.u32 %r114,%r29; setp.eq.u16 %r115,%r114,1; selp.u32 %r55,55,87,%r115; .loc 1 192 6 sub.u32 %r51,%r50,%r55; $L12: .loc 1 195 6 setp.le.s32 %r116,%r72,%r51; @ %r116 bra $L13; .loc 1 197 24 shr.u32 %r118,%r53,31; .loc 1 197 35 set.u32.gt.u64 %r120,%r49,%r62; neg.s32 %r121,%r120; .loc 1 197 28 cvt.u16.u32 %r124,%r118; cvt.u16.u32 %r125,%r121; or.b16 %r123,%r124,%r125; .loc 1 197 19 cvt.u32.u16 %r126,%r123; cvt.u16.u8 %r127,%r126; setp.ne.u16 %r128,%r127,0; @ %r128 bra $L25; .loc 1 197 52 set.u32.eq.u64 %r130,%r49,%r62; neg.s32 %r131,%r130; .loc 1 197 67 set.u32.gt.s32 %r133,%r51,%r61; neg.s32 %r134,%r133; .loc 1 197 62 cvt.u16.u32 %r136,%r131; cvt.u16.u32 %r137,%r134; and.b16 %r135,%r136,%r137; .loc 1 197 44 cvt.u32.u16 %r138,%r135; cvt.u16.u8 %r139,%r138; setp.ne.u16 %r140,%r139,0; @ %r140 bra $L26; .loc 1 202 8 cvt.s64.s32 %r141,%r51; mad.lo.u64 %r49,%r49,%r66,%r141; .loc 1 200 8 mov.u32 %r53,%r152; bra $L15; $L25: .loc 1 198 8 mov.u32 %r53,%r151; bra $L15; $L26: mov.u32 %r53,%r151; $L15: .loc 1 188 28 ld.u8 %r50,[%r67]; add.u64 %r67,%r67,1; .loc 1 189 6 bra $L16; $L13: .loc 1 205 5 setp.ne.u32 %r142,%r53,-1; @ %r142 bra $L17; .loc 1 207 16 mov.u32 %r143,34; st.u32 [%r69],%r143; .loc 1 210 5 setp.ne.u64 %r144,%r71,0; @ %r144 bra $L18; .loc 1 206 7 mov.u64 %r49,%r54; bra $L32; $L17: .loc 1 208 12 setp.eq.u32 %r145,%r52,0; @ %r145 bra $L20; .loc 1 209 7 neg.s64 %r49,%r49; $L20: .loc 1 210 5 setp.eq.u64 %r146,%r71,0; @ %r146 bra $L32; .loc 1 211 13 setp.eq.u32 %r147,%r53,0; @ %r147 bra $L21; mov.u64 %r54,%r49; $L18: add.u64 %r70,%r67,-1; mov.u64 %r49,%r54; $L21: .loc 1 211 11 st.u64 [%r71],%r70; .loc 1 212 9 bra $L32; $L8: .loc 1 165 5 setp.eq.u32 %r149,%r72,0; @ %r149 bra $L27; cvt.s64.s32 %r66,%r72; bra $L7; $L32: .loc 1 213 1 mov.u64 %value,%r49; 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 %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 223 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),_strtol_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r32,[%value_in]; } .loc 1 224 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } lib_a-strtold.o/1591654536 399 399 100644 1019 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strtold .visible .func (.param .f64 %value_out) strtold (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/stdlib/strtold.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: 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 %r23; .reg .u64 %r24; .reg .f64 %r27; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; .loc 1 42 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; call (%value_in),strtod,(%out_arg1,%out_arg2); ld.param.f64 %r27,[%value_in]; } .loc 1 46 1 mov.f64 %value,%r27; st.param.f64 [%value_out],%value; ret; } lib_a-strtoll.o/1591654536 399 399 100644 1458 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strtoll .visible .func (.param .u64 %value_out) strtoll (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); .file 1 "../../../../../../newlib/libc/stdlib/strtoll.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // 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: 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 135 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_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r32,[%value_in]; } .loc 1 136 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } /770 1591654536 399 399 100644 6544 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // 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); .file 1 "../../../../../../newlib/libc/stdlib/strtoll_r.c" // BEGIN GLOBAL VAR DECL: __ctype_ptr__ .extern .global .align 8 .u64 __ctype_ptr__[1]; // 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 .u32 %r22; .reg .u64 %r23; .reg .u32 %r29; .reg .u64 %r34; .reg .u32 %r38; .reg .u64 %r47; .reg .u64 %r49; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r52; .reg .u32 %r53; .reg .u64 %r54; .reg .u32 %r55; .reg .u64 %r58; .reg .u32 %r61; .reg .u64 %r62; .reg .u64 %r66; .reg .u64 %r67; .reg .u64 %r69; .reg .u64 %r70; .reg .u64 %r71; .reg .u32 %r72; .reg .u64 %r73; .reg .u32 %r74; .reg .u64 %r75; .reg .u16 %r78; .reg .u16 %r79; .reg .u32 %r80; .reg .u16 %r81; .reg .u32 %r82; .reg .pred %r83; .reg .u16 %r84; .reg .pred %r85; .reg .pred %r87; .reg .u32 %r88; .reg .pred %r89; .reg .pred %r90; .reg .u16 %r92; .reg .u16 %r93; .reg .u16 %r94; .reg .u32 %r95; .reg .pred %r96; .reg .pred %r97; .reg .pred %r98; .reg .u64 %r100; .reg .u64 %r101; .reg .u64 %r102; .reg .u16 %r104; .reg .u16 %r105; .reg .u32 %r106; .reg .u16 %r107; .reg .u32 %r108; .reg .pred %r109; .reg .u16 %r110; .reg .u32 %r112; .reg .pred %r113; .reg .u16 %r114; .reg .pred %r115; .reg .pred %r116; .reg .u32 %r118; .reg .u32 %r120; .reg .u32 %r121; .reg .u16 %r123; .reg .u16 %r124; .reg .u16 %r125; .reg .u32 %r126; .reg .u16 %r127; .reg .pred %r128; .reg .u32 %r130; .reg .u32 %r131; .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 .pred %r142; .reg .u32 %r143; .reg .pred %r144; .reg .pred %r145; .reg .pred %r146; .reg .pred %r147; .reg .pred %r149; .reg .u32 %r151; .reg .u32 %r152; .reg .u16 %r153; mov.u64 %r69,%ar0; mov.u64 %r70,%ar1; mov.u64 %r71,%ar2; mov.u32 %r72,%ar3; .loc 1 78 11 ld.global.u64 %r23,[__ctype_ptr__]; mov.u64 %r58,%r70; $L2: mov.u64 %r47,%r58; add.u64 %r34,%r58,1; mov.u64 %r58,%r34; .loc 1 77 7 ld.u8 %r22,[%r47]; .loc 1 78 11 cvt.u32.u32 %r74,%r22; cvt.u64.u8 %r73,%r74; add.u64 %r75,%r23,%r73; .loc 1 78 2 ld.u8 %r153,[%r75+1]; mov.u16 %r79,%r153; and.b16 %r78,%r79,8; cvt.u32.u16 %r80,%r78; cvt.s32.s8 %r82,%r80; cvt.u16.u32 %r81,%r82; setp.ne.u16 %r83,%r81,0; @ %r83 bra $L2; .loc 1 79 5 cvt.u16.u32 %r84,%r22; setp.ne.u16 %r85,%r84,45; @ %r85 bra $L3; .loc 1 81 5 ld.u8 %r50,[%r34]; .loc 1 81 9 add.u64 %r34,%r47,2; .loc 1 80 7 mov.u32 %r52,1; bra $L4; $L3: .loc 1 82 12 setp.eq.u16 %r87,%r84,43; @ %r87 bra $L5; .loc 1 77 5 mov.u32 %r50,%r22; .loc 1 69 15 mov.u32 %r52,0; bra $L4; $L5: .loc 1 83 5 ld.u8 %r50,[%r34]; .loc 1 83 9 add.u64 %r34,%r47,2; .loc 1 69 15 mov.u32 %r52,0; $L4: .loc 1 84 12 and.b32 %r88,%r72,-17; .loc 1 84 5 setp.eq.u32 %r89,%r88,0; @ %r89 bra $L6; cvt.s64.s32 %r66,%r72; bra $L7; $L6: .loc 1 84 32 setp.ne.u32 %r90,%r50,48; @ %r90 bra $L8; .loc 1 85 29 ld.u8 %r153,[%r34]; mov.u16 %r93,%r153; and.b16 %r92,%r93,-33; .loc 1 85 15 cvt.u32.u16 %r95,%r92; cvt.u16.u8 %r94,%r95; setp.ne.u16 %r96,%r94,88; @ %r96 bra $L9; .loc 1 86 5 ld.u8 %r50,[%r34+1]; .loc 1 87 5 add.u64 %r34,%r34,2; mov.u64 %r66,16; .loc 1 88 8 cvt.u32.u64 %r72,%r66; bra $L7; $L9: .loc 1 90 5 setp.eq.u32 %r97,%r72,0; @ %r97 bra $L22; cvt.s64.s32 %r66,%r72; bra $L7; $L22: mov.u64 %r66,8; .loc 1 91 23 cvt.u32.u64 %r72,%r66; bra $L7; $L27: .loc 1 90 5 mov.u64 %r66,10; .loc 1 91 23 cvt.u32.u64 %r72,%r66; $L7: .loc 1 110 52 setp.ne.u32 %r98,%r52,0; selp.u64 %r54,-9223372036854775808,9223372036854775807,%r98; .loc 1 111 18 rem.u64 %r100,%r54,%r66; .loc 1 111 9 cvt.u32.u64 %r61,%r100; .loc 1 112 9 div.u64 %r62,%r54,%r66; mov.u64 %r67,%r34; .loc 1 113 20 mov.u32 %r53,0; .loc 1 113 11 mov.u64 %r49,0; .loc 1 123 8 mov.u32 %r151,-1; .loc 1 125 8 mov.u32 %r152,1; $L16: .loc 1 114 7 cvt.s64.s32 %r101,%r50; add.u64 %r102,%r23,%r101; ld.s8 %r38,[%r102+1]; .loc 1 114 6 cvt.u16.u32 %r105,%r38; and.b16 %r104,%r105,4; cvt.u32.u16 %r106,%r104; cvt.s32.s8 %r108,%r106; cvt.u16.u32 %r107,%r108; setp.eq.u16 %r109,%r107,0; @ %r109 bra $L11; .loc 1 115 6 add.u32 %r51,%r50,-48; bra $L12; $L11: and.b16 %r110,%r105,3; cvt.u32.u16 %r112,%r110; cvt.s32.s8 %r29,%r112; .loc 1 116 11 setp.eq.u32 %r113,%r29,0; @ %r113 bra $L13; .loc 1 117 31 cvt.u16.u32 %r114,%r29; setp.eq.u16 %r115,%r114,1; selp.u32 %r55,55,87,%r115; .loc 1 117 6 sub.u32 %r51,%r50,%r55; $L12: .loc 1 120 6 setp.le.s32 %r116,%r72,%r51; @ %r116 bra $L13; .loc 1 122 24 shr.u32 %r118,%r53,31; .loc 1 122 35 set.u32.gt.u64 %r120,%r49,%r62; neg.s32 %r121,%r120; .loc 1 122 28 cvt.u16.u32 %r124,%r118; cvt.u16.u32 %r125,%r121; or.b16 %r123,%r124,%r125; .loc 1 122 19 cvt.u32.u16 %r126,%r123; cvt.u16.u8 %r127,%r126; setp.ne.u16 %r128,%r127,0; @ %r128 bra $L25; .loc 1 122 52 set.u32.eq.u64 %r130,%r49,%r62; neg.s32 %r131,%r130; .loc 1 122 67 set.u32.gt.s32 %r133,%r51,%r61; neg.s32 %r134,%r133; .loc 1 122 62 cvt.u16.u32 %r136,%r131; cvt.u16.u32 %r137,%r134; and.b16 %r135,%r136,%r137; .loc 1 122 44 cvt.u32.u16 %r138,%r135; cvt.u16.u8 %r139,%r138; setp.ne.u16 %r140,%r139,0; @ %r140 bra $L26; .loc 1 127 8 cvt.s64.s32 %r141,%r51; mad.lo.u64 %r49,%r49,%r66,%r141; .loc 1 125 8 mov.u32 %r53,%r152; bra $L15; $L25: .loc 1 123 8 mov.u32 %r53,%r151; bra $L15; $L26: mov.u32 %r53,%r151; $L15: .loc 1 113 28 ld.u8 %r50,[%r67]; add.u64 %r67,%r67,1; .loc 1 114 6 bra $L16; $L13: .loc 1 130 5 setp.ne.u32 %r142,%r53,-1; @ %r142 bra $L17; .loc 1 132 16 mov.u32 %r143,34; st.u32 [%r69],%r143; .loc 1 135 5 setp.ne.u64 %r144,%r71,0; @ %r144 bra $L18; .loc 1 131 7 mov.u64 %r49,%r54; bra $L32; $L17: .loc 1 133 12 setp.eq.u32 %r145,%r52,0; @ %r145 bra $L20; .loc 1 134 7 neg.s64 %r49,%r49; $L20: .loc 1 135 5 setp.eq.u64 %r146,%r71,0; @ %r146 bra $L32; .loc 1 136 13 setp.eq.u32 %r147,%r53,0; @ %r147 bra $L21; mov.u64 %r54,%r49; $L18: add.u64 %r70,%r67,-1; mov.u64 %r49,%r54; $L21: .loc 1 136 11 st.u64 [%r71],%r70; .loc 1 137 9 bra $L32; $L8: .loc 1 90 5 setp.eq.u32 %r149,%r72,0; @ %r149 bra $L27; cvt.s64.s32 %r66,%r72; bra $L7; $L32: .loc 1 138 1 mov.u64 %value,%r49; st.param.u64 [%value_out],%value; ret; } lib_a-strtoul.o/1591654536 399 399 100644 7997 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // 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); .file 1 "../../../../../../newlib/libc/stdlib/strtoul.c" // 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_ptr__ .extern .global .align 8 .u64 __ctype_ptr__[1]; // 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 .u32 %r22; .reg .u64 %r23; .reg .u32 %r29; .reg .u64 %r33; .reg .u32 %r37; .reg .u64 %r46; .reg .u32 %r48; .reg .u32 %r49; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r52; .reg .u64 %r55; .reg .u64 %r61; .reg .u64 %r62; .reg .u32 %r65; .reg .u64 %r66; .reg .u64 %r68; .reg .u64 %r69; .reg .u64 %r70; .reg .u64 %r71; .reg .u32 %r72; .reg .u64 %r73; .reg .u32 %r74; .reg .u64 %r75; .reg .u16 %r78; .reg .u16 %r79; .reg .u32 %r80; .reg .u16 %r81; .reg .u32 %r82; .reg .pred %r83; .reg .u16 %r84; .reg .pred %r85; .reg .pred %r87; .reg .u32 %r88; .reg .pred %r89; .reg .u64 %r90; .reg .u64 %r93; .reg .pred %r94; .reg .u16 %r96; .reg .u16 %r97; .reg .u16 %r98; .reg .u32 %r99; .reg .pred %r100; .reg .pred %r101; .reg .u64 %r102; .reg .u64 %r105; .reg .u64 %r106; .reg .u64 %r107; .reg .u16 %r109; .reg .u16 %r110; .reg .u32 %r111; .reg .u16 %r112; .reg .u32 %r113; .reg .pred %r114; .reg .u16 %r115; .reg .u32 %r117; .reg .pred %r118; .reg .u16 %r119; .reg .pred %r120; .reg .pred %r121; .reg .u32 %r123; .reg .u32 %r125; .reg .u32 %r126; .reg .u16 %r128; .reg .u16 %r129; .reg .u16 %r130; .reg .u32 %r131; .reg .u16 %r132; .reg .pred %r133; .reg .u32 %r135; .reg .u32 %r136; .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 .pred %r147; .reg .u32 %r148; .reg .pred %r149; .reg .pred %r150; .reg .pred %r151; .reg .pred %r152; .reg .pred %r154; .reg .u64 %r155; .reg .u64 %r158; .reg .u32 %r159; .reg .u32 %r160; .reg .u16 %r161; mov.u64 %r69,%ar0; mov.u64 %r70,%ar1; mov.u64 %r71,%ar2; mov.u32 %r72,%ar3; .loc 1 152 11 ld.global.u64 %r23,[__ctype_ptr__]; mov.u64 %r55,%r70; $L2: mov.u64 %r46,%r55; add.u64 %r33,%r55,1; mov.u64 %r55,%r33; .loc 1 151 7 ld.u8 %r22,[%r46]; .loc 1 152 11 cvt.u32.u32 %r74,%r22; cvt.u64.u8 %r73,%r74; add.u64 %r75,%r23,%r73; .loc 1 152 2 ld.u8 %r161,[%r75+1]; mov.u16 %r79,%r161; and.b16 %r78,%r79,8; cvt.u32.u16 %r80,%r78; cvt.s32.s8 %r82,%r80; cvt.u16.u32 %r81,%r82; setp.ne.u16 %r83,%r81,0; @ %r83 bra $L2; .loc 1 153 5 cvt.u16.u32 %r84,%r22; setp.ne.u16 %r85,%r84,45; @ %r85 bra $L3; .loc 1 155 5 ld.u8 %r48,[%r33]; .loc 1 155 9 add.u64 %r33,%r46,2; .loc 1 154 7 mov.u32 %r50,1; bra $L4; $L3: .loc 1 156 12 setp.eq.u16 %r87,%r84,43; @ %r87 bra $L5; .loc 1 151 5 mov.u32 %r48,%r22; .loc 1 145 15 mov.u32 %r50,0; bra $L4; $L5: .loc 1 157 5 ld.u8 %r48,[%r33]; .loc 1 157 9 add.u64 %r33,%r46,2; .loc 1 145 15 mov.u32 %r50,0; $L4: .loc 1 158 12 and.b32 %r88,%r72,-17; .loc 1 158 5 setp.eq.u32 %r89,%r88,0; @ %r89 bra $L6; cvt.s64.s32 %r62,%r72; mov.u64 %r90,-1; div.u64 %r61,%r90,%r62; rem.u64 %r93,%r90,%r62; cvt.u32.u64 %r65,%r93; bra $L7; $L6: .loc 1 158 32 setp.ne.u32 %r94,%r48,48; @ %r94 bra $L8; .loc 1 159 29 ld.u8 %r161,[%r33]; mov.u16 %r97,%r161; and.b16 %r96,%r97,-33; .loc 1 159 15 cvt.u32.u16 %r99,%r96; cvt.u16.u8 %r98,%r99; setp.ne.u16 %r100,%r98,88; @ %r100 bra $L9; .loc 1 160 5 ld.u8 %r48,[%r33+1]; .loc 1 161 5 add.u64 %r33,%r33,2; mov.u32 %r65,15; mov.u64 %r61,1152921504606846975; mov.u64 %r62,16; .loc 1 162 8 cvt.u32.u64 %r72,%r62; bra $L7; $L9: .loc 1 164 5 setp.eq.u32 %r101,%r72,0; @ %r101 bra $L21; cvt.s64.s32 %r62,%r72; mov.u64 %r102,-1; div.u64 %r61,%r102,%r62; rem.u64 %r105,%r102,%r62; cvt.u32.u64 %r65,%r105; bra $L7; $L21: mov.u32 %r65,7; mov.u64 %r61,2305843009213693951; mov.u64 %r62,8; .loc 1 165 23 cvt.u32.u64 %r72,%r62; bra $L7; $L26: .loc 1 164 5 mov.u32 %r65,5; mov.u64 %r61,1844674407370955161; mov.u64 %r62,10; .loc 1 165 23 cvt.u32.u64 %r72,%r62; $L7: mov.u64 %r66,%r33; .loc 1 168 20 mov.u32 %r51,0; .loc 1 168 11 mov.u64 %r68,0; .loc 1 178 8 mov.u32 %r159,-1; .loc 1 180 8 mov.u32 %r160,1; $L15: .loc 1 169 7 cvt.s64.s32 %r106,%r48; add.u64 %r107,%r23,%r106; ld.s8 %r37,[%r107+1]; .loc 1 169 6 cvt.u16.u32 %r110,%r37; and.b16 %r109,%r110,4; cvt.u32.u16 %r111,%r109; cvt.s32.s8 %r113,%r111; cvt.u16.u32 %r112,%r113; setp.eq.u16 %r114,%r112,0; @ %r114 bra $L10; .loc 1 170 6 add.u32 %r49,%r48,-48; bra $L11; $L10: and.b16 %r115,%r110,3; cvt.u32.u16 %r117,%r115; cvt.s32.s8 %r29,%r117; .loc 1 171 11 setp.eq.u32 %r118,%r29,0; @ %r118 bra $L12; .loc 1 172 31 cvt.u16.u32 %r119,%r29; setp.eq.u16 %r120,%r119,1; selp.u32 %r52,55,87,%r120; .loc 1 172 6 sub.u32 %r49,%r48,%r52; $L11: .loc 1 175 6 setp.le.s32 %r121,%r72,%r49; @ %r121 bra $L12; .loc 1 177 24 shr.u32 %r123,%r51,31; .loc 1 177 35 set.u32.gt.u64 %r125,%r68,%r61; neg.s32 %r126,%r125; .loc 1 177 28 cvt.u16.u32 %r129,%r123; cvt.u16.u32 %r130,%r126; or.b16 %r128,%r129,%r130; .loc 1 177 19 cvt.u32.u16 %r131,%r128; cvt.u16.u8 %r132,%r131; setp.ne.u16 %r133,%r132,0; @ %r133 bra $L23; .loc 1 177 52 set.u32.eq.u64 %r135,%r68,%r61; neg.s32 %r136,%r135; .loc 1 177 67 set.u32.gt.s32 %r138,%r49,%r65; neg.s32 %r139,%r138; .loc 1 177 62 cvt.u16.u32 %r141,%r136; cvt.u16.u32 %r142,%r139; and.b16 %r140,%r141,%r142; .loc 1 177 44 cvt.u32.u16 %r143,%r140; cvt.u16.u8 %r144,%r143; setp.ne.u16 %r145,%r144,0; @ %r145 bra $L24; .loc 1 182 8 cvt.s64.s32 %r146,%r49; mad.lo.u64 %r68,%r68,%r62,%r146; .loc 1 180 8 mov.u32 %r51,%r160; bra $L14; $L23: .loc 1 178 8 mov.u32 %r51,%r159; bra $L14; $L24: mov.u32 %r51,%r159; $L14: .loc 1 168 28 ld.u8 %r48,[%r66]; add.u64 %r66,%r66,1; .loc 1 169 6 bra $L15; $L12: .loc 1 185 5 setp.ge.s32 %r147,%r51,0; @ %r147 bra $L16; .loc 1 187 16 mov.u32 %r148,34; st.u32 [%r69],%r148; .loc 1 190 5 setp.ne.u64 %r149,%r71,0; @ %r149 bra $L25; .loc 1 186 7 mov.u64 %r68,-1; bra $L1; $L16: .loc 1 188 12 setp.eq.u32 %r150,%r50,0; @ %r150 bra $L19; .loc 1 189 7 neg.s64 %r68,%r68; $L19: .loc 1 190 5 setp.eq.u64 %r151,%r71,0; @ %r151 bra $L1; .loc 1 191 13 setp.eq.u32 %r152,%r51,0; @ %r152 bra $L20; bra $L17; $L25: .loc 1 186 7 mov.u64 %r68,-1; $L17: .loc 1 191 13 add.u64 %r70,%r66,-1; $L20: .loc 1 191 11 st.u64 [%r71],%r70; .loc 1 192 9 bra $L1; $L8: .loc 1 164 5 setp.eq.u32 %r154,%r72,0; @ %r154 bra $L26; cvt.s64.s32 %r62,%r72; mov.u64 %r155,-1; div.u64 %r61,%r155,%r62; rem.u64 %r158,%r155,%r62; cvt.u32.u64 %r65,%r158; bra $L7; $L1: .loc 1 193 1 mov.u64 %value,%r68; 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 203 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_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r32,[%value_in]; } .loc 1 204 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } /789 1591654536 399 399 100644 1466 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: strtoull .visible .func (.param .u64 %value_out) strtoull (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u32 %in_ar2); .file 1 "../../../../../../newlib/libc/stdlib/strtoull.c" // BEGIN GLOBAL VAR DECL: _impure_ptr .extern .global .align 8 .u64 _impure_ptr[1]; // 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 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 136 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_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r32,[%value_in]; } .loc 1 137 1 mov.u64 %value,%r32; st.param.u64 [%value_out],%value; ret; } /807 1591654536 399 399 100644 6822 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // 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); .file 1 "../../../../../../newlib/libc/stdlib/strtoull_r.c" // BEGIN GLOBAL VAR DECL: __ctype_ptr__ .extern .global .align 8 .u64 __ctype_ptr__[1]; // 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 .u32 %r22; .reg .u64 %r23; .reg .u32 %r29; .reg .u64 %r33; .reg .u32 %r37; .reg .u64 %r46; .reg .u32 %r48; .reg .u32 %r49; .reg .u32 %r50; .reg .u32 %r51; .reg .u32 %r52; .reg .u64 %r55; .reg .u64 %r61; .reg .u64 %r62; .reg .u32 %r65; .reg .u64 %r66; .reg .u64 %r68; .reg .u64 %r69; .reg .u64 %r70; .reg .u64 %r71; .reg .u32 %r72; .reg .u64 %r73; .reg .u32 %r74; .reg .u64 %r75; .reg .u16 %r78; .reg .u16 %r79; .reg .u32 %r80; .reg .u16 %r81; .reg .u32 %r82; .reg .pred %r83; .reg .u16 %r84; .reg .pred %r85; .reg .pred %r87; .reg .u32 %r88; .reg .pred %r89; .reg .u64 %r90; .reg .u64 %r93; .reg .pred %r94; .reg .u16 %r96; .reg .u16 %r97; .reg .u16 %r98; .reg .u32 %r99; .reg .pred %r100; .reg .pred %r101; .reg .u64 %r102; .reg .u64 %r105; .reg .u64 %r106; .reg .u64 %r107; .reg .u16 %r109; .reg .u16 %r110; .reg .u32 %r111; .reg .u16 %r112; .reg .u32 %r113; .reg .pred %r114; .reg .u16 %r115; .reg .u32 %r117; .reg .pred %r118; .reg .u16 %r119; .reg .pred %r120; .reg .pred %r121; .reg .u32 %r123; .reg .u32 %r125; .reg .u32 %r126; .reg .u16 %r128; .reg .u16 %r129; .reg .u16 %r130; .reg .u32 %r131; .reg .u16 %r132; .reg .pred %r133; .reg .u32 %r135; .reg .u32 %r136; .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 .pred %r147; .reg .u32 %r148; .reg .pred %r149; .reg .pred %r150; .reg .pred %r151; .reg .pred %r152; .reg .pred %r154; .reg .u64 %r155; .reg .u64 %r158; .reg .u32 %r159; .reg .u32 %r160; .reg .u16 %r161; mov.u64 %r69,%ar0; mov.u64 %r70,%ar1; mov.u64 %r71,%ar2; mov.u32 %r72,%ar3; .loc 1 77 11 ld.global.u64 %r23,[__ctype_ptr__]; mov.u64 %r55,%r70; $L2: mov.u64 %r46,%r55; add.u64 %r33,%r55,1; mov.u64 %r55,%r33; .loc 1 76 7 ld.u8 %r22,[%r46]; .loc 1 77 11 cvt.u32.u32 %r74,%r22; cvt.u64.u8 %r73,%r74; add.u64 %r75,%r23,%r73; .loc 1 77 2 ld.u8 %r161,[%r75+1]; mov.u16 %r79,%r161; and.b16 %r78,%r79,8; cvt.u32.u16 %r80,%r78; cvt.s32.s8 %r82,%r80; cvt.u16.u32 %r81,%r82; setp.ne.u16 %r83,%r81,0; @ %r83 bra $L2; .loc 1 78 5 cvt.u16.u32 %r84,%r22; setp.ne.u16 %r85,%r84,45; @ %r85 bra $L3; .loc 1 80 5 ld.u8 %r48,[%r33]; .loc 1 80 9 add.u64 %r33,%r46,2; .loc 1 79 7 mov.u32 %r50,1; bra $L4; $L3: .loc 1 81 12 setp.eq.u16 %r87,%r84,43; @ %r87 bra $L5; .loc 1 76 5 mov.u32 %r48,%r22; .loc 1 70 15 mov.u32 %r50,0; bra $L4; $L5: .loc 1 82 5 ld.u8 %r48,[%r33]; .loc 1 82 9 add.u64 %r33,%r46,2; .loc 1 70 15 mov.u32 %r50,0; $L4: .loc 1 83 12 and.b32 %r88,%r72,-17; .loc 1 83 5 setp.eq.u32 %r89,%r88,0; @ %r89 bra $L6; cvt.s64.s32 %r62,%r72; mov.u64 %r90,-1; div.u64 %r61,%r90,%r62; rem.u64 %r93,%r90,%r62; cvt.u32.u64 %r65,%r93; bra $L7; $L6: .loc 1 83 32 setp.ne.u32 %r94,%r48,48; @ %r94 bra $L8; .loc 1 84 29 ld.u8 %r161,[%r33]; mov.u16 %r97,%r161; and.b16 %r96,%r97,-33; .loc 1 84 15 cvt.u32.u16 %r99,%r96; cvt.u16.u8 %r98,%r99; setp.ne.u16 %r100,%r98,88; @ %r100 bra $L9; .loc 1 85 5 ld.u8 %r48,[%r33+1]; .loc 1 86 5 add.u64 %r33,%r33,2; mov.u32 %r65,15; mov.u64 %r61,1152921504606846975; mov.u64 %r62,16; .loc 1 87 8 cvt.u32.u64 %r72,%r62; bra $L7; $L9: .loc 1 89 5 setp.eq.u32 %r101,%r72,0; @ %r101 bra $L21; cvt.s64.s32 %r62,%r72; mov.u64 %r102,-1; div.u64 %r61,%r102,%r62; rem.u64 %r105,%r102,%r62; cvt.u32.u64 %r65,%r105; bra $L7; $L21: mov.u32 %r65,7; mov.u64 %r61,2305843009213693951; mov.u64 %r62,8; .loc 1 90 23 cvt.u32.u64 %r72,%r62; bra $L7; $L26: .loc 1 89 5 mov.u32 %r65,5; mov.u64 %r61,1844674407370955161; mov.u64 %r62,10; .loc 1 90 23 cvt.u32.u64 %r72,%r62; $L7: mov.u64 %r66,%r33; .loc 1 93 20 mov.u32 %r51,0; .loc 1 93 11 mov.u64 %r68,0; .loc 1 103 8 mov.u32 %r159,-1; .loc 1 105 8 mov.u32 %r160,1; $L15: .loc 1 94 7 cvt.s64.s32 %r106,%r48; add.u64 %r107,%r23,%r106; ld.s8 %r37,[%r107+1]; .loc 1 94 6 cvt.u16.u32 %r110,%r37; and.b16 %r109,%r110,4; cvt.u32.u16 %r111,%r109; cvt.s32.s8 %r113,%r111; cvt.u16.u32 %r112,%r113; setp.eq.u16 %r114,%r112,0; @ %r114 bra $L10; .loc 1 95 6 add.u32 %r49,%r48,-48; bra $L11; $L10: and.b16 %r115,%r110,3; cvt.u32.u16 %r117,%r115; cvt.s32.s8 %r29,%r117; .loc 1 96 11 setp.eq.u32 %r118,%r29,0; @ %r118 bra $L12; .loc 1 97 31 cvt.u16.u32 %r119,%r29; setp.eq.u16 %r120,%r119,1; selp.u32 %r52,55,87,%r120; .loc 1 97 6 sub.u32 %r49,%r48,%r52; $L11: .loc 1 100 6 setp.le.s32 %r121,%r72,%r49; @ %r121 bra $L12; .loc 1 102 24 shr.u32 %r123,%r51,31; .loc 1 102 35 set.u32.gt.u64 %r125,%r68,%r61; neg.s32 %r126,%r125; .loc 1 102 28 cvt.u16.u32 %r129,%r123; cvt.u16.u32 %r130,%r126; or.b16 %r128,%r129,%r130; .loc 1 102 19 cvt.u32.u16 %r131,%r128; cvt.u16.u8 %r132,%r131; setp.ne.u16 %r133,%r132,0; @ %r133 bra $L23; .loc 1 102 52 set.u32.eq.u64 %r135,%r68,%r61; neg.s32 %r136,%r135; .loc 1 102 67 set.u32.gt.s32 %r138,%r49,%r65; neg.s32 %r139,%r138; .loc 1 102 62 cvt.u16.u32 %r141,%r136; cvt.u16.u32 %r142,%r139; and.b16 %r140,%r141,%r142; .loc 1 102 44 cvt.u32.u16 %r143,%r140; cvt.u16.u8 %r144,%r143; setp.ne.u16 %r145,%r144,0; @ %r145 bra $L24; .loc 1 107 8 cvt.s64.s32 %r146,%r49; mad.lo.u64 %r68,%r68,%r62,%r146; .loc 1 105 8 mov.u32 %r51,%r160; bra $L14; $L23: .loc 1 103 8 mov.u32 %r51,%r159; bra $L14; $L24: mov.u32 %r51,%r159; $L14: .loc 1 93 28 ld.u8 %r48,[%r66]; add.u64 %r66,%r66,1; .loc 1 94 6 bra $L15; $L12: .loc 1 110 5 setp.ge.s32 %r147,%r51,0; @ %r147 bra $L16; .loc 1 112 16 mov.u32 %r148,34; st.u32 [%r69],%r148; .loc 1 115 5 setp.ne.u64 %r149,%r71,0; @ %r149 bra $L25; .loc 1 111 7 mov.u64 %r68,-1; bra $L1; $L16: .loc 1 113 12 setp.eq.u32 %r150,%r50,0; @ %r150 bra $L19; .loc 1 114 7 neg.s64 %r68,%r68; $L19: .loc 1 115 5 setp.eq.u64 %r151,%r71,0; @ %r151 bra $L1; .loc 1 116 13 setp.eq.u32 %r152,%r51,0; @ %r152 bra $L20; bra $L17; $L25: .loc 1 111 7 mov.u64 %r68,-1; $L17: .loc 1 116 13 add.u64 %r70,%r66,-1; $L20: .loc 1 116 11 st.u64 [%r71],%r70; .loc 1 117 9 bra $L1; $L8: .loc 1 89 5 setp.eq.u32 %r154,%r72,0; @ %r154 bra $L26; cvt.s64.s32 %r62,%r72; mov.u64 %r155,-1; div.u64 %r61,%r155,%r62; rem.u64 %r158,%r155,%r62; cvt.u32.u64 %r65,%r158; bra $L7; $L1: .loc 1 118 1 mov.u64 %value,%r68; st.param.u64 [%value_out],%value; ret; } lib_a-strupr.o/ 1591654536 399 399 100644 1591 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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_ptr__ .extern .global .align 8 .u64 __ctype_ptr__[1]; // 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 %r27; .reg .u64 %r29; .reg .u64 %r31; .reg .pred %r32; .reg .u64 %r34; .reg .u32 %r35; .reg .u64 %r36; .reg .u64 %r37; .reg .u16 %r40; .reg .u16 %r41; .reg .u16 %r42; .reg .u32 %r43; .reg .u32 %r44; .reg .pred %r45; .reg .u16 %r46; .reg .u16 %r47; .reg .u32 %r48; .reg .u32 %r49; .reg .pred %r50; .reg .u16 %r51; mov.u64 %r31,%ar0; .loc 1 41 11 ld.u8 %r27,[%r31]; .loc 1 41 3 setp.ne.u32 %r32,%r27,0; @ ! %r32 bra $L7; mov.u64 %r29,%r31; $L2: .loc 1 43 14 cvt.u32.u32 %r35,%r27; cvt.u64.u8 %r34,%r35; ld.global.u64 %r36,[__ctype_ptr__]; add.u64 %r37,%r36,%r34; ld.u8 %r51,[%r37+1]; mov.u16 %r41,%r51; and.b16 %r40,%r41,3; cvt.u32.u16 %r44,%r40; cvt.s32.s8 %r43,%r44; cvt.u16.u32 %r42,%r43; setp.ne.u16 %r45,%r42,2; @ %r45 bra $L3; cvt.u16.u32 %r47,%r27; add.u16 %r46,%r47,-32; cvt.u32.u16 %r48,%r46; cvt.u32.u8 %r27,%r48; $L3: .loc 1 43 12 cvt.u32.u32 %r49,%r27; st.u8 [%r29],%r49; .loc 1 41 28 add.u64 %r29,%r29,1; .loc 1 41 11 ld.u8 %r27,[%r29]; .loc 1 41 3 setp.ne.u32 %r50,%r27,0; @ %r50 bra $L2; $L7: .loc 1 46 1 mov.u64 %value,%r31; st.param.u64 [%value_out],%value; ret; } lib_a-strxfrm.o/1591654536 399 399 100644 2014 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u64 %r33; .reg .pred %r34; .reg .u32 %r35; .reg .pred %r36; .reg .u64 %r37; .reg .u32 %r38; .reg .pred %r39; .reg .pred %r40; .reg .pred %r41; .reg .u64 %r42; .reg .u16 %r43; .reg .u32 %r44; .reg .pred %r45; mov.u64 %r31,%ar0; mov.u64 %r32,%ar1; mov.u64 %r33,%ar2; ld.s8 %r25,[%r32]; .loc 1 62 9 setp.eq.u64 %r34,%r33,0; @ %r34 bra $L7; .loc 1 64 23 add.u64 %r32,%r32,1; .loc 1 64 18 cvt.u32.u32 %r35,%r25; st.u8 [%r31],%r35; .loc 1 64 10 setp.ne.u32 %r36,%r25,0; @ %r36 bra $L8; .loc 1 61 7 mov.u64 %r30,0; bra $L1; $L5: .loc 1 64 23 add.u64 %r32,%r32,1; .loc 1 64 18 add.u64 %r37,%r31,%r26; cvt.u32.u32 %r38,%r25; st.u8 [%r37],%r38; .loc 1 64 10 setp.eq.u32 %r39,%r25,0; @ ! %r39 bra $L3; bra $L9; $L8: .loc 1 61 7 mov.u64 %r26,0; $L3: .loc 1 65 9 add.u64 %r26,%r26,1; ld.s8 %r25,[%r32]; .loc 1 62 9 setp.ne.u64 %r40,%r33,%r26; @ %r40 bra $L5; bra $L2; $L7: .loc 1 61 7 mov.u64 %r26,%r33; $L2: .loc 1 69 9 setp.eq.u32 %r41,%r25,0; @ %r41 bra $L10; mov.u64 %r27,%r32; $L6: .loc 1 71 7 add.u64 %r27,%r27,1; add.u64 %r42,%r27,%r26; sub.u64 %r30,%r42,%r32; .loc 1 69 9 ld.s8 %r44,[%r27]; cvt.u16.u32 %r43,%r44; setp.ne.u16 %r45,%r43,0; @ %r45 bra $L6; bra $L1; $L9: .loc 1 65 9 mov.u64 %r30,%r26; bra $L1; $L10: .loc 1 69 9 mov.u64 %r30,%r26; $L1: .loc 1 76 1 mov.u64 %value,%r30; st.param.u64 [%value_out],%value; ret; } /827 1591654536 399 399 100644 46692 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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_os_r .extern .func (.param .u64 %value_out) _realloc_os_r (.param .u64 %in_ar0, .param .u64 %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 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$4098 .const .align 1 .u8 zeroes$4098[16] = {48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48 }; // BEGIN VAR DEF: blanks$4097 .const .align 1 .u8 blanks$4097[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 .u32 %r26; .reg .u64 %r28; .reg .u64 %r29; .reg .u64 %r34; .reg .u64 %r39; .reg .u64 %r41; .reg .u64 %r47; .reg .u32 %r50; .reg .u64 %r51; .reg .u32 %r52; .reg .u32 %r55; .reg .u64 %r57; .reg .u64 %r58; .reg .u64 %r61; .reg .u32 %r62; .reg .u64 %r63; .reg .u64 %r64; .reg .u64 %r65; .reg .u64 %r66; .reg .pred %r67; .reg .u32 %r68; .reg .pred %r69; .reg .pred %r70; .reg .u16 %r71; .reg .u16 %r72; .reg .pred %r73; .reg .u32 %r74; .reg .u32 %r76; .reg .u32 %r77; .reg .u32 %r78; .reg .u32 %r79; .reg .u64 %r81; .reg .u64 %r82; .reg .pred %r83; .reg .u32 %r84; .reg .u32 %r85; .reg .u16 %r87; .reg .u16 %r88; .reg .pred %r89; .reg .u64 %r92; .reg .pred %r93; .reg .u32 %r94; .reg .u64 %r98; .reg .u64 %r99; .reg .u16 %r100; .reg .u16 %r101; .reg .u16 %r102; .reg .u64 %r107; .reg .u64 %r108; .reg .pred %r109; .reg .u64 %r112; .reg .u32 %r113; .reg .u32 %r114; .reg .pred %r115; .reg .u64 %r119; .reg .u32 %r120; .reg .u64 %r121; .reg .u64 %r122; .reg .pred %r123; .reg .u16 %r124; .reg .u16 %r125; .reg .u64 %r126; .reg .u32 %r127; mov.u64 %r63,%ar0; mov.u64 %r64,%ar1; mov.u64 %r65,%ar2; .loc 1 283 5 ld.u64 %r66,[%r65+16]; setp.eq.u64 %r67,%r66,0; @ %r67 bra $L2; .loc 1 280 6 ld.u64 %r39,[%r65]; ld.u64 %r61,[%r64]; ld.u32 %r50,[%r64+12]; .loc 1 278 24 mov.u64 %r34,0; .loc 1 281 6 mov.u64 %r41,%r34; bra $L3; $L2: .loc 1 284 19 mov.u32 %r68,0; st.u32 [%r65+8],%r68; .loc 1 285 10 mov.u32 %r62,%r68; bra $L1; $L5: .loc 1 290 6 ld.u64 %r34,[%r39]; .loc 1 291 8 ld.u64 %r41,[%r39+8]; .loc 1 292 7 add.u64 %r39,%r39,16; $L3: .loc 1 289 9 setp.eq.u64 %r69,%r41,0; @ %r69 bra $L5; cvt.s64.s32 %r58,%r50; .loc 1 295 6 setp.lt.u64 %r70,%r41,%r58; @ %r70 bra $L6; .loc 1 295 21 ld.s16 %r23,[%r64+16]; .loc 1 295 16 cvt.u16.u32 %r72,%r23; and.b16 %r71,%r72,1152; setp.ne.u16 %r73,%r71,0; @ %r73 bra $L7; cvt.u32.u64 %r74,%r41; cvt.s64.s32 %r57,%r74; bra $L8; $L7: .loc 1 298 34 ld.u64 %r24,[%r64+24]; .loc 1 298 25 sub.u64 %r25,%r61,%r24; .loc 1 298 8 cvt.u32.u64 %r55,%r25; .loc 1 306 25 ld.u32 %r26,[%r64+32]; .loc 1 306 32 add.u32 %r76,%r26,%r26; add.u32 %r77,%r76,%r26; .loc 1 306 8 shr.u32 %r78,%r77,31; add.u32 %r79,%r78,%r77; shr.s32 %r52,%r79,1; .loc 1 307 16 cvt.s64.s32 %r28,%r52; .loc 1 307 25 cvt.s64.s32 %r29,%r55; .loc 1 307 31 add.u64 %r81,%r41,1; add.u64 %r82,%r81,%r29; .loc 1 307 7 setp.ge.u64 %r83,%r28,%r82; @ %r83 bra $L9; .loc 1 308 28 cvt.u32.u64 %r85,%r41; add.u32 %r84,%r85,1; add.u32 %r52,%r84,%r55; cvt.s64.s32 %r28,%r52; $L9: .loc 1 309 7 cvt.u16.u32 %r88,%r23; and.b16 %r87,%r88,1024; setp.eq.u16 %r89,%r87,0; @ %r89 bra $L10; .loc 1 312 28 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r63; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r28; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r92,[%value_in]; } mov.u64 %r51,%r92; .loc 1 313 8 setp.ne.u64 %r93,%r92,0; @ %r93 bra $L11; .loc 1 315 18 mov.u32 %r94,12; st.u32 [%r63],%r94; .loc 1 316 6 bra $L12; $L11: .loc 1 318 5 ld.u64 %r98,[%r64+24]; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r51; .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 319 16 ld.u16 %r101,[%r64+16]; and.b16 %r100,%r101,-1153; or.b16 %r102,%r100,128; st.u16 [%r64+16],%r102; bra $L13; $L10: .loc 1 323 28 cvt.s64.s32 %r107,%r26; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r63; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r24; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r28; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r107; call (%value_in),_realloc_os_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u64 %r108,[%value_in]; } mov.u64 %r51,%r108; .loc 1 325 8 setp.ne.u64 %r109,%r108,0; @ %r109 bra $L13; .loc 1 327 6 ld.u64 %r112,[%r64+24]; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r63; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r112; call _free_r,(%out_arg1,%out_arg2); } .loc 1 330 18 mov.u32 %r113,12; st.u32 [%r63],%r113; .loc 1 331 6 bra $L12; $L13: .loc 1 334 18 st.u64 [%r64+24],%r51; .loc 1 335 17 add.u64 %r61,%r51,%r29; .loc 1 335 11 st.u64 [%r64],%r61; .loc 1 336 18 st.u32 [%r64+32],%r52; .loc 1 337 6 cvt.u32.u64 %r50,%r41; .loc 1 338 21 sub.u32 %r114,%r52,%r55; .loc 1 338 11 st.u32 [%r64+12],%r114; .loc 1 340 11 cvt.s64.s32 %r58,%r50; .loc 1 340 6 setp.le.u64 %r115,%r58,%r41; @ %r115 bra $L15; $L6: .loc 1 341 6 cvt.u32.u64 %r50,%r41; cvt.s64.s32 %r58,%r50; mov.u64 %r57,%r58; bra $L8; $L15: mov.u64 %r57,%r58; $L8: .loc 1 342 9 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r61; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r34; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r58; call (%value_in),memmove,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r119,[%value_in]; } .loc 1 343 10 ld.u32 %r120,[%r64+12]; sub.u32 %r50,%r120,%r50; st.u32 [%r64+12],%r50; .loc 1 344 10 ld.u64 %r121,[%r64]; add.u64 %r61,%r121,%r58; st.u64 [%r64],%r61; .loc 1 346 5 add.u64 %r34,%r34,%r57; .loc 1 347 7 sub.u64 %r41,%r41,%r57; .loc 1 348 34 ld.u64 %r122,[%r65+16]; sub.u64 %r47,%r122,%r57; st.u64 [%r65+16],%r47; .loc 1 348 9 setp.ne.u64 %r123,%r47,0; @ %r123 bra $L3; bra $L2; $L12: .loc 1 355 14 ld.u16 %r125,[%r64+16]; or.b16 %r124,%r125,64; st.u16 [%r64+16],%r124; .loc 1 356 18 mov.u64 %r126,0; st.u64 [%r65+16],%r126; .loc 1 357 19 cvt.u32.u64 %r127,%r126; st.u32 [%r65+8],%r127; .loc 1 358 10 mov.u32 %r62,-1; $L1: .loc 1 359 1 mov.u32 %value,%r62; 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 %r25; .reg .u64 %r30; .reg .u32 %r34; .reg .u64 %r38; .reg .u64 %r50; .reg .u32 %r88; .reg .u32 %r100; .reg .u32 %r101; .reg .u64 %r102; .reg .u64 %r104; .reg .u32 %r109; .reg .u64 %r111; .reg .u32 %r113; .reg .u64 %r115; .reg .u64 %r117; .reg .u32 %r120; .reg .u64 %r122; .reg .u32 %r123; .reg .u64 %r128; .reg .u64 %r130; .reg .u32 %r131; .reg .u64 %r132; .reg .u32 %r134; .reg .u32 %r135; .reg .u32 %r136; .reg .u64 %r138; .reg .u32 %r139; .reg .u32 %r140; .reg .u32 %r141; .reg .u64 %r142; .reg .u32 %r146; .reg .u64 %r147; .reg .u32 %r148; .reg .u64 %r149; .reg .u64 %r151; .reg .u32 %r154; .reg .u32 %r155; .reg .u32 %r156; .reg .u32 %r157; .reg .u64 %r159; .reg .u64 %r160; .reg .u32 %r163; .reg .u32 %r164; .reg .u64 %r166; .reg .u64 %r170; .reg .u64 %r172; .reg .u64 %r173; .reg .u64 %r176; .reg .u64 %r177; .reg .u64 %r178; .reg .u64 %r179; .reg .u64 %r180; .reg .u64 %r181; .reg .u64 %r182; .reg .u32 %r183; .reg .u64 %r184; .reg .u64 %r185; .reg .u64 %r186; .reg .u64 %r187; .reg .u64 %r188; .reg .u64 %r189; .reg .u64 %r192; .reg .u64 %r194; .reg .u32 %r196; .reg .u32 %r197; .reg .u64 %r199; .reg .u64 %r200; .reg .u64 %r202; .reg .u64 %r205; .reg .u32 %r206; .reg .u32 %r207; .reg .u64 %r208; .reg .u32 %r210; .reg .u64 %r212; .reg .u64 %r214; .reg .u32 %r215; .reg .u64 %r216; .reg .u64 %r217; .reg .u64 %r222; .reg .u32 %r223; .reg .u32 %r224; .reg .u32 %r225; .reg .u32 %r226; .reg .u64 %r227; .reg .u64 %r228; .reg .u64 %r229; .reg .u64 %r230; .reg .u16 %r239; .reg .u16 %r240; .reg .pred %r241; .reg .u64 %r242; .reg .pred %r243; .reg .u64 %r245; .reg .u64 %r246; .reg .pred %r247; .reg .u32 %r248; .reg .u32 %r249; .reg .u64 %r250; .reg .u32 %r251; .reg .u16 %r253; .reg .u32 %r254; .reg .u32 %r255; .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 .u16 %r267; .reg .u32 %r268; .reg .u32 %r269; .reg .u32 %r272; .reg .u32 %r273; .reg .u16 %r274; .reg .u16 %r275; .reg .u16 %r276; .reg .u32 %r277; .reg .u16 %r278; .reg .pred %r279; .reg .u64 %r280; .reg .pred %r281; .reg .u64 %r282; .reg .u64 %r283; .reg .u32 %r284; .reg .pred %r285; .reg .u32 %r290; .reg .pred %r291; .reg .pred %r292; .reg .u32 %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 .pred %r311; .reg .pred %r312; .reg .pred %r313; .reg .pred %r314; .reg .pred %r315; .reg .pred %r316; .reg .pred %r317; .reg .pred %r318; .reg .pred %r319; .reg .pred %r320; .reg .pred %r321; .reg .pred %r322; .reg .pred %r323; .reg .pred %r324; .reg .pred %r325; .reg .u32 %r326; .reg .pred %r327; .reg .pred %r328; .reg .pred %r329; .reg .pred %r330; .reg .u32 %r331; .reg .u32 %r333; .reg .u32 %r334; .reg .u32 %r335; .reg .pred %r336; .reg .u32 %r338; .reg .u32 %r339; .reg .u32 %r340; .reg .pred %r343; .reg .u16 %r344; .reg .pred %r345; .reg .u32 %r346; .reg .u32 %r347; .reg .pred %r348; .reg .u32 %r349; .reg .u32 %r350; .reg .pred %r351; .reg .pred %r352; .reg .u32 %r353; .reg .u32 %r354; .reg .pred %r355; .reg .u32 %r356; .reg .pred %r357; .reg .u32 %r358; .reg .pred %r359; .reg .pred %r364; .reg .u32 %r365; .reg .pred %r366; .reg .u32 %r367; .reg .u64 %r368; .reg .u32 %r369; .reg .pred %r370; .reg .u64 %r371; .reg .u32 %r372; .reg .pred %r373; .reg .u64 %r374; .reg .u32 %r375; .reg .pred %r376; .reg .pred %r377; .reg .u32 %r378; .reg .u32 %r379; .reg .pred %r380; .reg .pred %r381; .reg .u32 %r382; .reg .u32 %r383; .reg .pred %r384; .reg .u32 %r385; .reg .pred %r386; .reg .u32 %r387; .reg .pred %r388; .reg .u16 %r389; .reg .u32 %r390; .reg .u32 %r391; .reg .u32 %r392; .reg .pred %r393; .reg .pred %r394; .reg .u32 %r396; .reg .u64 %r398; .reg .u64 %r399; .reg .pred %r400; .reg .u64 %r401; .reg .u32 %r402; .reg .u64 %r404; .reg .pred %r405; .reg .u32 %r406; .reg .u32 %r407; .reg .pred %r408; .reg .pred %r409; .reg .u32 %r410; .reg .u32 %r411; .reg .pred %r412; .reg .u32 %r413; .reg .pred %r414; .reg .u32 %r415; .reg .pred %r416; .reg .u16 %r417; .reg .pred %r418; .reg .u32 %r419; .reg .u32 %r420; .reg .pred %r421; .reg .u32 %r422; .reg .pred %r423; .reg .u32 %r424; .reg .pred %r425; .reg .u16 %r426; .reg .u32 %r427; .reg .pred %r428; .reg .pred %r429; .reg .u32 %r430; .reg .u32 %r431; .reg .pred %r432; .reg .u32 %r434; .reg .u32 %r435; .reg .u32 %r437; .reg .u32 %r438; .reg .u16 %r439; .reg .u16 %r440; .reg .u16 %r441; .reg .u32 %r442; .reg .u16 %r443; .reg .pred %r444; .reg .u16 %r445; .reg .pred %r446; .reg .pred %r448; .reg .u16 %r450; .reg .u16 %r451; .reg .u16 %r453; .reg .u32 %r455; .reg .pred %r457; .reg .u16 %r459; .reg .u32 %r460; .reg .u32 %r461; .reg .u16 %r463; .reg .u16 %r464; .reg .u16 %r466; .reg .u16 %r467; .reg .u32 %r469; .reg .u16 %r470; .reg .pred %r471; .reg .u64 %r474; .reg .u32 %r475; .reg .u64 %r478; .reg .u16 %r481; .reg .u16 %r482; .reg .u32 %r483; .reg .u64 %r485; .reg .u16 %r487; .reg .u16 %r488; .reg .u32 %r489; .reg .u64 %r493; .reg .u64 %r494; .reg .u64 %r495; .reg .u32 %r496; .reg .pred %r497; .reg .u64 %r500; .reg .pred %r501; .reg .pred %r502; .reg .u32 %r503; .reg .pred %r504; .reg .u32 %r505; .reg .pred %r506; .reg .u32 %r507; .reg .pred %r508; .reg .pred %r510; .reg .pred %r511; .reg .pred %r512; .reg .u64 %r514; .reg .pred %r515; .reg .u32 %r520; .reg .pred %r521; .reg .pred %r522; .reg .pred %r524; .reg .u32 %r529; .reg .pred %r530; .reg .u16 %r531; .reg .u32 %r532; .reg .pred %r533; .reg .u64 %r535; .reg .pred %r536; .reg .u32 %r541; .reg .pred %r542; .reg .u64 %r545; .reg .pred %r546; .reg .u32 %r551; .reg .pred %r552; .reg .pred %r553; .reg .pred %r554; .reg .pred %r555; .reg .u64 %r557; .reg .pred %r558; .reg .u32 %r563; .reg .pred %r564; .reg .pred %r565; .reg .pred %r567; .reg .u32 %r572; .reg .pred %r573; .reg .pred %r574; .reg .pred %r575; .reg .u64 %r577; .reg .pred %r578; .reg .u32 %r583; .reg .pred %r584; .reg .pred %r585; .reg .pred %r587; .reg .u32 %r592; .reg .pred %r593; .reg .u32 %r594; .reg .pred %r595; .reg .u32 %r600; .reg .pred %r601; .reg .u32 %r602; .reg .pred %r603; .reg .pred %r604; .reg .pred %r605; .reg .u64 %r607; .reg .pred %r608; .reg .u32 %r613; .reg .pred %r614; .reg .pred %r615; .reg .pred %r617; .reg .u32 %r622; .reg .pred %r623; .reg .u32 %r624; .reg .pred %r625; .reg .u32 %r626; .reg .u32 %r631; .reg .pred %r632; .reg .u64 %r633; .reg .pred %r634; .reg .u64 %r638; .reg .u32 %r639; .reg .u16 %r640; .reg .u16 %r641; .reg .pred %r642; .reg .pred %r644; .reg .u32 %r646; .reg .u32 %r647; .reg .u32 %r649; .reg .u32 %r650; .reg .u16 %r651; .reg .u16 %r652; .reg .u16 %r653; .reg .u32 %r654; .reg .u16 %r655; .reg .pred %r656; .reg .u64 %r657; .reg .u64 %r658; .reg .u32 %r659; .reg .pred %r660; .reg .pred %r662; .reg .u32 %r688; .reg .u64 %r689; .reg .u64 %r690; .reg .u64 %r691; mov.u64 %r227,%ar0; mov.u64 %r228,%ar1; mov.u64 %r229,%ar2; mov.u64 %r230,%ar3; .loc 1 880 12 ld.u16 %r240,[%r228+16]; and.b16 %r239,%r240,128; setp.eq.u16 %r241,%r239,0; @ %r241 bra $L20; .loc 1 880 33 ld.u64 %r242,[%r228+24]; setp.ne.u64 %r243,%r242,0; @ %r243 bra $L20; .loc 1 882 28 mov.u64 %r245,64; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r227; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r245; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r246,[%value_in]; } .loc 1 882 26 st.u64 [%r228],%r246; .loc 1 882 17 st.u64 [%r228+24],%r246; .loc 1 883 6 setp.ne.u64 %r247,%r246,0; @ %r247 bra $L21; .loc 1 885 17 mov.u32 %r248,12; st.u32 [%r227],%r248; .loc 1 886 11 mov.u32 %r226,-1; bra $L19; $L21: .loc 1 888 17 cvt.u32.u64 %r249,%r245; st.u32 [%r228+32],%r249; $L20: .loc 1 894 14 st.u64 [%frame+168],%frame; .loc 1 895 16 mov.u64 %r250,0; st.u64 [%frame+184],%r250; .loc 1 896 17 cvt.u32.u64 %r251,%r250; st.u32 [%frame+176],%r251; .loc 1 894 21 mov.u64 %r142,%frame; .loc 1 718 8 mov.u64 %r25,%r250; .loc 1 898 6 cvt.u32.u64 %r226,%r25; .loc 1 929 4 add.u64 %r689,%frame,168; .loc 1 1694 4 add.u64 %r690,%frame,192; .loc 1 1692 4 add.u64 %r691,%frame,194; $L23: .loc 1 925 24 ld.s8 %r146,[%r229]; .loc 1 925 37 cvt.u16.u32 %r253,%r146; set.u32.ne.u16 %r254,%r253,37; neg.s32 %r255,%r254; set.u32.ne.u16 %r258,%r253,0; neg.s32 %r259,%r258; cvt.u16.u32 %r261,%r255; cvt.u16.u32 %r262,%r259; and.b16 %r260,%r261,%r262; .loc 1 925 23 cvt.u32.u16 %r263,%r260; cvt.u16.u8 %r264,%r263; setp.eq.u16 %r265,%r264,0; @ %r265 bra $L155; mov.u64 %r172,%r229; bra $L25; $L156: mov.u64 %r172,%r147; $L25: .loc 1 926 25 add.u64 %r147,%r172,1; .loc 1 925 24 ld.s8 %r146,[%r147]; .loc 1 925 37 cvt.u16.u32 %r267,%r146; set.u32.ne.u16 %r268,%r267,0; neg.s32 %r269,%r268; set.u32.ne.u16 %r272,%r267,37; neg.s32 %r273,%r272; cvt.u16.u32 %r275,%r269; cvt.u16.u32 %r276,%r273; and.b16 %r274,%r275,%r276; .loc 1 925 23 cvt.u32.u16 %r277,%r274; cvt.u16.u8 %r278,%r277; setp.ne.u16 %r279,%r278,0; @ %r279 bra $L156; .loc 1 928 16 sub.u64 %r280,%r147,%r229; .loc 1 928 10 cvt.u32.u64 %r148,%r280; .loc 1 928 6 setp.eq.u32 %r281,%r148,0; @ %r281 bra $L24; .loc 1 929 4 st.u64 [%r142],%r229; cvt.s64.s32 %r30,%r148; st.u64 [%r142+8],%r30; ld.u64 %r283,[%frame+184]; add.u64 %r282,%r283,%r30; st.u64 [%frame+184],%r282; ld.u32 %r284,[%frame+176]; add.u32 %r34,%r284,1; st.u32 [%frame+176],%r34; setp.gt.s32 %r285,%r34,7; @ %r285 bra $L26; add.u64 %r142,%r142,16; bra $L27; $L26: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r227; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r228; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r689; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r290,[%value_in]; } setp.ne.u32 %r291,%r290,0; @ %r291 bra $L28; mov.u64 %r142,%frame; $L27: .loc 1 930 8 add.u32 %r226,%r226,%r148; ld.s8 %r146,[%r172+1]; bra $L24; $L155: .loc 1 925 23 mov.u64 %r147,%r229; $L24: .loc 1 936 20 setp.eq.u32 %r292,%r146,0; @ %r292 bra $L29; .loc 1 940 6 add.u64 %r229,%r147,1; .loc 1 946 8 mov.u32 %r293,0; st.u8 [%frame+194],%r293; ld.s8 %r225,[%r147+1]; mov.u32 %r163,0; mov.u32 %r183,%r163; .loc 1 945 8 mov.u32 %r136,-1; .loc 1 944 9 mov.u32 %r135,%r163; .loc 1 942 9 mov.u32 %r134,%r163; .loc 1 1071 6 mov.u32 %r688,%r163; bra $L30; $L158: .loc 1 1018 10 mov.u64 %r230,%r128; $L30: .loc 1 958 18 add.u64 %r229,%r229,1; .loc 1 958 12 mov.u32 %r131,%r225; $L31: setp.eq.u32 %r294,%r131,88; @ %r294 bra $L32; setp.gt.s32 %r295,%r131,88; @ %r295 bra $L33; setp.eq.u32 %r296,%r131,46; @ %r296 bra $L34; setp.gt.s32 %r297,%r131,46; @ %r297 bra $L35; setp.eq.u32 %r298,%r131,42; @ %r298 bra $L36; setp.gt.s32 %r299,%r131,42; @ %r299 bra $L37; setp.eq.u32 %r300,%r131,32; @ %r300 bra $L38; setp.eq.u32 %r301,%r131,35; @ %r301 bra $L39; bra $L40; $L37: setp.eq.u32 %r302,%r131,43; @ %r302 bra $L41; setp.eq.u32 %r303,%r131,45; @ %r303 bra $L42; bra $L40; $L35: setp.gt.s32 %r304,%r131,57; @ %r304 bra $L43; setp.ge.s32 %r305,%r131,49; @ %r305 bra $L44; setp.eq.u32 %r306,%r131,48; @ %r306 bra $L45; bra $L40; $L43: setp.eq.u32 %r307,%r131,79; @ %r307 bra $L46; setp.eq.u32 %r308,%r131,85; @ %r308 bra $L47; setp.eq.u32 %r309,%r131,68; @ ! %r309 bra $L40; bra $L48; $L33: setp.eq.u32 %r310,%r131,110; @ %r310 bra $L49; setp.gt.s32 %r311,%r131,110; @ %r311 bra $L50; setp.eq.u32 %r312,%r131,104; @ %r312 bra $L51; setp.gt.s32 %r313,%r131,104; @ %r313 bra $L52; setp.eq.u32 %r314,%r131,99; @ %r314 bra $L53; setp.eq.u32 %r315,%r131,100; @ %r315 bra $L54; bra $L40; $L52: setp.eq.u32 %r316,%r131,105; @ %r316 bra $L54; setp.eq.u32 %r317,%r131,108; @ %r317 bra $L55; bra $L40; $L50: setp.eq.u32 %r318,%r131,113; @ %r318 bra $L56; setp.gt.s32 %r319,%r131,113; @ %r319 bra $L57; setp.eq.u32 %r320,%r131,111; @ %r320 bra $L58; setp.eq.u32 %r321,%r131,112; @ %r321 bra $L59; bra $L40; $L57: setp.eq.u32 %r322,%r131,117; @ %r322 bra $L60; setp.eq.u32 %r323,%r131,120; @ %r323 bra $L61; setp.eq.u32 %r324,%r131,115; @ ! %r324 bra $L40; bra $L62; $L42: ld.s8 %r225,[%r229]; bra $L63; $L61: setp.eq.u32 %r325,%r163,0; @ %r325 bra $L64; cvt.u32.u32 %r326,%r183; st.u8 [%frame+194],%r326; $L64: .loc 1 1545 10 cvta.const.u64 %r25,$LC1; bra $L65; $L38: ld.s8 %r225,[%r229]; .loc 1 975 7 setp.eq.u32 %r327,%r183,0; selp.u32 %r163,1,%r163,%r327; selp.u32 %r183,32,%r183,%r327; bra $L30; $L39: .loc 1 979 10 or.b32 %r134,%r134,1; ld.s8 %r225,[%r229]; .loc 1 980 4 bra $L30; $L36: .loc 1 1018 10 add.u64 %r128,%r230,4; ld.u32 %r135,[%r230]; ld.s8 %r225,[%r229]; .loc 1 1022 7 setp.ge.s32 %r328,%r135,0; @ %r328 bra $L158; .loc 1 1024 10 neg.s32 %r135,%r135; .loc 1 1018 10 mov.u64 %r230,%r128; $L63: .loc 1 1027 10 or.b32 %r134,%r134,4; .loc 1 1028 4 bra $L30; $L41: ld.s8 %r225,[%r229]; .loc 1 1031 4 mov.u32 %r163,1; .loc 1 1030 9 mov.u32 %r183,%r131; .loc 1 1031 4 bra $L30; $L34: .loc 1 1033 18 add.u64 %r149,%r229,1; .loc 1 1033 12 ld.s8 %r131,[%r229]; .loc 1 1033 7 setp.eq.u32 %r329,%r131,42; @ %r329 bra $L68; .loc 1 1072 11 add.u32 %r659,%r131,-48; .loc 1 1072 10 setp.le.u32 %r330,%r659,9; @ %r330 bra $L69; .loc 1 1033 18 mov.u64 %r229,%r149; .loc 1 1071 6 mov.u32 %r136,%r688; bra $L31; $L68: ld.u32 %r331,[%r230]; max.s32 %r136,%r331,-1; ld.s8 %r225,[%r229+1]; .loc 1 1063 10 add.u64 %r230,%r230,4; .loc 1 1033 18 mov.u64 %r229,%r149; bra $L30; $L69: mov.u64 %r222,%r149; .loc 1 1071 6 mov.u32 %r136,%r688; $L71: .loc 1 1073 12 shl.b32 %r333,%r136,2; add.u32 %r334,%r333,%r136; add.u32 %r335,%r334,%r334; .loc 1 1073 7 add.u32 %r136,%r335,%r659; add.u64 %r229,%r222,1; .loc 1 1074 8 ld.s8 %r131,[%r222]; .loc 1 1072 11 add.u32 %r659,%r131,-48; mov.u64 %r222,%r229; .loc 1 1072 10 setp.le.u32 %r336,%r659,9; @ %r336 bra $L71; bra $L31; $L45: .loc 1 1084 10 or.b32 %r134,%r134,128; ld.s8 %r225,[%r229]; .loc 1 1085 4 bra $L30; $L44: mov.u64 %r187,%r229; .loc 1 1088 6 mov.u32 %r135,0; add.u32 %r659,%r131,-48; $L72: .loc 1 1090 12 shl.b32 %r338,%r135,2; add.u32 %r339,%r338,%r135; add.u32 %r340,%r339,%r339; .loc 1 1090 7 add.u32 %r135,%r659,%r340; add.u64 %r229,%r229,1; .loc 1 1091 8 ld.s8 %r131,[%r187]; mov.u64 %r187,%r229; .loc 1 1092 13 add.u32 %r659,%r131,-48; .loc 1 1092 4 setp.le.u32 %r343,%r659,9; @ %r343 bra $L72; bra $L31; $L51: .loc 1 1118 11 or.b32 %r134,%r134,64; ld.s8 %r225,[%r229]; .loc 1 1119 4 bra $L30; $L55: .loc 1 1122 8 ld.s8 %r225,[%r229]; .loc 1 1122 7 cvt.u16.u32 %r344,%r225; setp.ne.u16 %r345,%r344,108; @ %r345 bra $L73; .loc 1 1124 11 or.b32 %r134,%r134,32; ld.s8 %r225,[%r229+1]; .loc 1 1123 8 add.u64 %r229,%r229,1; bra $L30; $L73: .loc 1 1127 11 or.b32 %r134,%r134,16; bra $L30; $L56: .loc 1 1130 10 or.b32 %r134,%r134,32; ld.s8 %r225,[%r229]; .loc 1 1131 4 bra $L30; $L53: .loc 1 1189 9 ld.u32 %r346,[%r230]; st.u8 [%frame+128],%r346; .loc 1 1192 9 mov.u32 %r347,0; st.u8 [%frame+194],%r347; .loc 1 1189 11 add.u64 %r230,%r230,4; .loc 1 1193 4 mov.u32 %r140,1; .loc 1 1190 10 mov.u32 %r141,%r140; .loc 1 1173 7 add.u64 %r130,%frame,128; .loc 1 1193 4 bra $L74; $L48: setp.eq.u32 %r348,%r163,0; @ %r348 bra $L75; cvt.u32.u32 %r349,%r183; st.u8 [%frame+194],%r349; $L75: .loc 1 1195 10 or.b32 %r113,%r134,16; .loc 1 1199 13 and.b32 %r350,%r134,32; setp.ne.u32 %r351,%r350,0; @ ! %r351 bra $L77; bra $L76; $L54: setp.eq.u32 %r352,%r163,0; @ %r352 bra $L78; cvt.u32.u32 %r353,%r183; st.u8 [%frame+194],%r353; $L78: and.b32 %r354,%r134,32; setp.eq.u32 %r355,%r354,0; @ %r355 bra $L79; mov.u32 %r113,%r134; $L76: add.u64 %r185,%r230,7; and.b64 %r166,%r185,-8; add.u64 %r230,%r166,8; ld.u64 %r50,[%r166]; mov.u64 %r138,%r50; bra $L80; $L79: and.b32 %r356,%r134,16; setp.eq.u32 %r357,%r356,0; @ %r357 bra $L81; mov.u32 %r113,%r134; $L77: add.u64 %r160,%r230,7; and.b64 %r184,%r160,-8; add.u64 %r230,%r184,8; ld.u64 %r50,[%r184]; mov.u64 %r138,%r50; bra $L80; $L81: add.u64 %r202,%r230,4; and.b32 %r358,%r134,64; setp.eq.u32 %r359,%r358,0; @ %r359 bra $L82; ld.s16 %r138,[%r230]; mov.u64 %r50,%r138; mov.u32 %r113,%r134; mov.u64 %r230,%r202; bra $L80; $L82: ld.s32 %r138,[%r230]; mov.u64 %r50,%r138; mov.u32 %r113,%r134; mov.u64 %r230,%r202; $L80: .loc 1 1201 7 setp.ge.s64 %r364,%r50,0; @ %r364 bra $L83; .loc 1 1207 12 neg.s64 %r138,%r138; .loc 1 1208 10 mov.u32 %r365,45; st.u8 [%frame+194],%r365; mov.u32 %r134,%r113; mov.u32 %r223,45; .loc 1 1210 9 mov.u32 %r139,1; bra $L84; $L49: setp.eq.u32 %r366,%r163,0; @ %r366 bra $L85; cvt.u32.u32 %r367,%r183; st.u8 [%frame+194],%r367; $L85: add.u64 %r368,%r230,7; and.b64 %r199,%r368,-8; ld.u64 %r200,[%r199]; add.u64 %r230,%r199,8; .loc 1 1392 14 and.b32 %r369,%r134,32; .loc 1 1392 7 setp.eq.u32 %r370,%r369,0; @ %r370 bra $L86; .loc 1 1393 34 cvt.s64.s32 %r371,%r226; st.u64 [%r200],%r371; bra $L23; $L86: .loc 1 1396 14 and.b32 %r372,%r134,16; .loc 1 1396 7 setp.eq.u32 %r373,%r372,0; @ %r373 bra $L88; .loc 1 1397 34 cvt.s64.s32 %r374,%r226; st.u64 [%r200],%r374; bra $L23; $L88: .loc 1 1398 19 and.b32 %r375,%r134,64; .loc 1 1398 12 setp.eq.u32 %r376,%r375,0; @ %r376 bra $L89; .loc 1 1399 35 st.u16 [%r200],%r226; bra $L23; $L89: .loc 1 1405 33 st.u32 [%r200],%r226; bra $L23; $L46: setp.eq.u32 %r377,%r163,0; @ %r377 bra $L90; cvt.u32.u32 %r378,%r183; st.u8 [%frame+194],%r378; $L90: .loc 1 1408 10 or.b32 %r120,%r134,16; .loc 1 1411 13 and.b32 %r379,%r134,32; setp.ne.u32 %r380,%r379,0; @ ! %r380 bra $L92; bra $L159; $L58: setp.eq.u32 %r381,%r163,0; @ %r381 bra $L93; cvt.u32.u32 %r382,%r183; st.u8 [%frame+194],%r382; $L93: and.b32 %r383,%r134,32; setp.eq.u32 %r384,%r383,0; @ %r384 bra $L94; bra $L91; $L159: .loc 1 1408 10 mov.u32 %r134,%r120; $L91: .loc 1 1411 13 add.u64 %r102,%r230,7; and.b64 %r170,%r102,-8; add.u64 %r230,%r170,8; ld.u64 %r138,[%r170]; .loc 1 1412 9 mov.u32 %r139,0; bra $L95; $L94: .loc 1 1411 13 and.b32 %r385,%r134,16; setp.eq.u32 %r386,%r385,0; @ %r386 bra $L96; mov.u32 %r120,%r134; $L92: add.u64 %r151,%r230,7; and.b64 %r173,%r151,-8; add.u64 %r230,%r173,8; ld.u64 %r138,[%r173]; mov.u32 %r134,%r120; .loc 1 1412 9 mov.u32 %r139,0; bra $L95; $L96: ld.u32 %r197,[%r230]; add.u64 %r230,%r230,4; .loc 1 1411 13 and.b32 %r387,%r134,64; setp.eq.u32 %r388,%r387,0; @ %r388 bra $L97; cvt.u16.u32 %r389,%r197; cvt.u64.u16 %r138,%r389; .loc 1 1412 9 mov.u32 %r139,%r385; bra $L95; $L97: .loc 1 1411 13 cvt.u64.u32 %r138,%r197; .loc 1 1412 9 mov.u32 %r139,%r387; bra $L95; $L59: .loc 1 1426 25 add.u64 %r189,%r230,7; and.b64 %r182,%r189,-8; add.u64 %r230,%r182,8; .loc 1 1426 11 ld.u64 %r138,[%r182]; .loc 1 1429 10 or.b32 %r134,%r134,2; .loc 1 1430 10 mov.u32 %r390,48; st.u8 [%frame+192],%r390; .loc 1 1431 10 mov.u32 %r391,120; st.u8 [%frame+193],%r391; .loc 1 1428 10 cvta.const.u64 %r25,$LC1; .loc 1 1427 9 mov.u32 %r139,2; .loc 1 1432 4 bra $L95; $L62: .loc 1 1437 7 add.u64 %r180,%r230,7; and.b64 %r181,%r180,-8; add.u64 %r230,%r181,8; ld.u64 %r130,[%r181]; .loc 1 1441 9 mov.u32 %r392,0; st.u8 [%frame+194],%r392; .loc 1 1447 7 setp.ne.u64 %r393,%r130,0; @ %r393 bra $L98; .loc 1 1449 39 min.u32 %r141,%r136,6; mov.u32 %r140,%r141; .loc 1 1448 8 cvta.const.u64 %r130,$LC2; bra $L74; $L98: .loc 1 1516 7 setp.eq.u32 %r394,%r136,-1; @ %r394 bra $L99; .loc 1 1522 15 cvt.s64.s32 %r398,%r136; mov.u32 %r396,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r130; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r396; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r398; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r399,[%value_in]; } .loc 1 1524 8 setp.eq.u64 %r400,%r399,0; @ %r400 bra $L100; .loc 1 1525 15 sub.u64 %r401,%r399,%r130; cvt.u32.u64 %r402,%r401; min.s32 %r141,%r136,%r402; ld.s8 %r223,[%frame+194]; mov.u32 %r109,%r134; .loc 1 943 9 mov.u32 %r136,%r396; bra $L101; $L99: .loc 1 1531 12 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r130; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r404,[%value_in]; } .loc 1 1531 10 cvt.u32.u64 %r141,%r404; ld.s8 %r223,[%frame+194]; mov.u32 %r109,%r134; .loc 1 943 9 mov.u32 %r136,0; bra $L101; $L47: setp.eq.u32 %r405,%r163,0; @ %r405 bra $L102; cvt.u32.u32 %r406,%r183; st.u8 [%frame+194],%r406; $L102: .loc 1 1535 10 or.b32 %r155,%r134,16; .loc 1 1538 13 and.b32 %r407,%r134,32; setp.ne.u32 %r408,%r407,0; @ ! %r408 bra $L104; bra $L160; $L60: setp.eq.u32 %r409,%r163,0; @ %r409 bra $L105; cvt.u32.u32 %r410,%r183; st.u8 [%frame+194],%r410; $L105: and.b32 %r411,%r134,32; setp.eq.u32 %r412,%r411,0; @ %r412 bra $L106; bra $L103; $L160: .loc 1 1535 10 mov.u32 %r134,%r155; $L103: .loc 1 1538 13 add.u64 %r188,%r230,7; and.b64 %r186,%r188,-8; add.u64 %r230,%r186,8; ld.u64 %r138,[%r186]; .loc 1 1539 9 mov.u32 %r139,1; bra $L95; $L106: .loc 1 1538 13 and.b32 %r413,%r134,16; setp.eq.u32 %r414,%r413,0; @ %r414 bra $L107; mov.u32 %r155,%r134; $L104: add.u64 %r194,%r230,7; and.b64 %r192,%r194,-8; add.u64 %r230,%r192,8; ld.u64 %r138,[%r192]; mov.u32 %r134,%r155; .loc 1 1539 9 mov.u32 %r139,1; bra $L95; $L107: ld.u32 %r196,[%r230]; add.u64 %r230,%r230,4; .loc 1 1538 13 and.b32 %r415,%r134,64; setp.eq.u32 %r416,%r415,0; @ %r416 bra $L108; cvt.u16.u32 %r417,%r196; cvt.u64.u16 %r138,%r417; .loc 1 1539 9 mov.u32 %r139,1; bra $L95; $L108: .loc 1 1538 13 cvt.u64.u32 %r138,%r196; .loc 1 1539 9 mov.u32 %r139,1; bra $L95; $L32: setp.eq.u32 %r418,%r163,0; @ %r418 bra $L109; cvt.u32.u32 %r419,%r183; st.u8 [%frame+194],%r419; $L109: .loc 1 1542 10 cvta.const.u64 %r25,$LC0; $L65: .loc 1 1546 17 and.b32 %r420,%r134,32; setp.eq.u32 %r421,%r420,0; @ %r421 bra $L110; add.u64 %r179,%r230,7; and.b64 %r178,%r179,-8; add.u64 %r230,%r178,8; ld.u64 %r138,[%r178]; bra $L111; $L110: and.b32 %r422,%r134,16; setp.eq.u32 %r423,%r422,0; @ %r423 bra $L112; add.u64 %r177,%r230,7; and.b64 %r176,%r177,-8; add.u64 %r230,%r176,8; ld.u64 %r138,[%r176]; bra $L111; $L112: ld.u32 %r224,[%r230]; add.u64 %r230,%r230,4; and.b32 %r424,%r134,64; setp.eq.u32 %r425,%r424,0; @ %r425 bra $L113; cvt.u16.u32 %r426,%r224; cvt.u64.u16 %r138,%r426; bra $L111; $L113: cvt.u64.u32 %r138,%r224; $L111: .loc 1 1549 14 and.b32 %r427,%r134,1; .loc 1 1549 7 setp.eq.u32 %r428,%r427,0; @ %r428 bra $L161; .loc 1 1549 20 setp.eq.u64 %r429,%r138,0; @ %r429 bra $L162; .loc 1 1550 11 mov.u32 %r430,48; st.u8 [%frame+192],%r430; .loc 1 1551 11 st.u8 [%frame+193],%r131; .loc 1 1552 11 or.b32 %r134,%r134,2; .loc 1 1547 9 mov.u32 %r139,2; bra $L95; $L161: mov.u32 %r139,2; bra $L95; $L162: mov.u32 %r139,2; $L95: .loc 1 1559 16 mov.u32 %r431,0; st.u8 [%frame+194],%r431; mov.u32 %r223,0; $L84: .loc 1 1565 14 setp.eq.u32 %r432,%r136,-1; @ %r432 bra $L114; .loc 1 1566 11 and.b32 %r109,%r134,-129; .loc 1 1574 15 set.u32.ne.u64 %r434,%r138,0; neg.s32 %r435,%r434; .loc 1 1574 28 set.u32.ne.u32 %r437,%r136,0; neg.s32 %r438,%r437; .loc 1 1574 20 cvt.u16.u32 %r440,%r435; cvt.u16.u32 %r441,%r438; or.b16 %r439,%r440,%r441; .loc 1 1574 7 cvt.u32.u16 %r442,%r439; cvt.u16.u8 %r443,%r442; setp.eq.u16 %r444,%r443,0; @ %r444 bra $L115; .loc 1 1566 11 mov.u32 %r134,%r109; $L114: cvt.u16.u32 %r445,%r139; setp.eq.u16 %r446,%r445,1; @ %r446 bra $L116; setp.eq.u16 %r448,%r445,2; @ %r448 bra $L163; .loc 1 1573 7 mov.u64 %r132,%r689; bra $L118; $L164: .loc 1 1581 5 mov.u64 %r132,%r130; $L118: .loc 1 1583 13 add.u64 %r130,%r132,-1; .loc 1 1583 15 cvt.u16.u64 %r451,%r138; and.b16 %r450,%r451,7; add.u16 %r453,%r450,48; cvt.u32.u16 %r455,%r453; cvt.s32.s8 %r88,%r455; .loc 1 1583 13 st.u8 [%r130],%r455; .loc 1 1584 14 shr.u64 %r138,%r138,3; .loc 1 1585 6 setp.ne.u64 %r457,%r138,0; @ %r457 bra $L164; .loc 1 1587 22 cvt.u16.u32 %r459,%r88; set.u32.ne.u16 %r460,%r459,48; neg.s32 %r461,%r460; .loc 1 1587 9 cvt.u16.u32 %r464,%r134; and.b16 %r463,%r464,1; .loc 1 1587 22 cvt.u16.u32 %r467,%r461; and.b16 %r466,%r467,%r463; cvt.u32.u16 %r469,%r466; cvt.u16.u8 %r470,%r469; setp.ne.u16 %r471,%r470,0; @ %r471 bra $L119; sub.u64 %r474,%r689,%r130; cvt.u32.u64 %r141,%r474; mov.u32 %r109,%r134; bra $L101; $L119: .loc 1 1588 13 add.u64 %r159,%r132,-2; mov.u32 %r475,48; st.u8 [%r130+-1],%r475; sub.u64 %r478,%r689,%r159; cvt.u32.u64 %r141,%r478; mov.u32 %r109,%r134; mov.u64 %r130,%r159; bra $L101; $L171: .loc 1 1565 14 mov.u32 %r134,%r113; bra $L116; $L172: .loc 1 1566 11 mov.u32 %r134,%r109; $L116: .loc 1 1593 9 setp.gt.u64 %r662,%r138,9; @ %r662 bra $L165; .loc 1 1594 15 cvt.u16.u64 %r482,%r138; add.u16 %r481,%r482,48; .loc 1 1594 13 cvt.u32.u16 %r483,%r481; st.u8 [%frame+167],%r483; .loc 1 1595 7 mov.u32 %r109,%r134; mov.u32 %r141,1; .loc 1 1594 13 add.u64 %r130,%frame,167; .loc 1 1595 7 bra $L101; $L165: .loc 1 1573 7 mov.u64 %r130,%r689; bra $L121; $L166: .loc 1 1622 15 mov.u64 %r138,%r38; setp.gt.u64 %r662,%r138,9; $L121: .loc 1 1601 14 add.u64 %r130,%r130,-1; .loc 1 1601 16 rem.u64 %r485,%r138,10; cvt.u16.u64 %r488,%r485; add.u16 %r487,%r488,48; .loc 1 1601 14 cvt.u32.u16 %r489,%r487; st.u8 [%r130],%r489; .loc 1 1622 15 div.u64 %r38,%r138,10; .loc 1 1623 6 @ %r662 bra $L166; sub.u64 %r493,%r689,%r130; cvt.u32.u64 %r141,%r493; mov.u32 %r109,%r134; bra $L101; $L163: .loc 1 1573 7 mov.u64 %r130,%r689; $L117: .loc 1 1628 13 add.u64 %r130,%r130,-1; .loc 1 1628 28 and.b64 %r494,%r138,15; .loc 1 1628 20 add.u64 %r495,%r25,%r494; .loc 1 1628 13 ld.u8 %r496,[%r495]; st.u8 [%r130],%r496; .loc 1 1629 14 shr.u64 %r138,%r138,4; .loc 1 1630 6 setp.ne.u64 %r497,%r138,0; @ %r497 bra $L117; sub.u64 %r500,%r689,%r130; cvt.u32.u64 %r141,%r500; mov.u32 %r109,%r134; bra $L101; $L115: .loc 1 1648 32 setp.ne.u32 %r501,%r139,0; @ %r501 bra $L167; .loc 1 1648 55 and.b32 %r141,%r134,1; .loc 1 1648 45 setp.eq.u32 %r502,%r141,0; @ %r502 bra $L168; .loc 1 1649 32 mov.u32 %r503,48; st.u8 [%frame+167],%r503; mov.u32 %r136,%r139; add.u64 %r130,%frame,167; bra $L101; $L167: mov.u32 %r136,0; mov.u32 %r141,%r136; .loc 1 1573 7 add.u64 %r130,%frame,168; bra $L101; $L168: mov.u32 %r136,%r139; add.u64 %r130,%frame,168; bra $L101; $L40: setp.eq.u32 %r504,%r163,0; @ %r504 bra $L122; cvt.u32.u32 %r505,%r183; st.u8 [%frame+194],%r505; $L122: .loc 1 1655 7 setp.eq.u32 %r506,%r131,0; @ %r506 bra $L29; .loc 1 1659 8 st.u8 [%frame+128],%r131; .loc 1 1661 9 mov.u32 %r507,0; st.u8 [%frame+194],%r507; .loc 1 1662 4 mov.u32 %r140,1; .loc 1 1660 9 mov.u32 %r141,%r140; .loc 1 1658 7 add.u64 %r130,%frame,128; .loc 1 1662 4 bra $L74; $L100: ld.s8 %r223,[%frame+194]; .loc 1 1524 8 mov.u32 %r141,%r136; mov.u32 %r109,%r134; .loc 1 943 9 cvt.u32.u64 %r136,%r399; $L101: .loc 1 1680 10 max.s32 %r140,%r136,%r141; .loc 1 1681 6 setp.eq.u32 %r508,%r223,0; @ %r508 bra $L123; .loc 1 1682 10 add.u32 %r140,%r140,1; $L123: .loc 1 1683 13 and.b32 %r100,%r109,2; .loc 1 1683 6 setp.eq.u32 %r660,%r100,0; @ %r660 bra $L124; .loc 1 1684 10 add.u32 %r140,%r140,2; $L124: .loc 1 1687 14 and.b32 %r101,%r109,132; ld.u64 %r205,[%frame+184]; ld.u32 %r206,[%frame+176]; .loc 1 1687 6 setp.ne.u32 %r510,%r101,0; @ %r510 bra $L125; .loc 1 1688 4 sub.u32 %r156,%r135,%r140; setp.le.s32 %r511,%r156,0; @ %r511 bra $L125; setp.le.s32 %r512,%r156,16; @ ! %r512 bra $L254; cvta.const.u64 %r657,blanks$4097; bra $L126; $L254: cvta.const.u64 %r657,blanks$4097; $L129: st.u64 [%r142],%r657; mov.u64 %r514,16; st.u64 [%r142+8],%r514; add.u64 %r205,%r205,16; st.u64 [%frame+184],%r205; add.u32 %r206,%r206,1; st.u32 [%frame+176],%r206; setp.gt.s32 %r515,%r206,7; @ %r515 bra $L127; add.u64 %r142,%r142,16; bra $L128; $L127: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r227; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r228; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r689; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r520,[%value_in]; } setp.ne.u32 %r521,%r520,0; @ %r521 bra $L28; ld.u64 %r205,[%frame+184]; ld.u32 %r206,[%frame+176]; mov.u64 %r142,%frame; $L128: add.u32 %r156,%r156,-16; setp.gt.s32 %r522,%r156,16; @ %r522 bra $L129; $L126: st.u64 [%r142],%r657; cvt.s64.s32 %r104,%r156; st.u64 [%r142+8],%r104; add.u64 %r205,%r205,%r104; st.u64 [%frame+184],%r205; add.u32 %r206,%r206,1; st.u32 [%frame+176],%r206; setp.gt.s32 %r524,%r206,7; @ %r524 bra $L130; add.u64 %r142,%r142,16; bra $L125; $L130: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r227; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r228; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r689; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r529,[%value_in]; } setp.ne.u32 %r530,%r529,0; @ %r530 bra $L28; ld.u64 %r205,[%frame+184]; ld.u32 %r206,[%frame+176]; mov.u64 %r142,%frame; $L125: add.u32 %r210,%r206,1; add.u64 %r212,%r142,16; .loc 1 1691 6 ld.s8 %r532,[%frame+194]; cvt.u16.u32 %r531,%r532; setp.eq.u16 %r533,%r531,0; @ %r533 bra $L131; .loc 1 1692 4 st.u64 [%r142],%r691; mov.u64 %r535,1; st.u64 [%r142+8],%r535; add.u64 %r205,%r205,1; st.u64 [%frame+184],%r205; st.u32 [%frame+176],%r210; setp.gt.s32 %r536,%r210,7; @ %r536 bra $L132; add.u32 %r207,%r206,2; add.u64 %r208,%r142,32; mov.u32 %r206,%r210; mov.u32 %r210,%r207; mov.u64 %r142,%r212; mov.u64 %r212,%r208; bra $L131; $L132: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r227; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r228; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r689; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r541,[%value_in]; } setp.ne.u32 %r542,%r541,0; @ %r542 bra $L28; ld.u64 %r205,[%frame+184]; ld.u32 %r206,[%frame+176]; add.u32 %r210,%r206,1; add.u64 %r212,%frame,16; mov.u64 %r142,%frame; $L131: .loc 1 1693 6 @ %r660 bra $L133; .loc 1 1694 4 st.u64 [%r142],%r690; mov.u64 %r545,2; st.u64 [%r142+8],%r545; add.u64 %r205,%r205,2; st.u64 [%frame+184],%r205; st.u32 [%frame+176],%r210; setp.gt.s32 %r546,%r210,7; @ %r546 bra $L134; mov.u32 %r206,%r210; add.u32 %r210,%r210,1; mov.u64 %r142,%r212; add.u64 %r212,%r212,16; bra $L133; $L134: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r227; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r228; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r689; 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 $L28; ld.u64 %r205,[%frame+184]; ld.u32 %r206,[%frame+176]; add.u32 %r210,%r206,1; add.u64 %r212,%frame,16; mov.u64 %r142,%frame; $L133: .loc 1 1697 6 setp.ne.u32 %r553,%r101,128; @ %r553 bra $L135; .loc 1 1698 4 sub.u32 %r157,%r135,%r140; setp.le.s32 %r554,%r157,0; @ %r554 bra $L135; setp.le.s32 %r555,%r157,16; @ %r555 bra $L169; cvta.const.u64 %r658,zeroes$4098; $L139: st.u64 [%r142],%r658; mov.u64 %r557,16; st.u64 [%r142+8],%r557; add.u64 %r205,%r205,16; st.u64 [%frame+184],%r205; add.u32 %r206,%r206,1; st.u32 [%frame+176],%r206; setp.gt.s32 %r558,%r206,7; @ %r558 bra $L137; add.u64 %r142,%r142,16; bra $L138; $L137: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r227; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r228; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r689; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r563,[%value_in]; } setp.ne.u32 %r564,%r563,0; @ %r564 bra $L28; ld.u64 %r205,[%frame+184]; ld.u32 %r206,[%frame+176]; mov.u64 %r142,%frame; $L138: add.u32 %r157,%r157,-16; setp.gt.s32 %r565,%r157,16; @ %r565 bra $L139; add.u32 %r206,%r206,1; add.u64 %r217,%r142,16; bra $L136; $L169: mov.u64 %r217,%r212; mov.u32 %r206,%r210; cvta.const.u64 %r658,zeroes$4098; $L136: st.u64 [%r142],%r658; cvt.s64.s32 %r111,%r157; st.u64 [%r142+8],%r111; add.u64 %r205,%r205,%r111; st.u64 [%frame+184],%r205; st.u32 [%frame+176],%r206; setp.gt.s32 %r567,%r206,7; @ %r567 bra $L140; add.u32 %r210,%r206,1; add.u64 %r212,%r217,16; mov.u64 %r142,%r217; bra $L135; $L140: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r227; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r228; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r689; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r572,[%value_in]; } setp.ne.u32 %r573,%r572,0; @ %r573 bra $L28; ld.u64 %r205,[%frame+184]; ld.u32 %r206,[%frame+176]; add.u32 %r210,%r206,1; add.u64 %r212,%frame,16; mov.u64 %r142,%frame; $L135: .loc 1 1701 3 sub.u32 %r154,%r136,%r141; setp.le.s32 %r574,%r154,0; @ %r574 bra $L141; setp.le.s32 %r575,%r154,16; @ %r575 bra $L170; cvta.const.u64 %r658,zeroes$4098; $L145: st.u64 [%r142],%r658; mov.u64 %r577,16; st.u64 [%r142+8],%r577; add.u64 %r205,%r205,16; st.u64 [%frame+184],%r205; add.u32 %r206,%r206,1; st.u32 [%frame+176],%r206; setp.gt.s32 %r578,%r206,7; @ %r578 bra $L143; add.u64 %r142,%r142,16; bra $L144; $L143: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r227; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r228; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r689; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r583,[%value_in]; } setp.ne.u32 %r584,%r583,0; @ %r584 bra $L28; ld.u64 %r205,[%frame+184]; ld.u32 %r206,[%frame+176]; mov.u64 %r142,%frame; $L144: add.u32 %r154,%r154,-16; setp.gt.s32 %r585,%r154,16; @ %r585 bra $L145; add.u32 %r210,%r206,1; add.u64 %r216,%r142,16; bra $L142; $L170: mov.u64 %r216,%r212; cvta.const.u64 %r658,zeroes$4098; $L142: st.u64 [%r142],%r658; cvt.s64.s32 %r115,%r154; st.u64 [%r142+8],%r115; add.u64 %r205,%r205,%r115; st.u64 [%frame+184],%r205; st.u32 [%frame+176],%r210; setp.gt.s32 %r587,%r210,7; @ %r587 bra $L146; add.u32 %r210,%r210,1; add.u64 %r212,%r216,16; mov.u64 %r142,%r216; bra $L141; $L146: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r227; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r228; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r689; 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 $L28; ld.u64 %r205,[%frame+184]; ld.u32 %r594,[%frame+176]; add.u32 %r210,%r594,1; add.u64 %r212,%frame,16; mov.u64 %r142,%frame; $L141: .loc 1 1767 3 st.u64 [%r142],%r130; cvt.s64.s32 %r117,%r141; st.u64 [%r142+8],%r117; add.u64 %r214,%r117,%r205; st.u64 [%frame+184],%r214; st.u32 [%frame+176],%r210; setp.le.s32 %r595,%r210,7; @ %r595 bra $L147; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r227; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r228; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r689; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r600,[%value_in]; } setp.ne.u32 %r601,%r600,0; @ %r601 bra $L28; ld.u64 %r214,[%frame+184]; mov.u64 %r212,%frame; $L147: .loc 1 1770 13 and.b32 %r602,%r109,4; .loc 1 1770 6 setp.eq.u32 %r603,%r602,0; @ %r603 bra $L148; .loc 1 1771 4 sub.u32 %r164,%r135,%r140; setp.le.s32 %r604,%r164,0; @ %r604 bra $L148; ld.u32 %r215,[%frame+176]; setp.le.s32 %r605,%r164,16; @ ! %r605 bra $L255; cvta.const.u64 %r657,blanks$4097; bra $L149; $L255: cvta.const.u64 %r657,blanks$4097; $L152: st.u64 [%r212],%r657; mov.u64 %r607,16; st.u64 [%r212+8],%r607; add.u64 %r214,%r214,16; st.u64 [%frame+184],%r214; add.u32 %r215,%r215,1; st.u32 [%frame+176],%r215; setp.gt.s32 %r608,%r215,7; @ %r608 bra $L150; add.u64 %r212,%r212,16; bra $L151; $L150: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r227; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r228; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r689; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r613,[%value_in]; } setp.ne.u32 %r614,%r613,0; @ %r614 bra $L28; ld.u64 %r214,[%frame+184]; ld.u32 %r215,[%frame+176]; mov.u64 %r212,%frame; $L151: add.u32 %r164,%r164,-16; setp.gt.s32 %r615,%r164,16; @ %r615 bra $L152; $L149: st.u64 [%r212],%r657; cvt.s64.s32 %r122,%r164; st.u64 [%r212+8],%r122; add.u64 %r214,%r214,%r122; st.u64 [%frame+184],%r214; add.u32 %r123,%r215,1; st.u32 [%frame+176],%r123; setp.le.s32 %r617,%r123,7; @ %r617 bra $L148; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r227; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r228; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r689; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r622,[%value_in]; } setp.ne.u32 %r623,%r622,0; @ %r623 bra $L28; ld.u64 %r214,[%frame+184]; $L148: .loc 1 1774 33 max.s32 %r624,%r135,%r140; .loc 1 1774 7 add.u32 %r226,%r226,%r624; .loc 1 1776 3 setp.ne.u64 %r625,%r214,0; @ %r625 bra $L153; $L154: mov.u32 %r626,0; st.u32 [%frame+176],%r626; mov.u64 %r142,%frame; bra $L23; $L153: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r227; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r228; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r689; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r631,[%value_in]; } setp.ne.u32 %r632,%r631,0; @ ! %r632 bra $L154; bra $L28; $L29: .loc 1 1784 2 ld.u64 %r633,[%frame+184]; setp.eq.u64 %r634,%r633,0; @ %r634 bra $L28; add.u64 %r638,%frame,168; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r227; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r228; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r638; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r639,[%value_in]; } $L28: .loc 1 1791 31 ld.u16 %r641,[%r228+16]; and.b16 %r640,%r641,64; setp.eq.u16 %r642,%r640,0; selp.u32 %r226,%r226,-1,%r642; bra $L19; $L74: .loc 1 943 9 mov.u32 %r109,%r134; mov.u32 %r136,0; bra $L123; $L83: ld.s8 %r223,[%frame+194]; .loc 1 1565 14 setp.eq.u32 %r644,%r136,-1; @ %r644 bra $L171; .loc 1 1566 11 and.b32 %r109,%r113,-129; .loc 1 1574 28 set.u32.ne.u32 %r646,%r136,0; neg.s32 %r647,%r646; .loc 1 1574 15 set.u32.ne.u64 %r649,%r138,0; neg.s32 %r650,%r649; .loc 1 1574 20 cvt.u16.u32 %r652,%r647; cvt.u16.u32 %r653,%r650; or.b16 %r651,%r652,%r653; .loc 1 1574 7 cvt.u32.u16 %r654,%r651; cvt.u16.u8 %r655,%r654; setp.ne.u16 %r656,%r655,0; @ %r656 bra $L172; mov.u32 %r136,0; mov.u32 %r141,%r136; .loc 1 1573 7 add.u64 %r130,%frame,168; bra $L101; $L19: .loc 1 1793 1 mov.u32 %value,%r226; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } /847 1591654536 399 399 100644 78938 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0); // 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$4154 .const .align 1 .u8 zeroes$4154[16] = {48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48 }; // BEGIN VAR DEF: blanks$4153 .const .align 1 .u8 blanks$4153[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 .u64 %r26; .reg .u32 %r27; .reg .u64 %r32; .reg .u32 %r36; .reg .u32 %r38; .reg .u64 %r52; .reg .f64 %r60; .reg .u32 %r61; .reg .u64 %r62; .reg .u32 %r97; .reg .u64 %r109; .reg .u32 %r111; .reg .u32 %r112; .reg .u64 %r114; .reg .u32 %r115; .reg .u32 %r119; .reg .u32 %r122; .reg .u64 %r125; .reg .u32 %r127; .reg .u64 %r130; .reg .u32 %r131; .reg .u64 %r134; .reg .u32 %r136; .reg .u32 %r140; .reg .u64 %r143; .reg .u32 %r147; .reg .u64 %r150; .reg .u32 %r151; .reg .u32 %r153; .reg .u32 %r155; .reg .u64 %r161; .reg .u64 %r163; .reg .u64 %r164; .reg .u32 %r165; .reg .u64 %r167; .reg .u32 %r169; .reg .u32 %r172; .reg .u64 %r174; .reg .u32 %r175; .reg .u32 %r179; .reg .u32 %r180; .reg .u32 %r183; .reg .u32 %r186; .reg .u64 %r187; .reg .u32 %r189; .reg .u32 %r191; .reg .u32 %r192; .reg .u64 %r194; .reg .u32 %r196; .reg .u64 %r200; .reg .u64 %r202; .reg .u64 %r203; .reg .u64 %r207; .reg .u64 %r211; .reg .u64 %r215; .reg .u32 %r216; .reg .u32 %r222; .reg .u32 %r223; .reg .u32 %r224; .reg .u64 %r226; .reg .u64 %r227; .reg .u32 %r228; .reg .u32 %r229; .reg .u32 %r230; .reg .u32 %r231; .reg .u32 %r232; .reg .u64 %r233; .reg .u32 %r234; .reg .u32 %r235; .reg .u32 %r236; .reg .u64 %r237; .reg .u64 %r238; .reg .u64 %r239; .reg .u32 %r241; .reg .u32 %r242; .reg .u64 %r244; .reg .u32 %r249; .reg .u64 %r250; .reg .u32 %r251; .reg .u32 %r252; .reg .f64 %r253; .reg .u64 %r256; .reg .u32 %r258; .reg .u32 %r259; .reg .u32 %r260; .reg .u32 %r263; .reg .u32 %r265; .reg .u64 %r266; .reg .u32 %r268; .reg .u64 %r269; .reg .u32 %r272; .reg .u32 %r273; .reg .u32 %r274; .reg .u32 %r275; .reg .u32 %r276; .reg .u64 %r277; .reg .u64 %r278; .reg .u32 %r279; .reg .u32 %r283; .reg .u32 %r286; .reg .u64 %r287; .reg .u64 %r296; .reg .u64 %r303; .reg .u32 %r305; .reg .u64 %r312; .reg .u64 %r313; .reg .u64 %r314; .reg .u64 %r315; .reg .u64 %r316; .reg .u64 %r317; .reg .u64 %r319; .reg .u64 %r320; .reg .u64 %r321; .reg .u64 %r322; .reg .u64 %r323; .reg .u64 %r324; .reg .u64 %r325; .reg .u64 %r326; .reg .u64 %r327; .reg .u64 %r328; .reg .u64 %r331; .reg .u64 %r333; .reg .u32 %r336; .reg .u64 %r342; .reg .u64 %r345; .reg .u64 %r347; .reg .u32 %r352; .reg .u32 %r353; .reg .u64 %r355; .reg .u64 %r356; .reg .u64 %r358; .reg .u64 %r360; .reg .u32 %r361; .reg .u32 %r364; .reg .u32 %r367; .reg .u32 %r368; .reg .u64 %r369; .reg .u32 %r370; .reg .u32 %r374; .reg .u32 %r375; .reg .u32 %r376; .reg .u64 %r377; .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 %r391; .reg .u32 %r392; .reg .u32 %r395; .reg .u32 %r397; .reg .u64 %r398; .reg .u32 %r400; .reg .u32 %r401; .reg .u64 %r402; .reg .u64 %r403; .reg .u64 %r404; .reg .u64 %r405; .reg .u64 %r416; .reg .u64 %r418; .reg .u16 %r419; .reg .u16 %r420; .reg .pred %r421; .reg .u64 %r422; .reg .pred %r423; .reg .u64 %r425; .reg .u64 %r426; .reg .pred %r427; .reg .u32 %r428; .reg .u32 %r429; .reg .u64 %r430; .reg .u32 %r431; .reg .u16 %r433; .reg .u32 %r434; .reg .u32 %r435; .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 .u16 %r447; .reg .u32 %r448; .reg .u32 %r449; .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 .u64 %r460; .reg .pred %r461; .reg .u64 %r462; .reg .u64 %r463; .reg .u32 %r464; .reg .pred %r465; .reg .u32 %r470; .reg .pred %r471; .reg .pred %r472; .reg .u32 %r473; .reg .pred %r474; .reg .pred %r475; .reg .pred %r476; .reg .pred %r477; .reg .pred %r478; .reg .pred %r479; .reg .pred %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 .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 .u32 %r510; .reg .pred %r511; .reg .pred %r512; .reg .pred %r513; .reg .pred %r514; .reg .u32 %r515; .reg .u32 %r517; .reg .u32 %r518; .reg .u32 %r519; .reg .pred %r520; .reg .u32 %r522; .reg .u32 %r523; .reg .u32 %r524; .reg .pred %r527; .reg .u16 %r528; .reg .pred %r529; .reg .u32 %r530; .reg .u32 %r531; .reg .pred %r532; .reg .u32 %r533; .reg .u32 %r534; .reg .pred %r535; .reg .pred %r536; .reg .u32 %r537; .reg .u32 %r538; .reg .pred %r539; .reg .u32 %r540; .reg .pred %r541; .reg .u32 %r542; .reg .pred %r543; .reg .pred %r548; .reg .u32 %r549; .reg .pred %r550; .reg .u32 %r551; .reg .u64 %r552; .reg .u32 %r556; .reg .pred %r557; .reg .pred %r558; .reg .u32 %r559; .reg .pred %r560; .reg .u32 %r562; .reg .pred %r563; .reg .pred %r564; .reg .pred %r565; .reg .u32 %r567; .reg .u32 %r568; .reg .u32 %r570; .reg .u32 %r571; .reg .u16 %r572; .reg .u16 %r573; .reg .u16 %r574; .reg .u32 %r575; .reg .u16 %r576; .reg .pred %r577; .reg .u64 %r578; .reg .u64 %r579; .reg .u32 %r580; .reg .pred %r581; .reg .pred %r582; .reg .pred %r583; .reg .u32 %r586; .reg .u64 %r594; .reg .u64 %r595; .reg .u64 %r596; .reg .u32 %r597; .reg .u64 %r598; .reg .u64 %r599; .reg .pred %r600; .reg .u64 %r601; .reg .u32 %r602; .reg .pred %r603; .reg .pred %r604; .reg .u64 %r605; .reg .u32 %r608; .reg .u32 %r609; .reg .u32 %r611; .reg .u32 %r612; .reg .u16 %r613; .reg .u16 %r614; .reg .u16 %r615; .reg .u32 %r616; .reg .u16 %r617; .reg .pred %r618; .reg .pred %r619; .reg .pred %r620; .reg .u32 %r621; .reg .u32 %r622; .reg .pred %r623; .reg .u32 %r625; .reg .u16 %r627; .reg .u16 %r628; .reg .u32 %r629; .reg .pred %r630; .reg .u16 %r632; .reg .u16 %r633; .reg .u32 %r634; .reg .pred %r638; .reg .u32 %r640; .reg .pred %r643; .reg .u64 %r649; .reg .u64 %r650; .reg .u64 %r652; .reg .u32 %r653; .reg .u16 %r655; .reg .u16 %r656; .reg .u32 %r657; .reg .pred %r658; .reg .pred %r659; .reg .u32 %r660; .reg .pred %r661; .reg .pred %r662; .reg .u32 %r663; .reg .pred %r664; .reg .pred %r665; .reg .u32 %r666; .reg .pred %r667; .reg .pred %r668; .reg .u32 %r669; .reg .pred %r670; .reg .u32 %r671; .reg .pred %r672; .reg .u32 %r673; .reg .u64 %r674; .reg .u32 %r675; .reg .pred %r676; .reg .u64 %r677; .reg .u32 %r678; .reg .pred %r679; .reg .u64 %r680; .reg .u32 %r681; .reg .pred %r682; .reg .pred %r683; .reg .u32 %r684; .reg .u32 %r685; .reg .pred %r686; .reg .pred %r687; .reg .u32 %r688; .reg .u32 %r689; .reg .pred %r690; .reg .u32 %r691; .reg .pred %r692; .reg .u32 %r693; .reg .pred %r694; .reg .u16 %r695; .reg .u32 %r696; .reg .u32 %r697; .reg .u32 %r698; .reg .pred %r699; .reg .pred %r700; .reg .u32 %r702; .reg .u64 %r704; .reg .u64 %r705; .reg .pred %r706; .reg .u64 %r707; .reg .u32 %r708; .reg .u64 %r710; .reg .pred %r711; .reg .u32 %r712; .reg .u32 %r713; .reg .pred %r714; .reg .pred %r715; .reg .u32 %r716; .reg .u32 %r717; .reg .pred %r718; .reg .u32 %r719; .reg .pred %r720; .reg .u32 %r721; .reg .pred %r722; .reg .u16 %r723; .reg .pred %r724; .reg .u32 %r725; .reg .u32 %r726; .reg .pred %r727; .reg .u32 %r728; .reg .pred %r729; .reg .u32 %r730; .reg .pred %r731; .reg .u16 %r732; .reg .u32 %r733; .reg .pred %r734; .reg .pred %r735; .reg .u32 %r736; .reg .u32 %r737; .reg .pred %r738; .reg .u32 %r740; .reg .u32 %r741; .reg .u32 %r743; .reg .u32 %r744; .reg .u16 %r745; .reg .u16 %r746; .reg .u16 %r747; .reg .u32 %r748; .reg .u16 %r749; .reg .pred %r750; .reg .u16 %r751; .reg .pred %r752; .reg .pred %r754; .reg .u16 %r756; .reg .u16 %r757; .reg .u16 %r759; .reg .u32 %r761; .reg .pred %r763; .reg .u16 %r765; .reg .u32 %r766; .reg .u32 %r767; .reg .u16 %r769; .reg .u16 %r770; .reg .u16 %r772; .reg .u16 %r773; .reg .u32 %r775; .reg .u16 %r776; .reg .pred %r777; .reg .u64 %r780; .reg .u32 %r781; .reg .u64 %r784; .reg .u16 %r787; .reg .u16 %r788; .reg .u32 %r789; .reg .u64 %r791; .reg .u16 %r793; .reg .u16 %r794; .reg .u32 %r795; .reg .u64 %r799; .reg .u64 %r800; .reg .u64 %r801; .reg .u32 %r802; .reg .pred %r803; .reg .u64 %r806; .reg .pred %r807; .reg .pred %r808; .reg .u32 %r809; .reg .pred %r810; .reg .u32 %r811; .reg .pred %r812; .reg .u32 %r813; .reg .pred %r814; .reg .pred %r816; .reg .pred %r817; .reg .pred %r818; .reg .u64 %r820; .reg .pred %r821; .reg .u32 %r826; .reg .pred %r827; .reg .pred %r828; .reg .pred %r830; .reg .u32 %r835; .reg .pred %r836; .reg .u16 %r837; .reg .u32 %r838; .reg .pred %r839; .reg .u64 %r841; .reg .u32 %r842; .reg .pred %r843; .reg .u32 %r848; .reg .pred %r849; .reg .u64 %r852; .reg .u32 %r853; .reg .pred %r854; .reg .u32 %r859; .reg .pred %r860; .reg .pred %r861; .reg .pred %r862; .reg .pred %r863; .reg .u64 %r865; .reg .pred %r866; .reg .u32 %r871; .reg .pred %r872; .reg .pred %r873; .reg .pred %r875; .reg .u32 %r880; .reg .pred %r881; .reg .pred %r882; .reg .pred %r883; .reg .u64 %r885; .reg .pred %r886; .reg .u32 %r891; .reg .pred %r892; .reg .pred %r893; .reg .pred %r895; .reg .u32 %r900; .reg .pred %r901; .reg .u32 %r902; .reg .pred %r903; .reg .u32 %r904; .reg .pred %r905; .reg .u32 %r910; .reg .pred %r911; .reg .pred %r912; .reg .pred %r913; .reg .u64 %r914; .reg .u64 %r915; .reg .u64 %r916; .reg .u32 %r917; .reg .pred %r918; .reg .u32 %r923; .reg .pred %r924; .reg .u32 %r925; .reg .pred %r926; .reg .u32 %r927; .reg .pred %r928; .reg .u64 %r929; .reg .u32 %r930; .reg .pred %r931; .reg .u32 %r936; .reg .pred %r937; .reg .pred %r938; .reg .pred %r939; .reg .u64 %r941; .reg .pred %r942; .reg .u32 %r947; .reg .pred %r948; .reg .pred %r949; .reg .pred %r951; .reg .u32 %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 .u32 %r973; .reg .pred %r974; .reg .u32 %r979; .reg .pred %r980; .reg .pred %r981; .reg .pred %r982; .reg .u64 %r984; .reg .pred %r985; .reg .u32 %r990; .reg .pred %r991; .reg .pred %r992; .reg .pred %r994; .reg .u32 %r999; .reg .pred %r1000; .reg .pred %r1001; .reg .u32 %r1006; .reg .pred %r1007; .reg .pred %r1008; .reg .u32 %r1009; .reg .pred %r1010; .reg .u32 %r1015; .reg .pred %r1016; .reg .pred %r1017; .reg .pred %r1018; .reg .u64 %r1020; .reg .pred %r1021; .reg .u32 %r1026; .reg .pred %r1027; .reg .pred %r1028; .reg .pred %r1030; .reg .u32 %r1035; .reg .pred %r1036; .reg .pred %r1037; .reg .u32 %r1038; .reg .pred %r1039; .reg .u32 %r1040; .reg .pred %r1041; .reg .u32 %r1046; .reg .pred %r1047; .reg .pred %r1048; .reg .u64 %r1049; .reg .u64 %r1050; .reg .u32 %r1051; .reg .pred %r1052; .reg .u32 %r1057; .reg .pred %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 .pred %r1080; .reg .u32 %r1081; .reg .pred %r1082; .reg .u64 %r1083; .reg .pred %r1084; .reg .u32 %r1089; .reg .pred %r1090; .reg .pred %r1091; .reg .u32 %r1096; .reg .pred %r1097; .reg .pred %r1098; .reg .u64 %r1099; .reg .pred %r1100; .reg .u32 %r1105; .reg .pred %r1106; .reg .u32 %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 .u32 %r1128; .reg .u64 %r1129; .reg .pred %r1130; .reg .u32 %r1135; .reg .pred %r1136; .reg .u32 %r1137; .reg .pred %r1139; .reg .u32 %r1144; .reg .pred %r1145; .reg .u32 %r1146; .reg .pred %r1147; .reg .pred %r1148; .reg .pred %r1149; .reg .u64 %r1151; .reg .pred %r1152; .reg .u32 %r1157; .reg .pred %r1158; .reg .pred %r1159; .reg .pred %r1161; .reg .u32 %r1166; .reg .pred %r1167; .reg .u32 %r1168; .reg .pred %r1169; .reg .u32 %r1170; .reg .u32 %r1175; .reg .pred %r1176; .reg .u64 %r1177; .reg .pred %r1178; .reg .u64 %r1182; .reg .u32 %r1183; .reg .u16 %r1184; .reg .u16 %r1185; .reg .pred %r1186; .reg .u32 %r1188; .reg .pred %r1189; .reg .pred %r1190; .reg .u64 %r1191; .reg .u32 %r1194; .reg .u64 %r1202; .reg .u32 %r1206; .reg .u64 %r1214; .reg .u16 %r1216; .reg .u32 %r1217; .reg .u32 %r1218; .reg .u32 %r1219; .reg .u32 %r1221; .reg .u32 %r1222; .reg .u16 %r1223; .reg .u16 %r1224; .reg .u16 %r1225; .reg .u32 %r1226; .reg .u16 %r1227; .reg .pred %r1228; .reg .u32 %r1230; .reg .u32 %r1231; .reg .u32 %r1233; .reg .u32 %r1234; .reg .u16 %r1235; .reg .u16 %r1236; .reg .u16 %r1237; .reg .u32 %r1238; .reg .u16 %r1239; .reg .pred %r1240; .reg .u64 %r1241; .reg .u32 %r1242; .reg .pred %r1243; .reg .u64 %r1244; .reg .u64 %r1245; .reg .u32 %r1246; .reg .pred %r1247; .reg .u32 %r1250; .reg .u32 %r1251; .reg .u64 %r1258; .reg .pred %r1259; .reg .u64 %r1260; .reg .u32 %r1262; .reg .pred %r1265; .reg .u32 %r1266; .reg .u64 %r1267; .reg .pred %r1268; .reg .u32 %r1301; .reg .u64 %r1302; .reg .u64 %r1303; .reg .u64 %r1304; .reg .u64 %r1305; .reg .u64 %r1306; .reg .u64 %r1307; .reg .u64 %r1308; .reg .u64 %r1309; .reg .u64 %r1310; .reg .u64 %r1311; mov.u64 %r402,%ar0; mov.u64 %r403,%ar1; mov.u64 %r404,%ar2; mov.u64 %r405,%ar3; .loc 1 696 24 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; call (%value_in),_localeconv_r,(%out_arg1); ld.param.u64 %r416,[%value_in]; } .loc 1 696 8 ld.u64 %r244,[%r416]; .loc 1 697 20 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r244; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r418,[%value_in]; } .loc 1 880 12 ld.u16 %r420,[%r403+16]; and.b16 %r419,%r420,128; setp.eq.u16 %r421,%r419,0; @ %r421 bra $L2; .loc 1 880 33 ld.u64 %r422,[%r403+24]; setp.ne.u64 %r423,%r422,0; @ %r423 bra $L2; .loc 1 882 28 mov.u64 %r425,64; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r425; call (%value_in),_malloc_r,(%out_arg1,%out_arg2); ld.param.u64 %r426,[%value_in]; } .loc 1 882 26 st.u64 [%r403],%r426; .loc 1 882 17 st.u64 [%r403+24],%r426; .loc 1 883 6 setp.ne.u64 %r427,%r426,0; @ %r427 bra $L3; .loc 1 885 17 mov.u32 %r428,12; st.u32 [%r402],%r428; .loc 1 886 11 mov.u32 %r401,-1; bra $L1; $L3: .loc 1 888 17 cvt.u32.u64 %r429,%r425; st.u32 [%r403+32],%r429; $L2: .loc 1 894 14 st.u64 [%frame+168],%frame; .loc 1 895 16 mov.u64 %r430,0; st.u64 [%frame+184],%r430; .loc 1 896 17 cvt.u32.u64 %r431,%r430; st.u32 [%frame+176],%r431; .loc 1 707 6 cvt.u32.u64 %r272,%r430; .loc 1 699 42 mov.f64 %r253,0d0000000000000000; .loc 1 894 21 mov.u64 %r237,%frame; .loc 1 718 8 mov.u64 %r26,%r430; .loc 1 702 6 cvt.u32.u64 %r27,%r26; .loc 1 898 6 cvt.u32.u64 %r401,%r26; .loc 1 929 4 add.u64 %r1302,%frame,168; .loc 1 1763 5 add.u64 %r1303,%frame,200; .loc 1 1694 4 add.u64 %r1304,%frame,216; .loc 1 1692 4 add.u64 %r1305,%frame,218; .loc 1 1917 4 add.u64 %r1306,%frame,199; add.u64 %r1307,%frame,202; add.u64 %r1308,%frame,201; .loc 1 1880 11 add.u64 %r1309,%frame,192; add.u64 %r1310,%frame,208; add.u64 %r1311,%frame,212; $L5: .loc 1 925 24 ld.s8 %r249,[%r404]; .loc 1 925 37 cvt.u16.u32 %r433,%r249; set.u32.ne.u16 %r434,%r433,0; neg.s32 %r435,%r434; set.u32.ne.u16 %r438,%r433,37; neg.s32 %r439,%r438; cvt.u16.u32 %r441,%r435; cvt.u16.u32 %r442,%r439; and.b16 %r440,%r441,%r442; .loc 1 925 23 cvt.u32.u16 %r443,%r440; cvt.u16.u8 %r444,%r443; setp.eq.u16 %r445,%r444,0; @ %r445 bra $L247; mov.u64 %r269,%r404; bra $L7; $L248: mov.u64 %r269,%r250; $L7: .loc 1 926 25 add.u64 %r250,%r269,1; .loc 1 925 24 ld.s8 %r249,[%r250]; .loc 1 925 37 cvt.u16.u32 %r447,%r249; set.u32.ne.u16 %r448,%r447,0; neg.s32 %r449,%r448; set.u32.ne.u16 %r452,%r447,37; neg.s32 %r453,%r452; cvt.u16.u32 %r455,%r449; cvt.u16.u32 %r456,%r453; and.b16 %r454,%r455,%r456; .loc 1 925 23 cvt.u32.u16 %r457,%r454; cvt.u16.u8 %r458,%r457; setp.ne.u16 %r459,%r458,0; @ %r459 bra $L248; .loc 1 928 16 sub.u64 %r460,%r250,%r404; .loc 1 928 10 cvt.u32.u64 %r251,%r460; .loc 1 928 6 setp.eq.u32 %r461,%r251,0; @ %r461 bra $L6; .loc 1 929 4 st.u64 [%r237],%r404; cvt.s64.s32 %r32,%r251; st.u64 [%r237+8],%r32; ld.u64 %r463,[%frame+184]; add.u64 %r462,%r463,%r32; st.u64 [%frame+184],%r462; ld.u32 %r464,[%frame+176]; add.u32 %r36,%r464,1; st.u32 [%frame+176],%r36; setp.gt.s32 %r465,%r36,7; @ %r465 bra $L8; add.u64 %r237,%r237,16; bra $L9; $L8: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r470,[%value_in]; } setp.ne.u32 %r471,%r470,0; @ %r471 bra $L10; mov.u64 %r237,%frame; $L9: .loc 1 930 8 add.u32 %r401,%r401,%r251; ld.s8 %r249,[%r269+1]; bra $L6; $L247: .loc 1 925 23 mov.u64 %r250,%r404; $L6: .loc 1 936 20 setp.eq.u32 %r472,%r249,0; @ %r472 bra $L11; .loc 1 940 6 add.u64 %r404,%r250,1; .loc 1 946 8 mov.u32 %r473,0; st.u8 [%frame+218],%r473; ld.s8 %r395,[%r250+1]; mov.u32 %r222,0; mov.u32 %r224,%r222; .loc 1 945 8 mov.u32 %r231,-1; .loc 1 944 9 mov.u32 %r230,%r222; .loc 1 942 9 mov.u32 %r228,%r222; .loc 1 1071 6 mov.u32 %r1301,%r222; bra $L12; $L250: .loc 1 1018 10 mov.u64 %r405,%r333; $L12: .loc 1 958 18 add.u64 %r404,%r404,1; .loc 1 958 12 mov.u32 %r223,%r395; $L13: setp.eq.u32 %r474,%r223,85; @ %r474 bra $L14; setp.gt.s32 %r475,%r223,85; @ %r475 bra $L15; setp.eq.u32 %r476,%r223,48; @ %r476 bra $L16; setp.gt.s32 %r477,%r223,48; @ %r477 bra $L17; setp.eq.u32 %r478,%r223,42; @ %r478 bra $L18; setp.gt.s32 %r479,%r223,42; @ %r479 bra $L19; setp.eq.u32 %r480,%r223,32; @ %r480 bra $L20; setp.eq.u32 %r481,%r223,35; @ %r481 bra $L21; bra $L22; $L19: setp.eq.u32 %r482,%r223,45; @ %r482 bra $L23; setp.eq.u32 %r483,%r223,46; @ %r483 bra $L24; setp.eq.u32 %r484,%r223,43; @ ! %r484 bra $L22; bra $L25; $L17: setp.eq.u32 %r485,%r223,69; @ %r485 bra $L26; setp.gt.s32 %r486,%r223,69; @ %r486 bra $L27; setp.le.s32 %r487,%r223,57; @ %r487 bra $L28; setp.eq.u32 %r488,%r223,68; @ %r488 bra $L29; bra $L22; $L27: setp.eq.u32 %r489,%r223,76; @ %r489 bra $L30; setp.eq.u32 %r490,%r223,79; @ %r490 bra $L31; setp.eq.u32 %r491,%r223,71; @ ! %r491 bra $L22; bra $L26; $L15: setp.eq.u32 %r492,%r223,108; @ %r492 bra $L32; setp.gt.s32 %r493,%r223,108; @ %r493 bra $L33; setp.gt.s32 %r494,%r223,103; @ %r494 bra $L34; setp.ge.s32 %r495,%r223,101; @ %r495 bra $L26; setp.eq.u32 %r496,%r223,99; @ %r496 bra $L35; setp.gt.s32 %r497,%r223,99; @ %r497 bra $L36; setp.eq.u32 %r498,%r223,88; @ %r498 bra $L37; bra $L22; $L34: setp.eq.u32 %r499,%r223,104; @ %r499 bra $L38; setp.eq.u32 %r500,%r223,105; @ %r500 bra $L36; bra $L22; $L33: setp.eq.u32 %r501,%r223,113; @ %r501 bra $L39; setp.gt.s32 %r502,%r223,113; @ %r502 bra $L40; setp.eq.u32 %r503,%r223,111; @ %r503 bra $L41; setp.gt.s32 %r504,%r223,111; @ %r504 bra $L42; setp.eq.u32 %r505,%r223,110; @ %r505 bra $L43; bra $L22; $L40: setp.eq.u32 %r506,%r223,117; @ %r506 bra $L44; setp.eq.u32 %r507,%r223,120; @ %r507 bra $L45; setp.eq.u32 %r508,%r223,115; @ ! %r508 bra $L22; bra $L46; $L23: ld.s8 %r395,[%r404]; bra $L47; $L45: setp.eq.u32 %r509,%r222,0; @ %r509 bra $L48; cvt.u32.u32 %r510,%r224; st.u8 [%frame+218],%r510; $L48: .loc 1 1545 10 cvta.const.u64 %r26,$LC5; bra $L49; $L20: ld.s8 %r395,[%r404]; .loc 1 975 7 setp.eq.u32 %r511,%r224,0; selp.u32 %r222,1,%r222,%r511; selp.u32 %r224,32,%r224,%r511; bra $L12; $L21: .loc 1 979 10 or.b32 %r228,%r228,1; ld.s8 %r395,[%r404]; .loc 1 980 4 bra $L12; $L18: .loc 1 1018 10 add.u64 %r333,%r405,4; ld.u32 %r230,[%r405]; ld.s8 %r395,[%r404]; .loc 1 1022 7 setp.ge.s32 %r512,%r230,0; @ %r512 bra $L250; .loc 1 1024 10 neg.s32 %r230,%r230; .loc 1 1018 10 mov.u64 %r405,%r333; $L47: .loc 1 1027 10 or.b32 %r228,%r228,4; .loc 1 1028 4 bra $L12; $L25: ld.s8 %r395,[%r404]; .loc 1 1031 4 mov.u32 %r222,1; .loc 1 1030 9 mov.u32 %r224,%r223; .loc 1 1031 4 bra $L12; $L24: .loc 1 1033 18 add.u64 %r256,%r404,1; .loc 1 1033 12 ld.s8 %r223,[%r404]; .loc 1 1033 7 setp.eq.u32 %r513,%r223,42; @ %r513 bra $L52; .loc 1 1072 11 add.u32 %r1262,%r223,-48; .loc 1 1072 10 setp.le.u32 %r514,%r1262,9; @ %r514 bra $L53; .loc 1 1033 18 mov.u64 %r404,%r256; .loc 1 1071 6 mov.u32 %r231,%r1301; bra $L13; $L52: ld.u32 %r515,[%r405]; max.s32 %r231,%r515,-1; ld.s8 %r395,[%r404+1]; .loc 1 1063 10 add.u64 %r405,%r405,4; .loc 1 1033 18 mov.u64 %r404,%r256; bra $L12; $L53: mov.u64 %r345,%r256; .loc 1 1071 6 mov.u32 %r231,%r1301; $L55: .loc 1 1073 12 shl.b32 %r517,%r231,2; add.u32 %r518,%r517,%r231; add.u32 %r519,%r518,%r518; .loc 1 1073 7 add.u32 %r231,%r519,%r1262; add.u64 %r404,%r345,1; .loc 1 1074 8 ld.s8 %r223,[%r345]; .loc 1 1072 11 add.u32 %r1262,%r223,-48; mov.u64 %r345,%r404; .loc 1 1072 10 setp.le.u32 %r520,%r1262,9; @ %r520 bra $L55; bra $L13; $L16: .loc 1 1084 10 or.b32 %r228,%r228,128; ld.s8 %r395,[%r404]; .loc 1 1085 4 bra $L12; $L28: mov.u64 %r342,%r404; .loc 1 1088 6 mov.u32 %r230,0; add.u32 %r1262,%r223,-48; $L56: .loc 1 1090 12 shl.b32 %r522,%r230,2; add.u32 %r523,%r522,%r230; add.u32 %r524,%r523,%r523; .loc 1 1090 7 add.u32 %r230,%r1262,%r524; add.u64 %r404,%r404,1; .loc 1 1091 8 ld.s8 %r223,[%r342]; mov.u64 %r342,%r404; .loc 1 1092 13 add.u32 %r1262,%r223,-48; .loc 1 1092 4 setp.le.u32 %r527,%r1262,9; @ %r527 bra $L56; bra $L13; $L30: .loc 1 1108 10 or.b32 %r228,%r228,8; ld.s8 %r395,[%r404]; .loc 1 1109 4 bra $L12; $L38: .loc 1 1118 11 or.b32 %r228,%r228,64; ld.s8 %r395,[%r404]; .loc 1 1119 4 bra $L12; $L32: .loc 1 1122 8 ld.s8 %r395,[%r404]; .loc 1 1122 7 cvt.u16.u32 %r528,%r395; setp.ne.u16 %r529,%r528,108; @ %r529 bra $L57; .loc 1 1124 11 or.b32 %r228,%r228,32; ld.s8 %r395,[%r404+1]; .loc 1 1123 8 add.u64 %r404,%r404,1; bra $L12; $L57: .loc 1 1127 11 or.b32 %r228,%r228,16; bra $L12; $L39: .loc 1 1130 10 or.b32 %r228,%r228,32; ld.s8 %r395,[%r404]; .loc 1 1131 4 bra $L12; $L35: .loc 1 1189 9 ld.u32 %r530,[%r405]; st.u8 [%frame+128],%r530; .loc 1 1192 9 mov.u32 %r531,0; st.u8 [%frame+218],%r531; .loc 1 1189 11 add.u64 %r405,%r405,4; .loc 1 1193 4 mov.u32 %r235,1; .loc 1 1190 10 mov.u32 %r236,%r235; .loc 1 1173 7 add.u64 %r227,%frame,128; .loc 1 1193 4 bra $L58; $L29: setp.eq.u32 %r532,%r222,0; @ %r532 bra $L59; cvt.u32.u32 %r533,%r224; st.u8 [%frame+218],%r533; $L59: .loc 1 1195 10 or.b32 %r191,%r228,16; .loc 1 1199 13 and.b32 %r534,%r228,32; setp.ne.u32 %r535,%r534,0; @ ! %r535 bra $L61; bra $L60; $L36: setp.eq.u32 %r536,%r222,0; @ %r536 bra $L62; cvt.u32.u32 %r537,%r224; st.u8 [%frame+218],%r537; $L62: and.b32 %r538,%r228,32; setp.eq.u32 %r539,%r538,0; @ %r539 bra $L63; mov.u32 %r191,%r228; $L60: add.u64 %r328,%r405,7; and.b64 %r316,%r328,-8; add.u64 %r405,%r316,8; ld.u64 %r52,[%r316]; mov.u64 %r233,%r52; bra $L64; $L63: and.b32 %r540,%r228,16; setp.eq.u32 %r541,%r540,0; @ %r541 bra $L65; mov.u32 %r191,%r228; $L61: add.u64 %r326,%r405,7; and.b64 %r324,%r326,-8; add.u64 %r405,%r324,8; ld.u64 %r52,[%r324]; mov.u64 %r233,%r52; bra $L64; $L65: add.u64 %r358,%r405,4; and.b32 %r542,%r228,64; setp.eq.u32 %r543,%r542,0; @ %r543 bra $L66; ld.s16 %r233,[%r405]; mov.u64 %r52,%r233; mov.u32 %r191,%r228; mov.u64 %r405,%r358; bra $L64; $L66: ld.s32 %r233,[%r405]; mov.u64 %r52,%r233; mov.u32 %r191,%r228; mov.u64 %r405,%r358; $L64: .loc 1 1201 7 setp.ge.s64 %r548,%r52,0; @ %r548 bra $L67; .loc 1 1207 12 neg.s64 %r233,%r233; .loc 1 1208 10 mov.u32 %r549,45; st.u8 [%frame+218],%r549; mov.u32 %r228,%r191; mov.u32 %r391,45; .loc 1 1210 9 mov.u32 %r234,1; bra $L68; $L26: setp.eq.u32 %r550,%r222,0; @ %r550 bra $L69; cvt.u32.u32 %r551,%r224; st.u8 [%frame+218],%r551; $L69: add.u64 %r552,%r405,7; and.b64 %r360,%r552,-8; add.u64 %r405,%r360,8; .loc 1 1225 25 ld.f64 %r253,[%r360]; .loc 1 1236 8 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r253; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r556,[%value_in]; } .loc 1 1236 7 setp.ne.u32 %r557,%r556,1; @ %r557 bra $L72; .loc 1 1237 8 setp.lt.f64 %r558,%r253,0d0000000000000000; @ %r558 bra $L73; ld.s8 %r391,[%frame+218]; bra $L74; $L73: .loc 1 1238 11 mov.u32 %r559,45; st.u8 [%frame+218],%r559; mov.u32 %r391,45; $L74: .loc 1 1239 8 setp.le.s32 %r560,%r223,71; @ %r560 bra $L251; .loc 1 1242 9 cvta.const.u64 %r227,$LC1; bra $L75; $L251: .loc 1 1240 9 cvta.const.u64 %r227,$LC0; $L75: .loc 1 1244 11 and.b32 %r229,%r228,-129; .loc 1 1245 5 mov.u32 %r235,3; .loc 1 1243 10 mov.u32 %r236,%r235; .loc 1 943 9 mov.u32 %r231,0; .loc 1 948 8 mov.u32 %r180,%r231; .loc 1 1245 5 bra $L76; $L72: .loc 1 1247 8 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r253; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r562,[%value_in]; } mov.u32 %r180,%r562; .loc 1 1247 7 setp.ne.u32 %r563,%r562,0; @ %r563 bra $L77; .loc 1 1248 8 setp.le.s32 %r564,%r223,71; @ %r564 bra $L252; .loc 1 1251 9 cvta.const.u64 %r227,$LC3; bra $L78; $L252: .loc 1 1249 9 cvta.const.u64 %r227,$LC2; $L78: .loc 1 1253 11 and.b32 %r229,%r228,-129; ld.s8 %r391,[%frame+218]; .loc 1 943 9 mov.u32 %r231,%r562; .loc 1 1254 5 mov.u32 %r235,3; .loc 1 1252 10 mov.u32 %r236,%r235; .loc 1 1254 5 bra $L76; $L77: and.b32 %r361,%r223,-33; .loc 1 1309 7 setp.eq.u32 %r565,%r231,-1; @ %r565 bra $L253; .loc 1 1311 40 set.u32.eq.u32 %r567,%r231,0; neg.s32 %r568,%r567; set.u32.eq.u32 %r570,%r361,71; neg.s32 %r571,%r570; cvt.u16.u32 %r573,%r568; cvt.u16.u32 %r574,%r571; and.b16 %r572,%r573,%r574; cvt.u32.u16 %r575,%r572; cvt.u16.u8 %r576,%r575; setp.ne.u16 %r577,%r576,0; @ %r577 bra $L80; bra $L79; $L253: .loc 1 1310 10 mov.u32 %r231,6; $L79: .loc 1 1315 10 or.b32 %r229,%r228,256; .loc 1 1814 6 mov.b64 %r578,%r253; shr.u64 %r579,%r578,32; .loc 1 1814 5 cvt.u32.u64 %r580,%r579; setp.ge.s32 %r581,%r580,0; @ %r581 bra $L254; bra $L246; $L275: .loc 1 1312 10 mov.u32 %r231,1; $L246: .loc 1 1815 9 neg.f64 %r60,%r253; .loc 1 1816 9 mov.u32 %r274,45; bra $L81; $L254: .loc 1 1814 5 mov.f64 %r60,%r253; .loc 1 1818 9 mov.u32 %r274,0; $L81: .loc 1 1867 5 setp.eq.u32 %r582,%r361,70; @ %r582 bra $L82; .loc 1 1874 6 setp.ne.u32 %r583,%r361,69; @ %r583 bra $L83; .loc 1 1875 11 add.u32 %r38,%r231,1; .loc 1 1880 11 mov.u32 %r586,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r60; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r586; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r38; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r1311; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r1310; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r1309; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r594,[%value_in]; } mov.u64 %r227,%r594; setp.eq.u32 %r1268,1,1; bra $L84; $L387: .loc 1 1894 16 ld.u64 %r596,[%frame+192]; sub.u64 %r595,%r596,%r227; .loc 1 1894 10 cvt.u32.u64 %r272,%r595; ld.u32 %r180,[%frame+212]; bra $L85; $L386: ld.u32 %r368,[%frame+212]; bra $L86; $L242: .loc 1 1886 23 mov.u32 %r597,1; sub.u32 %r368,%r597,%r231; .loc 1 1886 12 st.u32 [%frame+212],%r368; $L86: .loc 1 1887 10 cvt.s64.s32 %r598,%r368; .loc 1 1887 7 add.u64 %r599,%r598,%r143; add.u64 %r296,%r1214,%r599; setp.eq.u32 %r1268,1,1; $L240: .loc 1 1889 6 setp.eq.f64 %r600,%r60,0d0000000000000000; @ %r600 bra $L255; bra $L376; $L89: .loc 1 1892 8 add.u64 %r601,%r203,1; st.u64 [%frame+192],%r601; .loc 1 1892 11 st.u8 [%r203],%r602; .loc 1 1891 14 ld.u64 %r203,[%frame+192]; .loc 1 1891 9 setp.gt.u64 %r603,%r296,%r203; @ %r603 bra $L89; bra $L87; $L376: .loc 1 1891 14 ld.u64 %r203,[%frame+192]; .loc 1 1891 9 setp.lt.u64 %r604,%r203,%r296; @ ! %r604 bra $L87; .loc 1 1892 11 mov.u32 %r602,48; bra $L89; $L255: .loc 1 1889 6 mov.u64 %r203,%r296; $L87: .loc 1 1894 16 sub.u64 %r605,%r203,%r227; .loc 1 1894 10 cvt.u32.u64 %r272,%r605; ld.u32 %r180,[%frame+212]; .loc 1 1320 7 @ %r1268 bra $L90; $L85: .loc 1 1321 8 set.u32.lt.s32 %r608,%r180,-3; neg.s32 %r609,%r608; .loc 1 1321 20 set.u32.gt.s32 %r611,%r180,%r231; neg.s32 %r612,%r611; cvt.u16.u32 %r614,%r609; cvt.u16.u32 %r615,%r612; or.b16 %r613,%r614,%r615; cvt.u32.u16 %r616,%r613; cvt.u16.u8 %r617,%r616; setp.eq.u16 %r618,%r617,0; @ %r618 bra $L91; .loc 1 1322 9 add.u32 %r223,%r223,-2; bra $L92; $L90: .loc 1 1330 7 setp.eq.u32 %r619,%r223,102; @ %r619 bra $L93; $L92: .loc 1 1331 5 add.u32 %r61,%r180,-1; st.u32 [%frame+212],%r61; .loc 1 1910 7 st.u8 [%frame+200],%r223; .loc 1 1911 5 setp.ge.s32 %r620,%r61,0; @ %r620 bra $L256; .loc 1 1912 7 mov.u32 %r621,1; sub.u32 %r61,%r621,%r180; .loc 1 1913 8 mov.u32 %r275,45; bra $L94; $L256: .loc 1 1916 8 mov.u32 %r275,43; $L94: cvt.u32.u32 %r622,%r275; st.u8 [%frame+201],%r622; .loc 1 1918 5 setp.le.s32 %r623,%r61,9; @ %r623 bra $L95; .loc 1 1917 4 mov.u64 %r303,%r1306; bra $L96; $L257: .loc 1 1921 3 mov.u64 %r303,%r163; .loc 1 1921 17 mov.u32 %r61,%r305; $L96: .loc 1 1920 9 add.u64 %r163,%r303,-1; .loc 1 1920 11 rem.s32 %r625,%r61,10; cvt.u16.u32 %r628,%r625; add.u16 %r627,%r628,48; .loc 1 1920 9 cvt.u32.u16 %r629,%r627; st.u8 [%r163],%r629; .loc 1 1921 17 div.s32 %r305,%r61,10; .loc 1 1921 3 setp.gt.s32 %r630,%r61,99; @ %r630 bra $L257; .loc 1 1922 8 add.u64 %r287,%r303,-2; .loc 1 1922 10 cvt.u16.u32 %r633,%r305; add.u16 %r632,%r633,48; cvt.u32.u16 %r634,%r632; cvt.s32.s8 %r364,%r634; .loc 1 1922 8 st.u8 [%r163+-1],%r634; .loc 1 1923 3 setp.ge.u64 %r638,%r287,%r1306; @ %r638 bra $L258; mov.u64 %r347,%r1307; $L99: .loc 1 1923 43 add.u64 %r287,%r287,1; .loc 1 1923 39 cvt.u32.u32 %r640,%r364; st.u8 [%r347],%r640; add.u64 %r347,%r347,1; .loc 1 1923 3 setp.ne.u64 %r643,%r287,%r1306; @ %r643 bra $L98; sub.u64 %r649,%r1308,%r303; add.u64 %r650,%r1307,%r649; sub.u64 %r652,%r650,%r1303; cvt.u32.u64 %r27,%r652; bra $L97; $L98: ld.s8 %r364,[%r287]; bra $L99; $L95: .loc 1 1927 9 mov.u32 %r653,48; st.u8 [%frame+202],%r653; .loc 1 1928 10 cvt.u16.u32 %r656,%r61; add.u16 %r655,%r656,48; .loc 1 1928 8 cvt.u32.u16 %r657,%r655; st.u8 [%frame+203],%r657; mov.u32 %r27,4; bra $L97; $L258: .loc 1 1923 3 mov.u32 %r27,2; $L97: .loc 1 1333 10 add.u32 %r236,%r27,%r272; .loc 1 1334 8 setp.gt.s32 %r658,%r272,1; @ %r658 bra $L100; and.b32 %r180,%r228,1; .loc 1 1334 18 setp.ne.u32 %r659,%r180,0; @ %r659 bra $L100; max.s32 %r235,%r236,0; bra $L101; $L100: .loc 1 1335 6 add.u32 %r236,%r236,1; max.s32 %r235,%r236,0; .loc 1 948 8 mov.u32 %r180,0; bra $L101; $L93: and.b32 %r660,%r228,1; or.b32 %r367,%r660,%r231; .loc 1 1341 9 setp.le.s32 %r661,%r180,0; @ %r661 bra $L102; .loc 1 1343 16 setp.eq.u32 %r662,%r367,0; @ %r662 bra $L259; .loc 1 1344 21 add.u32 %r663,%r231,1; .loc 1 1344 13 add.u32 %r236,%r663,%r180; mov.u32 %r235,%r236; bra $L101; $L102: .loc 1 1346 20 setp.eq.u32 %r664,%r367,0; @ %r664 bra $L260; .loc 1 1348 10 add.u32 %r236,%r231,2; mov.u32 %r235,%r236; bra $L101; $L91: .loc 1 1349 15 setp.gt.s32 %r665,%r272,%r180; @ %r665 bra $L104; .loc 1 1351 9 and.b32 %r666,%r228,1; setp.ne.u32 %r667,%r666,0; @ %r667 bra $L105; max.s32 %r235,%r180,0; mov.u32 %r236,%r180; mov.u32 %r223,103; bra $L101; $L105: .loc 1 1352 7 add.u32 %r236,%r180,1; max.s32 %r235,%r236,0; mov.u32 %r223,103; bra $L101; $L104: .loc 1 1355 9 setp.gt.s32 %r668,%r180,0; @ %r668 bra $L261; mov.u32 %r669,2; sub.u32 %r241,%r669,%r180; bra $L106; $L261: mov.u32 %r241,1; $L106: .loc 1 1354 11 add.u32 %r236,%r241,%r272; max.s32 %r235,%r236,0; mov.u32 %r223,103; bra $L101; $L259: mov.u32 %r235,%r180; mov.u32 %r236,%r180; bra $L101; $L260: mov.u32 %r235,1; .loc 1 1348 10 mov.u32 %r236,%r235; $L101: .loc 1 1377 7 setp.eq.u32 %r670,%r274,0; @ %r670 bra $L107; .loc 1 1378 10 mov.u32 %r671,45; st.u8 [%frame+218],%r671; .loc 1 943 9 mov.u32 %r231,0; bra $L108; $L43: setp.eq.u32 %r672,%r222,0; @ %r672 bra $L109; cvt.u32.u32 %r673,%r224; st.u8 [%frame+218],%r673; $L109: add.u64 %r674,%r405,7; and.b64 %r355,%r674,-8; ld.u64 %r356,[%r355]; add.u64 %r405,%r355,8; .loc 1 1392 14 and.b32 %r675,%r228,32; .loc 1 1392 7 setp.eq.u32 %r676,%r675,0; @ %r676 bra $L110; .loc 1 1393 34 cvt.s64.s32 %r677,%r401; st.u64 [%r356],%r677; bra $L5; $L110: .loc 1 1396 14 and.b32 %r678,%r228,16; .loc 1 1396 7 setp.eq.u32 %r679,%r678,0; @ %r679 bra $L112; .loc 1 1397 34 cvt.s64.s32 %r680,%r401; st.u64 [%r356],%r680; bra $L5; $L112: .loc 1 1398 19 and.b32 %r681,%r228,64; .loc 1 1398 12 setp.eq.u32 %r682,%r681,0; @ %r682 bra $L113; .loc 1 1399 35 st.u16 [%r356],%r401; bra $L5; $L113: .loc 1 1405 33 st.u32 [%r356],%r401; bra $L5; $L31: setp.eq.u32 %r683,%r222,0; @ %r683 bra $L114; cvt.u32.u32 %r684,%r224; st.u8 [%frame+218],%r684; $L114: .loc 1 1408 10 or.b32 %r265,%r228,16; .loc 1 1411 13 and.b32 %r685,%r228,32; setp.ne.u32 %r686,%r685,0; @ ! %r686 bra $L116; bra $L262; $L41: setp.eq.u32 %r687,%r222,0; @ %r687 bra $L117; cvt.u32.u32 %r688,%r224; st.u8 [%frame+218],%r688; $L117: and.b32 %r689,%r228,32; setp.eq.u32 %r690,%r689,0; @ ! %r690 bra $L115; bra $L118; $L262: .loc 1 1408 10 mov.u32 %r228,%r265; $L115: .loc 1 1411 13 add.u64 %r331,%r405,7; and.b64 %r321,%r331,-8; add.u64 %r405,%r321,8; ld.u64 %r233,[%r321]; .loc 1 1412 9 mov.u32 %r234,0; bra $L119; $L118: .loc 1 1411 13 and.b32 %r691,%r228,16; setp.eq.u32 %r692,%r691,0; @ %r692 bra $L120; mov.u32 %r265,%r228; $L116: add.u64 %r327,%r405,7; and.b64 %r315,%r327,-8; add.u64 %r405,%r315,8; ld.u64 %r233,[%r315]; mov.u32 %r228,%r265; .loc 1 1412 9 mov.u32 %r234,0; bra $L119; $L120: ld.u32 %r353,[%r405]; add.u64 %r405,%r405,4; .loc 1 1411 13 and.b32 %r693,%r228,64; setp.eq.u32 %r694,%r693,0; @ %r694 bra $L121; cvt.u16.u32 %r695,%r353; cvt.u64.u16 %r233,%r695; .loc 1 1412 9 mov.u32 %r234,%r691; bra $L119; $L121: .loc 1 1411 13 cvt.u64.u32 %r233,%r353; .loc 1 1412 9 mov.u32 %r234,%r693; bra $L119; $L42: .loc 1 1426 25 add.u64 %r109,%r405,7; and.b64 %r314,%r109,-8; add.u64 %r405,%r314,8; .loc 1 1426 11 ld.u64 %r233,[%r314]; .loc 1 1429 10 or.b32 %r228,%r228,2; .loc 1 1430 10 mov.u32 %r696,48; st.u8 [%frame+216],%r696; .loc 1 1431 10 mov.u32 %r697,120; st.u8 [%frame+217],%r697; .loc 1 1428 10 cvta.const.u64 %r26,$LC5; .loc 1 1427 9 mov.u32 %r234,2; .loc 1 1431 15 mov.u32 %r223,120; .loc 1 1432 4 bra $L119; $L46: .loc 1 1437 7 add.u64 %r325,%r405,7; and.b64 %r320,%r325,-8; add.u64 %r405,%r320,8; ld.u64 %r227,[%r320]; .loc 1 1441 9 mov.u32 %r698,0; st.u8 [%frame+218],%r698; .loc 1 1447 7 setp.ne.u64 %r699,%r227,0; @ %r699 bra $L122; .loc 1 1449 39 min.u32 %r236,%r231,6; mov.u32 %r235,%r236; .loc 1 1448 8 cvta.const.u64 %r227,$LC6; bra $L58; $L122: .loc 1 1516 7 setp.eq.u32 %r700,%r231,-1; @ %r700 bra $L123; .loc 1 1522 15 cvt.s64.s32 %r704,%r231; mov.u32 %r702,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r227; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r702; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r704; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r705,[%value_in]; } .loc 1 1524 8 setp.ne.u64 %r706,%r705,0; @ %r706 bra $L124; ld.s8 %r391,[%frame+218]; mov.u32 %r235,%r231; mov.u32 %r236,%r231; mov.u32 %r229,%r228; .loc 1 943 9 cvt.u32.u64 %r231,%r705; .loc 1 948 8 mov.u32 %r180,%r231; bra $L76; $L124: .loc 1 1525 15 sub.u64 %r707,%r705,%r227; cvt.u32.u64 %r708,%r707; min.s32 %r236,%r231,%r708; ld.s8 %r391,[%frame+218]; max.s32 %r235,%r236,0; mov.u32 %r229,%r228; .loc 1 943 9 mov.u32 %r231,%r702; .loc 1 948 8 mov.u32 %r180,%r231; bra $L76; $L123: .loc 1 1531 12 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r227; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r710,[%value_in]; } .loc 1 1531 10 cvt.u32.u64 %r236,%r710; ld.s8 %r391,[%frame+218]; max.s32 %r235,%r236,0; mov.u32 %r229,%r228; .loc 1 943 9 mov.u32 %r231,0; .loc 1 948 8 mov.u32 %r180,%r231; bra $L76; $L14: setp.eq.u32 %r711,%r222,0; @ %r711 bra $L125; cvt.u32.u32 %r712,%r224; st.u8 [%frame+218],%r712; $L125: .loc 1 1535 10 or.b32 %r273,%r228,16; .loc 1 1538 13 and.b32 %r713,%r228,32; setp.ne.u32 %r714,%r713,0; @ ! %r714 bra $L127; bra $L263; $L44: setp.eq.u32 %r715,%r222,0; @ %r715 bra $L128; cvt.u32.u32 %r716,%r224; st.u8 [%frame+218],%r716; $L128: and.b32 %r717,%r228,32; setp.eq.u32 %r718,%r717,0; @ ! %r718 bra $L126; bra $L129; $L263: .loc 1 1535 10 mov.u32 %r228,%r273; $L126: .loc 1 1538 13 add.u64 %r323,%r405,7; and.b64 %r319,%r323,-8; add.u64 %r405,%r319,8; ld.u64 %r233,[%r319]; .loc 1 1539 9 mov.u32 %r234,1; bra $L119; $L129: .loc 1 1538 13 and.b32 %r719,%r228,16; setp.eq.u32 %r720,%r719,0; @ %r720 bra $L130; mov.u32 %r273,%r228; $L127: add.u64 %r266,%r405,7; and.b64 %r313,%r266,-8; add.u64 %r405,%r313,8; ld.u64 %r233,[%r313]; mov.u32 %r228,%r273; .loc 1 1539 9 mov.u32 %r234,1; bra $L119; $L130: ld.u32 %r352,[%r405]; add.u64 %r405,%r405,4; .loc 1 1538 13 and.b32 %r721,%r228,64; setp.eq.u32 %r722,%r721,0; @ %r722 bra $L131; cvt.u16.u32 %r723,%r352; cvt.u64.u16 %r233,%r723; .loc 1 1539 9 mov.u32 %r234,1; bra $L119; $L131: .loc 1 1538 13 cvt.u64.u32 %r233,%r352; .loc 1 1539 9 mov.u32 %r234,1; bra $L119; $L37: setp.eq.u32 %r724,%r222,0; @ %r724 bra $L132; cvt.u32.u32 %r725,%r224; st.u8 [%frame+218],%r725; $L132: .loc 1 1542 10 cvta.const.u64 %r26,$LC4; $L49: .loc 1 1546 17 and.b32 %r726,%r228,32; setp.eq.u32 %r727,%r726,0; @ %r727 bra $L133; add.u64 %r322,%r405,7; and.b64 %r317,%r322,-8; add.u64 %r405,%r317,8; ld.u64 %r233,[%r317]; bra $L134; $L133: and.b32 %r728,%r228,16; setp.eq.u32 %r729,%r728,0; @ %r729 bra $L135; add.u64 %r62,%r405,7; and.b64 %r312,%r62,-8; add.u64 %r405,%r312,8; ld.u64 %r233,[%r312]; bra $L134; $L135: ld.u32 %r392,[%r405]; add.u64 %r405,%r405,4; and.b32 %r730,%r228,64; setp.eq.u32 %r731,%r730,0; @ %r731 bra $L136; cvt.u16.u32 %r732,%r392; cvt.u64.u16 %r233,%r732; bra $L134; $L136: cvt.u64.u32 %r233,%r392; $L134: .loc 1 1549 14 and.b32 %r733,%r228,1; .loc 1 1549 7 setp.eq.u32 %r734,%r733,0; @ %r734 bra $L264; .loc 1 1549 20 setp.eq.u64 %r735,%r233,0; @ %r735 bra $L265; .loc 1 1550 11 mov.u32 %r736,48; st.u8 [%frame+216],%r736; .loc 1 1551 11 st.u8 [%frame+217],%r223; .loc 1 1552 11 or.b32 %r228,%r228,2; .loc 1 1547 9 mov.u32 %r234,2; bra $L119; $L264: mov.u32 %r234,2; bra $L119; $L265: mov.u32 %r234,2; $L119: .loc 1 1559 16 mov.u32 %r737,0; st.u8 [%frame+218],%r737; mov.u32 %r391,0; $L68: .loc 1 1565 14 setp.eq.u32 %r738,%r231,-1; @ %r738 bra $L137; .loc 1 1566 11 and.b32 %r229,%r228,-129; .loc 1 1574 15 set.u32.ne.u64 %r740,%r233,0; neg.s32 %r741,%r740; .loc 1 1574 28 set.u32.ne.u32 %r743,%r231,0; neg.s32 %r744,%r743; .loc 1 1574 20 cvt.u16.u32 %r746,%r741; cvt.u16.u32 %r747,%r744; or.b16 %r745,%r746,%r747; .loc 1 1574 7 cvt.u32.u16 %r748,%r745; cvt.u16.u8 %r749,%r748; setp.eq.u16 %r750,%r749,0; @ %r750 bra $L138; .loc 1 1566 11 mov.u32 %r228,%r229; $L137: cvt.u16.u32 %r751,%r234; setp.eq.u16 %r752,%r751,1; @ %r752 bra $L139; setp.eq.u16 %r754,%r751,2; @ %r754 bra $L266; .loc 1 1573 7 mov.u64 %r226,%r1302; bra $L141; $L267: .loc 1 1581 5 mov.u64 %r226,%r227; $L141: .loc 1 1583 13 add.u64 %r227,%r226,-1; .loc 1 1583 15 cvt.u16.u64 %r757,%r233; and.b16 %r756,%r757,7; add.u16 %r759,%r756,48; cvt.u32.u16 %r761,%r759; cvt.s32.s8 %r97,%r761; .loc 1 1583 13 st.u8 [%r227],%r761; .loc 1 1584 14 shr.u64 %r233,%r233,3; .loc 1 1585 6 setp.ne.u64 %r763,%r233,0; @ %r763 bra $L267; .loc 1 1587 22 cvt.u16.u32 %r765,%r97; set.u32.ne.u16 %r766,%r765,48; neg.s32 %r767,%r766; .loc 1 1587 9 cvt.u16.u32 %r770,%r228; and.b16 %r769,%r770,1; .loc 1 1587 22 cvt.u16.u32 %r773,%r767; and.b16 %r772,%r773,%r769; cvt.u32.u16 %r775,%r772; cvt.u16.u8 %r776,%r775; setp.ne.u16 %r777,%r776,0; @ %r777 bra $L142; sub.u64 %r780,%r1302,%r227; cvt.u32.u64 %r236,%r780; mov.u32 %r229,%r228; bra $L143; $L142: .loc 1 1588 13 add.u64 %r277,%r226,-2; mov.u32 %r781,48; st.u8 [%r227+-1],%r781; sub.u64 %r784,%r1302,%r277; cvt.u32.u64 %r236,%r784; mov.u32 %r229,%r228; mov.u64 %r227,%r277; bra $L143; $L274: .loc 1 1566 11 mov.u32 %r228,%r229; $L139: .loc 1 1593 9 setp.gt.u64 %r1265,%r233,9; @ %r1265 bra $L268; .loc 1 1594 15 cvt.u16.u64 %r788,%r233; add.u16 %r787,%r788,48; .loc 1 1594 13 cvt.u32.u16 %r789,%r787; st.u8 [%frame+167],%r789; .loc 1 1595 7 mov.u32 %r229,%r228; mov.u32 %r236,1; .loc 1 1594 13 add.u64 %r227,%frame,167; .loc 1 1595 7 bra $L143; $L268: .loc 1 1573 7 mov.u64 %r227,%r1302; bra $L144; $L269: .loc 1 1622 15 mov.u64 %r233,%r278; setp.gt.u64 %r1265,%r233,9; $L144: .loc 1 1601 14 add.u64 %r227,%r227,-1; .loc 1 1601 16 rem.u64 %r791,%r233,10; cvt.u16.u64 %r794,%r791; add.u16 %r793,%r794,48; .loc 1 1601 14 cvt.u32.u16 %r795,%r793; st.u8 [%r227],%r795; .loc 1 1622 15 div.u64 %r278,%r233,10; .loc 1 1623 6 @ %r1265 bra $L269; sub.u64 %r799,%r1302,%r227; cvt.u32.u64 %r236,%r799; mov.u32 %r229,%r228; bra $L143; $L266: .loc 1 1573 7 mov.u64 %r227,%r1302; $L140: .loc 1 1628 13 add.u64 %r227,%r227,-1; .loc 1 1628 28 and.b64 %r800,%r233,15; .loc 1 1628 20 add.u64 %r801,%r26,%r800; .loc 1 1628 13 ld.u8 %r802,[%r801]; st.u8 [%r227],%r802; .loc 1 1629 14 shr.u64 %r233,%r233,4; .loc 1 1630 6 setp.ne.u64 %r803,%r233,0; @ %r803 bra $L140; sub.u64 %r806,%r1302,%r227; cvt.u32.u64 %r236,%r806; mov.u32 %r229,%r228; bra $L143; $L138: .loc 1 1648 32 setp.ne.u32 %r807,%r234,0; @ %r807 bra $L270; .loc 1 1648 55 and.b32 %r236,%r228,1; .loc 1 1648 45 setp.eq.u32 %r808,%r236,0; @ %r808 bra $L271; .loc 1 1649 32 mov.u32 %r809,48; st.u8 [%frame+167],%r809; mov.u32 %r231,%r234; add.u64 %r227,%frame,167; bra $L143; $L270: mov.u32 %r231,0; mov.u32 %r236,%r231; .loc 1 1573 7 add.u64 %r227,%frame,168; bra $L143; $L271: mov.u32 %r231,%r234; add.u64 %r227,%frame,168; $L143: max.s32 %r235,%r236,%r231; .loc 1 948 8 mov.u32 %r180,0; bra $L76; $L22: setp.eq.u32 %r810,%r222,0; @ %r810 bra $L145; cvt.u32.u32 %r811,%r224; st.u8 [%frame+218],%r811; $L145: .loc 1 1655 7 setp.eq.u32 %r812,%r223,0; @ %r812 bra $L11; .loc 1 1659 8 st.u8 [%frame+128],%r223; .loc 1 1661 9 mov.u32 %r813,0; st.u8 [%frame+218],%r813; .loc 1 1662 4 mov.u32 %r235,1; .loc 1 1660 9 mov.u32 %r236,%r235; .loc 1 1658 7 add.u64 %r227,%frame,128; .loc 1 1662 4 bra $L58; $L107: ld.s8 %r391,[%frame+218]; .loc 1 943 9 mov.u32 %r231,%r274; $L76: .loc 1 1681 6 setp.eq.u32 %r814,%r391,0; @ %r814 bra $L146; $L108: .loc 1 1682 10 add.u32 %r235,%r235,1; $L146: .loc 1 1683 13 and.b32 %r111,%r229,2; .loc 1 1683 6 setp.eq.u32 %r1259,%r111,0; @ %r1259 bra $L147; .loc 1 1684 10 add.u32 %r235,%r235,2; $L147: .loc 1 1687 14 and.b32 %r112,%r229,132; ld.u64 %r369,[%frame+184]; .loc 1 1687 6 setp.ne.u32 %r816,%r112,0; @ %r816 bra $L148; .loc 1 1688 4 sub.u32 %r260,%r230,%r235; setp.le.s32 %r817,%r260,0; @ %r817 bra $L148; ld.u32 %r386,[%frame+176]; setp.le.s32 %r818,%r260,16; @ ! %r818 bra $L377; cvta.const.u64 %r1260,blanks$4153; bra $L149; $L377: cvta.const.u64 %r1260,blanks$4153; $L152: st.u64 [%r237],%r1260; mov.u64 %r820,16; st.u64 [%r237+8],%r820; add.u64 %r369,%r369,16; st.u64 [%frame+184],%r369; add.u32 %r386,%r386,1; st.u32 [%frame+176],%r386; setp.gt.s32 %r821,%r386,7; @ %r821 bra $L150; add.u64 %r237,%r237,16; bra $L151; $L150: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r826,[%value_in]; } setp.ne.u32 %r827,%r826,0; @ %r827 bra $L10; ld.u64 %r369,[%frame+184]; ld.u32 %r386,[%frame+176]; mov.u64 %r237,%frame; $L151: add.u32 %r260,%r260,-16; setp.gt.s32 %r828,%r260,16; @ %r828 bra $L152; $L149: st.u64 [%r237],%r1260; cvt.s64.s32 %r114,%r260; st.u64 [%r237+8],%r114; add.u64 %r369,%r369,%r114; st.u64 [%frame+184],%r369; add.u32 %r115,%r386,1; st.u32 [%frame+176],%r115; setp.gt.s32 %r830,%r115,7; @ %r830 bra $L153; add.u64 %r237,%r237,16; bra $L148; $L153: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r835,[%value_in]; } setp.ne.u32 %r836,%r835,0; @ %r836 bra $L10; ld.u64 %r369,[%frame+184]; mov.u64 %r237,%frame; $L148: .loc 1 1691 6 ld.s8 %r838,[%frame+218]; cvt.u16.u32 %r837,%r838; setp.eq.u16 %r839,%r837,0; @ %r839 bra $L154; .loc 1 1692 4 st.u64 [%r237],%r1305; mov.u64 %r841,1; st.u64 [%r237+8],%r841; add.u64 %r369,%r369,1; st.u64 [%frame+184],%r369; ld.u32 %r842,[%frame+176]; add.u32 %r119,%r842,1; st.u32 [%frame+176],%r119; setp.gt.s32 %r843,%r119,7; @ %r843 bra $L155; add.u64 %r237,%r237,16; bra $L154; $L155: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r848,[%value_in]; } setp.ne.u32 %r849,%r848,0; @ %r849 bra $L10; ld.u64 %r369,[%frame+184]; mov.u64 %r237,%frame; $L154: .loc 1 1693 6 @ %r1259 bra $L156; .loc 1 1694 4 st.u64 [%r237],%r1304; mov.u64 %r852,2; st.u64 [%r237+8],%r852; add.u64 %r369,%r369,2; st.u64 [%frame+184],%r369; ld.u32 %r853,[%frame+176]; add.u32 %r122,%r853,1; st.u32 [%frame+176],%r122; setp.gt.s32 %r854,%r122,7; @ %r854 bra $L157; add.u64 %r237,%r237,16; bra $L156; $L157: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r859,[%value_in]; } setp.ne.u32 %r860,%r859,0; @ %r860 bra $L10; ld.u64 %r369,[%frame+184]; mov.u64 %r237,%frame; $L156: .loc 1 1697 6 setp.ne.u32 %r861,%r112,128; @ %r861 bra $L158; .loc 1 1698 4 sub.u32 %r258,%r230,%r235; setp.le.s32 %r862,%r258,0; @ %r862 bra $L158; ld.u32 %r385,[%frame+176]; setp.le.s32 %r863,%r258,16; @ ! %r863 bra $L378; cvta.const.u64 %r1267,zeroes$4154; bra $L159; $L378: cvta.const.u64 %r1267,zeroes$4154; $L162: st.u64 [%r237],%r1267; mov.u64 %r865,16; st.u64 [%r237+8],%r865; add.u64 %r369,%r369,16; st.u64 [%frame+184],%r369; add.u32 %r385,%r385,1; st.u32 [%frame+176],%r385; setp.gt.s32 %r866,%r385,7; @ %r866 bra $L160; add.u64 %r237,%r237,16; bra $L161; $L160: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r871,[%value_in]; } setp.ne.u32 %r872,%r871,0; @ %r872 bra $L10; ld.u64 %r369,[%frame+184]; ld.u32 %r385,[%frame+176]; mov.u64 %r237,%frame; $L161: add.u32 %r258,%r258,-16; setp.gt.s32 %r873,%r258,16; @ %r873 bra $L162; $L159: st.u64 [%r237],%r1267; cvt.s64.s32 %r125,%r258; st.u64 [%r237+8],%r125; add.u64 %r369,%r369,%r125; st.u64 [%frame+184],%r369; add.u32 %r127,%r385,1; st.u32 [%frame+176],%r127; setp.gt.s32 %r875,%r127,7; @ %r875 bra $L163; add.u64 %r237,%r237,16; bra $L158; $L163: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r880,[%value_in]; } setp.ne.u32 %r881,%r880,0; @ %r881 bra $L10; ld.u64 %r369,[%frame+184]; mov.u64 %r237,%frame; $L158: .loc 1 1701 3 sub.u32 %r279,%r231,%r236; setp.le.s32 %r882,%r279,0; @ %r882 bra $L164; ld.u32 %r384,[%frame+176]; setp.le.s32 %r883,%r279,16; @ ! %r883 bra $L379; cvta.const.u64 %r1267,zeroes$4154; bra $L165; $L379: cvta.const.u64 %r1267,zeroes$4154; $L168: st.u64 [%r237],%r1267; mov.u64 %r885,16; st.u64 [%r237+8],%r885; add.u64 %r369,%r369,16; st.u64 [%frame+184],%r369; add.u32 %r384,%r384,1; st.u32 [%frame+176],%r384; setp.gt.s32 %r886,%r384,7; @ %r886 bra $L166; add.u64 %r237,%r237,16; bra $L167; $L166: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r891,[%value_in]; } setp.ne.u32 %r892,%r891,0; @ %r892 bra $L10; ld.u64 %r369,[%frame+184]; ld.u32 %r384,[%frame+176]; mov.u64 %r237,%frame; $L167: add.u32 %r279,%r279,-16; setp.gt.s32 %r893,%r279,16; @ %r893 bra $L168; $L165: st.u64 [%r237],%r1267; cvt.s64.s32 %r130,%r279; st.u64 [%r237+8],%r130; add.u64 %r369,%r369,%r130; st.u64 [%frame+184],%r369; add.u32 %r131,%r384,1; st.u32 [%frame+176],%r131; setp.gt.s32 %r895,%r131,7; @ %r895 bra $L169; add.u64 %r237,%r237,16; bra $L164; $L169: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r900,[%value_in]; } setp.ne.u32 %r901,%r900,0; @ %r901 bra $L10; ld.u64 %r369,[%frame+184]; mov.u64 %r237,%frame; $L164: .loc 1 1705 14 and.b32 %r902,%r229,256; .loc 1 1705 6 setp.ne.u32 %r903,%r902,0; @ %r903 bra $L170; .loc 1 1706 4 st.u64 [%r237],%r227; cvt.s64.s32 %r134,%r236; st.u64 [%r237+8],%r134; add.u64 %r369,%r369,%r134; st.u64 [%frame+184],%r369; ld.u32 %r904,[%frame+176]; add.u32 %r136,%r904,1; st.u32 [%frame+176],%r136; setp.gt.s32 %r905,%r136,7; @ %r905 bra $L171; add.u64 %r237,%r237,16; bra $L172; $L171: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r910,[%value_in]; } setp.ne.u32 %r911,%r910,0; @ %r911 bra $L10; ld.u64 %r369,[%frame+184]; mov.u64 %r237,%frame; bra $L172; $L170: .loc 1 1708 7 setp.le.s32 %r912,%r223,101; @ %r912 bra $L173; .loc 1 1709 8 setp.neu.f64 %r913,%r253,0d0000000000000000; @ %r913 bra $L174; .loc 1 1711 6 cvta.const.u64 %r914,$LC7; st.u64 [%r237],%r914; mov.u64 %r915,1; st.u64 [%r237+8],%r915; add.u64 %r916,%r369,1; st.u64 [%frame+184],%r916; ld.u32 %r917,[%frame+176]; add.u32 %r140,%r917,1; st.u32 [%frame+176],%r140; setp.gt.s32 %r918,%r140,7; @ %r918 bra $L175; add.u64 %r237,%r237,16; bra $L176; $L175: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; 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 $L10; mov.u64 %r237,%frame; $L176: .loc 1 1712 9 ld.u32 %r925,[%frame+212]; setp.lt.s32 %r926,%r925,%r272; @ %r926 bra $L177; .loc 1 1712 31 and.b32 %r927,%r229,1; .loc 1 1712 22 setp.ne.u32 %r928,%r927,0; @ %r928 bra $L177; ld.u64 %r369,[%frame+184]; bra $L172; $L177: .loc 1 1713 7 st.u64 [%r237],%r244; st.u64 [%r237+8],%r418; ld.u64 %r929,[%frame+184]; add.u64 %r369,%r418,%r929; st.u64 [%frame+184],%r369; ld.u32 %r930,[%frame+176]; add.u32 %r147,%r930,1; st.u32 [%frame+176],%r147; setp.gt.s32 %r931,%r147,7; @ %r931 bra $L178; add.u64 %r237,%r237,16; bra $L179; $L178: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r936,[%value_in]; } setp.ne.u32 %r937,%r936,0; @ %r937 bra $L10; ld.u64 %r369,[%frame+184]; mov.u64 %r237,%frame; $L179: .loc 1 1714 7 add.u32 %r259,%r272,-1; setp.le.s32 %r938,%r259,0; @ %r938 bra $L172; ld.u32 %r383,[%frame+176]; setp.le.s32 %r939,%r259,16; @ ! %r939 bra $L380; cvta.const.u64 %r1267,zeroes$4154; bra $L180; $L380: cvta.const.u64 %r1267,zeroes$4154; $L183: st.u64 [%r237],%r1267; mov.u64 %r941,16; st.u64 [%r237+8],%r941; add.u64 %r369,%r369,16; st.u64 [%frame+184],%r369; add.u32 %r383,%r383,1; st.u32 [%frame+176],%r383; setp.gt.s32 %r942,%r383,7; @ %r942 bra $L181; add.u64 %r237,%r237,16; bra $L182; $L181: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r947,[%value_in]; } setp.ne.u32 %r948,%r947,0; @ %r948 bra $L10; ld.u64 %r369,[%frame+184]; ld.u32 %r383,[%frame+176]; mov.u64 %r237,%frame; $L182: add.u32 %r259,%r259,-16; setp.gt.s32 %r949,%r259,16; @ %r949 bra $L183; $L180: st.u64 [%r237],%r1267; cvt.s64.s32 %r150,%r259; st.u64 [%r237+8],%r150; add.u64 %r369,%r369,%r150; st.u64 [%frame+184],%r369; add.u32 %r151,%r383,1; st.u32 [%frame+176],%r151; setp.gt.s32 %r951,%r151,7; @ %r951 bra $L184; add.u64 %r237,%r237,16; bra $L172; $L184: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r956,[%value_in]; } setp.ne.u32 %r957,%r956,0; @ %r957 bra $L10; ld.u64 %r369,[%frame+184]; mov.u64 %r237,%frame; bra $L172; $L174: .loc 1 1716 21 ld.u32 %r153,[%frame+212]; .loc 1 1716 15 setp.gt.s32 %r958,%r153,0; @ %r958 bra $L185; .loc 1 1717 6 cvta.const.u64 %r959,$LC7; st.u64 [%r237],%r959; mov.u64 %r960,1; st.u64 [%r237+8],%r960; add.u64 %r369,%r369,1; st.u64 [%frame+184],%r369; ld.u32 %r961,[%frame+176]; add.u32 %r155,%r961,1; st.u32 [%frame+176],%r155; setp.gt.s32 %r962,%r155,7; @ %r962 bra $L186; add.u64 %r237,%r237,16; bra $L187; $L186: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; 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 $L10; ld.u32 %r153,[%frame+212]; ld.u64 %r369,[%frame+184]; mov.u64 %r237,%frame; $L187: .loc 1 1718 15 or.b32 %r969,%r272,%r153; setp.ne.u32 %r970,%r969,0; @ %r970 bra $L188; .loc 1 1718 32 and.b32 %r971,%r229,1; .loc 1 1718 23 setp.ne.u32 %r972,%r971,0; @ %r972 bra $L189; bra $L172; $L188: .loc 1 1719 7 st.u64 [%r237],%r244; st.u64 [%r237+8],%r418; add.u64 %r381,%r418,%r369; st.u64 [%frame+184],%r381; ld.u32 %r973,[%frame+176]; add.u32 %r382,%r973,1; st.u32 [%frame+176],%r382; setp.gt.s32 %r974,%r382,7; @ %r974 bra $L190; add.u64 %r238,%r237,16; bra $L191; $L190: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r979,[%value_in]; } setp.ne.u32 %r980,%r979,0; @ %r980 bra $L10; ld.u32 %r153,[%frame+212]; ld.u64 %r381,[%frame+184]; ld.u32 %r382,[%frame+176]; mov.u64 %r238,%frame; $L191: .loc 1 1720 7 setp.ge.s32 %r981,%r153,0; @ %r981 bra $L192; neg.s32 %r283,%r153; setp.ge.s32 %r982,%r153,-16; @ ! %r982 bra $L381; cvta.const.u64 %r1267,zeroes$4154; bra $L193; $L381: cvta.const.u64 %r1267,zeroes$4154; $L196: st.u64 [%r238],%r1267; mov.u64 %r984,16; st.u64 [%r238+8],%r984; add.u64 %r381,%r381,16; st.u64 [%frame+184],%r381; add.u32 %r382,%r382,1; st.u32 [%frame+176],%r382; setp.gt.s32 %r985,%r382,7; @ %r985 bra $L194; add.u64 %r238,%r238,16; bra $L195; $L194: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r990,[%value_in]; } setp.ne.u32 %r991,%r990,0; @ %r991 bra $L10; ld.u64 %r381,[%frame+184]; ld.u32 %r382,[%frame+176]; mov.u64 %r238,%frame; $L195: add.u32 %r283,%r283,-16; setp.gt.s32 %r992,%r283,16; @ %r992 bra $L196; $L193: st.u64 [%r238],%r1267; cvt.s64.s32 %r161,%r283; st.u64 [%r238+8],%r161; add.u64 %r381,%r381,%r161; st.u64 [%frame+184],%r381; add.u32 %r382,%r382,1; st.u32 [%frame+176],%r382; setp.gt.s32 %r994,%r382,7; @ %r994 bra $L197; add.u64 %r238,%r238,16; bra $L192; $L197: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r999,[%value_in]; } setp.ne.u32 %r1000,%r999,0; @ %r1000 bra $L10; ld.u64 %r381,[%frame+184]; ld.u32 %r382,[%frame+176]; mov.u64 %r238,%frame; $L192: .loc 1 1721 7 st.u64 [%r238],%r227; cvt.s64.s32 %r164,%r272; st.u64 [%r238+8],%r164; add.u64 %r369,%r164,%r381; st.u64 [%frame+184],%r369; add.u32 %r165,%r382,1; st.u32 [%frame+176],%r165; setp.gt.s32 %r1001,%r165,7; @ %r1001 bra $L198; add.u64 %r237,%r238,16; bra $L172; $L198: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1006,[%value_in]; } setp.ne.u32 %r1007,%r1006,0; @ %r1007 bra $L10; ld.u64 %r369,[%frame+184]; mov.u64 %r237,%frame; bra $L172; $L185: min.s32 %r252,%r272,%r180; .loc 1 1725 6 setp.le.s32 %r1008,%r252,0; @ %r1008 bra $L199; st.u64 [%r237],%r227; cvt.s64.s32 %r167,%r252; st.u64 [%r237+8],%r167; add.u64 %r369,%r369,%r167; st.u64 [%frame+184],%r369; ld.u32 %r1009,[%frame+176]; add.u32 %r169,%r1009,1; st.u32 [%frame+176],%r169; setp.gt.s32 %r1010,%r169,7; @ %r1010 bra $L200; add.u64 %r237,%r237,16; bra $L199; $L200: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1015,[%value_in]; } setp.ne.u32 %r1016,%r1015,0; @ %r1016 bra $L10; ld.u64 %r369,[%frame+184]; mov.u64 %r237,%frame; $L199: max.s32 %r172,%r252,0; sub.u32 %r242,%r180,%r172; setp.le.s32 %r1017,%r242,0; @ %r1017 bra $L201; ld.u32 %r380,[%frame+176]; setp.le.s32 %r1018,%r242,16; @ ! %r1018 bra $L382; cvta.const.u64 %r1267,zeroes$4154; bra $L202; $L382: cvta.const.u64 %r1267,zeroes$4154; $L205: st.u64 [%r237],%r1267; mov.u64 %r1020,16; st.u64 [%r237+8],%r1020; add.u64 %r369,%r369,16; st.u64 [%frame+184],%r369; add.u32 %r380,%r380,1; st.u32 [%frame+176],%r380; setp.gt.s32 %r1021,%r380,7; @ %r1021 bra $L203; add.u64 %r237,%r237,16; bra $L204; $L203: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1026,[%value_in]; } setp.ne.u32 %r1027,%r1026,0; @ %r1027 bra $L10; ld.u64 %r369,[%frame+184]; ld.u32 %r380,[%frame+176]; mov.u64 %r237,%frame; $L204: add.u32 %r242,%r242,-16; setp.gt.s32 %r1028,%r242,16; @ %r1028 bra $L205; $L202: st.u64 [%r237],%r1267; cvt.s64.s32 %r174,%r242; st.u64 [%r237+8],%r174; add.u64 %r369,%r369,%r174; st.u64 [%frame+184],%r369; add.u32 %r175,%r380,1; st.u32 [%frame+176],%r175; setp.gt.s32 %r1030,%r175,7; @ %r1030 bra $L206; add.u64 %r237,%r237,16; bra $L201; $L206: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1035,[%value_in]; } setp.ne.u32 %r1036,%r1035,0; @ %r1036 bra $L10; ld.u64 %r369,[%frame+184]; mov.u64 %r237,%frame; $L201: .loc 1 1746 15 ld.u32 %r179,[%frame+212]; .loc 1 1746 9 setp.lt.s32 %r1037,%r179,%r272; @ %r1037 bra $L207; .loc 1 1746 31 and.b32 %r1038,%r229,1; .loc 1 1746 22 setp.eq.u32 %r1039,%r1038,0; @ %r1039 bra $L208; $L207: .loc 1 1747 10 st.u64 [%r237],%r244; st.u64 [%r237+8],%r418; add.u64 %r369,%r369,%r418; st.u64 [%frame+184],%r369; ld.u32 %r1040,[%frame+176]; add.u32 %r183,%r1040,1; st.u32 [%frame+176],%r183; setp.gt.s32 %r1041,%r183,7; @ %r1041 bra $L209; add.u64 %r237,%r237,16; bra $L210; $L209: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1046,[%value_in]; } setp.ne.u32 %r1047,%r1046,0; @ %r1047 bra $L10; ld.u32 %r179,[%frame+212]; ld.u64 %r369,[%frame+184]; mov.u64 %r237,%frame; $L210: .loc 1 1748 6 sub.u32 %r286,%r272,%r180; sub.u32 %r186,%r272,%r179; min.s32 %r276,%r186,%r286; setp.le.s32 %r1048,%r276,0; @ %r1048 bra $L211; .loc 1 1727 9 cvt.s64.s32 %r1049,%r180; add.u64 %r1050,%r227,%r1049; .loc 1 1748 6 st.u64 [%r237],%r1050; cvt.s64.s32 %r187,%r276; st.u64 [%r237+8],%r187; add.u64 %r369,%r369,%r187; st.u64 [%frame+184],%r369; ld.u32 %r1051,[%frame+176]; add.u32 %r189,%r1051,1; st.u32 [%frame+176],%r189; setp.gt.s32 %r1052,%r189,7; @ %r1052 bra $L212; add.u64 %r237,%r237,16; bra $L211; $L212: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1057,[%value_in]; } setp.ne.u32 %r1058,%r1057,0; @ %r1058 bra $L10; ld.u32 %r1059,[%frame+212]; sub.u32 %r186,%r272,%r1059; ld.u64 %r369,[%frame+184]; mov.u64 %r237,%frame; $L211: max.s32 %r192,%r276,0; sub.u32 %r263,%r186,%r192; setp.le.s32 %r1060,%r263,0; @ %r1060 bra $L172; ld.u32 %r379,[%frame+176]; setp.le.s32 %r1061,%r263,16; @ ! %r1061 bra $L383; cvta.const.u64 %r1267,zeroes$4154; bra $L213; $L383: cvta.const.u64 %r1267,zeroes$4154; $L216: st.u64 [%r237],%r1267; mov.u64 %r1063,16; st.u64 [%r237+8],%r1063; add.u64 %r369,%r369,16; st.u64 [%frame+184],%r369; add.u32 %r379,%r379,1; st.u32 [%frame+176],%r379; setp.gt.s32 %r1064,%r379,7; @ %r1064 bra $L214; add.u64 %r237,%r237,16; bra $L215; $L214: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; 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 %r369,[%frame+184]; ld.u32 %r379,[%frame+176]; mov.u64 %r237,%frame; $L215: add.u32 %r263,%r263,-16; setp.gt.s32 %r1071,%r263,16; @ %r1071 bra $L216; $L213: st.u64 [%r237],%r1267; cvt.s64.s32 %r194,%r263; st.u64 [%r237+8],%r194; add.u64 %r369,%r369,%r194; st.u64 [%frame+184],%r369; add.u32 %r196,%r379,1; st.u32 [%frame+176],%r196; setp.gt.s32 %r1073,%r196,7; @ %r1073 bra $L217; add.u64 %r237,%r237,16; bra $L172; $L217: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; 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; ld.u64 %r369,[%frame+184]; mov.u64 %r237,%frame; bra $L172; $L173: add.u64 %r200,%r369,1; ld.u32 %r397,[%frame+176]; add.u32 %r374,%r397,1; add.u64 %r239,%r237,16; .loc 1 1752 8 setp.gt.s32 %r1080,%r272,1; @ %r1080 bra $L218; .loc 1 1752 27 and.b32 %r1081,%r229,1; .loc 1 1752 18 setp.eq.u32 %r1082,%r1081,0; @ %r1082 bra $L219; $L218: .loc 1 1753 6 st.u64 [%r237],%r227; mov.u64 %r1083,1; st.u64 [%r237+8],%r1083; st.u64 [%frame+184],%r200; st.u32 [%frame+176],%r374; setp.le.s32 %r1084,%r374,7; @ %r1084 bra $L220; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1089,[%value_in]; } setp.ne.u32 %r1090,%r1089,0; @ %r1090 bra $L10; ld.u64 %r200,[%frame+184]; ld.u32 %r374,[%frame+176]; mov.u64 %r239,%frame; $L220: .loc 1 1755 6 st.u64 [%r239],%r244; st.u64 [%r239+8],%r418; add.u64 %r200,%r200,%r418; st.u64 [%frame+184],%r200; add.u32 %r376,%r374,1; st.u32 [%frame+176],%r376; setp.gt.s32 %r1091,%r376,7; @ %r1091 bra $L221; add.u64 %r239,%r239,16; bra $L222; $L221: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1096,[%value_in]; } setp.ne.u32 %r1097,%r1096,0; @ %r1097 bra $L10; ld.u64 %r200,[%frame+184]; ld.u32 %r376,[%frame+176]; mov.u64 %r239,%frame; $L222: add.u32 %r375,%r376,1; mov.u32 %r1266,%r375; add.u64 %r237,%r239,16; add.u32 %r232,%r272,-1; .loc 1 1756 9 setp.eq.f64 %r1098,%r253,0d0000000000000000; @ %r1098 bra $L223; .loc 1 1754 8 add.u64 %r1099,%r227,1; .loc 1 1757 7 st.u64 [%r239],%r1099; cvt.s64.s32 %r202,%r232; st.u64 [%r239+8],%r202; add.u64 %r200,%r200,%r202; st.u64 [%frame+184],%r200; st.u32 [%frame+176],%r375; setp.gt.s32 %r1100,%r375,7; @ %r1100 bra $L224; add.u32 %r375,%r376,2; add.u64 %r398,%r239,32; mov.u64 %r239,%r237; mov.u64 %r237,%r398; bra $L225; $L224: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1105,[%value_in]; } setp.ne.u32 %r1106,%r1105,0; @ %r1106 bra $L10; ld.u64 %r200,[%frame+184]; ld.u32 %r1107,[%frame+176]; add.u32 %r375,%r1107,1; add.u64 %r237,%frame,16; mov.u64 %r239,%frame; bra $L225; $L223: .loc 1 1760 7 setp.le.s32 %r1108,%r232,0; @ %r1108 bra $L225; setp.le.s32 %r1109,%r232,16; @ %r1109 bra $L272; cvta.const.u64 %r1267,zeroes$4154; $L229: st.u64 [%r239],%r1267; mov.u64 %r1111,16; st.u64 [%r239+8],%r1111; add.u64 %r200,%r200,16; st.u64 [%frame+184],%r200; mov.u32 %r376,%r1266; st.u32 [%frame+176],%r376; setp.gt.s32 %r1112,%r376,7; @ %r1112 bra $L227; add.u64 %r239,%r239,16; bra $L228; $L227: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; 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 %r200,[%frame+184]; ld.u32 %r376,[%frame+176]; mov.u64 %r239,%frame; $L228: add.u32 %r232,%r232,-16; setp.gt.s32 %r1119,%r232,16; @ ! %r1119 bra $L384; add.u32 %r1266,%r376,1; bra $L229; $L384: add.u32 %r375,%r376,1; add.u64 %r377,%r239,16; bra $L226; $L272: mov.u64 %r377,%r237; cvta.const.u64 %r1267,zeroes$4154; $L226: st.u64 [%r239],%r1267; cvt.s64.s32 %r207,%r232; st.u64 [%r239+8],%r207; add.u64 %r200,%r200,%r207; st.u64 [%frame+184],%r200; st.u32 [%frame+176],%r375; setp.gt.s32 %r1121,%r375,7; @ %r1121 bra $L230; add.u32 %r375,%r375,1; add.u64 %r237,%r377,16; mov.u64 %r239,%r377; bra $L225; $L230: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; 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; ld.u64 %r200,[%frame+184]; ld.u32 %r1128,[%frame+176]; add.u32 %r375,%r1128,1; add.u64 %r237,%frame,16; mov.u64 %r239,%frame; bra $L225; $L219: .loc 1 1762 6 st.u64 [%r237],%r227; mov.u64 %r1129,1; st.u64 [%r237+8],%r1129; st.u64 [%frame+184],%r200; st.u32 [%frame+176],%r374; setp.gt.s32 %r1130,%r374,7; @ %r1130 bra $L231; add.u32 %r375,%r397,2; add.u64 %r237,%r237,32; bra $L225; $L231: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1135,[%value_in]; } setp.ne.u32 %r1136,%r1135,0; @ %r1136 bra $L10; ld.u64 %r200,[%frame+184]; ld.u32 %r1137,[%frame+176]; add.u32 %r375,%r1137,1; add.u64 %r237,%frame,16; mov.u64 %r239,%frame; $L225: .loc 1 1763 5 st.u64 [%r239],%r1303; cvt.s64.s32 %r211,%r27; st.u64 [%r239+8],%r211; add.u64 %r369,%r211,%r200; st.u64 [%frame+184],%r369; st.u32 [%frame+176],%r375; setp.le.s32 %r1139,%r375,7; @ %r1139 bra $L172; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1144,[%value_in]; } setp.ne.u32 %r1145,%r1144,0; @ %r1145 bra $L10; ld.u64 %r369,[%frame+184]; mov.u64 %r237,%frame; $L172: .loc 1 1770 13 and.b32 %r1146,%r229,4; .loc 1 1770 6 setp.eq.u32 %r1147,%r1146,0; @ %r1147 bra $L232; .loc 1 1771 4 sub.u32 %r268,%r230,%r235; setp.le.s32 %r1148,%r268,0; @ %r1148 bra $L232; ld.u32 %r370,[%frame+176]; setp.le.s32 %r1149,%r268,16; @ ! %r1149 bra $L385; cvta.const.u64 %r1260,blanks$4153; bra $L233; $L385: cvta.const.u64 %r1260,blanks$4153; $L236: st.u64 [%r237],%r1260; mov.u64 %r1151,16; st.u64 [%r237+8],%r1151; add.u64 %r369,%r369,16; st.u64 [%frame+184],%r369; add.u32 %r370,%r370,1; st.u32 [%frame+176],%r370; setp.gt.s32 %r1152,%r370,7; @ %r1152 bra $L234; add.u64 %r237,%r237,16; bra $L235; $L234: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1157,[%value_in]; } setp.ne.u32 %r1158,%r1157,0; @ %r1158 bra $L10; ld.u64 %r369,[%frame+184]; ld.u32 %r370,[%frame+176]; mov.u64 %r237,%frame; $L235: add.u32 %r268,%r268,-16; setp.gt.s32 %r1159,%r268,16; @ %r1159 bra $L236; $L233: st.u64 [%r237],%r1260; cvt.s64.s32 %r215,%r268; st.u64 [%r237+8],%r215; add.u64 %r369,%r369,%r215; st.u64 [%frame+184],%r369; add.u32 %r216,%r370,1; st.u32 [%frame+176],%r216; setp.le.s32 %r1161,%r216,7; @ %r1161 bra $L232; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1166,[%value_in]; } setp.ne.u32 %r1167,%r1166,0; @ %r1167 bra $L10; ld.u64 %r369,[%frame+184]; $L232: .loc 1 1774 33 max.s32 %r1168,%r230,%r235; .loc 1 1774 7 add.u32 %r401,%r401,%r1168; .loc 1 1776 3 setp.ne.u64 %r1169,%r369,0; @ %r1169 bra $L237; $L238: mov.u32 %r1170,0; st.u32 [%frame+176],%r1170; mov.u64 %r237,%frame; bra $L5; $L237: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1302; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1175,[%value_in]; } setp.ne.u32 %r1176,%r1175,0; @ ! %r1176 bra $L238; bra $L10; $L11: .loc 1 1784 2 ld.u64 %r1177,[%frame+184]; setp.eq.u64 %r1178,%r1177,0; @ %r1178 bra $L10; add.u64 %r1182,%frame,168; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r403; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1182; call (%value_in),__ssprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1183,[%value_in]; } $L10: .loc 1 1791 31 ld.u16 %r1185,[%r403+16]; and.b16 %r1184,%r1185,64; setp.eq.u16 %r1186,%r1184,0; selp.u32 %r401,%r401,-1,%r1186; bra $L1; $L189: .loc 1 1719 7 st.u64 [%r237],%r244; st.u64 [%r237+8],%r418; add.u64 %r381,%r418,%r369; st.u64 [%frame+184],%r381; ld.u32 %r1188,[%frame+176]; add.u32 %r382,%r1188,1; st.u32 [%frame+176],%r382; setp.gt.s32 %r1189,%r382,7; @ %r1189 bra $L190; add.u64 %r238,%r237,16; bra $L192; $L58: .loc 1 943 9 mov.u32 %r229,%r228; mov.u32 %r231,0; mov.u32 %r180,%r231; bra $L146; $L67: ld.s8 %r391,[%frame+218]; .loc 1 1565 14 setp.ne.u32 %r1190,%r231,-1; @ %r1190 bra $L239; mov.u32 %r228,%r191; bra $L139; $L273: .loc 1 1882 5 mov.u32 %r38,%r231; $L84: .loc 1 1883 15 cvt.s64.s32 %r1191,%r38; .loc 1 1883 6 add.u64 %r296,%r227,%r1191; bra $L240; $L83: .loc 1 1880 11 mov.u32 %r1194,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r60; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r1194; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r231; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r1311; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r1310; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r1309; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r1202,[%value_in]; } mov.u64 %r227,%r1202; .loc 1 1882 5 setp.ne.u32 %r1268,%r361,71; @ %r1268 bra $L273; mov.u32 %r400,%r231; bra $L241; $L82: .loc 1 1880 11 mov.u32 %r1206,3; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r60; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r1206; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r231; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r1311; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r1310; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r1309; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r1214,[%value_in]; } mov.u64 %r227,%r1214; .loc 1 1883 15 cvt.s64.s32 %r143,%r231; .loc 1 1885 7 ld.s8 %r1217,[%r1214]; cvt.u16.u32 %r1216,%r1217; set.u32.eq.u16 %r1218,%r1216,48; neg.s32 %r1219,%r1218; .loc 1 1885 23 set.u32.neu.f64 %r1221,%r60,0d0000000000000000; neg.s32 %r1222,%r1221; cvt.u16.u32 %r1224,%r1219; cvt.u16.u32 %r1225,%r1222; and.b16 %r1223,%r1224,%r1225; cvt.u32.u16 %r1226,%r1223; cvt.u16.u8 %r1227,%r1226; setp.ne.u16 %r1228,%r1227,0; @ ! %r1228 bra $L386; bra $L242; $L208: .loc 1 1748 6 sub.u32 %r336,%r272,%r180; sub.u32 %r186,%r272,%r179; min.s32 %r276,%r186,%r336; bra $L211; $L239: .loc 1 1566 11 and.b32 %r229,%r191,-129; .loc 1 1574 28 set.u32.ne.u32 %r1230,%r231,0; neg.s32 %r1231,%r1230; .loc 1 1574 15 set.u32.ne.u64 %r1233,%r233,0; neg.s32 %r1234,%r1233; .loc 1 1574 20 cvt.u16.u32 %r1236,%r1231; cvt.u16.u32 %r1237,%r1234; or.b16 %r1235,%r1236,%r1237; .loc 1 1574 7 cvt.u32.u16 %r1238,%r1235; cvt.u16.u8 %r1239,%r1238; setp.ne.u16 %r1240,%r1239,0; @ %r1240 bra $L274; mov.u32 %r231,0; mov.u32 %r236,%r231; .loc 1 1573 7 add.u64 %r227,%frame,168; bra $L143; $L244: .loc 1 1883 15 cvt.s64.s32 %r1241,%r400; .loc 1 1883 6 add.u64 %r296,%r227,%r1241; setp.ne.u32 %r1268,%r361,71; bra $L240; $L241: .loc 1 1882 31 and.b32 %r1242,%r228,1; setp.ne.u32 %r1243,%r1242,0; @ %r1243 bra $L244; bra $L387; $L80: .loc 1 1315 10 or.b32 %r229,%r228,256; .loc 1 1814 6 mov.b64 %r1244,%r253; shr.u64 %r1245,%r1244,32; .loc 1 1814 5 cvt.u32.u64 %r1246,%r1245; setp.lt.s32 %r1247,%r1246,0; @ %r1247 bra $L275; .loc 1 1880 11 mov.u32 %r1251,1; mov.u32 %r1250,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r402; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r253; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r1250; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r1251; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r1311; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r1310; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r1309; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r1258,[%value_in]; } mov.u64 %r227,%r1258; mov.f64 %r60,%r253; .loc 1 1312 10 mov.u32 %r231,%r1251; mov.u32 %r400,%r231; .loc 1 1818 9 mov.u32 %r274,0; bra $L241; $L1: .loc 1 1793 1 mov.u32 %value,%r401; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } lib_a-swab.o/ 1591654536 399 399 100644 1653 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r33; .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 35 3 setp.le.s64 %r43,%r42,1; @ %r43 bra $L5; mov.u64 %r33,0; .loc 1 35 12 mov.u64 %r30,1; $L3: .loc 1 37 12 add.u64 %r44,%r40,%r30; .loc 1 38 12 add.u64 %r45,%r40,%r33; ld.s8 %r29,[%r45]; .loc 1 39 17 add.u64 %r46,%r41,%r33; ld.u8 %r47,[%r44]; st.u8 [%r46],%r47; .loc 1 40 17 add.u64 %r48,%r41,%r30; cvt.u32.u32 %r49,%r29; st.u8 [%r48],%r49; .loc 1 35 35 add.u64 %r30,%r30,2; add.u64 %r33,%r33,2; .loc 1 35 3 setp.gt.s64 %r50,%r42,%r30; @ %r50 bra $L3; add.u64 %r51,%r42,-2; and.b64 %r53,%r51,-2; add.u64 %r32,%r53,3; bra $L2; $L5: .loc 1 35 12 mov.u64 %r32,1; $L2: .loc 1 42 6 setp.ne.u64 %r54,%r42,%r32; @ %r54 bra $L1; .loc 1 43 15 add.u64 %r55,%r41,%r42; add.u64 %r56,%r55,-1; mov.u32 %r57,0; st.u8 [%r56],%r57; $L1: .loc 1 44 1 ret; } /866 1591654536 399 399 100644 7292 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: __get_current_time_locale .visible .func (.param .u64 %value_out) __get_current_time_locale; .file 1 "../../../../../../newlib/libc/locale/timelocal.c" // BEGIN GLOBAL FUNCTION DECL: __time_load_locale .visible .func (.param .u32 %value_out) __time_load_locale (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2); // BEGIN GLOBAL FUNCTION DECL: __part_load_locale .extern .func (.param .u32 %value_out) __part_load_locale (.param .u64 %in_ar0, .param .u64 %in_ar1, .param .u64 %in_ar2, .param .u64 %in_ar3, .param .u32 %in_ar4, .param .u32 %in_ar5, .param .u64 %in_ar6); // BEGIN VAR DEF: _time_locale .global .align 8 .u64 _time_locale[63]; // BEGIN VAR DEF: $LC3 .const .align 1 .u8 $LC3[4] = {77,97,114,0 }; // BEGIN VAR DEF: $LC0 .const .align 1 .u8 $LC0[8] = {76,67,95,84,73,77,69,0 }; // BEGIN VAR DEF: $LC1 .const .align 1 .u8 $LC1[4] = {74,97,110,0 }; // BEGIN VAR DEF: $LC2 .const .align 1 .u8 $LC2[4] = {70,101,98,0 }; // BEGIN VAR DEF: $LC4 .const .align 1 .u8 $LC4[4] = {65,112,114,0 }; // BEGIN VAR DEF: $LC5 .const .align 1 .u8 $LC5[4] = {77,97,121,0 }; // BEGIN VAR DEF: $LC6 .const .align 1 .u8 $LC6[4] = {74,117,110,0 }; // BEGIN VAR DEF: $LC7 .const .align 1 .u8 $LC7[4] = {74,117,108,0 }; // BEGIN VAR DEF: $LC8 .const .align 1 .u8 $LC8[4] = {65,117,103,0 }; // BEGIN VAR DEF: $LC9 .const .align 1 .u8 $LC9[4] = {83,101,112,0 }; // BEGIN VAR DEF: $LC10 .const .align 1 .u8 $LC10[4] = {79,99,116,0 }; // BEGIN VAR DEF: $LC11 .const .align 1 .u8 $LC11[4] = {78,111,118,0 }; // BEGIN VAR DEF: $LC12 .const .align 1 .u8 $LC12[4] = {68,101,99,0 }; // BEGIN VAR DEF: $LC13 .const .align 1 .u8 $LC13[8] = {74,97,110,117,97,114,121,0 }; // BEGIN VAR DEF: $LC14 .const .align 1 .u8 $LC14[9] = {70,101,98,114,117,97,114,121,0 }; // BEGIN VAR DEF: $LC15 .const .align 1 .u8 $LC15[6] = {77,97,114,99,104,0 }; // BEGIN VAR DEF: $LC16 .const .align 1 .u8 $LC16[6] = {65,112,114,105,108,0 }; // BEGIN VAR DEF: $LC17 .const .align 1 .u8 $LC17[5] = {74,117,110,101,0 }; // BEGIN VAR DEF: $LC18 .const .align 1 .u8 $LC18[5] = {74,117,108,121,0 }; // BEGIN VAR DEF: $LC19 .const .align 1 .u8 $LC19[7] = {65,117,103,117,115,116,0 }; // BEGIN VAR DEF: $LC20 .const .align 1 .u8 $LC20[10] = {83,101,112,116,101,109,98,101,114,0 }; // BEGIN VAR DEF: $LC21 .const .align 1 .u8 $LC21[8] = {79,99,116,111,98,101,114,0 }; // BEGIN VAR DEF: $LC22 .const .align 1 .u8 $LC22[9] = {78,111,118,101,109,98,101,114,0 }; // BEGIN VAR DEF: $LC23 .const .align 1 .u8 $LC23[9] = {68,101,99,101,109,98,101,114,0 }; // BEGIN VAR DEF: $LC24 .const .align 1 .u8 $LC24[4] = {83,117,110,0 }; // BEGIN VAR DEF: $LC25 .const .align 1 .u8 $LC25[4] = {77,111,110,0 }; // BEGIN VAR DEF: $LC26 .const .align 1 .u8 $LC26[4] = {84,117,101,0 }; // BEGIN VAR DEF: $LC27 .const .align 1 .u8 $LC27[4] = {87,101,100,0 }; // BEGIN VAR DEF: $LC28 .const .align 1 .u8 $LC28[4] = {84,104,117,0 }; // BEGIN VAR DEF: $LC29 .const .align 1 .u8 $LC29[4] = {70,114,105,0 }; // BEGIN VAR DEF: $LC30 .const .align 1 .u8 $LC30[4] = {83,97,116,0 }; // BEGIN VAR DEF: $LC31 .const .align 1 .u8 $LC31[7] = {83,117,110,100,97,121,0 }; // BEGIN VAR DEF: $LC32 .const .align 1 .u8 $LC32[7] = {77,111,110,100,97,121,0 }; // BEGIN VAR DEF: $LC33 .const .align 1 .u8 $LC33[8] = {84,117,101,115,100,97,121,0 }; // BEGIN VAR DEF: $LC34 .const .align 1 .u8 $LC34[10] = {87,101,100,110,101,115,100,97,121,0 }; // BEGIN VAR DEF: $LC35 .const .align 1 .u8 $LC35[9] = {84,104,117,114,115,100,97,121,0 }; // BEGIN VAR DEF: $LC36 .const .align 1 .u8 $LC36[7] = {70,114,105,100,97,121,0 }; // BEGIN VAR DEF: $LC37 .const .align 1 .u8 $LC37[9] = {83,97,116,117,114,100,97,121,0 }; // BEGIN VAR DEF: $LC38 .const .align 1 .u8 $LC38[9] = {37,72,58,37,77,58,37,83,0 }; // BEGIN VAR DEF: $LC39 .const .align 1 .u8 $LC39[9] = {37,109,47,37,100,47,37,121,0 }; // BEGIN VAR DEF: $LC40 .const .align 1 .u8 $LC40[21] = {37,97,32,37,98,32,37,101,32,37,72,58,37,77,58,37,83,32,37,89,0 }; // BEGIN VAR DEF: $LC41 .const .align 1 .u8 $LC41[3] = {65,77,0 }; // BEGIN VAR DEF: $LC42 .const .align 1 .u8 $LC42[3] = {80,77,0 }; // BEGIN VAR DEF: $LC43 .const .align 1 .u8 $LC43[24] = {37,97,32,37,98,32,37,101,32,37,72,58,37,77,58,37,83,32,37,90,32,37,89,0 }; // BEGIN VAR DEF: $LC44 .const .align 1 .u8 $LC44[3] = {109,100,0 }; // BEGIN VAR DEF: $LC45 .const .align 1 .u8 $LC45[12] = {37,73,58,37,77,58,37,83,32,37,112,0 }; // BEGIN VAR DEF: $LC46 .const .align 1 .u8 $LC46[1] = {0 }; // BEGIN VAR DEF: _C_time_locale .const .align 8 .u64 _C_time_locale[63] = {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($LC5),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($LC13),generic($LC14),generic($LC15),generic($LC16),generic($LC5),generic($LC17),generic($LC18),generic($LC19),generic($LC20),generic($LC21),generic($LC22),generic($LC23),generic($LC44),generic($LC45),generic($LC46),generic($LC46),generic($LC46),generic($LC46),generic($LC46) }; // BEGIN VAR DEF: _time_using_locale .global .align 4 .u32 _time_using_locale[1]; // BEGIN GLOBAL FUNCTION DEF: __get_current_time_locale .visible .func (.param .u64 %value_out) __get_current_time_locale { .reg .u64 %value; .reg .u64 %r23; .reg .u32 %r24; .reg .pred %r25; .loc 1 156 3 ld.global.u32 %r24,[_time_using_locale]; setp.ne.u32 %r25,%r24,0; @ %r25 bra $L3; cvta.const.u64 %r23,_C_time_locale; bra $L1; $L3: cvta.global.u64 %r23,_time_locale; $L1: .loc 1 157 1 mov.u64 %value,%r23; st.param.u64 [%value_out],%value; ret; } // BEGIN GLOBAL FUNCTION DEF: __time_load_locale .visible .func (.param .u32 %value_out) __time_load_locale (.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 %r27; .reg .u64 %r28; .reg .u64 %r29; .reg .u32 %r31; .reg .u64 %r32; .reg .u32 %r33; mov.u64 %r23,%ar0; .loc 1 182 8 cvta.global.u64 %r32,_time_locale; mov.u32 %r31,63; cvta.const.u64 %r29,$LC0; mov.u64 %r28,0; cvta.global.u64 %r27,_time_using_locale; { .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 .u64 %out_arg3; st.param.u64 [%out_arg3],%r28; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r29; .param .u32 %out_arg5; st.param.u32 [%out_arg5],%r31; .param .u32 %out_arg6; st.param.u32 [%out_arg6],%r31; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r32; call (%value_in),__part_load_locale,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u32 %r33,[%value_in]; } .loc 1 188 1 mov.u32 %value,%r33; st.param.u32 [%value_out],%value; ret; } lib_a-tolower.o/1591654536 399 399 100644 1081 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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_ptr__ .extern .global .align 8 .u64 __ctype_ptr__[1]; // 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 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u16 %r35; .reg .u16 %r36; .reg .u16 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .pred %r40; .reg .u16 %r42; mov.u32 %r29,%ar0; .loc 1 74 10 cvt.s64.s32 %r30,%r29; ld.global.u64 %r31,[__ctype_ptr__]; add.u64 %r32,%r31,%r30; .loc 1 74 39 ld.u8 %r42,[%r32+1]; mov.u16 %r36,%r42; and.b16 %r35,%r36,3; cvt.u32.u16 %r39,%r35; cvt.s32.s8 %r38,%r39; cvt.u16.u32 %r37,%r38; setp.ne.u16 %r40,%r37,1; @ %r40 bra $L2; add.u32 %r29,%r29,32; $L2: .loc 1 76 1 mov.u32 %value,%r29; st.param.u32 [%value_out],%value; ret; } lib_a-toupper.o/1591654536 399 399 100644 1082 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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_ptr__ .extern .global .align 8 .u64 __ctype_ptr__[1]; // 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 %r29; .reg .u64 %r30; .reg .u64 %r31; .reg .u64 %r32; .reg .u16 %r35; .reg .u16 %r36; .reg .u16 %r37; .reg .u32 %r38; .reg .u32 %r39; .reg .pred %r40; .reg .u16 %r42; mov.u32 %r29,%ar0; .loc 1 73 10 cvt.s64.s32 %r30,%r29; ld.global.u64 %r31,[__ctype_ptr__]; add.u64 %r32,%r31,%r30; .loc 1 73 38 ld.u8 %r42,[%r32+1]; mov.u16 %r36,%r42; and.b16 %r35,%r36,3; cvt.u32.u16 %r39,%r35; cvt.s32.s8 %r38,%r39; cvt.u16.u32 %r37,%r38; setp.ne.u16 %r40,%r37,2; @ %r40 bra $L2; add.u32 %r29,%r29,-32; $L2: .loc 1 75 1 mov.u32 %value,%r29; st.param.u32 [%value_out],%value; ret; } /885 1591654536 399 399 100644 704 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 9 10 mov.u64 %value,0; .loc 1 10 1 st.param.u64 [%value_out],%value; ret; } /903 1591654536 399 399 100644 84470 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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: __fpclassifyd .extern .func (.param .u32 %value_out) __fpclassifyd (.param .f64 %in_ar0); // 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$4169 .const .align 1 .u8 zeroes$4169[16] = {48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48 }; // BEGIN VAR DEF: blanks$4168 .const .align 1 .u8 blanks$4168[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 .u64 %r25; .reg .u64 %r36; .reg .u32 %r40; .reg .u32 %r42; .reg .u64 %r56; .reg .f64 %r65; .reg .u32 %r66; .reg .u64 %r68; .reg .u32 %r101; .reg .u32 %r114; .reg .u32 %r115; .reg .u64 %r117; .reg .u32 %r118; .reg .u32 %r122; .reg .u32 %r125; .reg .u64 %r128; .reg .u32 %r129; .reg .u64 %r133; .reg .u32 %r134; .reg .u64 %r137; .reg .u32 %r139; .reg .u32 %r143; .reg .u32 %r149; .reg .u64 %r152; .reg .u32 %r153; .reg .u32 %r155; .reg .u32 %r157; .reg .u64 %r159; .reg .u64 %r164; .reg .u64 %r166; .reg .u64 %r167; .reg .u32 %r168; .reg .u64 %r170; .reg .u32 %r172; .reg .u32 %r174; .reg .u64 %r177; .reg .u32 %r179; .reg .u32 %r182; .reg .u32 %r185; .reg .u32 %r187; .reg .u32 %r189; .reg .u64 %r190; .reg .u32 %r192; .reg .u32 %r194; .reg .u64 %r196; .reg .u32 %r197; .reg .u64 %r202; .reg .u64 %r204; .reg .u64 %r205; .reg .u64 %r209; .reg .u64 %r212; .reg .u64 %r217; .reg .u32 %r218; .reg .u32 %r224; .reg .u64 %r225; .reg .u32 %r226; .reg .u32 %r227; .reg .u64 %r228; .reg .u64 %r229; .reg .u32 %r230; .reg .u32 %r231; .reg .u32 %r232; .reg .u32 %r233; .reg .u32 %r234; .reg .u32 %r235; .reg .u64 %r237; .reg .u32 %r238; .reg .u32 %r239; .reg .u32 %r240; .reg .u64 %r241; .reg .u64 %r242; .reg .u64 %r243; .reg .u32 %r245; .reg .u32 %r246; .reg .u64 %r248; .reg .u32 %r252; .reg .u64 %r253; .reg .u32 %r254; .reg .f64 %r256; .reg .u64 %r258; .reg .u64 %r260; .reg .u32 %r261; .reg .u32 %r263; .reg .u32 %r264; .reg .u64 %r267; .reg .u32 %r269; .reg .u32 %r272; .reg .u32 %r273; .reg .u32 %r274; .reg .u32 %r275; .reg .u32 %r276; .reg .u64 %r277; .reg .u64 %r278; .reg .u32 %r279; .reg .u32 %r280; .reg .u32 %r284; .reg .u64 %r288; .reg .u32 %r289; .reg .u32 %r296; .reg .u64 %r299; .reg .u64 %r306; .reg .u32 %r308; .reg .u32 %r315; .reg .u32 %r316; .reg .u64 %r317; .reg .u64 %r318; .reg .u64 %r319; .reg .u64 %r320; .reg .u64 %r321; .reg .u64 %r322; .reg .u64 %r324; .reg .u64 %r325; .reg .u64 %r326; .reg .u64 %r327; .reg .u64 %r328; .reg .u64 %r329; .reg .u64 %r330; .reg .u64 %r331; .reg .u64 %r333; .reg .u64 %r334; .reg .u64 %r336; .reg .u64 %r338; .reg .u32 %r339; .reg .u64 %r345; .reg .u64 %r348; .reg .u64 %r350; .reg .u32 %r355; .reg .u32 %r356; .reg .u64 %r358; .reg .u64 %r359; .reg .u64 %r361; .reg .u64 %r363; .reg .u32 %r364; .reg .u32 %r367; .reg .u32 %r370; .reg .u32 %r371; .reg .u64 %r372; .reg .u32 %r373; .reg .u32 %r377; .reg .u32 %r378; .reg .u32 %r379; .reg .u64 %r380; .reg .u32 %r382; .reg .u32 %r383; .reg .u64 %r384; .reg .u32 %r385; .reg .u32 %r386; .reg .u32 %r387; .reg .u32 %r388; .reg .u32 %r389; .reg .u32 %r395; .reg .u32 %r396; .reg .u32 %r399; .reg .u32 %r401; .reg .u64 %r402; .reg .u32 %r406; .reg .u32 %r407; .reg .u64 %r408; .reg .u64 %r409; .reg .u64 %r410; .reg .u64 %r411; .reg .u64 %r422; .reg .u64 %r424; .reg .pred %r425; .reg .u32 %r426; .reg .pred %r427; .reg .u16 %r429; .reg .u16 %r430; .reg .pred %r431; .reg .u16 %r432; .reg .u32 %r435; .reg .u32 %r436; .reg .u16 %r437; .reg .u16 %r438; .reg .pred %r439; .reg .u64 %r440; .reg .pred %r441; .reg .u32 %r444; .reg .pred %r445; .reg .u16 %r446; .reg .u16 %r447; .reg .pred %r448; .reg .u16 %r449; .reg .pred %r450; .reg .u32 %r455; .reg .u64 %r456; .reg .u32 %r457; .reg .u16 %r459; .reg .u32 %r460; .reg .u32 %r461; .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 .u16 %r473; .reg .u32 %r474; .reg .u32 %r475; .reg .u32 %r478; .reg .u32 %r479; .reg .u16 %r480; .reg .u16 %r481; .reg .u16 %r482; .reg .u32 %r483; .reg .u16 %r484; .reg .pred %r485; .reg .u64 %r486; .reg .pred %r487; .reg .u64 %r488; .reg .u64 %r489; .reg .u32 %r490; .reg .pred %r491; .reg .u32 %r496; .reg .pred %r497; .reg .pred %r498; .reg .u32 %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 .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 .pred %r530; .reg .pred %r531; .reg .pred %r532; .reg .pred %r533; .reg .pred %r534; .reg .pred %r535; .reg .u32 %r536; .reg .pred %r537; .reg .pred %r538; .reg .pred %r539; .reg .pred %r540; .reg .u32 %r541; .reg .u32 %r543; .reg .u32 %r544; .reg .u32 %r545; .reg .pred %r546; .reg .u32 %r548; .reg .u32 %r549; .reg .u32 %r550; .reg .pred %r553; .reg .u16 %r554; .reg .pred %r555; .reg .u32 %r556; .reg .u32 %r557; .reg .pred %r558; .reg .u32 %r559; .reg .u32 %r560; .reg .pred %r561; .reg .pred %r562; .reg .u32 %r563; .reg .u32 %r564; .reg .pred %r565; .reg .u32 %r566; .reg .pred %r567; .reg .u32 %r568; .reg .pred %r569; .reg .pred %r574; .reg .u32 %r575; .reg .pred %r576; .reg .u32 %r577; .reg .u64 %r578; .reg .u32 %r582; .reg .pred %r583; .reg .pred %r584; .reg .u32 %r585; .reg .pred %r586; .reg .u32 %r588; .reg .pred %r589; .reg .pred %r590; .reg .pred %r591; .reg .u32 %r593; .reg .u32 %r594; .reg .u32 %r596; .reg .u32 %r597; .reg .u16 %r598; .reg .u16 %r599; .reg .u16 %r600; .reg .u32 %r601; .reg .u16 %r602; .reg .pred %r603; .reg .u64 %r604; .reg .u64 %r605; .reg .u32 %r606; .reg .pred %r607; .reg .pred %r608; .reg .pred %r609; .reg .u32 %r612; .reg .u64 %r620; .reg .u64 %r621; .reg .u64 %r622; .reg .u32 %r623; .reg .u64 %r624; .reg .u64 %r625; .reg .pred %r626; .reg .u64 %r627; .reg .u32 %r628; .reg .pred %r629; .reg .pred %r630; .reg .u64 %r631; .reg .u32 %r634; .reg .u32 %r635; .reg .u32 %r637; .reg .u32 %r638; .reg .u16 %r639; .reg .u16 %r640; .reg .u16 %r641; .reg .u32 %r642; .reg .u16 %r643; .reg .pred %r644; .reg .pred %r645; .reg .pred %r646; .reg .u32 %r647; .reg .u32 %r648; .reg .pred %r649; .reg .u32 %r651; .reg .u16 %r653; .reg .u16 %r654; .reg .u32 %r655; .reg .pred %r656; .reg .u16 %r658; .reg .u16 %r659; .reg .u32 %r660; .reg .pred %r664; .reg .u32 %r666; .reg .pred %r669; .reg .u64 %r675; .reg .u64 %r676; .reg .u64 %r678; .reg .u32 %r679; .reg .u16 %r681; .reg .u16 %r682; .reg .u32 %r683; .reg .pred %r684; .reg .pred %r685; .reg .u32 %r686; .reg .pred %r687; .reg .pred %r688; .reg .u32 %r689; .reg .pred %r690; .reg .pred %r691; .reg .u32 %r692; .reg .pred %r693; .reg .pred %r694; .reg .u32 %r695; .reg .pred %r696; .reg .u32 %r697; .reg .pred %r698; .reg .u32 %r699; .reg .u64 %r700; .reg .u32 %r701; .reg .pred %r702; .reg .u64 %r703; .reg .u32 %r704; .reg .pred %r705; .reg .u64 %r706; .reg .u32 %r707; .reg .pred %r708; .reg .pred %r709; .reg .u32 %r710; .reg .u32 %r711; .reg .pred %r712; .reg .pred %r713; .reg .u32 %r714; .reg .u32 %r715; .reg .pred %r716; .reg .u32 %r717; .reg .pred %r718; .reg .u32 %r719; .reg .pred %r720; .reg .u16 %r721; .reg .u32 %r722; .reg .u32 %r723; .reg .u32 %r724; .reg .pred %r725; .reg .pred %r726; .reg .u32 %r728; .reg .u64 %r730; .reg .u64 %r731; .reg .pred %r732; .reg .u64 %r733; .reg .u32 %r734; .reg .u64 %r736; .reg .pred %r737; .reg .u32 %r738; .reg .u32 %r739; .reg .pred %r740; .reg .pred %r741; .reg .u32 %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 %r766; .reg .u32 %r767; .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 .u16 %r777; .reg .pred %r778; .reg .pred %r780; .reg .u16 %r782; .reg .u16 %r783; .reg .u16 %r785; .reg .u32 %r787; .reg .pred %r789; .reg .u16 %r791; .reg .u32 %r792; .reg .u32 %r793; .reg .u16 %r795; .reg .u16 %r796; .reg .u16 %r798; .reg .u16 %r799; .reg .u32 %r801; .reg .u16 %r802; .reg .pred %r803; .reg .u64 %r806; .reg .u32 %r807; .reg .u64 %r810; .reg .u16 %r813; .reg .u16 %r814; .reg .u32 %r815; .reg .u64 %r817; .reg .u16 %r819; .reg .u16 %r820; .reg .u32 %r821; .reg .u64 %r825; .reg .u64 %r826; .reg .u64 %r827; .reg .u32 %r828; .reg .pred %r829; .reg .u64 %r832; .reg .pred %r833; .reg .pred %r834; .reg .u32 %r835; .reg .pred %r836; .reg .u32 %r837; .reg .pred %r838; .reg .u32 %r839; .reg .pred %r840; .reg .pred %r842; .reg .pred %r843; .reg .pred %r844; .reg .u64 %r846; .reg .pred %r847; .reg .u32 %r852; .reg .pred %r853; .reg .pred %r854; .reg .pred %r856; .reg .u32 %r861; .reg .pred %r862; .reg .u16 %r863; .reg .u32 %r864; .reg .pred %r865; .reg .u64 %r867; .reg .u32 %r868; .reg .pred %r869; .reg .u32 %r874; .reg .pred %r875; .reg .u64 %r878; .reg .u32 %r879; .reg .pred %r880; .reg .u32 %r885; .reg .pred %r886; .reg .pred %r887; .reg .pred %r888; .reg .pred %r889; .reg .u64 %r891; .reg .pred %r892; .reg .u32 %r897; .reg .pred %r898; .reg .pred %r899; .reg .pred %r901; .reg .u32 %r906; .reg .pred %r907; .reg .pred %r908; .reg .pred %r909; .reg .u64 %r911; .reg .pred %r912; .reg .u32 %r917; .reg .pred %r918; .reg .pred %r919; .reg .pred %r921; .reg .u32 %r926; .reg .pred %r927; .reg .u32 %r928; .reg .pred %r929; .reg .u32 %r930; .reg .pred %r931; .reg .u32 %r936; .reg .pred %r937; .reg .pred %r938; .reg .pred %r939; .reg .u64 %r940; .reg .u64 %r941; .reg .u64 %r942; .reg .u32 %r943; .reg .pred %r944; .reg .u32 %r949; .reg .pred %r950; .reg .u32 %r951; .reg .pred %r952; .reg .u32 %r953; .reg .pred %r954; .reg .u64 %r955; .reg .u32 %r956; .reg .pred %r957; .reg .u32 %r962; .reg .pred %r963; .reg .pred %r964; .reg .pred %r965; .reg .u64 %r967; .reg .pred %r968; .reg .u32 %r973; .reg .pred %r974; .reg .pred %r975; .reg .pred %r977; .reg .u32 %r982; .reg .pred %r983; .reg .pred %r984; .reg .u64 %r985; .reg .u64 %r986; .reg .u32 %r987; .reg .pred %r988; .reg .u32 %r993; .reg .pred %r994; .reg .u32 %r995; .reg .pred %r996; .reg .u32 %r997; .reg .pred %r998; .reg .u32 %r999; .reg .pred %r1000; .reg .u32 %r1005; .reg .pred %r1006; .reg .pred %r1007; .reg .pred %r1008; .reg .u64 %r1010; .reg .pred %r1011; .reg .u32 %r1016; .reg .pred %r1017; .reg .pred %r1018; .reg .pred %r1020; .reg .u32 %r1025; .reg .pred %r1026; .reg .pred %r1027; .reg .u32 %r1032; .reg .pred %r1033; .reg .pred %r1034; .reg .u32 %r1035; .reg .pred %r1036; .reg .u32 %r1041; .reg .pred %r1042; .reg .pred %r1043; .reg .pred %r1044; .reg .u64 %r1046; .reg .pred %r1047; .reg .u32 %r1052; .reg .pred %r1053; .reg .pred %r1054; .reg .pred %r1056; .reg .u32 %r1061; .reg .pred %r1062; .reg .pred %r1063; .reg .u32 %r1064; .reg .pred %r1065; .reg .u32 %r1066; .reg .pred %r1067; .reg .u32 %r1072; .reg .pred %r1073; .reg .pred %r1074; .reg .u64 %r1075; .reg .u64 %r1076; .reg .u32 %r1077; .reg .pred %r1078; .reg .u32 %r1083; .reg .pred %r1084; .reg .u32 %r1085; .reg .pred %r1086; .reg .pred %r1087; .reg .u64 %r1089; .reg .pred %r1090; .reg .u32 %r1095; .reg .pred %r1096; .reg .pred %r1097; .reg .pred %r1099; .reg .u32 %r1104; .reg .pred %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 .u32 %r1133; .reg .pred %r1134; .reg .pred %r1135; .reg .u64 %r1137; .reg .pred %r1138; .reg .u32 %r1143; .reg .pred %r1144; .reg .pred %r1145; .reg .pred %r1147; .reg .u32 %r1152; .reg .pred %r1153; .reg .u32 %r1154; .reg .u64 %r1155; .reg .pred %r1156; .reg .u32 %r1161; .reg .pred %r1162; .reg .u32 %r1163; .reg .pred %r1165; .reg .u32 %r1170; .reg .pred %r1171; .reg .u32 %r1172; .reg .pred %r1173; .reg .pred %r1174; .reg .pred %r1175; .reg .u64 %r1177; .reg .pred %r1178; .reg .u32 %r1183; .reg .pred %r1184; .reg .pred %r1185; .reg .pred %r1187; .reg .u32 %r1192; .reg .pred %r1193; .reg .u32 %r1194; .reg .pred %r1195; .reg .u32 %r1196; .reg .u32 %r1201; .reg .pred %r1202; .reg .u64 %r1203; .reg .pred %r1204; .reg .u64 %r1208; .reg .u32 %r1209; .reg .u16 %r1210; .reg .u16 %r1211; .reg .pred %r1212; .reg .u32 %r1214; .reg .pred %r1215; .reg .pred %r1216; .reg .u64 %r1217; .reg .u32 %r1220; .reg .u64 %r1228; .reg .u32 %r1232; .reg .u64 %r1240; .reg .u16 %r1242; .reg .u32 %r1243; .reg .u32 %r1244; .reg .u32 %r1245; .reg .u32 %r1247; .reg .u32 %r1248; .reg .u16 %r1249; .reg .u16 %r1250; .reg .u16 %r1251; .reg .u32 %r1252; .reg .u16 %r1253; .reg .pred %r1254; .reg .u32 %r1256; .reg .u32 %r1257; .reg .u32 %r1259; .reg .u32 %r1260; .reg .u16 %r1261; .reg .u16 %r1262; .reg .u16 %r1263; .reg .u32 %r1264; .reg .u16 %r1265; .reg .pred %r1266; .reg .u64 %r1267; .reg .u32 %r1268; .reg .pred %r1269; .reg .u64 %r1270; .reg .u64 %r1271; .reg .u32 %r1272; .reg .pred %r1273; .reg .u32 %r1276; .reg .u32 %r1277; .reg .u64 %r1284; .reg .pred %r1285; .reg .u32 %r1287; .reg .u64 %r1290; .reg .pred %r1291; .reg .u32 %r1292; .reg .pred %r1293; .reg .u64 %r1294; .reg .u32 %r1327; .reg .u64 %r1328; .reg .u64 %r1329; .reg .u64 %r1330; .reg .u64 %r1331; .reg .u64 %r1332; .reg .u64 %r1333; .reg .u64 %r1334; .reg .u64 %r1335; .reg .u64 %r1336; .reg .u64 %r1337; mov.u64 %r408,%ar0; mov.u64 %r409,%ar1; mov.u64 %r410,%ar2; mov.u64 %r411,%ar3; .loc 1 696 24 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; call (%value_in),_localeconv_r,(%out_arg1); ld.param.u64 %r422,[%value_in]; } .loc 1 696 8 ld.u64 %r248,[%r422]; .loc 1 697 20 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r248; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r424,[%value_in]; } .loc 1 859 2 setp.eq.u64 %r425,%r408,0; @ %r425 bra $L2; ld.u32 %r426,[%r408+80]; setp.ne.u32 %r427,%r426,0; @ %r427 bra $L2; { .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; call __sinit,(%out_arg1); } $L2: .loc 1 862 2 ld.s16 %r24,[%r409+16]; cvt.u16.u32 %r430,%r24; and.b16 %r429,%r430,8192; setp.ne.u16 %r431,%r429,0; @ %r431 bra $L3; or.b16 %r432,%r430,8192; cvt.s32.s16 %r24,%r432; st.u16 [%r409+16],%r432; ld.u32 %r436,[%r409+172]; and.b32 %r435,%r436,-8193; st.u32 [%r409+172],%r435; $L3: .loc 1 865 5 cvt.u16.u32 %r438,%r24; and.b16 %r437,%r438,8; setp.eq.u16 %r439,%r437,0; @ %r439 bra $L4; .loc 1 865 6 ld.u64 %r440,[%r409+24]; setp.ne.u64 %r441,%r440,0; @ %r441 bra $L5; $L4: { .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),__swsetup_r,(%out_arg1,%out_arg2); ld.param.u32 %r444,[%value_in]; } setp.eq.u32 %r445,%r444,0; @ %r445 bra $L6; $L243: .loc 1 867 10 mov.u32 %r407,-1; bra $L1; $L6: ld.s16 %r24,[%r409+16]; $L5: .loc 1 872 5 cvt.u16.u32 %r447,%r24; and.b16 %r446,%r447,26; setp.ne.u16 %r448,%r446,10; @ %r448 bra $L8; .loc 1 872 60 ld.u16 %r449,[%r409+18]; setp.lt.s16 %r450,%r449,0; @ %r450 bra $L8; .loc 1 875 11 { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r410; .param .u64 %out_arg4; st.param.u64 [%out_arg4],%r411; call (%value_in),__sbprintf,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r455,[%value_in]; } mov.u32 %r407,%r455; bra $L1; $L8: .loc 1 894 14 st.u64 [%frame+168],%frame; .loc 1 895 16 mov.u64 %r456,0; st.u64 [%frame+184],%r456; .loc 1 896 17 cvt.u32.u64 %r457,%r456; st.u32 [%frame+176],%r457; .loc 1 707 6 cvt.u32.u64 %r272,%r456; .loc 1 699 42 mov.f64 %r256,0d0000000000000000; .loc 1 894 21 mov.u64 %r241,%frame; .loc 1 718 8 mov.u64 %r25,%r456; .loc 1 702 6 cvt.u32.u64 %r234,%r25; .loc 1 898 6 cvt.u32.u64 %r407,%r25; .loc 1 929 4 add.u64 %r1328,%frame,168; .loc 1 1763 5 add.u64 %r1329,%frame,200; .loc 1 1694 4 add.u64 %r1330,%frame,216; .loc 1 1692 4 add.u64 %r1331,%frame,218; .loc 1 1917 4 add.u64 %r1332,%frame,199; add.u64 %r1333,%frame,202; add.u64 %r1334,%frame,201; .loc 1 1880 11 add.u64 %r1335,%frame,192; add.u64 %r1336,%frame,208; add.u64 %r1337,%frame,212; $L9: .loc 1 925 24 ld.s8 %r252,[%r410]; .loc 1 925 37 cvt.u16.u32 %r459,%r252; set.u32.ne.u16 %r460,%r459,0; neg.s32 %r461,%r460; set.u32.ne.u16 %r464,%r459,37; neg.s32 %r465,%r464; cvt.u16.u32 %r467,%r461; cvt.u16.u32 %r468,%r465; and.b16 %r466,%r467,%r468; .loc 1 925 23 cvt.u32.u16 %r469,%r466; cvt.u16.u8 %r470,%r469; setp.eq.u16 %r471,%r470,0; @ %r471 bra $L252; mov.u64 %r225,%r410; bra $L11; $L253: mov.u64 %r225,%r253; $L11: .loc 1 926 25 add.u64 %r253,%r225,1; .loc 1 925 24 ld.s8 %r252,[%r253]; .loc 1 925 37 cvt.u16.u32 %r473,%r252; set.u32.ne.u16 %r474,%r473,0; neg.s32 %r475,%r474; set.u32.ne.u16 %r478,%r473,37; neg.s32 %r479,%r478; cvt.u16.u32 %r481,%r475; cvt.u16.u32 %r482,%r479; and.b16 %r480,%r481,%r482; .loc 1 925 23 cvt.u32.u16 %r483,%r480; cvt.u16.u8 %r484,%r483; setp.ne.u16 %r485,%r484,0; @ %r485 bra $L253; .loc 1 928 16 sub.u64 %r486,%r253,%r410; .loc 1 928 10 cvt.u32.u64 %r254,%r486; .loc 1 928 6 setp.eq.u32 %r487,%r254,0; @ %r487 bra $L10; .loc 1 929 4 st.u64 [%r241],%r410; cvt.s64.s32 %r36,%r254; st.u64 [%r241+8],%r36; ld.u64 %r489,[%frame+184]; add.u64 %r488,%r489,%r36; st.u64 [%frame+184],%r488; ld.u32 %r490,[%frame+176]; add.u32 %r40,%r490,1; st.u32 [%frame+176],%r40; setp.gt.s32 %r491,%r40,7; @ %r491 bra $L12; add.u64 %r241,%r241,16; bra $L13; $L12: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r496,[%value_in]; } setp.ne.u32 %r497,%r496,0; @ %r497 bra $L14; mov.u64 %r241,%frame; $L13: .loc 1 930 8 add.u32 %r407,%r407,%r254; ld.s8 %r252,[%r225+1]; bra $L10; $L252: .loc 1 925 23 mov.u64 %r253,%r410; $L10: .loc 1 936 20 setp.eq.u32 %r498,%r252,0; @ %r498 bra $L15; .loc 1 940 6 add.u64 %r410,%r253,1; .loc 1 946 8 mov.u32 %r499,0; st.u8 [%frame+218],%r499; ld.s8 %r399,[%r253+1]; mov.u32 %r227,0; mov.u32 %r315,%r227; .loc 1 945 8 mov.u32 %r233,-1; .loc 1 944 9 mov.u32 %r232,%r227; .loc 1 942 9 mov.u32 %r230,%r227; .loc 1 1071 6 mov.u32 %r1327,%r227; bra $L16; $L255: .loc 1 1018 10 mov.u64 %r411,%r338; $L16: .loc 1 958 18 add.u64 %r410,%r410,1; .loc 1 958 12 mov.u32 %r226,%r399; $L17: setp.eq.u32 %r500,%r226,85; @ %r500 bra $L18; setp.gt.s32 %r501,%r226,85; @ %r501 bra $L19; setp.eq.u32 %r502,%r226,48; @ %r502 bra $L20; setp.gt.s32 %r503,%r226,48; @ %r503 bra $L21; setp.eq.u32 %r504,%r226,42; @ %r504 bra $L22; setp.gt.s32 %r505,%r226,42; @ %r505 bra $L23; setp.eq.u32 %r506,%r226,32; @ %r506 bra $L24; setp.eq.u32 %r507,%r226,35; @ %r507 bra $L25; bra $L26; $L23: setp.eq.u32 %r508,%r226,45; @ %r508 bra $L27; setp.eq.u32 %r509,%r226,46; @ %r509 bra $L28; setp.eq.u32 %r510,%r226,43; @ ! %r510 bra $L26; bra $L29; $L21: setp.eq.u32 %r511,%r226,69; @ %r511 bra $L30; setp.gt.s32 %r512,%r226,69; @ %r512 bra $L31; setp.le.s32 %r513,%r226,57; @ %r513 bra $L32; setp.eq.u32 %r514,%r226,68; @ %r514 bra $L33; bra $L26; $L31: setp.eq.u32 %r515,%r226,76; @ %r515 bra $L34; setp.eq.u32 %r516,%r226,79; @ %r516 bra $L35; setp.eq.u32 %r517,%r226,71; @ ! %r517 bra $L26; bra $L30; $L19: setp.eq.u32 %r518,%r226,108; @ %r518 bra $L36; setp.gt.s32 %r519,%r226,108; @ %r519 bra $L37; setp.gt.s32 %r520,%r226,103; @ %r520 bra $L38; setp.ge.s32 %r521,%r226,101; @ %r521 bra $L30; setp.eq.u32 %r522,%r226,99; @ %r522 bra $L39; setp.gt.s32 %r523,%r226,99; @ %r523 bra $L40; setp.eq.u32 %r524,%r226,88; @ %r524 bra $L41; bra $L26; $L38: setp.eq.u32 %r525,%r226,104; @ %r525 bra $L42; setp.eq.u32 %r526,%r226,105; @ %r526 bra $L40; bra $L26; $L37: setp.eq.u32 %r527,%r226,113; @ %r527 bra $L43; setp.gt.s32 %r528,%r226,113; @ %r528 bra $L44; setp.eq.u32 %r529,%r226,111; @ %r529 bra $L45; setp.gt.s32 %r530,%r226,111; @ %r530 bra $L46; setp.eq.u32 %r531,%r226,110; @ %r531 bra $L47; bra $L26; $L44: setp.eq.u32 %r532,%r226,117; @ %r532 bra $L48; setp.eq.u32 %r533,%r226,120; @ %r533 bra $L49; setp.eq.u32 %r534,%r226,115; @ ! %r534 bra $L26; bra $L50; $L27: ld.s8 %r399,[%r410]; bra $L51; $L49: setp.eq.u32 %r535,%r227,0; @ %r535 bra $L52; cvt.u32.u32 %r536,%r315; st.u8 [%frame+218],%r536; $L52: .loc 1 1545 10 cvta.const.u64 %r25,$LC5; bra $L53; $L24: ld.s8 %r399,[%r410]; .loc 1 975 7 setp.eq.u32 %r537,%r315,0; selp.u32 %r227,1,%r227,%r537; selp.u32 %r315,32,%r315,%r537; bra $L16; $L25: .loc 1 979 10 or.b32 %r230,%r230,1; ld.s8 %r399,[%r410]; .loc 1 980 4 bra $L16; $L22: .loc 1 1018 10 add.u64 %r338,%r411,4; ld.u32 %r232,[%r411]; ld.s8 %r399,[%r410]; .loc 1 1022 7 setp.ge.s32 %r538,%r232,0; @ %r538 bra $L255; .loc 1 1024 10 neg.s32 %r232,%r232; .loc 1 1018 10 mov.u64 %r411,%r338; $L51: .loc 1 1027 10 or.b32 %r230,%r230,4; .loc 1 1028 4 bra $L16; $L29: ld.s8 %r399,[%r410]; .loc 1 1031 4 mov.u32 %r227,1; .loc 1 1030 9 mov.u32 %r315,%r226; .loc 1 1031 4 bra $L16; $L28: .loc 1 1033 18 add.u64 %r258,%r410,1; .loc 1 1033 12 ld.s8 %r226,[%r410]; .loc 1 1033 7 setp.eq.u32 %r539,%r226,42; @ %r539 bra $L56; .loc 1 1072 11 add.u32 %r1287,%r226,-48; .loc 1 1072 10 setp.le.u32 %r540,%r1287,9; @ %r540 bra $L57; .loc 1 1033 18 mov.u64 %r410,%r258; .loc 1 1071 6 mov.u32 %r233,%r1327; bra $L17; $L56: ld.u32 %r541,[%r411]; max.s32 %r233,%r541,-1; ld.s8 %r399,[%r410+1]; .loc 1 1063 10 add.u64 %r411,%r411,4; .loc 1 1033 18 mov.u64 %r410,%r258; bra $L16; $L57: mov.u64 %r348,%r258; .loc 1 1071 6 mov.u32 %r233,%r1327; $L59: .loc 1 1073 12 shl.b32 %r543,%r233,2; add.u32 %r544,%r543,%r233; add.u32 %r545,%r544,%r544; .loc 1 1073 7 add.u32 %r233,%r545,%r1287; add.u64 %r410,%r348,1; .loc 1 1074 8 ld.s8 %r226,[%r348]; .loc 1 1072 11 add.u32 %r1287,%r226,-48; mov.u64 %r348,%r410; .loc 1 1072 10 setp.le.u32 %r546,%r1287,9; @ %r546 bra $L59; bra $L17; $L20: .loc 1 1084 10 or.b32 %r230,%r230,128; ld.s8 %r399,[%r410]; .loc 1 1085 4 bra $L16; $L32: mov.u64 %r345,%r410; .loc 1 1088 6 mov.u32 %r232,0; add.u32 %r1287,%r226,-48; $L60: .loc 1 1090 12 shl.b32 %r548,%r232,2; add.u32 %r549,%r548,%r232; add.u32 %r550,%r549,%r549; .loc 1 1090 7 add.u32 %r232,%r1287,%r550; add.u64 %r410,%r410,1; .loc 1 1091 8 ld.s8 %r226,[%r345]; mov.u64 %r345,%r410; .loc 1 1092 13 add.u32 %r1287,%r226,-48; .loc 1 1092 4 setp.le.u32 %r553,%r1287,9; @ %r553 bra $L60; bra $L17; $L34: .loc 1 1108 10 or.b32 %r230,%r230,8; ld.s8 %r399,[%r410]; .loc 1 1109 4 bra $L16; $L42: .loc 1 1118 11 or.b32 %r230,%r230,64; ld.s8 %r399,[%r410]; .loc 1 1119 4 bra $L16; $L36: .loc 1 1122 8 ld.s8 %r399,[%r410]; .loc 1 1122 7 cvt.u16.u32 %r554,%r399; setp.ne.u16 %r555,%r554,108; @ %r555 bra $L61; .loc 1 1124 11 or.b32 %r230,%r230,32; ld.s8 %r399,[%r410+1]; .loc 1 1123 8 add.u64 %r410,%r410,1; bra $L16; $L61: .loc 1 1127 11 or.b32 %r230,%r230,16; bra $L16; $L43: .loc 1 1130 10 or.b32 %r230,%r230,32; ld.s8 %r399,[%r410]; .loc 1 1131 4 bra $L16; $L39: .loc 1 1189 9 ld.u32 %r556,[%r411]; st.u8 [%frame+128],%r556; .loc 1 1192 9 mov.u32 %r557,0; st.u8 [%frame+218],%r557; .loc 1 1189 11 add.u64 %r411,%r411,4; .loc 1 1193 4 mov.u32 %r239,1; .loc 1 1190 10 mov.u32 %r240,%r239; .loc 1 1173 7 add.u64 %r229,%frame,128; .loc 1 1193 4 bra $L62; $L33: setp.eq.u32 %r558,%r227,0; @ %r558 bra $L63; cvt.u32.u32 %r559,%r315; st.u8 [%frame+218],%r559; $L63: .loc 1 1195 10 or.b32 %r187,%r230,16; .loc 1 1199 13 and.b32 %r560,%r230,32; setp.ne.u32 %r561,%r560,0; @ ! %r561 bra $L65; bra $L64; $L40: setp.eq.u32 %r562,%r227,0; @ %r562 bra $L66; cvt.u32.u32 %r563,%r315; st.u8 [%frame+218],%r563; $L66: and.b32 %r564,%r230,32; setp.eq.u32 %r565,%r564,0; @ %r565 bra $L67; mov.u32 %r187,%r230; $L64: add.u64 %r334,%r411,7; and.b64 %r321,%r334,-8; add.u64 %r411,%r321,8; ld.u64 %r56,[%r321]; mov.u64 %r237,%r56; bra $L68; $L67: and.b32 %r566,%r230,16; setp.eq.u32 %r567,%r566,0; @ %r567 bra $L69; mov.u32 %r187,%r230; $L65: add.u64 %r331,%r411,7; and.b64 %r329,%r331,-8; add.u64 %r411,%r329,8; ld.u64 %r56,[%r329]; mov.u64 %r237,%r56; bra $L68; $L69: add.u64 %r361,%r411,4; and.b32 %r568,%r230,64; setp.eq.u32 %r569,%r568,0; @ %r569 bra $L70; ld.s16 %r237,[%r411]; mov.u64 %r56,%r237; mov.u32 %r187,%r230; mov.u64 %r411,%r361; bra $L68; $L70: ld.s32 %r237,[%r411]; mov.u64 %r56,%r237; mov.u32 %r187,%r230; mov.u64 %r411,%r361; $L68: .loc 1 1201 7 setp.ge.s64 %r574,%r56,0; @ %r574 bra $L71; .loc 1 1207 12 neg.s64 %r237,%r237; .loc 1 1208 10 mov.u32 %r575,45; st.u8 [%frame+218],%r575; mov.u32 %r230,%r187; mov.u32 %r395,45; .loc 1 1210 9 mov.u32 %r238,1; bra $L72; $L30: setp.eq.u32 %r576,%r227,0; @ %r576 bra $L73; cvt.u32.u32 %r577,%r315; st.u8 [%frame+218],%r577; $L73: add.u64 %r578,%r411,7; and.b64 %r363,%r578,-8; add.u64 %r411,%r363,8; .loc 1 1225 25 ld.f64 %r256,[%r363]; .loc 1 1236 8 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r256; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r582,[%value_in]; } .loc 1 1236 7 setp.ne.u32 %r583,%r582,1; @ %r583 bra $L76; .loc 1 1237 8 setp.lt.f64 %r584,%r256,0d0000000000000000; @ %r584 bra $L77; ld.s8 %r395,[%frame+218]; bra $L78; $L77: .loc 1 1238 11 mov.u32 %r585,45; st.u8 [%frame+218],%r585; mov.u32 %r395,45; $L78: .loc 1 1239 8 setp.le.s32 %r586,%r226,71; @ %r586 bra $L256; .loc 1 1242 9 cvta.const.u64 %r229,$LC1; bra $L79; $L256: .loc 1 1240 9 cvta.const.u64 %r229,$LC0; $L79: .loc 1 1244 11 and.b32 %r231,%r230,-129; .loc 1 1245 5 mov.u32 %r239,3; .loc 1 1243 10 mov.u32 %r240,%r239; .loc 1 943 9 mov.u32 %r233,0; .loc 1 948 8 mov.u32 %r235,%r233; .loc 1 1245 5 bra $L80; $L76: .loc 1 1247 8 { .param .u32 %value_in; .param .f64 %out_arg1; st.param.f64 [%out_arg1],%r256; call (%value_in),__fpclassifyd,(%out_arg1); ld.param.u32 %r588,[%value_in]; } mov.u32 %r235,%r588; .loc 1 1247 7 setp.ne.u32 %r589,%r588,0; @ %r589 bra $L81; .loc 1 1248 8 setp.le.s32 %r590,%r226,71; @ %r590 bra $L257; .loc 1 1251 9 cvta.const.u64 %r229,$LC3; bra $L82; $L257: .loc 1 1249 9 cvta.const.u64 %r229,$LC2; $L82: .loc 1 1253 11 and.b32 %r231,%r230,-129; ld.s8 %r395,[%frame+218]; .loc 1 943 9 mov.u32 %r233,%r588; .loc 1 1254 5 mov.u32 %r239,3; .loc 1 1252 10 mov.u32 %r240,%r239; .loc 1 1254 5 bra $L80; $L81: and.b32 %r364,%r226,-33; .loc 1 1309 7 setp.eq.u32 %r591,%r233,-1; @ %r591 bra $L258; .loc 1 1311 40 set.u32.eq.u32 %r593,%r233,0; neg.s32 %r594,%r593; set.u32.eq.u32 %r596,%r364,71; neg.s32 %r597,%r596; cvt.u16.u32 %r599,%r594; cvt.u16.u32 %r600,%r597; and.b16 %r598,%r599,%r600; cvt.u32.u16 %r601,%r598; cvt.u16.u8 %r602,%r601; setp.ne.u16 %r603,%r602,0; @ %r603 bra $L84; bra $L83; $L258: .loc 1 1310 10 mov.u32 %r233,6; $L83: .loc 1 1315 10 or.b32 %r231,%r230,256; .loc 1 1814 6 mov.b64 %r604,%r256; shr.u64 %r605,%r604,32; .loc 1 1814 5 cvt.u32.u64 %r606,%r605; setp.ge.s32 %r607,%r606,0; @ %r607 bra $L259; bra $L251; $L280: .loc 1 1312 10 mov.u32 %r233,1; $L251: .loc 1 1815 9 neg.f64 %r65,%r256; .loc 1 1816 9 mov.u32 %r316,45; bra $L85; $L259: .loc 1 1814 5 mov.f64 %r65,%r256; .loc 1 1818 9 mov.u32 %r316,0; $L85: .loc 1 1867 5 setp.eq.u32 %r608,%r364,70; @ %r608 bra $L86; .loc 1 1874 6 setp.ne.u32 %r609,%r364,69; @ %r609 bra $L87; .loc 1 1875 11 add.u32 %r296,%r233,1; .loc 1 1880 11 mov.u32 %r612,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r65; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r612; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r296; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r1337; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r1336; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r1335; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r620,[%value_in]; } mov.u64 %r229,%r620; setp.eq.u32 %r1293,1,1; bra $L88; $L393: .loc 1 1894 16 ld.u64 %r622,[%frame+192]; sub.u64 %r621,%r622,%r229; .loc 1 1894 10 cvt.u32.u64 %r272,%r621; ld.u32 %r235,[%frame+212]; bra $L89; $L392: ld.u32 %r371,[%frame+212]; bra $L90; $L247: .loc 1 1886 23 mov.u32 %r623,1; sub.u32 %r371,%r623,%r233; .loc 1 1886 12 st.u32 [%frame+212],%r371; $L90: .loc 1 1887 10 cvt.s64.s32 %r624,%r371; .loc 1 1887 7 add.u64 %r625,%r624,%r166; add.u64 %r299,%r1240,%r625; setp.eq.u32 %r1293,1,1; $L245: .loc 1 1889 6 setp.eq.f64 %r626,%r65,0d0000000000000000; @ %r626 bra $L260; bra $L382; $L93: .loc 1 1892 8 add.u64 %r627,%r205,1; st.u64 [%frame+192],%r627; .loc 1 1892 11 st.u8 [%r205],%r628; .loc 1 1891 14 ld.u64 %r205,[%frame+192]; .loc 1 1891 9 setp.gt.u64 %r629,%r299,%r205; @ %r629 bra $L93; bra $L91; $L382: .loc 1 1891 14 ld.u64 %r205,[%frame+192]; .loc 1 1891 9 setp.lt.u64 %r630,%r205,%r299; @ ! %r630 bra $L91; .loc 1 1892 11 mov.u32 %r628,48; bra $L93; $L260: .loc 1 1889 6 mov.u64 %r205,%r299; $L91: .loc 1 1894 16 sub.u64 %r631,%r205,%r229; .loc 1 1894 10 cvt.u32.u64 %r272,%r631; ld.u32 %r235,[%frame+212]; .loc 1 1320 7 @ %r1293 bra $L94; $L89: .loc 1 1321 8 set.u32.lt.s32 %r634,%r235,-3; neg.s32 %r635,%r634; .loc 1 1321 20 set.u32.gt.s32 %r637,%r235,%r233; neg.s32 %r638,%r637; cvt.u16.u32 %r640,%r635; cvt.u16.u32 %r641,%r638; or.b16 %r639,%r640,%r641; cvt.u32.u16 %r642,%r639; cvt.u16.u8 %r643,%r642; setp.eq.u16 %r644,%r643,0; @ %r644 bra $L95; .loc 1 1322 9 add.u32 %r226,%r226,-2; bra $L96; $L94: .loc 1 1330 7 setp.eq.u32 %r645,%r226,102; @ %r645 bra $L97; $L96: .loc 1 1331 5 add.u32 %r66,%r235,-1; st.u32 [%frame+212],%r66; .loc 1 1910 7 st.u8 [%frame+200],%r226; .loc 1 1911 5 setp.ge.s32 %r646,%r66,0; @ %r646 bra $L261; .loc 1 1912 7 mov.u32 %r647,1; sub.u32 %r66,%r647,%r235; .loc 1 1913 8 mov.u32 %r274,45; bra $L98; $L261: .loc 1 1916 8 mov.u32 %r274,43; $L98: cvt.u32.u32 %r648,%r274; st.u8 [%frame+201],%r648; .loc 1 1918 5 setp.le.s32 %r649,%r66,9; @ %r649 bra $L99; .loc 1 1917 4 mov.u64 %r306,%r1332; bra $L100; $L262: .loc 1 1921 3 mov.u64 %r306,%r159; .loc 1 1921 17 mov.u32 %r66,%r308; $L100: .loc 1 1920 9 add.u64 %r159,%r306,-1; .loc 1 1920 11 rem.s32 %r651,%r66,10; cvt.u16.u32 %r654,%r651; add.u16 %r653,%r654,48; .loc 1 1920 9 cvt.u32.u16 %r655,%r653; st.u8 [%r159],%r655; .loc 1 1921 17 div.s32 %r308,%r66,10; .loc 1 1921 3 setp.gt.s32 %r656,%r66,99; @ %r656 bra $L262; .loc 1 1922 8 add.u64 %r288,%r306,-2; .loc 1 1922 10 cvt.u16.u32 %r659,%r308; add.u16 %r658,%r659,48; cvt.u32.u16 %r660,%r658; cvt.s32.s8 %r367,%r660; .loc 1 1922 8 st.u8 [%r159+-1],%r660; .loc 1 1923 3 setp.ge.u64 %r664,%r288,%r1332; @ %r664 bra $L263; mov.u64 %r350,%r1333; $L103: .loc 1 1923 43 add.u64 %r288,%r288,1; .loc 1 1923 39 cvt.u32.u32 %r666,%r367; st.u8 [%r350],%r666; add.u64 %r350,%r350,1; .loc 1 1923 3 setp.ne.u64 %r669,%r288,%r1332; @ %r669 bra $L102; sub.u64 %r675,%r1334,%r306; add.u64 %r676,%r1333,%r675; sub.u64 %r678,%r676,%r1329; cvt.u32.u64 %r234,%r678; bra $L101; $L102: ld.s8 %r367,[%r288]; bra $L103; $L99: .loc 1 1927 9 mov.u32 %r679,48; st.u8 [%frame+202],%r679; .loc 1 1928 10 cvt.u16.u32 %r682,%r66; add.u16 %r681,%r682,48; .loc 1 1928 8 cvt.u32.u16 %r683,%r681; st.u8 [%frame+203],%r683; mov.u32 %r234,4; bra $L101; $L263: .loc 1 1923 3 mov.u32 %r234,2; $L101: .loc 1 1333 10 add.u32 %r240,%r234,%r272; .loc 1 1334 8 setp.gt.s32 %r684,%r272,1; @ %r684 bra $L104; and.b32 %r235,%r230,1; .loc 1 1334 18 setp.ne.u32 %r685,%r235,0; @ %r685 bra $L104; max.s32 %r239,%r240,0; bra $L105; $L104: .loc 1 1335 6 add.u32 %r240,%r240,1; max.s32 %r239,%r240,0; .loc 1 948 8 mov.u32 %r235,0; bra $L105; $L97: and.b32 %r686,%r230,1; or.b32 %r370,%r686,%r233; .loc 1 1341 9 setp.le.s32 %r687,%r235,0; @ %r687 bra $L106; .loc 1 1343 16 setp.eq.u32 %r688,%r370,0; @ %r688 bra $L264; .loc 1 1344 21 add.u32 %r689,%r233,1; .loc 1 1344 13 add.u32 %r240,%r689,%r235; mov.u32 %r239,%r240; bra $L105; $L106: .loc 1 1346 20 setp.eq.u32 %r690,%r370,0; @ %r690 bra $L265; .loc 1 1348 10 add.u32 %r240,%r233,2; mov.u32 %r239,%r240; bra $L105; $L95: .loc 1 1349 15 setp.gt.s32 %r691,%r272,%r235; @ %r691 bra $L108; .loc 1 1351 9 and.b32 %r692,%r230,1; setp.ne.u32 %r693,%r692,0; @ %r693 bra $L109; max.s32 %r239,%r235,0; mov.u32 %r240,%r235; mov.u32 %r226,103; bra $L105; $L109: .loc 1 1352 7 add.u32 %r240,%r235,1; max.s32 %r239,%r240,0; mov.u32 %r226,103; bra $L105; $L108: .loc 1 1355 9 setp.gt.s32 %r694,%r235,0; @ %r694 bra $L266; mov.u32 %r695,2; sub.u32 %r245,%r695,%r235; bra $L110; $L266: mov.u32 %r245,1; $L110: .loc 1 1354 11 add.u32 %r240,%r245,%r272; max.s32 %r239,%r240,0; mov.u32 %r226,103; bra $L105; $L264: mov.u32 %r239,%r235; mov.u32 %r240,%r235; bra $L105; $L265: mov.u32 %r239,1; .loc 1 1348 10 mov.u32 %r240,%r239; $L105: .loc 1 1377 7 setp.eq.u32 %r696,%r316,0; @ %r696 bra $L111; .loc 1 1378 10 mov.u32 %r697,45; st.u8 [%frame+218],%r697; .loc 1 943 9 mov.u32 %r233,0; bra $L112; $L47: setp.eq.u32 %r698,%r227,0; @ %r698 bra $L113; cvt.u32.u32 %r699,%r315; st.u8 [%frame+218],%r699; $L113: add.u64 %r700,%r411,7; and.b64 %r358,%r700,-8; ld.u64 %r359,[%r358]; add.u64 %r411,%r358,8; .loc 1 1392 14 and.b32 %r701,%r230,32; .loc 1 1392 7 setp.eq.u32 %r702,%r701,0; @ %r702 bra $L114; .loc 1 1393 34 cvt.s64.s32 %r703,%r407; st.u64 [%r359],%r703; bra $L9; $L114: .loc 1 1396 14 and.b32 %r704,%r230,16; .loc 1 1396 7 setp.eq.u32 %r705,%r704,0; @ %r705 bra $L116; .loc 1 1397 34 cvt.s64.s32 %r706,%r407; st.u64 [%r359],%r706; bra $L9; $L116: .loc 1 1398 19 and.b32 %r707,%r230,64; .loc 1 1398 12 setp.eq.u32 %r708,%r707,0; @ %r708 bra $L117; .loc 1 1399 35 st.u16 [%r359],%r407; bra $L9; $L117: .loc 1 1405 33 st.u32 [%r359],%r407; bra $L9; $L35: setp.eq.u32 %r709,%r227,0; @ %r709 bra $L118; cvt.u32.u32 %r710,%r315; st.u8 [%frame+218],%r710; $L118: .loc 1 1408 10 or.b32 %r269,%r230,16; .loc 1 1411 13 and.b32 %r711,%r230,32; setp.ne.u32 %r712,%r711,0; @ ! %r712 bra $L120; bra $L267; $L45: setp.eq.u32 %r713,%r227,0; @ %r713 bra $L121; cvt.u32.u32 %r714,%r315; st.u8 [%frame+218],%r714; $L121: and.b32 %r715,%r230,32; setp.eq.u32 %r716,%r715,0; @ ! %r716 bra $L119; bra $L122; $L267: .loc 1 1408 10 mov.u32 %r230,%r269; $L119: .loc 1 1411 13 add.u64 %r336,%r411,7; and.b64 %r326,%r336,-8; add.u64 %r411,%r326,8; ld.u64 %r237,[%r326]; .loc 1 1412 9 mov.u32 %r238,0; bra $L123; $L122: .loc 1 1411 13 and.b32 %r717,%r230,16; setp.eq.u32 %r718,%r717,0; @ %r718 bra $L124; mov.u32 %r269,%r230; $L120: add.u64 %r333,%r411,7; and.b64 %r320,%r333,-8; add.u64 %r411,%r320,8; ld.u64 %r237,[%r320]; mov.u32 %r230,%r269; .loc 1 1412 9 mov.u32 %r238,0; bra $L123; $L124: ld.u32 %r356,[%r411]; add.u64 %r411,%r411,4; .loc 1 1411 13 and.b32 %r719,%r230,64; setp.eq.u32 %r720,%r719,0; @ %r720 bra $L125; cvt.u16.u32 %r721,%r356; cvt.u64.u16 %r237,%r721; .loc 1 1412 9 mov.u32 %r238,%r717; bra $L123; $L125: .loc 1 1411 13 cvt.u64.u32 %r237,%r356; .loc 1 1412 9 mov.u32 %r238,%r719; bra $L123; $L46: .loc 1 1426 25 add.u64 %r68,%r411,7; and.b64 %r319,%r68,-8; add.u64 %r411,%r319,8; .loc 1 1426 11 ld.u64 %r237,[%r319]; .loc 1 1429 10 or.b32 %r230,%r230,2; .loc 1 1430 10 mov.u32 %r722,48; st.u8 [%frame+216],%r722; .loc 1 1431 10 mov.u32 %r723,120; st.u8 [%frame+217],%r723; .loc 1 1428 10 cvta.const.u64 %r25,$LC5; .loc 1 1427 9 mov.u32 %r238,2; .loc 1 1431 15 mov.u32 %r226,120; .loc 1 1432 4 bra $L123; $L50: .loc 1 1437 7 add.u64 %r330,%r411,7; and.b64 %r325,%r330,-8; add.u64 %r411,%r325,8; ld.u64 %r229,[%r325]; .loc 1 1441 9 mov.u32 %r724,0; st.u8 [%frame+218],%r724; .loc 1 1447 7 setp.ne.u64 %r725,%r229,0; @ %r725 bra $L126; .loc 1 1449 39 min.u32 %r240,%r233,6; mov.u32 %r239,%r240; .loc 1 1448 8 cvta.const.u64 %r229,$LC6; bra $L62; $L126: .loc 1 1516 7 setp.eq.u32 %r726,%r233,-1; @ %r726 bra $L127; .loc 1 1522 15 cvt.s64.s32 %r730,%r233; mov.u32 %r728,0; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r229; .param .u32 %out_arg2; st.param.u32 [%out_arg2],%r728; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r730; call (%value_in),memchr,(%out_arg1,%out_arg2,%out_arg3); ld.param.u64 %r731,[%value_in]; } .loc 1 1524 8 setp.ne.u64 %r732,%r731,0; @ %r732 bra $L128; ld.s8 %r395,[%frame+218]; mov.u32 %r239,%r233; mov.u32 %r240,%r233; mov.u32 %r231,%r230; .loc 1 943 9 cvt.u32.u64 %r233,%r731; .loc 1 948 8 mov.u32 %r235,%r233; bra $L80; $L128: .loc 1 1525 15 sub.u64 %r733,%r731,%r229; cvt.u32.u64 %r734,%r733; min.s32 %r240,%r233,%r734; ld.s8 %r395,[%frame+218]; max.s32 %r239,%r240,0; mov.u32 %r231,%r230; .loc 1 943 9 mov.u32 %r233,%r728; .loc 1 948 8 mov.u32 %r235,%r233; bra $L80; $L127: .loc 1 1531 12 { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r229; call (%value_in),strlen,(%out_arg1); ld.param.u64 %r736,[%value_in]; } .loc 1 1531 10 cvt.u32.u64 %r240,%r736; ld.s8 %r395,[%frame+218]; max.s32 %r239,%r240,0; mov.u32 %r231,%r230; .loc 1 943 9 mov.u32 %r233,0; .loc 1 948 8 mov.u32 %r235,%r233; bra $L80; $L18: setp.eq.u32 %r737,%r227,0; @ %r737 bra $L129; cvt.u32.u32 %r738,%r315; st.u8 [%frame+218],%r738; $L129: .loc 1 1535 10 or.b32 %r273,%r230,16; .loc 1 1538 13 and.b32 %r739,%r230,32; setp.ne.u32 %r740,%r739,0; @ ! %r740 bra $L131; bra $L268; $L48: setp.eq.u32 %r741,%r227,0; @ %r741 bra $L132; cvt.u32.u32 %r742,%r315; st.u8 [%frame+218],%r742; $L132: and.b32 %r743,%r230,32; setp.eq.u32 %r744,%r743,0; @ ! %r744 bra $L130; bra $L133; $L268: .loc 1 1535 10 mov.u32 %r230,%r273; $L130: .loc 1 1538 13 add.u64 %r328,%r411,7; and.b64 %r324,%r328,-8; add.u64 %r411,%r324,8; ld.u64 %r237,[%r324]; .loc 1 1539 9 mov.u32 %r238,1; bra $L123; $L133: .loc 1 1538 13 and.b32 %r745,%r230,16; setp.eq.u32 %r746,%r745,0; @ %r746 bra $L134; mov.u32 %r273,%r230; $L131: add.u64 %r267,%r411,7; and.b64 %r318,%r267,-8; add.u64 %r411,%r318,8; ld.u64 %r237,[%r318]; mov.u32 %r230,%r273; .loc 1 1539 9 mov.u32 %r238,1; bra $L123; $L134: ld.u32 %r355,[%r411]; add.u64 %r411,%r411,4; .loc 1 1538 13 and.b32 %r747,%r230,64; setp.eq.u32 %r748,%r747,0; @ %r748 bra $L135; cvt.u16.u32 %r749,%r355; cvt.u64.u16 %r237,%r749; .loc 1 1539 9 mov.u32 %r238,1; bra $L123; $L135: .loc 1 1538 13 cvt.u64.u32 %r237,%r355; .loc 1 1539 9 mov.u32 %r238,1; bra $L123; $L41: setp.eq.u32 %r750,%r227,0; @ %r750 bra $L136; cvt.u32.u32 %r751,%r315; st.u8 [%frame+218],%r751; $L136: .loc 1 1542 10 cvta.const.u64 %r25,$LC4; $L53: .loc 1 1546 17 and.b32 %r752,%r230,32; setp.eq.u32 %r753,%r752,0; @ %r753 bra $L137; add.u64 %r327,%r411,7; and.b64 %r322,%r327,-8; add.u64 %r411,%r322,8; ld.u64 %r237,[%r322]; bra $L138; $L137: and.b32 %r754,%r230,16; setp.eq.u32 %r755,%r754,0; @ %r755 bra $L139; add.u64 %r260,%r411,7; and.b64 %r317,%r260,-8; add.u64 %r411,%r317,8; ld.u64 %r237,[%r317]; bra $L138; $L139: ld.u32 %r396,[%r411]; add.u64 %r411,%r411,4; and.b32 %r756,%r230,64; setp.eq.u32 %r757,%r756,0; @ %r757 bra $L140; cvt.u16.u32 %r758,%r396; cvt.u64.u16 %r237,%r758; bra $L138; $L140: cvt.u64.u32 %r237,%r396; $L138: .loc 1 1549 14 and.b32 %r759,%r230,1; .loc 1 1549 7 setp.eq.u32 %r760,%r759,0; @ %r760 bra $L269; .loc 1 1549 20 setp.eq.u64 %r761,%r237,0; @ %r761 bra $L270; .loc 1 1550 11 mov.u32 %r762,48; st.u8 [%frame+216],%r762; .loc 1 1551 11 st.u8 [%frame+217],%r226; .loc 1 1552 11 or.b32 %r230,%r230,2; .loc 1 1547 9 mov.u32 %r238,2; bra $L123; $L269: mov.u32 %r238,2; bra $L123; $L270: mov.u32 %r238,2; $L123: .loc 1 1559 16 mov.u32 %r763,0; st.u8 [%frame+218],%r763; mov.u32 %r395,0; $L72: .loc 1 1565 14 setp.eq.u32 %r764,%r233,-1; @ %r764 bra $L141; .loc 1 1566 11 and.b32 %r231,%r230,-129; .loc 1 1574 15 set.u32.ne.u64 %r766,%r237,0; neg.s32 %r767,%r766; .loc 1 1574 28 set.u32.ne.u32 %r769,%r233,0; neg.s32 %r770,%r769; .loc 1 1574 20 cvt.u16.u32 %r772,%r767; cvt.u16.u32 %r773,%r770; or.b16 %r771,%r772,%r773; .loc 1 1574 7 cvt.u32.u16 %r774,%r771; cvt.u16.u8 %r775,%r774; setp.eq.u16 %r776,%r775,0; @ %r776 bra $L142; .loc 1 1566 11 mov.u32 %r230,%r231; $L141: cvt.u16.u32 %r777,%r238; setp.eq.u16 %r778,%r777,1; @ %r778 bra $L143; setp.eq.u16 %r780,%r777,2; @ %r780 bra $L271; .loc 1 1573 7 mov.u64 %r228,%r1328; bra $L145; $L272: .loc 1 1581 5 mov.u64 %r228,%r229; $L145: .loc 1 1583 13 add.u64 %r229,%r228,-1; .loc 1 1583 15 cvt.u16.u64 %r783,%r237; and.b16 %r782,%r783,7; add.u16 %r785,%r782,48; cvt.u32.u16 %r787,%r785; cvt.s32.s8 %r101,%r787; .loc 1 1583 13 st.u8 [%r229],%r787; .loc 1 1584 14 shr.u64 %r237,%r237,3; .loc 1 1585 6 setp.ne.u64 %r789,%r237,0; @ %r789 bra $L272; .loc 1 1587 22 cvt.u16.u32 %r791,%r101; set.u32.ne.u16 %r792,%r791,48; neg.s32 %r793,%r792; .loc 1 1587 9 cvt.u16.u32 %r796,%r230; and.b16 %r795,%r796,1; .loc 1 1587 22 cvt.u16.u32 %r799,%r793; and.b16 %r798,%r799,%r795; cvt.u32.u16 %r801,%r798; cvt.u16.u8 %r802,%r801; setp.ne.u16 %r803,%r802,0; @ %r803 bra $L146; sub.u64 %r806,%r1328,%r229; cvt.u32.u64 %r240,%r806; mov.u32 %r231,%r230; bra $L147; $L146: .loc 1 1588 13 add.u64 %r277,%r228,-2; mov.u32 %r807,48; st.u8 [%r229+-1],%r807; sub.u64 %r810,%r1328,%r277; cvt.u32.u64 %r240,%r810; mov.u32 %r231,%r230; mov.u64 %r229,%r277; bra $L147; $L279: .loc 1 1566 11 mov.u32 %r230,%r231; $L143: .loc 1 1593 9 setp.gt.u64 %r1291,%r237,9; @ %r1291 bra $L273; .loc 1 1594 15 cvt.u16.u64 %r814,%r237; add.u16 %r813,%r814,48; .loc 1 1594 13 cvt.u32.u16 %r815,%r813; st.u8 [%frame+167],%r815; .loc 1 1595 7 mov.u32 %r231,%r230; mov.u32 %r240,1; .loc 1 1594 13 add.u64 %r229,%frame,167; .loc 1 1595 7 bra $L147; $L273: .loc 1 1573 7 mov.u64 %r229,%r1328; bra $L148; $L274: .loc 1 1622 15 mov.u64 %r237,%r278; setp.gt.u64 %r1291,%r237,9; $L148: .loc 1 1601 14 add.u64 %r229,%r229,-1; .loc 1 1601 16 rem.u64 %r817,%r237,10; cvt.u16.u64 %r820,%r817; add.u16 %r819,%r820,48; .loc 1 1601 14 cvt.u32.u16 %r821,%r819; st.u8 [%r229],%r821; .loc 1 1622 15 div.u64 %r278,%r237,10; .loc 1 1623 6 @ %r1291 bra $L274; sub.u64 %r825,%r1328,%r229; cvt.u32.u64 %r240,%r825; mov.u32 %r231,%r230; bra $L147; $L271: .loc 1 1573 7 mov.u64 %r229,%r1328; $L144: .loc 1 1628 13 add.u64 %r229,%r229,-1; .loc 1 1628 28 and.b64 %r826,%r237,15; .loc 1 1628 20 add.u64 %r827,%r25,%r826; .loc 1 1628 13 ld.u8 %r828,[%r827]; st.u8 [%r229],%r828; .loc 1 1629 14 shr.u64 %r237,%r237,4; .loc 1 1630 6 setp.ne.u64 %r829,%r237,0; @ %r829 bra $L144; sub.u64 %r832,%r1328,%r229; cvt.u32.u64 %r240,%r832; mov.u32 %r231,%r230; bra $L147; $L142: .loc 1 1648 32 setp.ne.u32 %r833,%r238,0; @ %r833 bra $L275; .loc 1 1648 55 and.b32 %r240,%r230,1; .loc 1 1648 45 setp.eq.u32 %r834,%r240,0; @ %r834 bra $L276; .loc 1 1649 32 mov.u32 %r835,48; st.u8 [%frame+167],%r835; mov.u32 %r233,%r238; add.u64 %r229,%frame,167; bra $L147; $L275: mov.u32 %r233,0; mov.u32 %r240,%r233; .loc 1 1573 7 add.u64 %r229,%frame,168; bra $L147; $L276: mov.u32 %r233,%r238; add.u64 %r229,%frame,168; $L147: max.s32 %r239,%r233,%r240; .loc 1 948 8 mov.u32 %r235,0; bra $L80; $L26: setp.eq.u32 %r836,%r227,0; @ %r836 bra $L149; cvt.u32.u32 %r837,%r315; st.u8 [%frame+218],%r837; $L149: .loc 1 1655 7 setp.eq.u32 %r838,%r226,0; @ %r838 bra $L15; .loc 1 1659 8 st.u8 [%frame+128],%r226; .loc 1 1661 9 mov.u32 %r839,0; st.u8 [%frame+218],%r839; .loc 1 1662 4 mov.u32 %r239,1; .loc 1 1660 9 mov.u32 %r240,%r239; .loc 1 1658 7 add.u64 %r229,%frame,128; .loc 1 1662 4 bra $L62; $L111: ld.s8 %r395,[%frame+218]; .loc 1 943 9 mov.u32 %r233,%r316; $L80: .loc 1 1681 6 setp.eq.u32 %r840,%r395,0; @ %r840 bra $L150; $L112: .loc 1 1682 10 add.u32 %r239,%r239,1; $L150: .loc 1 1683 13 and.b32 %r114,%r231,2; .loc 1 1683 6 setp.eq.u32 %r1285,%r114,0; @ %r1285 bra $L151; .loc 1 1684 10 add.u32 %r239,%r239,2; $L151: .loc 1 1687 14 and.b32 %r115,%r231,132; ld.u64 %r372,[%frame+184]; .loc 1 1687 6 setp.ne.u32 %r842,%r115,0; @ %r842 bra $L152; .loc 1 1688 4 sub.u32 %r276,%r232,%r239; setp.le.s32 %r843,%r276,0; @ %r843 bra $L152; ld.u32 %r389,[%frame+176]; setp.le.s32 %r844,%r276,16; @ ! %r844 bra $L383; cvta.const.u64 %r1294,blanks$4168; bra $L153; $L383: cvta.const.u64 %r1294,blanks$4168; $L156: st.u64 [%r241],%r1294; mov.u64 %r846,16; st.u64 [%r241+8],%r846; add.u64 %r372,%r372,16; st.u64 [%frame+184],%r372; add.u32 %r389,%r389,1; st.u32 [%frame+176],%r389; setp.gt.s32 %r847,%r389,7; @ %r847 bra $L154; add.u64 %r241,%r241,16; bra $L155; $L154: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r852,[%value_in]; } setp.ne.u32 %r853,%r852,0; @ %r853 bra $L14; ld.u64 %r372,[%frame+184]; ld.u32 %r389,[%frame+176]; mov.u64 %r241,%frame; $L155: add.u32 %r276,%r276,-16; setp.gt.s32 %r854,%r276,16; @ %r854 bra $L156; $L153: st.u64 [%r241],%r1294; cvt.s64.s32 %r117,%r276; st.u64 [%r241+8],%r117; add.u64 %r372,%r372,%r117; st.u64 [%frame+184],%r372; add.u32 %r118,%r389,1; st.u32 [%frame+176],%r118; setp.gt.s32 %r856,%r118,7; @ %r856 bra $L157; add.u64 %r241,%r241,16; bra $L152; $L157: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r861,[%value_in]; } setp.ne.u32 %r862,%r861,0; @ %r862 bra $L14; ld.u64 %r372,[%frame+184]; mov.u64 %r241,%frame; $L152: .loc 1 1691 6 ld.s8 %r864,[%frame+218]; cvt.u16.u32 %r863,%r864; setp.eq.u16 %r865,%r863,0; @ %r865 bra $L158; .loc 1 1692 4 st.u64 [%r241],%r1331; mov.u64 %r867,1; st.u64 [%r241+8],%r867; add.u64 %r372,%r372,1; st.u64 [%frame+184],%r372; ld.u32 %r868,[%frame+176]; add.u32 %r122,%r868,1; st.u32 [%frame+176],%r122; setp.gt.s32 %r869,%r122,7; @ %r869 bra $L159; add.u64 %r241,%r241,16; bra $L158; $L159: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r874,[%value_in]; } setp.ne.u32 %r875,%r874,0; @ %r875 bra $L14; ld.u64 %r372,[%frame+184]; mov.u64 %r241,%frame; $L158: .loc 1 1693 6 @ %r1285 bra $L160; .loc 1 1694 4 st.u64 [%r241],%r1330; mov.u64 %r878,2; st.u64 [%r241+8],%r878; add.u64 %r372,%r372,2; st.u64 [%frame+184],%r372; ld.u32 %r879,[%frame+176]; add.u32 %r125,%r879,1; st.u32 [%frame+176],%r125; setp.gt.s32 %r880,%r125,7; @ %r880 bra $L161; add.u64 %r241,%r241,16; bra $L160; $L161: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r885,[%value_in]; } setp.ne.u32 %r886,%r885,0; @ %r886 bra $L14; ld.u64 %r372,[%frame+184]; mov.u64 %r241,%frame; $L160: .loc 1 1697 6 setp.ne.u32 %r887,%r115,128; @ %r887 bra $L162; .loc 1 1698 4 sub.u32 %r279,%r232,%r239; setp.le.s32 %r888,%r279,0; @ %r888 bra $L162; ld.u32 %r388,[%frame+176]; setp.le.s32 %r889,%r279,16; @ ! %r889 bra $L384; cvta.const.u64 %r1290,zeroes$4169; bra $L163; $L384: cvta.const.u64 %r1290,zeroes$4169; $L166: st.u64 [%r241],%r1290; mov.u64 %r891,16; st.u64 [%r241+8],%r891; add.u64 %r372,%r372,16; st.u64 [%frame+184],%r372; add.u32 %r388,%r388,1; st.u32 [%frame+176],%r388; setp.gt.s32 %r892,%r388,7; @ %r892 bra $L164; add.u64 %r241,%r241,16; bra $L165; $L164: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r897,[%value_in]; } setp.ne.u32 %r898,%r897,0; @ %r898 bra $L14; ld.u64 %r372,[%frame+184]; ld.u32 %r388,[%frame+176]; mov.u64 %r241,%frame; $L165: add.u32 %r279,%r279,-16; setp.gt.s32 %r899,%r279,16; @ %r899 bra $L166; $L163: st.u64 [%r241],%r1290; cvt.s64.s32 %r128,%r279; st.u64 [%r241+8],%r128; add.u64 %r372,%r372,%r128; st.u64 [%frame+184],%r372; add.u32 %r129,%r388,1; st.u32 [%frame+176],%r129; setp.gt.s32 %r901,%r129,7; @ %r901 bra $L167; add.u64 %r241,%r241,16; bra $L162; $L167: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r906,[%value_in]; } setp.ne.u32 %r907,%r906,0; @ %r907 bra $L14; ld.u64 %r372,[%frame+184]; mov.u64 %r241,%frame; $L162: .loc 1 1701 3 sub.u32 %r280,%r233,%r240; setp.le.s32 %r908,%r280,0; @ %r908 bra $L168; ld.u32 %r387,[%frame+176]; setp.le.s32 %r909,%r280,16; @ ! %r909 bra $L385; cvta.const.u64 %r1290,zeroes$4169; bra $L169; $L385: cvta.const.u64 %r1290,zeroes$4169; $L172: st.u64 [%r241],%r1290; mov.u64 %r911,16; st.u64 [%r241+8],%r911; add.u64 %r372,%r372,16; st.u64 [%frame+184],%r372; add.u32 %r387,%r387,1; st.u32 [%frame+176],%r387; setp.gt.s32 %r912,%r387,7; @ %r912 bra $L170; add.u64 %r241,%r241,16; bra $L171; $L170: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r917,[%value_in]; } setp.ne.u32 %r918,%r917,0; @ %r918 bra $L14; ld.u64 %r372,[%frame+184]; ld.u32 %r387,[%frame+176]; mov.u64 %r241,%frame; $L171: add.u32 %r280,%r280,-16; setp.gt.s32 %r919,%r280,16; @ %r919 bra $L172; $L169: st.u64 [%r241],%r1290; cvt.s64.s32 %r133,%r280; st.u64 [%r241+8],%r133; add.u64 %r372,%r372,%r133; st.u64 [%frame+184],%r372; add.u32 %r134,%r387,1; st.u32 [%frame+176],%r134; setp.gt.s32 %r921,%r134,7; @ %r921 bra $L173; add.u64 %r241,%r241,16; bra $L168; $L173: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r926,[%value_in]; } setp.ne.u32 %r927,%r926,0; @ %r927 bra $L14; ld.u64 %r372,[%frame+184]; mov.u64 %r241,%frame; $L168: .loc 1 1705 14 and.b32 %r928,%r231,256; .loc 1 1705 6 setp.ne.u32 %r929,%r928,0; @ %r929 bra $L174; .loc 1 1706 4 st.u64 [%r241],%r229; cvt.s64.s32 %r137,%r240; st.u64 [%r241+8],%r137; add.u64 %r372,%r372,%r137; st.u64 [%frame+184],%r372; ld.u32 %r930,[%frame+176]; add.u32 %r139,%r930,1; st.u32 [%frame+176],%r139; setp.gt.s32 %r931,%r139,7; @ %r931 bra $L175; add.u64 %r241,%r241,16; bra $L176; $L175: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r936,[%value_in]; } setp.ne.u32 %r937,%r936,0; @ %r937 bra $L14; ld.u64 %r372,[%frame+184]; mov.u64 %r241,%frame; bra $L176; $L174: .loc 1 1708 7 setp.le.s32 %r938,%r226,101; @ %r938 bra $L177; .loc 1 1709 8 setp.neu.f64 %r939,%r256,0d0000000000000000; @ %r939 bra $L178; .loc 1 1711 6 cvta.const.u64 %r940,$LC7; st.u64 [%r241],%r940; mov.u64 %r941,1; st.u64 [%r241+8],%r941; add.u64 %r942,%r372,1; st.u64 [%frame+184],%r942; ld.u32 %r943,[%frame+176]; add.u32 %r143,%r943,1; st.u32 [%frame+176],%r143; setp.gt.s32 %r944,%r143,7; @ %r944 bra $L179; add.u64 %r241,%r241,16; bra $L180; $L179: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r949,[%value_in]; } setp.ne.u32 %r950,%r949,0; @ %r950 bra $L14; mov.u64 %r241,%frame; $L180: .loc 1 1712 9 ld.u32 %r951,[%frame+212]; setp.lt.s32 %r952,%r951,%r272; @ %r952 bra $L181; .loc 1 1712 31 and.b32 %r953,%r231,1; .loc 1 1712 22 setp.ne.u32 %r954,%r953,0; @ %r954 bra $L181; ld.u64 %r372,[%frame+184]; bra $L176; $L181: .loc 1 1713 7 st.u64 [%r241],%r248; st.u64 [%r241+8],%r424; ld.u64 %r955,[%frame+184]; add.u64 %r372,%r424,%r955; st.u64 [%frame+184],%r372; ld.u32 %r956,[%frame+176]; add.u32 %r149,%r956,1; st.u32 [%frame+176],%r149; setp.gt.s32 %r957,%r149,7; @ %r957 bra $L182; add.u64 %r241,%r241,16; bra $L183; $L182: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r962,[%value_in]; } setp.ne.u32 %r963,%r962,0; @ %r963 bra $L14; ld.u64 %r372,[%frame+184]; mov.u64 %r241,%frame; $L183: .loc 1 1714 7 add.u32 %r275,%r272,-1; setp.le.s32 %r964,%r275,0; @ %r964 bra $L176; ld.u32 %r386,[%frame+176]; setp.le.s32 %r965,%r275,16; @ ! %r965 bra $L386; cvta.const.u64 %r1290,zeroes$4169; bra $L184; $L386: cvta.const.u64 %r1290,zeroes$4169; $L187: st.u64 [%r241],%r1290; mov.u64 %r967,16; st.u64 [%r241+8],%r967; add.u64 %r372,%r372,16; st.u64 [%frame+184],%r372; add.u32 %r386,%r386,1; st.u32 [%frame+176],%r386; setp.gt.s32 %r968,%r386,7; @ %r968 bra $L185; add.u64 %r241,%r241,16; bra $L186; $L185: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r973,[%value_in]; } setp.ne.u32 %r974,%r973,0; @ %r974 bra $L14; ld.u64 %r372,[%frame+184]; ld.u32 %r386,[%frame+176]; mov.u64 %r241,%frame; $L186: add.u32 %r275,%r275,-16; setp.gt.s32 %r975,%r275,16; @ %r975 bra $L187; $L184: st.u64 [%r241],%r1290; cvt.s64.s32 %r152,%r275; st.u64 [%r241+8],%r152; add.u64 %r372,%r372,%r152; st.u64 [%frame+184],%r372; add.u32 %r153,%r386,1; st.u32 [%frame+176],%r153; setp.gt.s32 %r977,%r153,7; @ %r977 bra $L188; add.u64 %r241,%r241,16; bra $L176; $L188: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r982,[%value_in]; } setp.ne.u32 %r983,%r982,0; @ %r983 bra $L14; ld.u64 %r372,[%frame+184]; mov.u64 %r241,%frame; bra $L176; $L178: .loc 1 1716 21 ld.u32 %r155,[%frame+212]; .loc 1 1716 15 setp.gt.s32 %r984,%r155,0; @ %r984 bra $L189; .loc 1 1717 6 cvta.const.u64 %r985,$LC7; st.u64 [%r241],%r985; mov.u64 %r986,1; st.u64 [%r241+8],%r986; add.u64 %r372,%r372,1; st.u64 [%frame+184],%r372; ld.u32 %r987,[%frame+176]; add.u32 %r157,%r987,1; st.u32 [%frame+176],%r157; setp.gt.s32 %r988,%r157,7; @ %r988 bra $L190; add.u64 %r241,%r241,16; bra $L191; $L190: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r993,[%value_in]; } setp.ne.u32 %r994,%r993,0; @ %r994 bra $L14; ld.u32 %r155,[%frame+212]; ld.u64 %r372,[%frame+184]; mov.u64 %r241,%frame; $L191: .loc 1 1718 15 or.b32 %r995,%r272,%r155; setp.ne.u32 %r996,%r995,0; @ %r996 bra $L192; .loc 1 1718 32 and.b32 %r997,%r231,1; .loc 1 1718 23 setp.ne.u32 %r998,%r997,0; @ %r998 bra $L193; bra $L176; $L192: .loc 1 1719 7 st.u64 [%r241],%r248; st.u64 [%r241+8],%r424; add.u64 %r384,%r424,%r372; st.u64 [%frame+184],%r384; ld.u32 %r999,[%frame+176]; add.u32 %r385,%r999,1; st.u32 [%frame+176],%r385; setp.gt.s32 %r1000,%r385,7; @ %r1000 bra $L194; add.u64 %r242,%r241,16; bra $L195; $L194: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1005,[%value_in]; } setp.ne.u32 %r1006,%r1005,0; @ %r1006 bra $L14; ld.u32 %r155,[%frame+212]; ld.u64 %r384,[%frame+184]; ld.u32 %r385,[%frame+176]; mov.u64 %r242,%frame; $L195: .loc 1 1720 7 setp.ge.s32 %r1007,%r155,0; @ %r1007 bra $L196; neg.s32 %r263,%r155; setp.ge.s32 %r1008,%r155,-16; @ ! %r1008 bra $L387; cvta.const.u64 %r1290,zeroes$4169; bra $L197; $L387: cvta.const.u64 %r1290,zeroes$4169; $L200: st.u64 [%r242],%r1290; mov.u64 %r1010,16; st.u64 [%r242+8],%r1010; add.u64 %r384,%r384,16; st.u64 [%frame+184],%r384; add.u32 %r385,%r385,1; st.u32 [%frame+176],%r385; setp.gt.s32 %r1011,%r385,7; @ %r1011 bra $L198; add.u64 %r242,%r242,16; bra $L199; $L198: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1016,[%value_in]; } setp.ne.u32 %r1017,%r1016,0; @ %r1017 bra $L14; ld.u64 %r384,[%frame+184]; ld.u32 %r385,[%frame+176]; mov.u64 %r242,%frame; $L199: add.u32 %r263,%r263,-16; setp.gt.s32 %r1018,%r263,16; @ %r1018 bra $L200; $L197: st.u64 [%r242],%r1290; cvt.s64.s32 %r164,%r263; st.u64 [%r242+8],%r164; add.u64 %r384,%r384,%r164; st.u64 [%frame+184],%r384; add.u32 %r385,%r385,1; st.u32 [%frame+176],%r385; setp.gt.s32 %r1020,%r385,7; @ %r1020 bra $L201; add.u64 %r242,%r242,16; bra $L196; $L201: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1025,[%value_in]; } setp.ne.u32 %r1026,%r1025,0; @ %r1026 bra $L14; ld.u64 %r384,[%frame+184]; ld.u32 %r385,[%frame+176]; mov.u64 %r242,%frame; $L196: .loc 1 1721 7 st.u64 [%r242],%r229; cvt.s64.s32 %r167,%r272; st.u64 [%r242+8],%r167; add.u64 %r372,%r167,%r384; st.u64 [%frame+184],%r372; add.u32 %r168,%r385,1; st.u32 [%frame+176],%r168; setp.gt.s32 %r1027,%r168,7; @ %r1027 bra $L202; add.u64 %r241,%r242,16; bra $L176; $L202: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1032,[%value_in]; } setp.ne.u32 %r1033,%r1032,0; @ %r1033 bra $L14; ld.u64 %r372,[%frame+184]; mov.u64 %r241,%frame; bra $L176; $L189: min.s32 %r42,%r272,%r235; .loc 1 1725 6 setp.le.s32 %r1034,%r42,0; @ %r1034 bra $L203; st.u64 [%r241],%r229; cvt.s64.s32 %r170,%r42; st.u64 [%r241+8],%r170; add.u64 %r372,%r372,%r170; st.u64 [%frame+184],%r372; ld.u32 %r1035,[%frame+176]; add.u32 %r172,%r1035,1; st.u32 [%frame+176],%r172; setp.gt.s32 %r1036,%r172,7; @ %r1036 bra $L204; add.u64 %r241,%r241,16; bra $L203; $L204: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1041,[%value_in]; } setp.ne.u32 %r1042,%r1041,0; @ %r1042 bra $L14; ld.u64 %r372,[%frame+184]; mov.u64 %r241,%frame; $L203: max.s32 %r174,%r42,0; sub.u32 %r246,%r235,%r174; setp.le.s32 %r1043,%r246,0; @ %r1043 bra $L205; ld.u32 %r383,[%frame+176]; setp.le.s32 %r1044,%r246,16; @ ! %r1044 bra $L388; cvta.const.u64 %r1290,zeroes$4169; bra $L206; $L388: cvta.const.u64 %r1290,zeroes$4169; $L209: st.u64 [%r241],%r1290; mov.u64 %r1046,16; st.u64 [%r241+8],%r1046; add.u64 %r372,%r372,16; st.u64 [%frame+184],%r372; add.u32 %r383,%r383,1; st.u32 [%frame+176],%r383; setp.gt.s32 %r1047,%r383,7; @ %r1047 bra $L207; add.u64 %r241,%r241,16; bra $L208; $L207: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1052,[%value_in]; } setp.ne.u32 %r1053,%r1052,0; @ %r1053 bra $L14; ld.u64 %r372,[%frame+184]; ld.u32 %r383,[%frame+176]; mov.u64 %r241,%frame; $L208: add.u32 %r246,%r246,-16; setp.gt.s32 %r1054,%r246,16; @ %r1054 bra $L209; $L206: st.u64 [%r241],%r1290; cvt.s64.s32 %r177,%r246; st.u64 [%r241+8],%r177; add.u64 %r372,%r372,%r177; st.u64 [%frame+184],%r372; add.u32 %r179,%r383,1; st.u32 [%frame+176],%r179; setp.gt.s32 %r1056,%r179,7; @ %r1056 bra $L210; add.u64 %r241,%r241,16; bra $L205; $L210: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1061,[%value_in]; } setp.ne.u32 %r1062,%r1061,0; @ %r1062 bra $L14; ld.u64 %r372,[%frame+184]; mov.u64 %r241,%frame; $L205: .loc 1 1746 15 ld.u32 %r182,[%frame+212]; .loc 1 1746 9 setp.lt.s32 %r1063,%r182,%r272; @ %r1063 bra $L211; .loc 1 1746 31 and.b32 %r1064,%r231,1; .loc 1 1746 22 setp.eq.u32 %r1065,%r1064,0; @ %r1065 bra $L212; $L211: .loc 1 1747 10 st.u64 [%r241],%r248; st.u64 [%r241+8],%r424; add.u64 %r372,%r372,%r424; st.u64 [%frame+184],%r372; ld.u32 %r1066,[%frame+176]; add.u32 %r185,%r1066,1; st.u32 [%frame+176],%r185; setp.gt.s32 %r1067,%r185,7; @ %r1067 bra $L213; add.u64 %r241,%r241,16; bra $L214; $L213: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1072,[%value_in]; } setp.ne.u32 %r1073,%r1072,0; @ %r1073 bra $L14; ld.u32 %r182,[%frame+212]; ld.u64 %r372,[%frame+184]; mov.u64 %r241,%frame; $L214: .loc 1 1748 6 sub.u32 %r284,%r272,%r235; sub.u32 %r189,%r272,%r182; min.s32 %r224,%r189,%r284; setp.le.s32 %r1074,%r224,0; @ %r1074 bra $L215; .loc 1 1727 9 cvt.s64.s32 %r1075,%r235; add.u64 %r1076,%r229,%r1075; .loc 1 1748 6 st.u64 [%r241],%r1076; cvt.s64.s32 %r190,%r224; st.u64 [%r241+8],%r190; add.u64 %r372,%r372,%r190; st.u64 [%frame+184],%r372; ld.u32 %r1077,[%frame+176]; add.u32 %r192,%r1077,1; st.u32 [%frame+176],%r192; setp.gt.s32 %r1078,%r192,7; @ %r1078 bra $L216; add.u64 %r241,%r241,16; bra $L215; $L216: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1083,[%value_in]; } setp.ne.u32 %r1084,%r1083,0; @ %r1084 bra $L14; ld.u32 %r1085,[%frame+212]; sub.u32 %r189,%r272,%r1085; ld.u64 %r372,[%frame+184]; mov.u64 %r241,%frame; $L215: max.s32 %r194,%r224,0; sub.u32 %r264,%r189,%r194; setp.le.s32 %r1086,%r264,0; @ %r1086 bra $L176; ld.u32 %r382,[%frame+176]; setp.le.s32 %r1087,%r264,16; @ ! %r1087 bra $L389; cvta.const.u64 %r1290,zeroes$4169; bra $L217; $L389: cvta.const.u64 %r1290,zeroes$4169; $L220: st.u64 [%r241],%r1290; mov.u64 %r1089,16; st.u64 [%r241+8],%r1089; add.u64 %r372,%r372,16; st.u64 [%frame+184],%r372; add.u32 %r382,%r382,1; st.u32 [%frame+176],%r382; setp.gt.s32 %r1090,%r382,7; @ %r1090 bra $L218; add.u64 %r241,%r241,16; bra $L219; $L218: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1095,[%value_in]; } setp.ne.u32 %r1096,%r1095,0; @ %r1096 bra $L14; ld.u64 %r372,[%frame+184]; ld.u32 %r382,[%frame+176]; mov.u64 %r241,%frame; $L219: add.u32 %r264,%r264,-16; setp.gt.s32 %r1097,%r264,16; @ %r1097 bra $L220; $L217: st.u64 [%r241],%r1290; cvt.s64.s32 %r196,%r264; st.u64 [%r241+8],%r196; add.u64 %r372,%r372,%r196; st.u64 [%frame+184],%r372; add.u32 %r197,%r382,1; st.u32 [%frame+176],%r197; setp.gt.s32 %r1099,%r197,7; @ %r1099 bra $L221; add.u64 %r241,%r241,16; bra $L176; $L221: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1104,[%value_in]; } setp.ne.u32 %r1105,%r1104,0; @ %r1105 bra $L14; ld.u64 %r372,[%frame+184]; mov.u64 %r241,%frame; bra $L176; $L177: add.u64 %r202,%r372,1; ld.u32 %r401,[%frame+176]; add.u32 %r377,%r401,1; add.u64 %r243,%r241,16; .loc 1 1752 8 setp.gt.s32 %r1106,%r272,1; @ %r1106 bra $L222; .loc 1 1752 27 and.b32 %r1107,%r231,1; .loc 1 1752 18 setp.eq.u32 %r1108,%r1107,0; @ %r1108 bra $L223; $L222: .loc 1 1753 6 st.u64 [%r241],%r229; mov.u64 %r1109,1; st.u64 [%r241+8],%r1109; st.u64 [%frame+184],%r202; st.u32 [%frame+176],%r377; setp.le.s32 %r1110,%r377,7; @ %r1110 bra $L224; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; 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; ld.u64 %r202,[%frame+184]; ld.u32 %r377,[%frame+176]; mov.u64 %r243,%frame; $L224: .loc 1 1755 6 st.u64 [%r243],%r248; st.u64 [%r243+8],%r424; add.u64 %r202,%r202,%r424; st.u64 [%frame+184],%r202; add.u32 %r379,%r377,1; st.u32 [%frame+176],%r379; setp.gt.s32 %r1117,%r379,7; @ %r1117 bra $L225; add.u64 %r243,%r243,16; bra $L226; $L225: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; 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; ld.u64 %r202,[%frame+184]; ld.u32 %r379,[%frame+176]; mov.u64 %r243,%frame; $L226: add.u32 %r378,%r379,1; mov.u32 %r1292,%r378; add.u64 %r241,%r243,16; add.u32 %r289,%r272,-1; .loc 1 1756 9 setp.eq.f64 %r1124,%r256,0d0000000000000000; @ %r1124 bra $L227; .loc 1 1754 8 add.u64 %r1125,%r229,1; .loc 1 1757 7 st.u64 [%r243],%r1125; cvt.s64.s32 %r204,%r289; st.u64 [%r243+8],%r204; add.u64 %r202,%r202,%r204; st.u64 [%frame+184],%r202; st.u32 [%frame+176],%r378; setp.gt.s32 %r1126,%r378,7; @ %r1126 bra $L228; add.u32 %r378,%r379,2; add.u64 %r402,%r243,32; mov.u64 %r243,%r241; mov.u64 %r241,%r402; bra $L229; $L228: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; 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; ld.u64 %r202,[%frame+184]; ld.u32 %r1133,[%frame+176]; add.u32 %r378,%r1133,1; add.u64 %r241,%frame,16; mov.u64 %r243,%frame; bra $L229; $L227: .loc 1 1760 7 setp.le.s32 %r1134,%r289,0; @ %r1134 bra $L229; setp.le.s32 %r1135,%r289,16; @ %r1135 bra $L277; cvta.const.u64 %r1290,zeroes$4169; $L233: st.u64 [%r243],%r1290; mov.u64 %r1137,16; st.u64 [%r243+8],%r1137; add.u64 %r202,%r202,16; st.u64 [%frame+184],%r202; mov.u32 %r379,%r1292; st.u32 [%frame+176],%r379; setp.gt.s32 %r1138,%r379,7; @ %r1138 bra $L231; add.u64 %r243,%r243,16; bra $L232; $L231: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1143,[%value_in]; } setp.ne.u32 %r1144,%r1143,0; @ %r1144 bra $L14; ld.u64 %r202,[%frame+184]; ld.u32 %r379,[%frame+176]; mov.u64 %r243,%frame; $L232: add.u32 %r289,%r289,-16; setp.gt.s32 %r1145,%r289,16; @ ! %r1145 bra $L390; add.u32 %r1292,%r379,1; bra $L233; $L390: add.u32 %r378,%r379,1; add.u64 %r380,%r243,16; bra $L230; $L277: mov.u64 %r380,%r241; cvta.const.u64 %r1290,zeroes$4169; $L230: st.u64 [%r243],%r1290; cvt.s64.s32 %r209,%r289; st.u64 [%r243+8],%r209; add.u64 %r202,%r202,%r209; st.u64 [%frame+184],%r202; st.u32 [%frame+176],%r378; setp.gt.s32 %r1147,%r378,7; @ %r1147 bra $L234; add.u32 %r378,%r378,1; add.u64 %r241,%r380,16; mov.u64 %r243,%r380; bra $L229; $L234: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1152,[%value_in]; } setp.ne.u32 %r1153,%r1152,0; @ %r1153 bra $L14; ld.u64 %r202,[%frame+184]; ld.u32 %r1154,[%frame+176]; add.u32 %r378,%r1154,1; add.u64 %r241,%frame,16; mov.u64 %r243,%frame; bra $L229; $L223: .loc 1 1762 6 st.u64 [%r241],%r229; mov.u64 %r1155,1; st.u64 [%r241+8],%r1155; st.u64 [%frame+184],%r202; st.u32 [%frame+176],%r377; setp.gt.s32 %r1156,%r377,7; @ %r1156 bra $L235; add.u32 %r378,%r401,2; add.u64 %r241,%r241,32; bra $L229; $L235: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1161,[%value_in]; } setp.ne.u32 %r1162,%r1161,0; @ %r1162 bra $L14; ld.u64 %r202,[%frame+184]; ld.u32 %r1163,[%frame+176]; add.u32 %r378,%r1163,1; add.u64 %r241,%frame,16; mov.u64 %r243,%frame; $L229: .loc 1 1763 5 st.u64 [%r243],%r1329; cvt.s64.s32 %r212,%r234; st.u64 [%r243+8],%r212; add.u64 %r372,%r212,%r202; st.u64 [%frame+184],%r372; st.u32 [%frame+176],%r378; setp.le.s32 %r1165,%r378,7; @ %r1165 bra $L176; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1170,[%value_in]; } setp.ne.u32 %r1171,%r1170,0; @ %r1171 bra $L14; ld.u64 %r372,[%frame+184]; mov.u64 %r241,%frame; $L176: .loc 1 1770 13 and.b32 %r1172,%r231,4; .loc 1 1770 6 setp.eq.u32 %r1173,%r1172,0; @ %r1173 bra $L236; .loc 1 1771 4 sub.u32 %r261,%r232,%r239; setp.le.s32 %r1174,%r261,0; @ %r1174 bra $L236; ld.u32 %r373,[%frame+176]; setp.le.s32 %r1175,%r261,16; @ ! %r1175 bra $L391; cvta.const.u64 %r1294,blanks$4168; bra $L237; $L391: cvta.const.u64 %r1294,blanks$4168; $L240: st.u64 [%r241],%r1294; mov.u64 %r1177,16; st.u64 [%r241+8],%r1177; add.u64 %r372,%r372,16; st.u64 [%frame+184],%r372; add.u32 %r373,%r373,1; st.u32 [%frame+176],%r373; setp.gt.s32 %r1178,%r373,7; @ %r1178 bra $L238; add.u64 %r241,%r241,16; bra $L239; $L238: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1183,[%value_in]; } setp.ne.u32 %r1184,%r1183,0; @ %r1184 bra $L14; ld.u64 %r372,[%frame+184]; ld.u32 %r373,[%frame+176]; mov.u64 %r241,%frame; $L239: add.u32 %r261,%r261,-16; setp.gt.s32 %r1185,%r261,16; @ %r1185 bra $L240; $L237: st.u64 [%r241],%r1294; cvt.s64.s32 %r217,%r261; st.u64 [%r241+8],%r217; add.u64 %r372,%r372,%r217; st.u64 [%frame+184],%r372; add.u32 %r218,%r373,1; st.u32 [%frame+176],%r218; setp.le.s32 %r1187,%r218,7; @ %r1187 bra $L236; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1192,[%value_in]; } setp.ne.u32 %r1193,%r1192,0; @ %r1193 bra $L14; ld.u64 %r372,[%frame+184]; $L236: .loc 1 1774 33 max.s32 %r1194,%r232,%r239; .loc 1 1774 7 add.u32 %r407,%r407,%r1194; .loc 1 1776 3 setp.ne.u64 %r1195,%r372,0; @ %r1195 bra $L241; $L242: mov.u32 %r1196,0; st.u32 [%frame+176],%r1196; mov.u64 %r241,%frame; bra $L9; $L241: { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1328; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1201,[%value_in]; } setp.ne.u32 %r1202,%r1201,0; @ ! %r1202 bra $L242; bra $L14; $L15: .loc 1 1784 2 ld.u64 %r1203,[%frame+184]; setp.eq.u64 %r1204,%r1203,0; @ %r1204 bra $L14; add.u64 %r1208,%frame,168; { .param .u32 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .u64 %out_arg2; st.param.u64 [%out_arg2],%r409; .param .u64 %out_arg3; st.param.u64 [%out_arg3],%r1208; call (%value_in),__sprint_r,(%out_arg1,%out_arg2,%out_arg3); ld.param.u32 %r1209,[%value_in]; } $L14: .loc 1 1791 31 ld.u16 %r1211,[%r409+16]; and.b16 %r1210,%r1211,64; setp.ne.u16 %r1212,%r1210,0; @ ! %r1212 bra $L1; bra $L243; $L193: .loc 1 1719 7 st.u64 [%r241],%r248; st.u64 [%r241+8],%r424; add.u64 %r384,%r424,%r372; st.u64 [%frame+184],%r384; ld.u32 %r1214,[%frame+176]; add.u32 %r385,%r1214,1; st.u32 [%frame+176],%r385; setp.gt.s32 %r1215,%r385,7; @ %r1215 bra $L194; add.u64 %r242,%r241,16; bra $L196; $L62: .loc 1 943 9 mov.u32 %r231,%r230; mov.u32 %r233,0; mov.u32 %r235,%r233; bra $L150; $L71: ld.s8 %r395,[%frame+218]; .loc 1 1565 14 setp.ne.u32 %r1216,%r233,-1; @ %r1216 bra $L244; mov.u32 %r230,%r187; bra $L143; $L278: .loc 1 1882 5 mov.u32 %r296,%r233; $L88: .loc 1 1883 15 cvt.s64.s32 %r1217,%r296; .loc 1 1883 6 add.u64 %r299,%r229,%r1217; bra $L245; $L87: .loc 1 1880 11 mov.u32 %r1220,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r65; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r1220; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r233; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r1337; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r1336; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r1335; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r1228,[%value_in]; } mov.u64 %r229,%r1228; .loc 1 1882 5 setp.ne.u32 %r1293,%r364,71; @ %r1293 bra $L278; mov.u32 %r406,%r233; bra $L246; $L86: .loc 1 1880 11 mov.u32 %r1232,3; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r65; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r1232; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r233; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r1337; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r1336; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r1335; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r1240,[%value_in]; } mov.u64 %r229,%r1240; .loc 1 1883 15 cvt.s64.s32 %r166,%r233; .loc 1 1885 7 ld.s8 %r1243,[%r1240]; cvt.u16.u32 %r1242,%r1243; set.u32.eq.u16 %r1244,%r1242,48; neg.s32 %r1245,%r1244; .loc 1 1885 23 set.u32.neu.f64 %r1247,%r65,0d0000000000000000; neg.s32 %r1248,%r1247; cvt.u16.u32 %r1250,%r1245; cvt.u16.u32 %r1251,%r1248; and.b16 %r1249,%r1250,%r1251; cvt.u32.u16 %r1252,%r1249; cvt.u16.u8 %r1253,%r1252; setp.ne.u16 %r1254,%r1253,0; @ ! %r1254 bra $L392; bra $L247; $L212: .loc 1 1748 6 sub.u32 %r339,%r272,%r235; sub.u32 %r189,%r272,%r182; min.s32 %r224,%r189,%r339; bra $L215; $L244: .loc 1 1566 11 and.b32 %r231,%r187,-129; .loc 1 1574 15 set.u32.ne.u64 %r1256,%r237,0; neg.s32 %r1257,%r1256; .loc 1 1574 28 set.u32.ne.u32 %r1259,%r233,0; neg.s32 %r1260,%r1259; .loc 1 1574 20 cvt.u16.u32 %r1262,%r1257; cvt.u16.u32 %r1263,%r1260; or.b16 %r1261,%r1262,%r1263; .loc 1 1574 7 cvt.u32.u16 %r1264,%r1261; cvt.u16.u8 %r1265,%r1264; setp.ne.u16 %r1266,%r1265,0; @ %r1266 bra $L279; mov.u32 %r233,0; mov.u32 %r240,%r233; .loc 1 1573 7 add.u64 %r229,%frame,168; bra $L147; $L249: .loc 1 1883 15 cvt.s64.s32 %r1267,%r406; .loc 1 1883 6 add.u64 %r299,%r229,%r1267; setp.ne.u32 %r1293,%r364,71; bra $L245; $L246: .loc 1 1882 31 and.b32 %r1268,%r230,1; setp.ne.u32 %r1269,%r1268,0; @ %r1269 bra $L249; bra $L393; $L84: .loc 1 1315 10 or.b32 %r231,%r230,256; .loc 1 1814 6 mov.b64 %r1270,%r256; shr.u64 %r1271,%r1270,32; .loc 1 1814 5 cvt.u32.u64 %r1272,%r1271; setp.lt.s32 %r1273,%r1272,0; @ %r1273 bra $L280; .loc 1 1880 11 mov.u32 %r1277,1; mov.u32 %r1276,2; { .param .u64 %value_in; .param .u64 %out_arg1; st.param.u64 [%out_arg1],%r408; .param .f64 %out_arg2; st.param.f64 [%out_arg2],%r256; .param .u32 %out_arg3; st.param.u32 [%out_arg3],%r1276; .param .u32 %out_arg4; st.param.u32 [%out_arg4],%r1277; .param .u64 %out_arg5; st.param.u64 [%out_arg5],%r1337; .param .u64 %out_arg6; st.param.u64 [%out_arg6],%r1336; .param .u64 %out_arg7; st.param.u64 [%out_arg7],%r1335; call (%value_in),_dtoa_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5,%out_arg6,%out_arg7); ld.param.u64 %r1284,[%value_in]; } mov.u64 %r229,%r1284; mov.f64 %r65,%r256; .loc 1 1312 10 mov.u32 %r233,%r1277; .loc 1 1818 9 mov.u32 %r316,0; .loc 1 1312 10 mov.u32 %r406,%r233; bra $L246; $L1: .loc 1 1793 1 mov.u32 %value,%r407; 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 657 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 659 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 470 14 ld.u16 %r39,[%r35+16]; and.b16 %r38,%r39,-3; st.u16 [%frame+1040],%r38; .loc 1 471 15 ld.u32 %r40,[%r35+172]; st.u32 [%frame+1196],%r40; .loc 1 472 13 ld.u16 %r41,[%r35+18]; st.u16 [%frame+1042],%r41; .loc 1 473 15 ld.u64 %r42,[%r35+48]; st.u64 [%frame+1072],%r42; .loc 1 474 14 ld.u64 %r43,[%r35+64]; st.u64 [%frame+1088],%r43; .loc 1 477 27 st.u64 [%frame+1024],%frame; .loc 1 477 17 st.u64 [%frame+1048],%frame; .loc 1 478 27 mov.u32 %r44,1024; st.u32 [%frame+1036],%r44; .loc 1 478 17 st.u32 [%frame+1056],%r44; .loc 1 479 16 mov.u32 %r46,0; st.u32 [%frame+1064],%r46; .loc 1 485 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 486 5 setp.lt.s32 %r53,%r33,0; @ %r53 bra $L396; .loc 1 486 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 486 15 setp.eq.u32 %r58,%r57,0; .loc 1 487 7 selp.u32 %r33,%r33,-1,%r58; $L396: .loc 1 488 5 ld.u16 %r60,[%frame+1040]; and.b16 %r59,%r60,64; setp.eq.u16 %r61,%r59,0; @ %r61 bra $L395; .loc 1 489 14 ld.u16 %r63,[%r35+16]; or.b16 %r62,%r63,64; st.u16 [%r35+16],%r62; $L395: .loc 1 495 1 mov.u32 %value,%r33; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } /921 1591654536 399 399 100644 5124 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // 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); .file 1 "../../../../../../newlib/libc/stdio/vsnprintf.c" // 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); // 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_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 63 6 setp.le.u64 %r32,%r29,2147483647; @ %r32 bra $L2; .loc 1 65 19 mov.u32 %r33,139; st.u32 [%r27],%r33; .loc 1 66 14 mov.u32 %r26,-1; bra $L1; $L2: .loc 1 68 12 mov.u16 %r34,520; st.u16 [%frame+16],%r34; .loc 1 69 22 st.u64 [%frame],%r28; .loc 1 69 15 st.u64 [%frame+24],%r28; .loc 1 70 22 setp.eq.u64 %r35,%r29,0; @ %r35 bra $L4; .loc 1 70 41 cvt.u32.u64 %r36,%r29; add.u32 %r25,%r36,-1; .loc 1 70 22 st.u32 [%frame+12],%r25; .loc 1 70 15 st.u32 [%frame+32],%r25; .loc 1 71 11 mov.u16 %r37,-1; st.u16 [%frame+18],%r37; .loc 1 72 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 73 6 setp.lt.s32 %r43,%r26,-1; @ %r43 bra $L5; $L7: .loc 1 76 7 ld.u64 %r24,[%frame]; .loc 1 76 11 mov.u32 %r44,0; st.u8 [%r24],%r44; bra $L1; $L4: .loc 1 70 22 cvt.u32.u64 %r46,%r29; st.u32 [%frame+12],%r46; .loc 1 70 15 st.u32 [%frame+32],%r46; .loc 1 71 11 mov.u16 %r48,-1; st.u16 [%frame+18],%r48; .loc 1 72 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 73 6 setp.lt.s32 %r54,%r26,-1; @ ! %r54 bra $L1; bra $L6; $L5: .loc 1 74 17 mov.u32 %r55,139; st.u32 [%r27],%r55; bra $L7; $L6: mov.u32 %r56,139; st.u32 [%r27],%r56; $L1: .loc 1 78 1 mov.u32 %value,%r26; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } // 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 %r24; .reg .u64 %r25; .reg .u64 %r26; .reg .u64 %r27; .reg .u64 %r33; .reg .u32 %r34; mov.u64 %r24,%ar0; mov.u64 %r25,%ar1; mov.u64 %r26,%ar2; mov.u64 %r27,%ar3; .loc 1 41 10 ld.global.u64 %r33,[_impure_ptr]; { .param .u32 %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),_vsnprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4,%out_arg5); ld.param.u32 %r34,[%value_in]; } .loc 1 42 1 mov.u32 %value,%r34; st.param.u32 [%value_out],%value; ret; } /940 1591654536 399 399 100644 3493 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // 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); .file 1 "../../../../../../newlib/libc/stdio/vsprintf.c" // BEGIN GLOBAL FUNCTION DECL: vsprintf .visible .func (.param .u32 %value_out) vsprintf (.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: _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 61 22 st.u64 [%frame],%r25; .loc 1 61 15 st.u64 [%frame+24],%r25; .loc 1 62 15 mov.u32 %r28,2147483647; st.u32 [%frame+32],%r28; .loc 1 62 22 st.u32 [%frame+12],%r28; .loc 1 60 12 mov.u32 %r30,-65016; st.u32 [%frame+16],%r30; .loc 1 64 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 65 5 ld.u64 %r22,[%frame]; .loc 1 65 9 mov.u32 %r36,0; st.u8 [%r22],%r36; .loc 1 67 1 mov.u32 %value,%r35; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } // 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 %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 39 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),_vsprintf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 40 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } lib_a-vsscanf.o/1591654536 399 399 100644 4090 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // 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); .file 1 "../../../../../../newlib/libc/stdio/vsscanf.c" // BEGIN GLOBAL FUNCTION DECL: vsscanf .visible .func (.param .u32 %value_out) vsscanf (.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: 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_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 63 12 mov.u16 %r29,516; st.u16 [%frame+16],%r29; .loc 1 64 22 st.u64 [%frame],%r26; .loc 1 64 15 st.u64 [%frame+24],%r26; .loc 1 65 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 65 22 cvt.u32.u64 %r23,%r31; st.u32 [%frame+8],%r23; .loc 1 65 15 st.u32 [%frame+32],%r23; .loc 1 66 11 mov.u64 %r32,__seofread; st.u64 [%frame+56],%r32; .loc 1 67 15 mov.u64 %r33,0; st.u64 [%frame+88],%r33; .loc 1 68 15 st.u64 [%frame+120],%r33; .loc 1 69 11 mov.u16 %r35,-1; st.u16 [%frame+18],%r35; .loc 1 70 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 71 1 mov.u32 %value,%r40; st.shared.u64 [%sspslot],%sspprev; st.param.u32 [%value_out],%value; ret; } // 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 %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 43 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),_vsscanf_r,(%out_arg1,%out_arg2,%out_arg3,%out_arg4); ld.param.u32 %r32,[%value_in]; } .loc 1 44 1 mov.u32 %value,%r32; st.param.u32 [%value_out],%value; ret; } lib_a-wcstold.o/1591654536 399 399 100644 1019 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .address_size 64 // END PREAMBLE // BEGIN GLOBAL FUNCTION DECL: wcstold .visible .func (.param .f64 %value_out) wcstold (.param .u64 %in_ar0, .param .u64 %in_ar1); .file 1 "../../../../../../newlib/libc/stdlib/wcstold.c" // BEGIN GLOBAL FUNCTION DECL: wcstod .extern .func (.param .f64 %value_out) wcstod (.param .u64 %in_ar0, .param .u64 %in_ar1); // 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 .f64 %r27; mov.u64 %r23,%ar0; mov.u64 %r24,%ar1; .loc 1 39 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; call (%value_in),wcstod,(%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-write.o/ 1591654536 399 399 100644 2552 ` // BEGIN PREAMBLE .version 3.1 .target sm_30 .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 %r27; .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 3 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 %r29,%r32; add.u64 %r27,%r29,%r33; cvta.const.u64 %r45,$LC0; $L6: .loc 1 31 5 ld.s8 %r40,[%r29]; 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]; } add.u64 %r29,%r29,1; .loc 1 30 3 setp.ne.u64 %r43,%r27,%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; } 07070100000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000b00000000TRAILER!!!