2022-05-05T12:03:42,905 Created temporary directory: /tmp/pip-ephem-wheel-cache-r2axzz7x 2022-05-05T12:03:42,910 Created temporary directory: /tmp/pip-req-tracker-2ucmirq_ 2022-05-05T12:03:42,911 Initialized build tracking at /tmp/pip-req-tracker-2ucmirq_ 2022-05-05T12:03:42,911 Created build tracker: /tmp/pip-req-tracker-2ucmirq_ 2022-05-05T12:03:42,912 Entered build tracker: /tmp/pip-req-tracker-2ucmirq_ 2022-05-05T12:03:42,913 Created temporary directory: /tmp/pip-wheel-8_pp0xgk 2022-05-05T12:03:42,983 Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple 2022-05-05T12:03:42,997 2 location(s) to search for versions of clang-format: 2022-05-05T12:03:42,997 * https://pypi.org/simple/clang-format/ 2022-05-05T12:03:42,997 * https://www.piwheels.org/simple/clang-format/ 2022-05-05T12:03:42,998 Fetching project page and analyzing links: https://pypi.org/simple/clang-format/ 2022-05-05T12:03:42,999 Getting page https://pypi.org/simple/clang-format/ 2022-05-05T12:03:43,002 Found index url https://pypi.org/simple 2022-05-05T12:03:43,190 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/e3/71/db01cf5d188d0669af9cfd9f5cf8cfb47898df6ad5c86bc008ab3b73d327/clang_format-6.0.1-py2-none-manylinux1_x86_64.whl#sha256=1b71b62346e281f96aa9d45a8892427ce1eae7783c24ac0e1efbab1d5340748d (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,190 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/16/60/65c642879f290c4233ac75d7f91038509750347271cd135a62cf0b86019c/clang_format-6.0.1-py2.py3-none-manylinux1_x86_64.whl#sha256=8028c358d0838e83ea85254bedba846f2106348406c9cdc4f2724779704eedca (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,191 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/17/28/feeb87d11c17d4734763db4c0a1a6939448f0c11a1713fac142e8dd2f107/clang_format-7.1.0-py2.py3-none-manylinux1_x86_64.whl#sha256=32629996956b3e34494a926a76835e3371f10c2823c3078f5fbef08bfebbaae7 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,191 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/37/66/75e3c14f22c8a7a02c7e337547e29d42bed516ba8067fdef87d3d9346e52/clang_format-8.0.1-py2.py3-none-manylinux1_x86_64.whl#sha256=d3d0d62281ace883bc6e4188f949308b8f2e4f6de8fac463e5abd1ae02c03db6 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,192 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/25/f2/d989afaf8a91385f18fd06e6202644be0bc3a1d14548c18a8ece4911e005/clang_format-9.0.0-py2.py3-none-manylinux1_x86_64.whl#sha256=085342f9e238c9b03a019e20ec23f242f8795a3cca9296ab2427b1dea45e7014 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,193 Found link https://files.pythonhosted.org/packages/23/65/73a9af944aa3d8099f6664565f8a1f1be2a0c9537c4129cd022130fdeccd/clang-format-10.0.1.tar.gz#sha256=beab968d1857e2cb4c2907e8cc6dcd7fb0ee6e9a37bbfaa014fc008b2bb268cc (from https://pypi.org/simple/clang-format/), version: 10.0.1 2022-05-05T12:03:43,193 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/4e/7c/9bb87b8bae9ac577d1c54d769fca4b48916299b7ab106f11f097b90fd9b3/clang_format-10.0.1-py2.py3-none-macosx_10_9_universal2.whl#sha256=cdd3f78206fa6e6e9e3a18daaba11d5816a5cb0b7f5858c028fdff7d1d066b24 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,194 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/a9/4d/ceb0d28ece88c6ff29f8ce776657107642a785f38e5be056fcfa31d0c18a/clang_format-10.0.1-py2.py3-none-manylinux_2_12_i686.manylinux2010_i686.whl#sha256=8d9b96c63becdbebfe7f9f79911a1187836622de4249d974666a7779468489f2 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,194 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/b4/c7/722b428d302af62afe8b485b229ede1937b83f0a024f0d45980e8f186d21/clang_format-10.0.1-py2.py3-none-manylinux_2_12_x86_64.manylinux2010_x86_64.whl#sha256=9b50fd165bc735f19a0aefb8eb829abc093d4b9d1102669c9d39c19ba31bef91 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,195 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/b4/26/3545cb69fe1affb2e259222bb11c7775cc8e1cdf707824d3480dbd51b297/clang_format-10.0.1-py2.py3-none-win32.whl#sha256=146161362fbbd4513008043c6e6aba381bf32914f7061b6781276f1d3b16b1cd (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,196 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/da/a5/2ec8b5103064ebe4001b68ad1bc9abbd3d5e6e87aa96100019ef35875aba/clang_format-10.0.1-py2.py3-none-win_amd64.whl#sha256=d3121157d188f21ccd1cd37f91d03150ad98f2fbb197737cf241e1d1b2a99246 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,196 Found link https://files.pythonhosted.org/packages/65/f6/6c33182b04fe9074beb3ea57b71d069692858087283a786aa9db53b634d0/clang-format-10.0.1.1.tar.gz#sha256=016480cc99ff8fa9342672608b2e68f9eca9310407d248b1e7d8679c22dc6344 (from https://pypi.org/simple/clang-format/), version: 10.0.1.1 2022-05-05T12:03:43,197 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/53/e0/a056a996290c5b288c0b63ac884c095b9ab4fb3c4f29706d551c3130e070/clang_format-10.0.1.1-py2.py3-none-macosx_10_9_universal2.whl#sha256=222d6ca46ea8a68db1874ba7772f42efb6ffad4cdadf660da11d3e99a283ca4a (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,197 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/8a/1a/2055e3765e1f60cb08a398fe13944489168c96eceaf3abcee89fd9275f94/clang_format-10.0.1.1-py2.py3-none-manylinux_2_12_i686.manylinux2010_i686.whl#sha256=402886a26608ea78d1f759aef71ba5d2f0459ebf2109aca88053e3dbd1fc8254 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,198 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/e5/4e/51b96a7905d1e254bbb1df4894a22d0af1ffd4b2e9add5f6fba0cbdfeb2d/clang_format-10.0.1.1-py2.py3-none-manylinux_2_12_x86_64.manylinux2010_x86_64.whl#sha256=aae62178afdd482c7b1171d666ef29baf22a583e71ade743093929db4ac245b4 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,199 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/57/54/35f1baf05ad2a6cc1863d438530745f8b2d2fb27b3bb83d045750c78503a/clang_format-10.0.1.1-py2.py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl#sha256=0df136ac7b5ca9aacec29f656dc7932031a0992594c96f0f386ab757db63c536 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,199 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/1d/6b/52a11a066f0a643a64f4075abdedafa5612c9e2d3110b6f284d825e6514e/clang_format-10.0.1.1-py2.py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl#sha256=dc60fef84b74a3375cd768a39bdf145b268555b6998ca496588cd7471d0ed983 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,200 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/bf/ab/008855a4cf65da825b5aa15c3971d591bfcb674d100b5ecc68edca1d8085/clang_format-10.0.1.1-py2.py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl#sha256=4696ce1dff189402ea64b9c1158b5058ef1fe2f06d78332a23980871f4c76234 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,200 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/20/9e/f13aa219298ccbae3691624a3014ddd2d269950fa78aaaf1976052098a89/clang_format-10.0.1.1-py2.py3-none-win32.whl#sha256=d5e2807a3e2a5bfb07051a42deb93f4488661acaf02f2d99b5811fa4a43e20c1 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,201 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/17/da/8a32527c09b77fba26aae1a40837c35b42c321d5e7917862c466532f39c2/clang_format-10.0.1.1-py2.py3-none-win_amd64.whl#sha256=fa1eb6ef143a072b0b350c9b4c74374fa88d93d5ddd8f4e6ad24b04442105990 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,201 Found link https://files.pythonhosted.org/packages/f8/a4/bb2e874b573eeb040ec904e8e42d6f5c9a1f12e2020af1b07348c77de510/clang-format-11.0.1.tar.gz#sha256=7e62439218c38126f9234bc0fdfa85cb2ef5798219190acc911962f0b0a0abfc (from https://pypi.org/simple/clang-format/), version: 11.0.1 2022-05-05T12:03:43,202 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/96/0b/d7a1f4cbabab240a1efd3fd4b6ca394f957c8e140f2e7325063be42da48a/clang_format-11.0.1-py2.py3-none-macosx_10_9_universal2.whl#sha256=cc3165c67df81ec1daa99d7e922f5bdd02d9e65c12242b3367967b145e5df463 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,202 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/bb/44/c4cee654285b087cfd0933526742d4f1400f8ef2ae30c4cc27125134ef01/clang_format-11.0.1-py2.py3-none-manylinux_2_12_i686.manylinux2010_i686.whl#sha256=a6f08bf948857205b3c6d8efe885658a46533797c4a822c03ba4004bc18e830f (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,203 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/1f/3e/8d4b80c18fe32c9225cdd19a6d8770713ab0f852f163abebbc26b2c132c8/clang_format-11.0.1-py2.py3-none-manylinux_2_12_x86_64.manylinux2010_x86_64.whl#sha256=47ea0da184a602b06bef2cfd4590137b08aa67f3e8eab7b33a6dc48e1a28fe40 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,204 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/49/28/cc3effc16f6d8b1321141e228b3b05525110830d8f97cc6966e356264d4c/clang_format-11.0.1-py2.py3-none-win32.whl#sha256=462bee159286fc75a972660ac2d17337717c1593639a1f12a9d9751624877c0f (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,204 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/e0/e1/db42d5ce564cbde759ce73ab27d9e1e53ab64f28a620a5eb0f1e31d7729a/clang_format-11.0.1-py2.py3-none-win_amd64.whl#sha256=7de5848f098ec6a9935222ade8b097a842a7375897de5cbe3c073c7627d47024 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,205 Found link https://files.pythonhosted.org/packages/ec/53/7109816f964f69115627e4c63ddb6c96ffd67d93251401cad4a60c7974db/clang-format-11.0.1.1.tar.gz#sha256=b4d073d1809f8aaee9183d5f9843abe4b070784a89a074a7fa5a59739a250f0c (from https://pypi.org/simple/clang-format/), version: 11.0.1.1 2022-05-05T12:03:43,205 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/03/df/347ae0aec365dc9431fdbacd059855e8988f608757c8241a6d26f0b44370/clang_format-11.0.1.1-py2.py3-none-macosx_10_9_universal2.whl#sha256=0a0ea9807703fc30ed3bd2380258aa6f20ed43da0bab5365e952dbce9537025a (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,206 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/10/25/3e158143713530d888fb91da6765b602a11dc0b92837155f5f1e1b8b88e8/clang_format-11.0.1.1-py2.py3-none-manylinux_2_12_i686.manylinux2010_i686.whl#sha256=8f35614c66e848f584bee67b65611849a2188103d8f155229eb5bcd3516b92f1 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,206 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/9b/5c/71a87be95e73097f2103843206d5ea9637692638c0877fe19877facde6c9/clang_format-11.0.1.1-py2.py3-none-manylinux_2_12_x86_64.manylinux2010_x86_64.whl#sha256=022eec1067db92375e1c031059f5202309e9b458d30fd694c69c0da33e1b17f4 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,207 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/07/a2/a5ec8aaa841901d31f44b46e69ce38eb954f98dca7c7e1a6d5f5025948b3/clang_format-11.0.1.1-py2.py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl#sha256=197c63fca53608114a54c1a0d0dc822513cfd8ed6129184ee7c46d570e12e0c2 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,207 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/21/73/f8808e3751ed490d1c2524403b05d7bbe3efb34b1b86564f058650de1fa3/clang_format-11.0.1.1-py2.py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl#sha256=3a34b43f416d55e67710caee4641b2be4d514f559884edd21db432da51bbf881 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,208 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/3c/62/256f565ad6c672e7f130f7ced7b3f257571ed03367c13304ba867ef682c8/clang_format-11.0.1.1-py2.py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl#sha256=b52261c86436870a7385a4bba513570629a04d1a0cdd2fe5561ea56972224cf5 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,208 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/65/81/aba3b46668c8c1fd150343275a2d26a6b3010372249a26cf848ff08613f3/clang_format-11.0.1.1-py2.py3-none-win32.whl#sha256=2c120fe194a9d16f451e30e2279ffa2394cca05e97e339d4a356b8f3b2a99ef7 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,209 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/b7/28/e7519e2754f41dd64db5491cae7df47dec08a4617101dac94496dc32dc7d/clang_format-11.0.1.1-py2.py3-none-win_amd64.whl#sha256=6f3cbd3fe116295a02163cb7a188144a72d97587f14daaf8b152db3889920af6 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,210 Found link https://files.pythonhosted.org/packages/07/d3/37cfc13aaa8edf27251aa07455a6f8c0ea95bf591a2822fa77083df5ac70/clang-format-11.1.0.tar.gz#sha256=4f6d9d33bf52a1e23d5eda47b09707591d3eb19f1a2e40de12f924a71f425962 (from https://pypi.org/simple/clang-format/), version: 11.1.0 2022-05-05T12:03:43,210 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/8a/f5/1d63d47896cbd8c25075fd4dada011a9b06df9d3af6ed9ed47275c462364/clang_format-11.1.0-py2.py3-none-macosx_10_9_universal2.whl#sha256=c0feccbe91e89bb4e866d51118e119902c04be11b0dc93af693b5da8f9e3818a (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,211 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/65/ea/3dacbe855124094332d097ac7d23ba36b6fa7722303ed0d5c5660799cab9/clang_format-11.1.0-py2.py3-none-manylinux_2_12_i686.manylinux2010_i686.whl#sha256=f1083d728bcd728ebddc49c9225f33cd2d213b3b6c36d9df5c94af2af0c10277 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,211 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/4d/fb/afd60536781864385b742b1f3aa60b9959fdc63e652f63fce15dee0d17ec/clang_format-11.1.0-py2.py3-none-manylinux_2_12_x86_64.manylinux2010_x86_64.whl#sha256=0da463012d74ad3335b6bccdb6f0721b12beac6acacc9694e2abcfc241695683 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,212 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/c2/a0/f7cef35d0d019b60333ce9acf4ebaadec1b208752e3e462a19e1a909feab/clang_format-11.1.0-py2.py3-none-win32.whl#sha256=06c0a8081b2e69d7eb1aba446e579cbc0bddd9411a5b28222de9311c523ea081 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,212 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/1d/9c/7b1621ea1131fe085dbd47f1ba9e1f515c4334b0f64b07e974c5c856ee9b/clang_format-11.1.0-py2.py3-none-win_amd64.whl#sha256=e6986ae619fafeaa7924f6c745518d895ca1b2b7e2fcc3cb9b57d0d7a6aa305b (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,213 Found link https://files.pythonhosted.org/packages/38/30/267c46f17b536b5e93b47aee4231a0270115a04c71243115fa3c7cbc953d/clang-format-11.1.0.1.tar.gz#sha256=0d1ec838fc335d3102888bbbcd0bd0774a0f459ce1af1c233cbd7aefaa055e7d (from https://pypi.org/simple/clang-format/), version: 11.1.0.1 2022-05-05T12:03:43,214 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/08/ff/8ce1d4da31b1689418cb41db0c6c5a5495a445d8ac110429ffce36c713a7/clang_format-11.1.0.1-py2.py3-none-macosx_10_9_universal2.whl#sha256=95f22a41d9e2eb2972f8cb547b2c621ab6862067c14ab22946d5607fff005dc7 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,214 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/cc/90/36525bed3d15bec079ce496e83d029b84dcb6e5d968ddc34f1c3dc37d6f9/clang_format-11.1.0.1-py2.py3-none-manylinux_2_12_i686.manylinux2010_i686.whl#sha256=7ad10d9bd88d5fca58ed701144cbc9d4e3995a51554db70c341edef2f0c939df (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,215 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/cc/c6/26bfbcf434a9c89073c95c1b970dc8e9c89749850c094d098e64c08b2735/clang_format-11.1.0.1-py2.py3-none-manylinux_2_12_x86_64.manylinux2010_x86_64.whl#sha256=b474905f60cf2866d00ba8cc3d1f7c10e8aaebc425c5323f8db18c03a280f61c (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,215 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/c1/a7/f11972623ae28e733a146f6b5ab51a87f5ee87b0b4cbb4d2973a80252e98/clang_format-11.1.0.1-py2.py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl#sha256=3e54d3b8afebc062bda6116b38f65cae6240e175ee0ab418cd818296234d1045 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,216 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/98/24/f9270f3f2b2fb99920cf211868433195cf9ce166f886905466dcfc317ffc/clang_format-11.1.0.1-py2.py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl#sha256=61f8e9a605e03b44150874c165c2ec8a56fc898ad6ed9f013819946ccb284e57 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,216 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/85/32/65d7dd87202e35abd5f44090c536afd120a363e992cac6774d1ea907e470/clang_format-11.1.0.1-py2.py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl#sha256=42330d50d2a0dec22374368c9f2d9ae6084062f8ac649a13e6d9c5871e4dab37 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,217 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/d0/d4/5c228fcf2d8f3792de24123d63275857bcca0dbfae3ea77bded622de4f1d/clang_format-11.1.0.1-py2.py3-none-win32.whl#sha256=0ebc9b51db01baa31f7c0e07705711adcfa5475ed31323174f110dfc61b1aa2b (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,217 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/93/b7/ddc54c9f4c86b3280f4334d7af2ddb18fb33d1ed93721873328f516f782e/clang_format-11.1.0.1-py2.py3-none-win_amd64.whl#sha256=d26620fa30e2289e4e6aaa5d607cde281d6c24e388f970b245b439ad48d75191 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,218 Found link https://files.pythonhosted.org/packages/6d/06/31bb5d5bb91b3507d60c40be617ad625a7e38b01bf656a62cd534bdbb227/clang-format-12.0.1.tar.gz#sha256=b687687ea47f7b236edf8b436d126e944d5d27ae0d45e14184a54d890bf4242e (from https://pypi.org/simple/clang-format/), version: 12.0.1 2022-05-05T12:03:43,218 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/df/a6/d15aa3ceada436d2a5dec5de0ba332afc8a09637833be746545697035624/clang_format-12.0.1-py2.py3-none-macosx_10_9_universal2.whl#sha256=03665dc813affb129fc48a7c38c98d3675f447e8b59883aac96b07c51b83c491 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,219 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/d2/e4/7a14a2044a62ee6fb17a403bb4ebf0161b1a392b20fd976d29c89a8e5da0/clang_format-12.0.1-py2.py3-none-manylinux_2_12_i686.manylinux2010_i686.whl#sha256=4a64e3a4c206146bc3ca79ad9e3e38469ecb2778c8a02cd97157b780368b706b (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,220 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/af/4d/af48745573954c74e554a5ce65e2372248a72b0f6694422cfdad8f768508/clang_format-12.0.1-py2.py3-none-manylinux_2_12_x86_64.manylinux2010_x86_64.whl#sha256=46a0cd3e8b470cf33cfa919dbd9e04b8df7efe3facb9a8f6a5342ab8e841c25d (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,220 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/a0/22/9bfe24e6028d4cd7143f46d4c7100228f2f49a762a115c5e603920218b47/clang_format-12.0.1-py2.py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl#sha256=638646ae4246eafbcc54e8154a776cfaa79556d9aac7a200127f94fae7fd8468 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,221 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/3e/4b/52375ef0d5d7be44fa7f5fd6ab3c6c6b0bfdae06ebd422df3c676b106d14/clang_format-12.0.1-py2.py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl#sha256=ecfc433f69fb810d54371018a94c8186b9c40ba0cb9818041a467335863c8cf2 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,221 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/05/88/3c4c329fc29cd9381584847cffd72bae06f0ae4be2d6a18b10f1ee8b420f/clang_format-12.0.1-py2.py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl#sha256=5a0b9b94bd5cc0638bbe84603e13da3a8e0c19c7dfeb96c3944b55f49572602b (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,222 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/ee/ab/99c3d2bc229a82ffbc08880519a42cd1b6eeed4d837ca8d1d414ca2b0544/clang_format-12.0.1-py2.py3-none-win32.whl#sha256=eb972f0eef8959328e15a55e6167a0e565e64436e2a05218c4727119e5f4a10e (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,222 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/5d/31/5a0ffd7849042f2d4d1b6304d40bb0720976c6151a9b8dfb7f44de511da8/clang_format-12.0.1-py2.py3-none-win_amd64.whl#sha256=dadd2ae65e28b1b9a608babbdf1235bfed539d519e1ec863ca1ebbb921f9de22 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,223 Found link https://files.pythonhosted.org/packages/43/72/689b399d5e3461c36c8a5709c14259076e9305e3b14d7912ab0754a9b529/clang-format-12.0.1.1.tar.gz#sha256=6bdc9f70f9e384bb5e238f2f6859e0719dcc5caf1cb6c7e61b9670fc42727297 (from https://pypi.org/simple/clang-format/), version: 12.0.1.1 2022-05-05T12:03:43,224 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/54/05/32361da7bf4460efc0a5847cc782a68120222a82854bce3db7f28069325b/clang_format-12.0.1.1-py2.py3-none-macosx_10_9_universal2.whl#sha256=93ad8524f76853baada61236444012894e34a738dce8094d3914af0e043e1712 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,224 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/32/63/b07a00a5f4df92196dd0e36f2b5e801a6de6059be13835db8b8e16201b77/clang_format-12.0.1.1-py2.py3-none-manylinux_2_12_i686.manylinux2010_i686.whl#sha256=967dabf0ef648a5237f908d039d9e4969474451621928c663ed6196505b2826d (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,225 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/97/62/09e28616eeb4311812ebb46c14ee942d7e1e27dea17eefa8212f34939ae6/clang_format-12.0.1.1-py2.py3-none-manylinux_2_12_x86_64.manylinux2010_x86_64.whl#sha256=312246f973b2e0df52a6d59085610ebe48de216af1ba3b9a3ac1f7dc44b7491d (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,225 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/a3/02/0058414c6991d9254be1e59fa1bb0a8e373a5938e21aad81351989a7a264/clang_format-12.0.1.1-py2.py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl#sha256=acc7878471d6f12800ada339c2ddedc4dbff64af56cb787ae2daa687f9cd5606 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,226 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/6c/5a/4e2a12a045f7ada09398f9beaed7d37555f36d08a352c10401ccefbf8aa3/clang_format-12.0.1.1-py2.py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl#sha256=1c2a5fb8c1f863008f0413b3ddb4713564fe3d396bd51e74ea8b75fc0a77669b (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,226 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/79/c8/778eb2bf871af26ccf417d8279e10a022ae4222898dbbee4e576cddb9b9e/clang_format-12.0.1.1-py2.py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl#sha256=cd8cb6c0587eaa0367fe50af9cc03676bce55daf33fb98e7ecfd24a1cfe7965c (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,227 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/2f/f3/77622e1014d141f286464fe7a6070407bc39e53b7aec967bc63b4fc6f613/clang_format-12.0.1.1-py2.py3-none-win32.whl#sha256=4e3631ed85589b71a491590845048c58815c6bc45ba19958ae1a61e830366bd6 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,227 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/7c/ba/0bd4789f46d617d0df9c3ca7bdaeab1cbe9b0ccbeef437900b75ed4fed78/clang_format-12.0.1.1-py2.py3-none-win_amd64.whl#sha256=89c0d0dd644c930e68cd59c99c3822569ca7d1acb131ef65bda9733b2746407b (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,228 Found link https://files.pythonhosted.org/packages/81/1a/236ddebc69e7d878dc81519147d51cb2155266e0061ab49a8c5761b4a398/clang-format-13.0.0.tar.gz#sha256=cc0c5e791f180ad5141d800834f6041862ef6179213b6bd7fcd5296719490ac0 (from https://pypi.org/simple/clang-format/), version: 13.0.0 2022-05-05T12:03:43,229 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/2c/a6/085544c6a6d2b8218661fd70a9a52e925673454fa7333c9b481409cb244d/clang_format-13.0.0-py2.py3-none-macosx_10_9_universal2.whl#sha256=b7f9824065e1b4d6a1bc5d0000a5550929be63e8bb05252892fbe858130e5167 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,229 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/04/fc/831aec2978fd04940d8c6a1bc8580f62ce6af86e4aeaad71bdefd1250c33/clang_format-13.0.0-py2.py3-none-manylinux_2_12_i686.manylinux2010_i686.whl#sha256=5bd10c0860a82b2806fad11d161d26f45290b56fdc4e2feaac64e16565482388 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,230 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/82/ed/d8a5af59e151006a32f23c08bccbcf1e919b9a4ef72c240b740c0e8cb65c/clang_format-13.0.0-py2.py3-none-manylinux_2_12_x86_64.manylinux2010_x86_64.whl#sha256=e978ad130d2b540e013784d96252ca89e45a42337faa1bbf5a7db9bf40c37a5c (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,230 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/d3/9a/623a6ab24134157eb45bc6400eae7b2795099053ce04ae4fdbccade1e246/clang_format-13.0.0-py2.py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl#sha256=9146981b7f32e39614afc1f92aa460480d568e6ec1c7c2f3dfbe2bf3922b19d7 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,231 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/94/46/edcd121aa0b1decccbeffa216f3c86002bfc130bcdf774fab792f66e3dfe/clang_format-13.0.0-py2.py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl#sha256=b8b09158ace5a8155f8a0c0cb75d4140091ab3d95f42b07c7d89c9989666bc88 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,231 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/03/ff/76524934e9be64294bbf01ad6adb642a8c1134416f11ecee671f85311b98/clang_format-13.0.0-py2.py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl#sha256=3483f3a578b13bcd31c72dd06de49cbc478052611b90371e6d76e302ba763f99 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,232 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/d6/23/1d6798d498fed0421a95946afcb44a47b676c9a2cae6c897dd08000fcfa3/clang_format-13.0.0-py2.py3-none-win32.whl#sha256=934a77d8f0c1820091bad16faf71dc9887c02a3854d202c51b83cf059011c02a (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,232 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/2e/43/8c231f200afed35b36ce884c07df2b708b64f1e84e7a7c0bb0a8b278be18/clang_format-13.0.0-py2.py3-none-win_amd64.whl#sha256=3d613b5c68847a8425dd44578ce7216a25fd8235a48ba4f4f70b37ec80d2d319 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,233 Found link https://files.pythonhosted.org/packages/0f/6a/46e36463d43cbe6aa0a87a09f440fff380352b106b5d0747b23c33b38df5/clang-format-13.0.1.tar.gz#sha256=deb131bee8716aead66f0bbf64126cb9e18499d18ea75801dda86ff842320142 (from https://pypi.org/simple/clang-format/), version: 13.0.1 2022-05-05T12:03:43,233 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/14/8e/93bb3094512d6bb515c28156373ac6cb786e0cc08ff6492aca0fc7d592d8/clang_format-13.0.1-py2.py3-none-macosx_10_9_universal2.whl#sha256=826d487b1cf0190e0c3a5e064b56e2f6e7c4c799c78e59ff6d8991df916f2222 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,234 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/af/af/dd02567f60d1be34819d1f7e8958ef786850c062527d1f2343e5f16c746f/clang_format-13.0.1-py2.py3-none-manylinux_2_12_i686.manylinux2010_i686.whl#sha256=a8fab9bb9b96be6024a2d6e686894cb5725001399ef04a51383cda551e354c3a (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,234 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/17/fd/723876a1e55397e4b060f2e9e3d4a5e4820f6e09ea05fe8c8cf4ddfd1ae8/clang_format-13.0.1-py2.py3-none-manylinux_2_12_x86_64.manylinux2010_x86_64.whl#sha256=58e91debc2b2d14d174c73c678ffac676cb171152ee3f4239b6cbe6975e4ede1 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,235 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/ca/9b/7f7a8761a08f3ef462bb1c062616a549f76c80b8fa942d068656a54665e4/clang_format-13.0.1-py2.py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl#sha256=88c832f055ee1d4b026a819c9d457374d92abe067d8f87078b9f229e6564ac1f (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,235 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/9e/9b/b1447c3fca9a9efeede9542785982468a4c9a57dc6db000d6adfe87f338c/clang_format-13.0.1-py2.py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl#sha256=f345b61c56d76325b158dbad560c35bdd8e77184f0fb60aba4f8019f744b70f8 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,236 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/a6/97/876beb4598e26b4df5f3256aacea77f6d495385ea2e39888f041af965be9/clang_format-13.0.1-py2.py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl#sha256=a6e0ea97648ca916454f9719537d16a4ec5557d8644e544a001aaa42ba9b653f (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,237 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/93/b4/ab636facaec6e98f87e90fa632b600179fa5f890ca440be88fa188e812e6/clang_format-13.0.1-py2.py3-none-win32.whl#sha256=1302ef7522eb9dc1daf270cd5a4a1f10814403e50d74be9b96f87dcb200f47f7 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,237 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/f4/00/dd7a74b5dddb168568bc40042f2c662f2b748dea6242396c5d9f2351f777/clang_format-13.0.1-py2.py3-none-win_amd64.whl#sha256=7b80a328107bf3d11bf2db7d227feac46458aed07f836430d8dc2155dcc5cdce (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,238 Found link https://files.pythonhosted.org/packages/6f/d3/f1608c2226344901b0e88f977a9163f198ce4c8280a9ad3173a932c48adb/clang-format-14.0.0.tar.gz#sha256=60c631c990bb1fa2a20fb60c581560dec9c37ffb575e616fe9c05d45bdd3b407 (from https://pypi.org/simple/clang-format/), version: 14.0.0 2022-05-05T12:03:43,238 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/7b/d1/889e81e8504452f3a78bf5103d77dcb7201964fcb2b5850a84ff6327bf90/clang_format-14.0.0-py2.py3-none-macosx_10_9_universal2.whl#sha256=2a75cfa5ce1ce77fea9c24d1a249bc8e07b3d62196ba96755e4fa4ef1e3658f7 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,239 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/cc/19/d25455ea5ba4ea508d1c49cf2cc2d30e287e10ea13e91ce2ed6300985d4b/clang_format-14.0.0-py2.py3-none-manylinux_2_12_i686.manylinux2010_i686.whl#sha256=b1fc036e3c419f867660d91c4bed56de76d5e2f076b68449c45f2fcd81e3049a (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,239 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/c0/69/bf08f34219f6435dfaf0e29cf9afd7d815b10307c7e0394c2d3a43a0305c/clang_format-14.0.0-py2.py3-none-manylinux_2_12_x86_64.manylinux2010_x86_64.whl#sha256=85c6c8078645eb14a52dc64ce122bfa992f51cc4066580e4d670bd15c0c07500 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,240 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/40/d3/ff0dbf8bfb0c1388870ef147616688c96d58578b0d478c362742a742baea/clang_format-14.0.0-py2.py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl#sha256=580456c55436d6e4f236c4463ae5fd74948890f7379b502069467f0b0f4f130f (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,240 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/fa/87/35db0a1060e8989c3b62ce030a87a0285e76637634949d398f6be61f9bba/clang_format-14.0.0-py2.py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl#sha256=e6e678ac8008bf77de79a1c1eb9e30e7076bc22e52a1ba122a356a24c97715e9 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,241 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/1c/2b/139402d516d10210834b3d4b4db5a41be9101e16cd8c1db0ec1f6a7ccaf5/clang_format-14.0.0-py2.py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl#sha256=5384ec3880e2000e6c06884542d6ab217f8140f3ca142a63ec16ddf21ea95965 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,241 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/73/30/4ec4e957c07e3bbbab625b1252781864792fa5ca8d17f6ce1955cfefd08a/clang_format-14.0.0-py2.py3-none-win32.whl#sha256=17de21387ab5676daf265303b4a4bfcb1e9e886c62900e59a10b6e332fd210cd (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,242 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/b3/63/b82289b40330ae1ffd112b836f531cca1b43600dd8440ae66face8b5e1ce/clang_format-14.0.0-py2.py3-none-win_amd64.whl#sha256=d240f29f6a4a5e4c47af3ee37ac4ced4b5e71756c74cf3b513f0cb5b0de69d7d (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,243 Found link https://files.pythonhosted.org/packages/d3/ac/b8d6bfa8074bfc581ee326a2b11b97264be2316d55a6c8016f244db0be2f/clang-format-14.0.1.tar.gz#sha256=9966930f6951c3ce64e24a8abae1c130df07feb6da2d132de62e1e3077bcbc54 (from https://pypi.org/simple/clang-format/), version: 14.0.1 2022-05-05T12:03:43,243 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/60/7f/16f8a6b704336e44fdea7b9e8a597cd36bdc85980b3ee9bbf5acc874141c/clang_format-14.0.1-py2.py3-none-macosx_10_9_universal2.whl#sha256=5141ee7336e45e32db2f7f3b4a761f1a32bbcad6de65189f75951b884a0cb051 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,244 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/4e/41/92d7ad1f3a075a52c8217119140c29f3d71560038d47a48511994bacea36/clang_format-14.0.1-py2.py3-none-manylinux_2_12_i686.manylinux2010_i686.whl#sha256=2e7dc9b2016b68e475b52c08290fb8767210017af7ca2e918702ace1e2f9c7ea (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,244 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/19/d5/bd717df94b3a9bbb6fe9efd2bcabe12e580fcc1a01f418c11538a0657397/clang_format-14.0.1-py2.py3-none-manylinux_2_12_x86_64.manylinux2010_x86_64.whl#sha256=9ed34d6e7106fd9c26612c3510af6bc92013424b103773782880390477aba63d (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,245 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/fe/f4/283e525aff15087a5802b2c9966e89bf3628d0d789a013c521c5450d2976/clang_format-14.0.1-py2.py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl#sha256=0dd7a3262491609d53b60c00255acd276cb47ae4b9d16bbd12d8ae56e0a0fcbc (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,245 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/ec/63/a2fc6c4ef7fbed5cd6d99faa267f80fcdb67e058ac93d0b8dcb9aeb66470/clang_format-14.0.1-py2.py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl#sha256=6f0bb21450f853e10032f8b14f2a44ca1ac29cd5bf160fcd847931b843330256 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,246 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/b6/e6/8ac20e53fd1f298eacbe36faaad7d8393cfe260d2ca8e65a492546d50b6e/clang_format-14.0.1-py2.py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl#sha256=09e12ca1c6abd5f679febdcf861ac999d5dc88d13e8bbb0007796fd120536a4e (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,246 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/e7/c6/e0388c1bc153768c900c0855bf1307a7cb5e8ab4d42e6092294c2e727971/clang_format-14.0.1-py2.py3-none-win32.whl#sha256=a47dc24f79ed853429405946f899c05776d136b1b3fa71170d763f5a6b4374e5 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,247 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/74/ee/be89dc82806ed1bc6b6e9b3e76f02f76414f320048122a610b7a1c19da54/clang_format-14.0.1-py2.py3-none-win_amd64.whl#sha256=b61c296f0aa8890185ce7bbb123e992ae9b1a12d5b3709af33aff07632d635bb (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,247 Found link https://files.pythonhosted.org/packages/91/19/b484a5df518e83fdf45482ce2396392932c5636c4a785b5d9c57d965b305/clang-format-14.0.3.tar.gz#sha256=73bc0bd21eacdee30b85e1315a6cff5685531d89905c3411de91816fc7cbce75 (from https://pypi.org/simple/clang-format/), version: 14.0.3 2022-05-05T12:03:43,248 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/2f/a7/01eebdafa44ca579383eb088dd6aa2179aa8c0bd661db17a6e52a5c5032b/clang_format-14.0.3-py2.py3-none-macosx_10_9_universal2.whl#sha256=2c7da4ff143146fe7b80894efd32842f45d58a3bd30e8fb559ce86b961700a3c (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,249 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/4f/9e/be1a223599b501a116048fdb5ed3e96fee68ae5afcac4608f885b04265f5/clang_format-14.0.3-py2.py3-none-manylinux_2_12_i686.manylinux2010_i686.whl#sha256=7dce28e40f2af48b1d0d5a0211562e592395d32c58483c0cafd75e7cf3297b55 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,249 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/a3/4d/866c1f4bafd8ab2b957c7713aa2ae4db1363f781fb02fdd77ff531813abf/clang_format-14.0.3-py2.py3-none-manylinux_2_12_x86_64.manylinux2010_x86_64.whl#sha256=778e4acc74e1dcbd8197dcf49142b4102242a83881fb117b86727c01e74c6941 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,250 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/66/91/52e3e26b31945dd2e58f0cdbd0697f424cb4bbd9ad254a3f800a3d3d2993/clang_format-14.0.3-py2.py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl#sha256=b15a04d5c6ca463104518c461ef203f62f2a0b639d4e49d1362e2344ce25ec89 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,250 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/b1/42/1a523349b0ae0ebcedb6278fade1fa5e0b303f9a18a480a342e4242d30bc/clang_format-14.0.3-py2.py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl#sha256=0925179fa10c444a07bdff5db6981868d07f109f1d8b5e5eaecc4f3b028e48a1 (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,251 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/65/56/eb18d61a085ba018395155a2d658e0ee3aff0821a0b16d3d431b5ecec83b/clang_format-14.0.3-py2.py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl#sha256=00afee65c015d4c017d5b56524fc4a59829e5986ac159f0ab2c2147540a2b31a (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,251 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/6e/88/9b6497ed42b6b7ce06fb6da65f31f63ce87ccaa97d2acd2c6f31d63777ec/clang_format-14.0.3-py2.py3-none-win32.whl#sha256=ae9746b024d900b3f2a5181fc9b1412a92a5df003793222cf9b646f21cb6f9eb (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,252 Skipping link: No binaries permitted for clang-format: https://files.pythonhosted.org/packages/aa/3f/00a6ca37de9a08b0d6717910c8479ade1aa5cb33d0a0897d1236447c2d36/clang_format-14.0.3-py2.py3-none-win_amd64.whl#sha256=a084aa5a8b56b07893014790c8b051e795977b24980fda3af5eb193539a9653c (from https://pypi.org/simple/clang-format/) 2022-05-05T12:03:43,252 Fetching project page and analyzing links: https://www.piwheels.org/simple/clang-format/ 2022-05-05T12:03:43,253 Getting page https://www.piwheels.org/simple/clang-format/ 2022-05-05T12:03:43,255 Found index url https://www.piwheels.org/simple 2022-05-05T12:03:43,495 Skipping link: No binaries permitted for clang-format: https://www.piwheels.org/simple/clang-format/clang_format-14.0.1-py2.py3-none-linux_armv7l.whl#sha256=0f68c57457a16064e4a5fec3129cbe51149caf2fd571356634cc983fde897521 (from https://www.piwheels.org/simple/clang-format/) 2022-05-05T12:03:43,496 Skipping link: No binaries permitted for clang-format: https://www.piwheels.org/simple/clang-format/clang_format-14.0.1-py2.py3-none-linux_armv6l.whl#sha256=0f68c57457a16064e4a5fec3129cbe51149caf2fd571356634cc983fde897521 (from https://www.piwheels.org/simple/clang-format/) 2022-05-05T12:03:43,497 Skipping link: No binaries permitted for clang-format: https://www.piwheels.org/simple/clang-format/clang_format-14.0.0-py2.py3-none-linux_armv7l.whl#sha256=bded92887a572a4572f353edacab62ea842a6011396844ac572721264a4049cd (from https://www.piwheels.org/simple/clang-format/) 2022-05-05T12:03:43,497 Skipping link: No binaries permitted for clang-format: https://www.piwheels.org/simple/clang-format/clang_format-14.0.0-py2.py3-none-linux_armv6l.whl#sha256=bded92887a572a4572f353edacab62ea842a6011396844ac572721264a4049cd (from https://www.piwheels.org/simple/clang-format/) 2022-05-05T12:03:43,498 Skipping link: No binaries permitted for clang-format: https://www.piwheels.org/simple/clang-format/clang_format-13.0.1-py2.py3-none-linux_armv7l.whl#sha256=dde8d4f675fecbf1fa40be08c713991cbbfbea9beed1b42ae679cb8e2b174651 (from https://www.piwheels.org/simple/clang-format/) 2022-05-05T12:03:43,498 Skipping link: No binaries permitted for clang-format: https://www.piwheels.org/simple/clang-format/clang_format-13.0.1-py2.py3-none-linux_armv6l.whl#sha256=dde8d4f675fecbf1fa40be08c713991cbbfbea9beed1b42ae679cb8e2b174651 (from https://www.piwheels.org/simple/clang-format/) 2022-05-05T12:03:43,499 Skipping link: No binaries permitted for clang-format: https://www.piwheels.org/simple/clang-format/clang_format-12.0.1.1-py2.py3-none-linux_armv7l.whl#sha256=0342cbb02777a994c2479a24ff04e8647ecdbe86366911bf353aeebaf923f313 (from https://www.piwheels.org/simple/clang-format/) 2022-05-05T12:03:43,499 Skipping link: No binaries permitted for clang-format: https://www.piwheels.org/simple/clang-format/clang_format-12.0.1.1-py2.py3-none-linux_armv6l.whl#sha256=0342cbb02777a994c2479a24ff04e8647ecdbe86366911bf353aeebaf923f313 (from https://www.piwheels.org/simple/clang-format/) 2022-05-05T12:03:43,500 Skipping link: No binaries permitted for clang-format: https://www.piwheels.org/simple/clang-format/clang_format-11.1.0.1-py2.py3-none-linux_armv7l.whl#sha256=829f651c2ae00f97c7a5d99017b8ec93078770c663ebbf537138533831eb5c53 (from https://www.piwheels.org/simple/clang-format/) 2022-05-05T12:03:43,500 Skipping link: No binaries permitted for clang-format: https://www.piwheels.org/simple/clang-format/clang_format-11.1.0.1-py2.py3-none-linux_armv6l.whl#sha256=829f651c2ae00f97c7a5d99017b8ec93078770c663ebbf537138533831eb5c53 (from https://www.piwheels.org/simple/clang-format/) 2022-05-05T12:03:43,501 Skipping link: No binaries permitted for clang-format: https://www.piwheels.org/simple/clang-format/clang_format-11.0.1.1-py2.py3-none-linux_armv7l.whl#sha256=21d590cb65aeae49bcfcd2cadbecbcbf66a0c22049bd093d96ee6c71381a0714 (from https://www.piwheels.org/simple/clang-format/) 2022-05-05T12:03:43,501 Skipping link: No binaries permitted for clang-format: https://www.piwheels.org/simple/clang-format/clang_format-11.0.1.1-py2.py3-none-linux_armv6l.whl#sha256=21d590cb65aeae49bcfcd2cadbecbcbf66a0c22049bd093d96ee6c71381a0714 (from https://www.piwheels.org/simple/clang-format/) 2022-05-05T12:03:43,502 Skipping link: No binaries permitted for clang-format: https://www.piwheels.org/simple/clang-format/clang_format-10.0.1.1-py2.py3-none-linux_armv7l.whl#sha256=633a56f5880d9567f32655bfa1625cd39aeaa383c97aba66f70c77b363b53127 (from https://www.piwheels.org/simple/clang-format/) 2022-05-05T12:03:43,502 Skipping link: No binaries permitted for clang-format: https://www.piwheels.org/simple/clang-format/clang_format-10.0.1.1-py2.py3-none-linux_armv6l.whl#sha256=633a56f5880d9567f32655bfa1625cd39aeaa383c97aba66f70c77b363b53127 (from https://www.piwheels.org/simple/clang-format/) 2022-05-05T12:03:43,503 Skipping link: not a file: https://www.piwheels.org/simple/clang-format/ 2022-05-05T12:03:43,503 Skipping link: not a file: https://pypi.org/simple/clang-format/ 2022-05-05T12:03:43,542 Given no hashes to check 1 links for project 'clang-format': discarding no candidates 2022-05-05T12:03:43,574 Collecting clang-format==14.0.3 2022-05-05T12:03:43,578 Created temporary directory: /tmp/pip-unpack-c_5ufo26 2022-05-05T12:03:43,675 Downloading clang-format-14.0.3.tar.gz (9.6 kB) 2022-05-05T12:03:43,772 Added clang-format==14.0.3 from https://files.pythonhosted.org/packages/91/19/b484a5df518e83fdf45482ce2396392932c5636c4a785b5d9c57d965b305/clang-format-14.0.3.tar.gz#sha256=73bc0bd21eacdee30b85e1315a6cff5685531d89905c3411de91816fc7cbce75 to build tracker '/tmp/pip-req-tracker-2ucmirq_' 2022-05-05T12:03:43,794 Created temporary directory: /tmp/pip-build-env-0dr_glx1 2022-05-05T12:03:43,808 Created temporary directory: /tmp/pip-standalone-pip-b6q7ixp8 2022-05-05T12:03:46,946 Installing build dependencies: started 2022-05-05T12:03:46,948 Running command pip subprocess to install build dependencies 2022-05-05T12:03:57,215 Using pip 22.0.4 from /tmp/pip-standalone-pip-b6q7ixp8/__env_pip__.zip/pip (python 3.7) 2022-05-05T12:03:58,607 Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple 2022-05-05T12:04:02,565 Collecting setuptools>=42 2022-05-05T12:04:02,808 Using cached https://www.piwheels.org/simple/setuptools/setuptools-62.1.0-py3-none-any.whl (1.1 MB) 2022-05-05T12:04:03,459 Collecting wheel 2022-05-05T12:04:03,492 Using cached https://www.piwheels.org/simple/wheel/wheel-0.37.1-py2.py3-none-any.whl (35 kB) 2022-05-05T12:04:03,748 Collecting scikit-build 2022-05-05T12:04:03,803 Using cached https://www.piwheels.org/simple/scikit-build/scikit_build-0.14.1-py2.py3-none-any.whl (76 kB) 2022-05-05T12:04:05,452 Collecting cmake>=3.16 2022-05-05T12:04:08,363 Using cached https://www.piwheels.org/simple/cmake/cmake-3.22.2-cp37-cp37m-linux_armv7l.whl (15.0 MB) 2022-05-05T12:04:10,296 Collecting ninja 2022-05-05T12:04:10,371 Using cached https://www.piwheels.org/simple/ninja/ninja-1.10.0.post2-cp37-cp37m-linux_armv7l.whl (91 kB) 2022-05-05T12:04:11,052 Collecting packaging 2022-05-05T12:04:11,089 Using cached https://www.piwheels.org/simple/packaging/packaging-21.3-py3-none-any.whl (40 kB) 2022-05-05T12:04:11,307 Collecting distro 2022-05-05T12:04:11,348 Using cached https://www.piwheels.org/simple/distro/distro-1.7.0-py3-none-any.whl (20 kB) 2022-05-05T12:04:13,223 Collecting pyparsing!=3.0.5,>=2.0.2 2022-05-05T12:04:13,262 Using cached https://www.piwheels.org/simple/pyparsing/pyparsing-3.0.8-py3-none-any.whl (98 kB) 2022-05-05T12:04:18,664 Installing collected packages: ninja, cmake, wheel, setuptools, pyparsing, distro, packaging, scikit-build 2022-05-05T12:04:18,772 Creating /tmp/pip-build-env-0dr_glx1/overlay/bin 2022-05-05T12:04:18,776 changing mode of /tmp/pip-build-env-0dr_glx1/overlay/bin/ninja to 755 2022-05-05T12:04:31,238 changing mode of /tmp/pip-build-env-0dr_glx1/overlay/bin/cmake to 755 2022-05-05T12:04:31,243 changing mode of /tmp/pip-build-env-0dr_glx1/overlay/bin/cpack to 755 2022-05-05T12:04:31,247 changing mode of /tmp/pip-build-env-0dr_glx1/overlay/bin/ctest to 755 2022-05-05T12:04:31,669 changing mode of /tmp/pip-build-env-0dr_glx1/overlay/bin/wheel to 755 2022-05-05T12:04:36,559 changing mode of /tmp/pip-build-env-0dr_glx1/overlay/bin/distro to 755 2022-05-05T12:04:37,258 ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts. 2022-05-05T12:04:37,258 conan 1.44.1 requires distro<=1.6.0,>=1.0.2, but you have distro 1.7.0 which is incompatible. 2022-05-05T12:04:37,260 Successfully installed cmake-3.22.2 distro-1.7.0 ninja-1.10.0.post2 packaging-21.3 pyparsing-3.0.8 scikit-build-0.14.1 setuptools-62.1.0 wheel-0.37.1 2022-05-05T12:04:37,978 Installing build dependencies: finished with status 'done' 2022-05-05T12:04:38,025 Getting requirements to build wheel: started 2022-05-05T12:04:38,027 Running command Getting requirements to build wheel 2022-05-05T12:04:41,351 running egg_info 2022-05-05T12:04:41,391 writing manifest file 'clang_format.egg-info/SOURCES.txt' 2022-05-05T12:04:41,588 Getting requirements to build wheel: finished with status 'done' 2022-05-05T12:04:41,615 Created temporary directory: /tmp/pip-modern-metadata-gl8b3_32 2022-05-05T12:04:41,621 Preparing metadata (pyproject.toml): started 2022-05-05T12:04:41,623 Running command Preparing metadata (pyproject.toml) 2022-05-05T12:04:44,779 running dist_info 2022-05-05T12:04:44,788 creating /tmp/pip-modern-metadata-gl8b3_32/clang_format.egg-info 2022-05-05T12:04:44,802 writing manifest file '/tmp/pip-modern-metadata-gl8b3_32/clang_format.egg-info/SOURCES.txt' 2022-05-05T12:04:44,821 writing manifest file '/tmp/pip-modern-metadata-gl8b3_32/clang_format.egg-info/SOURCES.txt' 2022-05-05T12:04:45,064 Preparing metadata (pyproject.toml): finished with status 'done' 2022-05-05T12:04:45,082 Source in /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771 has version 14.0.3, which satisfies requirement clang-format==14.0.3 from https://files.pythonhosted.org/packages/91/19/b484a5df518e83fdf45482ce2396392932c5636c4a785b5d9c57d965b305/clang-format-14.0.3.tar.gz#sha256=73bc0bd21eacdee30b85e1315a6cff5685531d89905c3411de91816fc7cbce75 2022-05-05T12:04:45,085 Removed clang-format==14.0.3 from https://files.pythonhosted.org/packages/91/19/b484a5df518e83fdf45482ce2396392932c5636c4a785b5d9c57d965b305/clang-format-14.0.3.tar.gz#sha256=73bc0bd21eacdee30b85e1315a6cff5685531d89905c3411de91816fc7cbce75 from build tracker '/tmp/pip-req-tracker-2ucmirq_' 2022-05-05T12:04:45,094 Created temporary directory: /tmp/pip-unpack-um4r71jn 2022-05-05T12:04:45,097 Building wheels for collected packages: clang-format 2022-05-05T12:04:45,107 Created temporary directory: /tmp/pip-wheel-vz5zx_px 2022-05-05T12:04:45,108 Destination directory: /tmp/pip-wheel-vz5zx_px 2022-05-05T12:04:45,113 Building wheel for clang-format (pyproject.toml): started 2022-05-05T12:04:45,115 Running command Building wheel for clang-format (pyproject.toml) 2022-05-05T12:04:49,018 Not searching for unused variables given on the command line. 2022-05-05T12:04:49,944 -- The C compiler identification is GNU 8.3.0 2022-05-05T12:04:50,053 -- Detecting C compiler ABI info 2022-05-05T12:04:51,741 -- Detecting C compiler ABI info - done 2022-05-05T12:04:51,829 -- Check for working C compiler: /usr/bin/cc - skipped 2022-05-05T12:04:51,832 -- Detecting C compile features 2022-05-05T12:04:51,838 -- Detecting C compile features - done 2022-05-05T12:04:52,641 -- The CXX compiler identification is GNU 8.3.0 2022-05-05T12:04:52,725 -- Detecting CXX compiler ABI info 2022-05-05T12:04:54,681 -- Detecting CXX compiler ABI info - done 2022-05-05T12:04:54,774 -- Check for working CXX compiler: /usr/bin/c++ - skipped 2022-05-05T12:04:54,777 -- Detecting CXX compile features 2022-05-05T12:04:54,783 -- Detecting CXX compile features - done 2022-05-05T12:04:54,798 -- Configuring done 2022-05-05T12:04:54,817 -- Generating done 2022-05-05T12:04:55,458 -- Build files have been written to: /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_cmake_test_compile/build 2022-05-05T12:04:56,755 -- The C compiler identification is GNU 8.3.0 2022-05-05T12:04:57,565 -- The CXX compiler identification is GNU 8.3.0 2022-05-05T12:04:57,658 -- Detecting C compiler ABI info 2022-05-05T12:04:59,336 -- Detecting C compiler ABI info - done 2022-05-05T12:04:59,432 -- Check for working C compiler: /usr/bin/cc - skipped 2022-05-05T12:04:59,436 -- Detecting C compile features 2022-05-05T12:04:59,441 -- Detecting C compile features - done 2022-05-05T12:04:59,490 -- Detecting CXX compiler ABI info 2022-05-05T12:05:01,435 -- Detecting CXX compiler ABI info - done 2022-05-05T12:05:01,533 -- Check for working CXX compiler: /usr/bin/c++ - skipped 2022-05-05T12:05:01,536 -- Detecting CXX compile features 2022-05-05T12:05:01,542 -- Detecting CXX compile features - done 2022-05-05T12:05:01,760 -- Configuring done 2022-05-05T12:05:01,806 -- Generating done 2022-05-05T12:05:02,460 CMake Warning: 2022-05-05T12:05:02,460 Manually-specified variables were not used by the project: 2022-05-05T12:05:02,461 PYTHON_EXECUTABLE 2022-05-05T12:05:02,461 PYTHON_INCLUDE_DIR 2022-05-05T12:05:02,462 PYTHON_LIBRARY 2022-05-05T12:05:02,462 PYTHON_VERSION_STRING 2022-05-05T12:05:02,462 SKBUILD 2022-05-05T12:05:02,468 -- Build files have been written to: /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build 2022-05-05T12:05:03,386 [1/10] Creating directories for 'build-clang-format' 2022-05-05T12:05:03,387 [1/10] Performing download step (download, verify and extract) for 'build-clang-format' 2022-05-05T12:05:03,422 -- Downloading... 2022-05-05T12:05:03,422 dst='/tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/build-clang-format-prefix/src/llvm-project-14.0.3.src.tar.xz' 2022-05-05T12:05:03,423 timeout='none' 2022-05-05T12:05:03,423 inactivity timeout='none' 2022-05-05T12:05:03,424 -- Using src='https://github.com/llvm/llvm-project/releases/download/llvmorg-14.0.3/llvm-project-14.0.3.src.tar.xz' 2022-05-05T12:05:04,083 -- [download 0% complete] 2022-05-05T12:05:04,204 -- [download 1% complete] 2022-05-05T12:05:04,347 -- [download 3% complete] 2022-05-05T12:05:04,488 -- [download 4% complete] 2022-05-05T12:05:04,627 -- [download 5% complete] 2022-05-05T12:05:04,766 -- [download 7% complete] 2022-05-05T12:05:04,897 -- [download 8% complete] 2022-05-05T12:05:05,039 -- [download 9% complete] 2022-05-05T12:05:05,180 -- [download 10% complete] 2022-05-05T12:05:05,320 -- [download 12% complete] 2022-05-05T12:05:05,461 -- [download 13% complete] 2022-05-05T12:05:05,601 -- [download 15% complete] 2022-05-05T12:05:05,742 -- [download 16% complete] 2022-05-05T12:05:05,882 -- [download 17% complete] 2022-05-05T12:05:06,020 -- [download 19% complete] 2022-05-05T12:05:06,159 -- [download 20% complete] 2022-05-05T12:05:06,300 -- [download 21% complete] 2022-05-05T12:05:06,438 -- [download 23% complete] 2022-05-05T12:05:06,581 -- [download 24% complete] 2022-05-05T12:05:06,724 -- [download 25% complete] 2022-05-05T12:05:06,859 -- [download 27% complete] 2022-05-05T12:05:06,999 -- [download 28% complete] 2022-05-05T12:05:07,141 -- [download 29% complete] 2022-05-05T12:05:07,277 -- [download 31% complete] 2022-05-05T12:05:07,419 -- [download 32% complete] 2022-05-05T12:05:07,561 -- [download 33% complete] 2022-05-05T12:05:07,703 -- [download 35% complete] 2022-05-05T12:05:07,843 -- [download 36% complete] 2022-05-05T12:05:07,981 -- [download 37% complete] 2022-05-05T12:05:08,122 -- [download 39% complete] 2022-05-05T12:05:08,261 -- [download 40% complete] 2022-05-05T12:05:08,402 -- [download 41% complete] 2022-05-05T12:05:08,540 -- [download 43% complete] 2022-05-05T12:05:08,683 -- [download 44% complete] 2022-05-05T12:05:08,821 -- [download 45% complete] 2022-05-05T12:05:08,964 -- [download 47% complete] 2022-05-05T12:05:09,104 -- [download 48% complete] 2022-05-05T12:05:09,248 -- [download 49% complete] 2022-05-05T12:05:09,390 -- [download 51% complete] 2022-05-05T12:05:09,531 -- [download 52% complete] 2022-05-05T12:05:09,756 -- [download 53% complete] 2022-05-05T12:05:09,955 -- [download 55% complete] 2022-05-05T12:05:10,098 -- [download 56% complete] 2022-05-05T12:05:10,243 -- [download 57% complete] 2022-05-05T12:05:10,384 -- [download 59% complete] 2022-05-05T12:05:10,528 -- [download 60% complete] 2022-05-05T12:05:10,666 -- [download 62% complete] 2022-05-05T12:05:10,810 -- [download 63% complete] 2022-05-05T12:05:10,953 -- [download 64% complete] 2022-05-05T12:05:11,107 -- [download 66% complete] 2022-05-05T12:05:11,245 -- [download 67% complete] 2022-05-05T12:05:11,462 -- [download 68% complete] 2022-05-05T12:05:11,607 -- [download 70% complete] 2022-05-05T12:05:11,747 -- [download 71% complete] 2022-05-05T12:05:11,892 -- [download 72% complete] 2022-05-05T12:05:12,035 -- [download 74% complete] 2022-05-05T12:05:12,177 -- [download 75% complete] 2022-05-05T12:05:12,321 -- [download 76% complete] 2022-05-05T12:05:12,474 -- [download 78% complete] 2022-05-05T12:05:12,628 -- [download 79% complete] 2022-05-05T12:05:12,776 -- [download 81% complete] 2022-05-05T12:05:12,929 -- [download 82% complete] 2022-05-05T12:05:13,074 -- [download 83% complete] 2022-05-05T12:05:13,217 -- [download 85% complete] 2022-05-05T12:05:13,361 -- [download 86% complete] 2022-05-05T12:05:13,505 -- [download 87% complete] 2022-05-05T12:05:13,667 -- [download 89% complete] 2022-05-05T12:05:13,956 -- [download 90% complete] 2022-05-05T12:05:14,250 -- [download 92% complete] 2022-05-05T12:05:14,495 -- [download 93% complete] 2022-05-05T12:05:14,667 -- [download 94% complete] 2022-05-05T12:05:14,880 -- [download 96% complete] 2022-05-05T12:05:15,102 -- [download 97% complete] 2022-05-05T12:05:15,253 -- [download 98% complete] 2022-05-05T12:05:15,403 -- [download 100% complete] 2022-05-05T12:05:15,735 -- Downloading... done 2022-05-05T12:05:15,803 -- extracting... 2022-05-05T12:05:15,804 src='/tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/build-clang-format-prefix/src/llvm-project-14.0.3.src.tar.xz' 2022-05-05T12:05:15,805 dst='/tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project' 2022-05-05T12:05:15,807 -- extracting... [tar xfz] 2022-05-05T12:10:12,794 -- extracting... [analysis] 2022-05-05T12:10:12,798 -- extracting... [rename] 2022-05-05T12:10:12,800 -- extracting... [clean up] 2022-05-05T12:10:12,803 -- extracting... done 2022-05-05T12:10:12,904 [3/10] No update step for 'build-clang-format' 2022-05-05T12:10:12,967 [4/10] No patch step for 'build-clang-format' 2022-05-05T12:10:12,967 [4/10] Performing configure step for 'build-clang-format' 2022-05-05T12:10:13,971 -- The C compiler identification is GNU 8.3.0 2022-05-05T12:10:14,747 -- The CXX compiler identification is GNU 8.3.0 2022-05-05T12:10:14,852 -- The ASM compiler identification is GNU 2022-05-05T12:10:14,889 -- Found assembler: /usr/bin/cc 2022-05-05T12:10:14,948 -- Detecting C compiler ABI info 2022-05-05T12:10:16,640 -- Detecting C compiler ABI info - done 2022-05-05T12:10:16,720 -- Check for working C compiler: /usr/bin/cc - skipped 2022-05-05T12:10:16,724 -- Detecting C compile features 2022-05-05T12:10:16,729 -- Detecting C compile features - done 2022-05-05T12:10:16,772 -- Detecting CXX compiler ABI info 2022-05-05T12:10:18,713 -- Detecting CXX compiler ABI info - done 2022-05-05T12:10:18,796 -- Check for working CXX compiler: /usr/bin/c++ - skipped 2022-05-05T12:10:18,800 -- Detecting CXX compile features 2022-05-05T12:10:18,806 -- Detecting CXX compile features - done 2022-05-05T12:10:18,857 -- bolt project is disabled 2022-05-05T12:10:18,858 -- clang project is enabled 2022-05-05T12:10:18,859 -- clang-tools-extra project is disabled 2022-05-05T12:10:18,860 -- compiler-rt project is disabled 2022-05-05T12:10:18,861 -- cross-project-tests project is disabled 2022-05-05T12:10:18,861 -- libc project is disabled 2022-05-05T12:10:18,862 -- libclc project is disabled 2022-05-05T12:10:18,863 -- libcxx project is disabled 2022-05-05T12:10:18,863 -- libcxxabi project is disabled 2022-05-05T12:10:18,864 -- libunwind project is disabled 2022-05-05T12:10:18,865 -- lld project is disabled 2022-05-05T12:10:18,865 -- lldb project is disabled 2022-05-05T12:10:18,866 -- mlir project is disabled 2022-05-05T12:10:18,867 -- openmp project is disabled 2022-05-05T12:10:18,868 -- polly project is disabled 2022-05-05T12:10:18,868 -- pstl project is disabled 2022-05-05T12:10:18,869 -- flang project is disabled 2022-05-05T12:10:19,083 -- Looking for dlfcn.h 2022-05-05T12:10:20,851 -- Looking for dlfcn.h - found 2022-05-05T12:10:20,860 -- Looking for errno.h 2022-05-05T12:10:22,628 -- Looking for errno.h - found 2022-05-05T12:10:22,637 -- Looking for fcntl.h 2022-05-05T12:10:24,414 -- Looking for fcntl.h - found 2022-05-05T12:10:24,423 -- Looking for link.h 2022-05-05T12:10:26,264 -- Looking for link.h - found 2022-05-05T12:10:26,273 -- Looking for malloc/malloc.h 2022-05-05T12:10:27,730 -- Looking for malloc/malloc.h - not found 2022-05-05T12:10:27,740 -- Looking for pthread.h 2022-05-05T12:10:29,560 -- Looking for pthread.h - found 2022-05-05T12:10:29,570 -- Looking for signal.h 2022-05-05T12:10:31,384 -- Looking for signal.h - found 2022-05-05T12:10:31,393 -- Looking for sys/ioctl.h 2022-05-05T12:10:33,167 -- Looking for sys/ioctl.h - found 2022-05-05T12:10:33,177 -- Looking for sys/mman.h 2022-05-05T12:10:34,957 -- Looking for sys/mman.h - found 2022-05-05T12:10:34,967 -- Looking for sys/param.h 2022-05-05T12:10:36,814 -- Looking for sys/param.h - found 2022-05-05T12:10:36,823 -- Looking for sys/resource.h 2022-05-05T12:10:38,585 -- Looking for sys/resource.h - found 2022-05-05T12:10:38,595 -- Looking for sys/stat.h 2022-05-05T12:10:40,380 -- Looking for sys/stat.h - found 2022-05-05T12:10:40,390 -- Looking for sys/time.h 2022-05-05T12:10:42,160 -- Looking for sys/time.h - found 2022-05-05T12:10:42,169 -- Looking for sys/types.h 2022-05-05T12:10:43,974 -- Looking for sys/types.h - found 2022-05-05T12:10:43,983 -- Looking for sysexits.h 2022-05-05T12:10:45,742 -- Looking for sysexits.h - found 2022-05-05T12:10:45,751 -- Looking for termios.h 2022-05-05T12:10:47,538 -- Looking for termios.h - found 2022-05-05T12:10:47,546 -- Looking for unistd.h 2022-05-05T12:10:49,351 -- Looking for unistd.h - found 2022-05-05T12:10:49,361 -- Looking for valgrind/valgrind.h 2022-05-05T12:10:50,819 -- Looking for valgrind/valgrind.h - not found 2022-05-05T12:10:50,828 -- Looking for fenv.h 2022-05-05T12:10:52,608 -- Looking for fenv.h - found 2022-05-05T12:10:52,623 -- Looking for FE_ALL_EXCEPT 2022-05-05T12:10:54,412 -- Looking for FE_ALL_EXCEPT - found 2022-05-05T12:10:54,422 -- Looking for FE_INEXACT 2022-05-05T12:10:56,184 -- Looking for FE_INEXACT - found 2022-05-05T12:10:56,193 -- Looking for mach/mach.h 2022-05-05T12:10:57,641 -- Looking for mach/mach.h - not found 2022-05-05T12:10:57,650 -- Looking for histedit.h 2022-05-05T12:10:59,095 -- Looking for histedit.h - not found 2022-05-05T12:10:59,103 -- Looking for CrashReporterClient.h 2022-05-05T12:11:00,554 -- Looking for CrashReporterClient.h - not found 2022-05-05T12:11:00,563 -- Looking for linux/magic.h 2022-05-05T12:11:02,322 -- Looking for linux/magic.h - found 2022-05-05T12:11:02,324 -- Looking for pthread_create in pthread 2022-05-05T12:11:04,081 -- Looking for pthread_create in pthread - found 2022-05-05T12:11:04,083 -- Looking for pthread_getspecific in pthread 2022-05-05T12:11:05,862 -- Looking for pthread_getspecific in pthread - found 2022-05-05T12:11:05,864 -- Looking for pthread_rwlock_init in pthread 2022-05-05T12:11:07,623 -- Looking for pthread_rwlock_init in pthread - found 2022-05-05T12:11:07,625 -- Looking for pthread_mutex_lock in pthread 2022-05-05T12:11:09,390 -- Looking for pthread_mutex_lock in pthread - found 2022-05-05T12:11:09,392 -- Looking for dlopen in dl 2022-05-05T12:11:11,153 -- Looking for dlopen in dl - found 2022-05-05T12:11:11,155 -- Looking for clock_gettime in rt 2022-05-05T12:11:12,961 -- Looking for clock_gettime in rt - found 2022-05-05T12:11:12,971 -- Looking for pfm_initialize in pfm 2022-05-05T12:11:14,614 -- Looking for pfm_initialize in pfm - not found 2022-05-05T12:11:14,631 -- Looking for pthread.h 2022-05-05T12:11:16,439 -- Looking for pthread.h - found 2022-05-05T12:11:16,443 -- Performing Test CMAKE_HAVE_LIBC_PTHREAD 2022-05-05T12:11:18,258 -- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed 2022-05-05T12:11:18,261 -- Looking for pthread_create in pthreads 2022-05-05T12:11:19,868 -- Looking for pthread_create in pthreads - not found 2022-05-05T12:11:19,870 -- Looking for pthread_create in pthread 2022-05-05T12:11:21,651 -- Looking for pthread_create in pthread - found 2022-05-05T12:11:21,662 -- Found Threads: TRUE 2022-05-05T12:11:21,784 -- Found ZLIB: /usr/lib/arm-linux-gnueabihf/libz.so (found version "1.2.11") 2022-05-05T12:11:21,793 -- Looking for compress2 2022-05-05T12:11:23,639 -- Looking for compress2 - found 2022-05-05T12:11:24,386 -- Found LibXml2: /usr/lib/arm-linux-gnueabihf/libxml2.so (found version "2.9.4") 2022-05-05T12:11:24,395 -- Looking for xmlReadMemory 2022-05-05T12:11:26,842 -- Looking for xmlReadMemory - found 2022-05-05T12:11:26,864 -- Performing Test Terminfo_LINKABLE 2022-05-05T12:11:28,652 -- Performing Test Terminfo_LINKABLE - Success 2022-05-05T12:11:28,664 -- Found Terminfo: /usr/lib/arm-linux-gnueabihf/libtinfo.so 2022-05-05T12:11:28,665 -- Looking for xar_open in xar 2022-05-05T12:11:30,288 -- Looking for xar_open in xar - not found 2022-05-05T12:11:30,298 -- Looking for arc4random 2022-05-05T12:11:31,814 -- Looking for arc4random - not found 2022-05-05T12:11:31,841 -- Looking for backtrace 2022-05-05T12:11:33,596 -- Looking for backtrace - found 2022-05-05T12:11:33,599 -- backtrace facility detected in default set of libraries 2022-05-05T12:11:33,600 -- Found Backtrace: /usr/include 2022-05-05T12:11:33,609 -- Performing Test C_SUPPORTS_WERROR_UNGUARDED_AVAILABILITY_NEW 2022-05-05T12:11:34,984 -- Performing Test C_SUPPORTS_WERROR_UNGUARDED_AVAILABILITY_NEW - Failed 2022-05-05T12:11:34,995 -- Looking for __register_frame 2022-05-05T12:11:36,773 -- Looking for __register_frame - not found 2022-05-05T12:11:36,783 -- Looking for __deregister_frame 2022-05-05T12:11:38,563 -- Looking for __deregister_frame - not found 2022-05-05T12:11:38,572 -- Looking for __unw_add_dynamic_fde 2022-05-05T12:11:40,354 -- Looking for __unw_add_dynamic_fde - not found 2022-05-05T12:11:40,364 -- Looking for _Unwind_Backtrace 2022-05-05T12:11:42,133 -- Looking for _Unwind_Backtrace - found 2022-05-05T12:11:42,144 -- Looking for getpagesize 2022-05-05T12:11:43,943 -- Looking for getpagesize - found 2022-05-05T12:11:43,953 -- Looking for sysconf 2022-05-05T12:11:45,740 -- Looking for sysconf - found 2022-05-05T12:11:45,749 -- Looking for getrusage 2022-05-05T12:11:47,538 -- Looking for getrusage - found 2022-05-05T12:11:47,547 -- Looking for setrlimit 2022-05-05T12:11:49,325 -- Looking for setrlimit - found 2022-05-05T12:11:49,335 -- Looking for isatty 2022-05-05T12:11:51,122 -- Looking for isatty - found 2022-05-05T12:11:51,132 -- Looking for futimens 2022-05-05T12:11:52,901 -- Looking for futimens - found 2022-05-05T12:11:52,911 -- Looking for futimes 2022-05-05T12:11:54,688 -- Looking for futimes - found 2022-05-05T12:11:54,697 -- Looking for sigaltstack 2022-05-05T12:11:56,632 -- Looking for sigaltstack - found 2022-05-05T12:11:56,642 -- Looking for lseek64 2022-05-05T12:11:58,470 -- Looking for lseek64 - found 2022-05-05T12:11:58,479 -- Looking for mallctl 2022-05-05T12:11:59,951 -- Looking for mallctl - not found 2022-05-05T12:11:59,960 -- Looking for mallinfo 2022-05-05T12:12:01,750 -- Looking for mallinfo - found 2022-05-05T12:12:01,760 -- Looking for mallinfo2 2022-05-05T12:12:03,244 -- Looking for mallinfo2 - not found 2022-05-05T12:12:03,253 -- Looking for malloc_zone_statistics 2022-05-05T12:12:04,699 -- Looking for malloc_zone_statistics - not found 2022-05-05T12:12:04,708 -- Looking for getrlimit 2022-05-05T12:12:06,513 -- Looking for getrlimit - found 2022-05-05T12:12:06,523 -- Looking for posix_spawn 2022-05-05T12:12:08,347 -- Looking for posix_spawn - found 2022-05-05T12:12:08,356 -- Looking for pread 2022-05-05T12:12:10,147 -- Looking for pread - found 2022-05-05T12:12:10,157 -- Looking for sbrk 2022-05-05T12:12:11,964 -- Looking for sbrk - found 2022-05-05T12:12:11,974 -- Looking for strerror 2022-05-05T12:12:13,765 -- Looking for strerror - found 2022-05-05T12:12:13,776 -- Looking for strerror_r 2022-05-05T12:12:15,585 -- Looking for strerror_r - found 2022-05-05T12:12:15,595 -- Looking for strerror_s 2022-05-05T12:12:17,080 -- Looking for strerror_s - not found 2022-05-05T12:12:17,090 -- Looking for setenv 2022-05-05T12:12:18,921 -- Looking for setenv - found 2022-05-05T12:12:18,931 -- Looking for dlopen 2022-05-05T12:12:20,713 -- Looking for dlopen - found 2022-05-05T12:12:20,722 -- Looking for dladdr 2022-05-05T12:12:22,202 -- Looking for dladdr - not found 2022-05-05T12:12:22,207 -- Performing Test HAVE_STRUCT_STAT_ST_MTIMESPEC_TV_NSEC 2022-05-05T12:12:23,709 -- Performing Test HAVE_STRUCT_STAT_ST_MTIMESPEC_TV_NSEC - Failed 2022-05-05T12:12:23,714 -- Performing Test HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 2022-05-05T12:12:25,514 -- Performing Test HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC - Success 2022-05-05T12:12:25,524 -- Looking for __GLIBC__ 2022-05-05T12:12:27,321 -- Looking for __GLIBC__ - found 2022-05-05T12:12:27,332 -- Looking for pthread_getname_np 2022-05-05T12:12:29,160 -- Looking for pthread_getname_np - found 2022-05-05T12:12:29,171 -- Looking for pthread_setname_np 2022-05-05T12:12:30,998 -- Looking for pthread_setname_np - found 2022-05-05T12:12:31,009 -- Looking for proc_pid_rusage 2022-05-05T12:12:32,470 -- Looking for proc_pid_rusage - not found 2022-05-05T12:12:32,475 -- Performing Test HAVE_STD_IS_TRIVIALLY_COPYABLE 2022-05-05T12:12:34,590 -- Performing Test HAVE_STD_IS_TRIVIALLY_COPYABLE - Success 2022-05-05T12:12:34,601 -- Performing Test HAVE_CXX_ATOMICS_WITHOUT_LIB 2022-05-05T12:12:36,897 -- Performing Test HAVE_CXX_ATOMICS_WITHOUT_LIB - Success 2022-05-05T12:12:36,902 -- Performing Test HAVE_CXX_ATOMICS64_WITHOUT_LIB 2022-05-05T12:12:39,189 -- Performing Test HAVE_CXX_ATOMICS64_WITHOUT_LIB - Failed 2022-05-05T12:12:39,192 -- Looking for __atomic_load_8 in atomic 2022-05-05T12:12:40,979 -- Looking for __atomic_load_8 in atomic - found 2022-05-05T12:12:40,984 -- Performing Test HAVE_CXX_ATOMICS64_WITH_LIB 2022-05-05T12:12:43,281 -- Performing Test HAVE_CXX_ATOMICS64_WITH_LIB - Success 2022-05-05T12:12:43,286 -- Performing Test LLVM_HAS_ATOMICS 2022-05-05T12:12:45,308 -- Performing Test LLVM_HAS_ATOMICS - Success 2022-05-05T12:12:45,318 -- Performing Test SUPPORTS_VARIADIC_MACROS_FLAG 2022-05-05T12:12:47,263 -- Performing Test SUPPORTS_VARIADIC_MACROS_FLAG - Success 2022-05-05T12:12:47,273 -- Performing Test SUPPORTS_GNU_ZERO_VARIADIC_MACRO_ARGUMENTS_FLAG 2022-05-05T12:12:48,679 -- Performing Test SUPPORTS_GNU_ZERO_VARIADIC_MACRO_ARGUMENTS_FLAG - Failed 2022-05-05T12:12:48,690 -- Performing Test HAS_MAYBE_UNINITIALIZED 2022-05-05T12:12:50,630 -- Performing Test HAS_MAYBE_UNINITIALIZED - Success 2022-05-05T12:12:50,871 -- Native target architecture is ARM 2022-05-05T12:12:50,874 -- Threads enabled. 2022-05-05T12:12:50,874 -- Doxygen disabled. 2022-05-05T12:12:57,010 -- Go bindings enabled. 2022-05-05T12:12:57,335 -- Ninja version: 1.10.0.git.kitware.jobserver-1 2022-05-05T12:12:57,355 -- Could NOT find OCaml (missing: OCAMLFIND OCAML_VERSION OCAML_STDLIB_PATH) 2022-05-05T12:12:57,371 -- Could NOT find OCaml (missing: OCAMLFIND OCAML_VERSION OCAML_STDLIB_PATH) 2022-05-05T12:12:57,372 -- OCaml bindings disabled. 2022-05-05T12:12:57,422 -- Could NOT find Python module pygments 2022-05-05T12:12:57,442 -- Could NOT find Python module pygments.lexers.c_cpp 2022-05-05T12:12:57,464 -- Could NOT find Python module yaml 2022-05-05T12:12:57,471 -- LLVM host triple: armv7l-unknown-linux-gnueabihf 2022-05-05T12:12:57,472 -- LLVM default target triple: armv7l-unknown-linux-gnueabihf 2022-05-05T12:12:57,565 -- Performing Test C_SUPPORTS_FPIC 2022-05-05T12:12:59,293 -- Performing Test C_SUPPORTS_FPIC - Success 2022-05-05T12:12:59,304 -- Performing Test CXX_SUPPORTS_FPIC 2022-05-05T12:13:01,263 -- Performing Test CXX_SUPPORTS_FPIC - Success 2022-05-05T12:13:01,267 -- Building with -fPIC 2022-05-05T12:13:01,276 -- Performing Test C_SUPPORTS_FNO_SEMANTIC_INTERPOSITION 2022-05-05T12:13:02,993 -- Performing Test C_SUPPORTS_FNO_SEMANTIC_INTERPOSITION - Success 2022-05-05T12:13:03,004 -- Performing Test CXX_SUPPORTS_FNO_SEMANTIC_INTERPOSITION 2022-05-05T12:13:04,968 -- Performing Test CXX_SUPPORTS_FNO_SEMANTIC_INTERPOSITION - Success 2022-05-05T12:13:04,979 -- Performing Test SUPPORTS_FVISIBILITY_INLINES_HIDDEN_FLAG 2022-05-05T12:13:06,934 -- Performing Test SUPPORTS_FVISIBILITY_INLINES_HIDDEN_FLAG - Success 2022-05-05T12:13:06,947 -- Performing Test C_SUPPORTS_WERROR_DATE_TIME 2022-05-05T12:13:08,674 -- Performing Test C_SUPPORTS_WERROR_DATE_TIME - Success 2022-05-05T12:13:08,685 -- Performing Test CXX_SUPPORTS_WERROR_DATE_TIME 2022-05-05T12:13:10,643 -- Performing Test CXX_SUPPORTS_WERROR_DATE_TIME - Success 2022-05-05T12:13:10,655 -- Performing Test CXX_SUPPORTS_WERROR_UNGUARDED_AVAILABILITY_NEW 2022-05-05T12:13:12,043 -- Performing Test CXX_SUPPORTS_WERROR_UNGUARDED_AVAILABILITY_NEW - Failed 2022-05-05T12:13:12,054 -- Performing Test CXX_SUPPORTS_MISSING_FIELD_INITIALIZERS_FLAG 2022-05-05T12:13:13,995 -- Performing Test CXX_SUPPORTS_MISSING_FIELD_INITIALIZERS_FLAG - Success 2022-05-05T12:13:14,008 -- Performing Test C_SUPPORTS_CXX98_COMPAT_EXTRA_SEMI_FLAG 2022-05-05T12:13:15,409 -- Performing Test C_SUPPORTS_CXX98_COMPAT_EXTRA_SEMI_FLAG - Failed 2022-05-05T12:13:15,420 -- Performing Test CXX_SUPPORTS_CXX98_COMPAT_EXTRA_SEMI_FLAG 2022-05-05T12:13:16,808 -- Performing Test CXX_SUPPORTS_CXX98_COMPAT_EXTRA_SEMI_FLAG - Failed 2022-05-05T12:13:16,819 -- Performing Test C_SUPPORTS_IMPLICIT_FALLTHROUGH_FLAG 2022-05-05T12:13:18,543 -- Performing Test C_SUPPORTS_IMPLICIT_FALLTHROUGH_FLAG - Success 2022-05-05T12:13:18,554 -- Performing Test CXX_SUPPORTS_IMPLICIT_FALLTHROUGH_FLAG 2022-05-05T12:13:20,508 -- Performing Test CXX_SUPPORTS_IMPLICIT_FALLTHROUGH_FLAG - Success 2022-05-05T12:13:20,519 -- Performing Test C_SUPPORTS_COVERED_SWITCH_DEFAULT_FLAG 2022-05-05T12:13:21,882 -- Performing Test C_SUPPORTS_COVERED_SWITCH_DEFAULT_FLAG - Failed 2022-05-05T12:13:21,892 -- Performing Test CXX_SUPPORTS_COVERED_SWITCH_DEFAULT_FLAG 2022-05-05T12:13:23,262 -- Performing Test CXX_SUPPORTS_COVERED_SWITCH_DEFAULT_FLAG - Failed 2022-05-05T12:13:23,274 -- Performing Test CXX_SUPPORTS_CLASS_MEMACCESS_FLAG 2022-05-05T12:13:25,225 -- Performing Test CXX_SUPPORTS_CLASS_MEMACCESS_FLAG - Success 2022-05-05T12:13:25,236 -- Performing Test CXX_SUPPORTS_REDUNDANT_MOVE_FLAG 2022-05-05T12:13:26,604 -- Performing Test CXX_SUPPORTS_REDUNDANT_MOVE_FLAG - Failed 2022-05-05T12:13:26,614 -- Performing Test CXX_SUPPORTS_PESSIMIZING_MOVE_FLAG 2022-05-05T12:13:27,982 -- Performing Test CXX_SUPPORTS_PESSIMIZING_MOVE_FLAG - Failed 2022-05-05T12:13:27,992 -- Performing Test CXX_SUPPORTS_NOEXCEPT_TYPE_FLAG 2022-05-05T12:13:29,933 -- Performing Test CXX_SUPPORTS_NOEXCEPT_TYPE_FLAG - Success 2022-05-05T12:13:29,938 -- Performing Test CXX_WONT_WARN_ON_FINAL_NONVIRTUALDTOR 2022-05-05T12:13:31,424 -- Performing Test CXX_WONT_WARN_ON_FINAL_NONVIRTUALDTOR - Failed 2022-05-05T12:13:31,435 -- Performing Test CXX_SUPPORTS_SUGGEST_OVERRIDE_FLAG 2022-05-05T12:13:33,408 -- Performing Test CXX_SUPPORTS_SUGGEST_OVERRIDE_FLAG - Success 2022-05-05T12:13:33,413 -- Performing Test CXX_WSUGGEST_OVERRIDE_ALLOWS_ONLY_FINAL 2022-05-05T12:13:34,918 -- Performing Test CXX_WSUGGEST_OVERRIDE_ALLOWS_ONLY_FINAL - Failed 2022-05-05T12:13:34,924 -- Performing Test C_WCOMMENT_ALLOWS_LINE_WRAP 2022-05-05T12:13:36,405 -- Performing Test C_WCOMMENT_ALLOWS_LINE_WRAP - Failed 2022-05-05T12:13:36,416 -- Performing Test C_SUPPORTS_STRING_CONVERSION_FLAG 2022-05-05T12:13:37,782 -- Performing Test C_SUPPORTS_STRING_CONVERSION_FLAG - Failed 2022-05-05T12:13:37,793 -- Performing Test CXX_SUPPORTS_STRING_CONVERSION_FLAG 2022-05-05T12:13:39,167 -- Performing Test CXX_SUPPORTS_STRING_CONVERSION_FLAG - Failed 2022-05-05T12:13:39,178 -- Performing Test C_SUPPORTS_MISLEADING_INDENTATION_FLAG 2022-05-05T12:13:40,913 -- Performing Test C_SUPPORTS_MISLEADING_INDENTATION_FLAG - Success 2022-05-05T12:13:40,924 -- Performing Test CXX_SUPPORTS_MISLEADING_INDENTATION_FLAG 2022-05-05T12:13:42,906 -- Performing Test CXX_SUPPORTS_MISLEADING_INDENTATION_FLAG - Success 2022-05-05T12:13:42,927 -- Performing Test LINKER_SUPPORTS_COLOR_DIAGNOSTICS 2022-05-05T12:13:44,485 -- Performing Test LINKER_SUPPORTS_COLOR_DIAGNOSTICS - Failed 2022-05-05T12:13:44,496 -- Performing Test C_SUPPORTS_FNO_FUNCTION_SECTIONS 2022-05-05T12:13:46,221 -- Performing Test C_SUPPORTS_FNO_FUNCTION_SECTIONS - Success 2022-05-05T12:13:46,232 -- Performing Test C_SUPPORTS_FFUNCTION_SECTIONS 2022-05-05T12:13:47,958 -- Performing Test C_SUPPORTS_FFUNCTION_SECTIONS - Success 2022-05-05T12:13:47,969 -- Performing Test CXX_SUPPORTS_FFUNCTION_SECTIONS 2022-05-05T12:13:49,934 -- Performing Test CXX_SUPPORTS_FFUNCTION_SECTIONS - Success 2022-05-05T12:13:49,945 -- Performing Test C_SUPPORTS_FDATA_SECTIONS 2022-05-05T12:13:51,663 -- Performing Test C_SUPPORTS_FDATA_SECTIONS - Success 2022-05-05T12:13:51,674 -- Performing Test CXX_SUPPORTS_FDATA_SECTIONS 2022-05-05T12:13:53,644 -- Performing Test CXX_SUPPORTS_FDATA_SECTIONS - Success 2022-05-05T12:13:53,658 -- Looking for os_signpost_interval_begin 2022-05-05T12:13:55,131 -- Looking for os_signpost_interval_begin - not found 2022-05-05T12:13:59,221 -- Found Python3: /usr/bin/python3.7 (found suitable version "3.7.3", minimum required is "3.6") found components: Interpreter 2022-05-05T12:14:03,237 -- Linker detection: GNU ld 2022-05-05T12:14:03,316 -- Performing Test HAS_WERROR_GLOBAL_CTORS 2022-05-05T12:14:04,692 -- Performing Test HAS_WERROR_GLOBAL_CTORS - Failed 2022-05-05T12:14:05,806 -- Found Git: /usr/bin/git (found version "2.20.1") 2022-05-05T12:14:09,807 -- Targeting AArch64 2022-05-05T12:14:10,113 -- Targeting AMDGPU 2022-05-05T12:14:10,602 -- Targeting ARM 2022-05-05T12:14:10,894 -- Targeting AVR 2022-05-05T12:14:11,074 -- Targeting BPF 2022-05-05T12:14:11,253 -- Targeting Hexagon 2022-05-05T12:14:11,532 -- Targeting Lanai 2022-05-05T12:14:11,711 -- Targeting Mips 2022-05-05T12:14:11,976 -- Targeting MSP430 2022-05-05T12:14:12,148 -- Targeting NVPTX 2022-05-05T12:14:12,283 -- Targeting PowerPC 2022-05-05T12:14:12,530 -- Targeting RISCV 2022-05-05T12:14:12,757 -- Targeting Sparc 2022-05-05T12:14:12,937 -- Targeting SystemZ 2022-05-05T12:14:13,145 -- Targeting VE 2022-05-05T12:14:13,325 -- Targeting WebAssembly 2022-05-05T12:14:13,583 -- Targeting X86 2022-05-05T12:14:13,918 -- Targeting XCore 2022-05-05T12:14:16,397 -- Looking for sys/resource.h 2022-05-05T12:14:18,228 -- Looking for sys/resource.h - found 2022-05-05T12:14:18,349 -- Clang version: 14.0.3 2022-05-05T12:14:18,371 -- Performing Test CXX_SUPPORTS_NO_NESTED_ANON_TYPES_FLAG 2022-05-05T12:14:19,759 -- Performing Test CXX_SUPPORTS_NO_NESTED_ANON_TYPES_FLAG - Failed 2022-05-05T12:14:22,120 -- Looking for include file sys/inotify.h 2022-05-05T12:14:23,988 -- Looking for include file sys/inotify.h - found 2022-05-05T12:14:26,185 -- Not building amdgpu-arch: hsa-runtime64 not found 2022-05-05T12:14:45,616 -- Registering Bye as a pass plugin (static build: OFF) 2022-05-05T12:15:12,544 -- git version: v0.0.0 normalized to 0.0.0 2022-05-05T12:15:12,545 -- Version: 1.6.0 2022-05-05T12:15:12,560 -- Looking for shm_open in rt 2022-05-05T12:15:14,270 -- Looking for shm_open in rt - found 2022-05-05T12:15:14,282 -- Performing Test HAVE_CXX_FLAG_STD_CXX11 2022-05-05T12:15:16,141 -- Performing Test HAVE_CXX_FLAG_STD_CXX11 - Success 2022-05-05T12:15:16,153 -- Performing Test HAVE_CXX_FLAG_WALL 2022-05-05T12:15:18,033 -- Performing Test HAVE_CXX_FLAG_WALL - Success 2022-05-05T12:15:18,046 -- Performing Test HAVE_CXX_FLAG_WEXTRA 2022-05-05T12:15:19,913 -- Performing Test HAVE_CXX_FLAG_WEXTRA - Success 2022-05-05T12:15:19,925 -- Performing Test HAVE_CXX_FLAG_WSHADOW 2022-05-05T12:15:21,791 -- Performing Test HAVE_CXX_FLAG_WSHADOW - Success 2022-05-05T12:15:21,803 -- Performing Test HAVE_CXX_FLAG_WSUGGEST_OVERRIDE 2022-05-05T12:15:23,675 -- Performing Test HAVE_CXX_FLAG_WSUGGEST_OVERRIDE - Success 2022-05-05T12:15:23,687 -- Performing Test HAVE_CXX_FLAG_PEDANTIC 2022-05-05T12:15:25,543 -- Performing Test HAVE_CXX_FLAG_PEDANTIC - Success 2022-05-05T12:15:25,555 -- Performing Test HAVE_CXX_FLAG_PEDANTIC_ERRORS 2022-05-05T12:15:27,423 -- Performing Test HAVE_CXX_FLAG_PEDANTIC_ERRORS - Success 2022-05-05T12:15:27,435 -- Performing Test HAVE_CXX_FLAG_WSHORTEN_64_TO_32 2022-05-05T12:15:28,811 -- Performing Test HAVE_CXX_FLAG_WSHORTEN_64_TO_32 - Failed 2022-05-05T12:15:28,823 -- Performing Test HAVE_CXX_FLAG_FSTRICT_ALIASING 2022-05-05T12:15:30,680 -- Performing Test HAVE_CXX_FLAG_FSTRICT_ALIASING - Success 2022-05-05T12:15:30,693 -- Performing Test HAVE_CXX_FLAG_WNO_DEPRECATED_DECLARATIONS 2022-05-05T12:15:32,563 -- Performing Test HAVE_CXX_FLAG_WNO_DEPRECATED_DECLARATIONS - Success 2022-05-05T12:15:32,575 -- Performing Test HAVE_CXX_FLAG_FNO_EXCEPTIONS 2022-05-05T12:15:34,452 -- Performing Test HAVE_CXX_FLAG_FNO_EXCEPTIONS - Success 2022-05-05T12:15:34,464 -- Performing Test HAVE_CXX_FLAG_WSTRICT_ALIASING 2022-05-05T12:15:36,325 -- Performing Test HAVE_CXX_FLAG_WSTRICT_ALIASING - Success 2022-05-05T12:15:36,337 -- Performing Test HAVE_CXX_FLAG_WD654 2022-05-05T12:15:37,672 -- Performing Test HAVE_CXX_FLAG_WD654 - Failed 2022-05-05T12:15:37,684 -- Performing Test HAVE_CXX_FLAG_WTHREAD_SAFETY 2022-05-05T12:15:39,071 -- Performing Test HAVE_CXX_FLAG_WTHREAD_SAFETY - Failed 2022-05-05T12:15:39,083 -- Performing Test HAVE_CXX_FLAG_COVERAGE 2022-05-05T12:15:40,976 -- Performing Test HAVE_CXX_FLAG_COVERAGE - Success 2022-05-05T12:15:40,981 -- Performing Test HAVE_GNU_POSIX_REGEX 2022-05-05T12:15:40,981 -- Performing Test HAVE_GNU_POSIX_REGEX 2022-05-05T12:15:42,442 -- Performing Test HAVE_GNU_POSIX_REGEX -- failed to compile 2022-05-05T12:15:42,443 -- Performing Test HAVE_POSIX_REGEX 2022-05-05T12:15:42,444 -- Performing Test HAVE_POSIX_REGEX 2022-05-05T12:15:45,369 -- Performing Test HAVE_POSIX_REGEX -- success 2022-05-05T12:15:45,371 -- Performing Test HAVE_STEADY_CLOCK 2022-05-05T12:15:45,371 -- Performing Test HAVE_STEADY_CLOCK 2022-05-05T12:15:47,611 -- Performing Test HAVE_STEADY_CLOCK -- success 2022-05-05T12:15:48,173 -- Configuring done 2022-05-05T12:16:47,091 -- Generating done 2022-05-05T12:16:53,352 -- Build files have been written to: /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm 2022-05-05T12:16:54,995 [5/10] Performing build step for 'build-clang-format' 2022-05-05T12:17:00,279 [1/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/ABIBreak.cpp.o 2022-05-05T12:17:03,064 [2/611] Building CXX object lib/Demangle/CMakeFiles/LLVMDemangle.dir/DLangDemangle.cpp.o 2022-05-05T12:17:06,905 [3/611] Building CXX object lib/Demangle/CMakeFiles/LLVMDemangle.dir/Demangle.cpp.o 2022-05-05T12:17:12,427 [4/611] Building CXX object lib/Demangle/CMakeFiles/LLVMDemangle.dir/RustDemangle.cpp.o 2022-05-05T12:17:16,093 [5/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/AArch64TargetParser.cpp.o 2022-05-05T12:17:17,822 [6/611] Building CXX object lib/Demangle/CMakeFiles/LLVMDemangle.dir/MicrosoftDemangleNodes.cpp.o 2022-05-05T12:17:18,054 [7/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/ARMTargetParser.cpp.o 2022-05-05T12:17:25,659 [8/611] Building CXX object utils/TableGen/GlobalISel/CMakeFiles/LLVMTableGenGlobalISel.dir/GIMatchDagPredicateDependencyEdge.cpp.o 2022-05-05T12:17:28,989 [9/611] Building CXX object lib/Demangle/CMakeFiles/LLVMDemangle.dir/MicrosoftDemangle.cpp.o 2022-05-05T12:17:32,201 [10/611] Building CXX object utils/TableGen/GlobalISel/CMakeFiles/LLVMTableGenGlobalISel.dir/GIMatchDagPredicate.cpp.o 2022-05-05T12:17:36,651 [11/611] Building CXX object lib/Demangle/CMakeFiles/LLVMDemangle.dir/ItaniumDemangle.cpp.o 2022-05-05T12:17:37,076 [12/611] Linking CXX static library lib/libLLVMDemangle.a 2022-05-05T12:17:38,190 [13/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/APSInt.cpp.o 2022-05-05T12:17:40,410 [14/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/AMDGPUMetadata.cpp.o 2022-05-05T12:17:41,738 [15/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/APFixedPoint.cpp.o 2022-05-05T12:17:44,118 [16/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/ARMBuildAttrs.cpp.o 2022-05-05T12:17:44,511 [17/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/AutoConvert.cpp.o 2022-05-05T12:17:47,055 [18/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/ARMWinEH.cpp.o 2022-05-05T12:17:49,629 [19/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Allocator.cpp.o 2022-05-05T12:17:53,819 [20/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/BinaryStreamError.cpp.o 2022-05-05T12:17:59,698 [21/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/ARMAttributeParser.cpp.o 2022-05-05T12:18:01,617 [22/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/BlockFrequency.cpp.o 2022-05-05T12:18:02,577 [23/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/BinaryStreamReader.cpp.o 2022-05-05T12:18:03,207 [24/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/APInt.cpp.o 2022-05-05T12:18:03,208 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/lib/Support/APInt.cpp: In member function ‘void llvm::APInt::initFromArray(llvm::ArrayRef)’: 2022-05-05T12:18:03,209 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/lib/Support/APInt.cpp:89:6: note: parameter passing for argument of type ‘llvm::ArrayRef’ changed in GCC 7.1 2022-05-05T12:18:03,210 void APInt::initFromArray(ArrayRef bigVal) { 2022-05-05T12:18:03,210 ^~~~~ 2022-05-05T12:18:03,211 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/lib/Support/APInt.cpp:89:6: note: parameter passing for argument of type ‘llvm::ArrayRef’ changed in GCC 7.1 2022-05-05T12:18:03,211 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/lib/Support/APInt.cpp: In constructor ‘llvm::APInt::APInt(unsigned int, llvm::ArrayRef)’: 2022-05-05T12:18:03,212 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/lib/Support/APInt.cpp:105:1: note: parameter passing for argument of type ‘llvm::ArrayRef’ changed in GCC 7.1 2022-05-05T12:18:03,213 APInt::APInt(unsigned numBits, ArrayRef bigVal) : BitWidth(numBits) { 2022-05-05T12:18:03,213 ^~~~~ 2022-05-05T12:18:03,214 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/lib/Support/APInt.cpp: In member function ‘llvm::APInt llvm::APInt::extractBits(unsigned int, unsigned int) const’: 2022-05-05T12:18:03,214 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/lib/Support/APInt.cpp:106:16: note: parameter passing for argument of type ‘llvm::ArrayRef’ changed in GCC 7.1 2022-05-05T12:18:03,215 initFromArray(bigVal); 2022-05-05T12:18:03,215 ~~~~~~~~~~~~~^~~~~~~~ 2022-05-05T12:18:03,244 [25/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/BinaryStreamRef.cpp.o 2022-05-05T12:18:06,492 [26/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/APFloat.cpp.o 2022-05-05T12:18:06,499 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/lib/Support/APFloat.cpp: In member function ‘llvm::APFloatBase::opStatus llvm::detail::IEEEFloat::convertToSignExtendedInteger(llvm::MutableArrayRef, unsigned int, bool, llvm::APFloatBase::roundingMode, bool*) const’: 2022-05-05T12:18:06,499 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/lib/Support/APFloat.cpp:2297:21: note: parameter passing for argument of type ‘llvm::MutableArrayRef’ changed in GCC 7.1 2022-05-05T12:18:06,500 IEEEFloat::opStatus IEEEFloat::convertToSignExtendedInteger( 2022-05-05T12:18:06,500 ^~~~~~~~~ 2022-05-05T12:18:06,501 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/lib/Support/APFloat.cpp: In member function ‘llvm::APFloatBase::opStatus llvm::detail::IEEEFloat::convertToInteger(llvm::MutableArrayRef, unsigned int, bool, llvm::APFloatBase::roundingMode, bool*) const’: 2022-05-05T12:18:06,501 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/lib/Support/APFloat.cpp:2411:1: note: parameter passing for argument of type ‘llvm::MutableArrayRef’ changed in GCC 7.1 2022-05-05T12:18:06,502 IEEEFloat::convertToInteger(MutableArrayRef parts, 2022-05-05T12:18:06,502 ^~~~~~~~~ 2022-05-05T12:18:06,503 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/lib/Support/APFloat.cpp:2416:36: note: parameter passing for argument of type ‘llvm::MutableArrayRef’ changed in GCC 7.1 2022-05-05T12:18:06,503 fs = convertToSignExtendedInteger(parts, width, isSigned, rounding_mode, 2022-05-05T12:18:06,504 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,505 isExact); 2022-05-05T12:18:06,505 ~~~~~~~~ 2022-05-05T12:18:06,506 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/lib/Support/APFloat.cpp: In member function ‘llvm::APFloatBase::opStatus llvm::detail::DoubleAPFloat::convertToInteger(llvm::MutableArrayRef, unsigned int, bool, llvm::APFloatBase::roundingMode, bool*) const’: 2022-05-05T12:18:06,506 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/lib/Support/APFloat.cpp:4685:1: note: parameter passing for argument of type ‘llvm::MutableArrayRef’ changed in GCC 7.1 2022-05-05T12:18:06,507 DoubleAPFloat::convertToInteger(MutableArrayRef Input, 2022-05-05T12:18:06,507 ^~~~~~~~~~~~~ 2022-05-05T12:18:06,508 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/lib/Support/APFloat.cpp:2416:36: note: parameter passing for argument of type ‘llvm::MutableArrayRef’ changed in GCC 7.1 2022-05-05T12:18:06,508 fs = convertToSignExtendedInteger(parts, width, isSigned, rounding_mode, 2022-05-05T12:18:06,508 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,509 isExact); 2022-05-05T12:18:06,509 ~~~~~~~~ 2022-05-05T12:18:06,510 In file included from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/lib/Support/APFloat.cpp:14: 2022-05-05T12:18:06,510 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/APFloat.h:1108:25: note: parameter passing for argument of type ‘llvm::MutableArrayRef’ changed in GCC 7.1 2022-05-05T12:18:06,511 return U.Double.METHOD_CALL; \ 2022-05-05T12:18:06,511 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,512 llvm_unreachable("Unexpected semantics"); \ 2022-05-05T12:18:06,512 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,513 } while (false) 2022-05-05T12:18:06,513 ~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,515 namespace llvm { 2022-05-05T12:18:06,515 ~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,517 struct fltSemantics; 2022-05-05T12:18:06,517 ~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,518 class APSInt; 2022-05-05T12:18:06,518 ~~~~~~~~~~~~~ 2022-05-05T12:18:06,519 class StringRef; 2022-05-05T12:18:06,519 ~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,520 class APFloat; 2022-05-05T12:18:06,520 ~~~~~~~~~~~~~~ 2022-05-05T12:18:06,521 class raw_ostream; 2022-05-05T12:18:06,522 ~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,523 template class Expected; 2022-05-05T12:18:06,524 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,525 template class SmallVectorImpl; 2022-05-05T12:18:06,525 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,527 /// Enum that represents what fraction of the LSB truncated bits of an fp number 2022-05-05T12:18:06,527 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,528 /// represent. 2022-05-05T12:18:06,528 ~~~~~~~~~~~~~~ 2022-05-05T12:18:06,529 /// 2022-05-05T12:18:06,529 ~~~ 2022-05-05T12:18:06,530 /// This essentially combines the roles of guard and sticky bits. 2022-05-05T12:18:06,530 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,531 enum lostFraction { // Example of truncated bits: 2022-05-05T12:18:06,531 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,532 lfExactlyZero, // 000000 2022-05-05T12:18:06,532 ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,533 lfLessThanHalf, // 0xxxxx x's not all zero 2022-05-05T12:18:06,533 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,534 lfExactlyHalf, // 100000 2022-05-05T12:18:06,534 ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,535 lfMoreThanHalf // 1xxxxx x's not all zero 2022-05-05T12:18:06,536 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,536 }; 2022-05-05T12:18:06,537 ~~ 2022-05-05T12:18:06,539 /// A self-contained host- and target-independent arbitrary-precision 2022-05-05T12:18:06,539 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,540 /// floating-point software implementation. 2022-05-05T12:18:06,540 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,541 /// 2022-05-05T12:18:06,542 ~~~ 2022-05-05T12:18:06,542 /// APFloat uses bignum integer arithmetic as provided by static functions in 2022-05-05T12:18:06,543 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,543 /// the APInt class. The library will work with bignum integers whose parts are 2022-05-05T12:18:06,544 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,544 /// any unsigned type at least 16 bits wide, but 64 bits is recommended. 2022-05-05T12:18:06,545 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,545 /// 2022-05-05T12:18:06,546 ~~~ 2022-05-05T12:18:06,546 /// Written for clarity rather than speed, in particular with a view to use in 2022-05-05T12:18:06,547 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,548 /// the front-end of a cross compiler so that target arithmetic can be correctly 2022-05-05T12:18:06,548 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,549 /// performed on the host. Performance should nonetheless be reasonable, 2022-05-05T12:18:06,549 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,550 /// particularly for its intended use. It may be useful as a base 2022-05-05T12:18:06,550 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,551 /// implementation for a run-time library during development of a faster 2022-05-05T12:18:06,551 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,552 /// target-specific one. 2022-05-05T12:18:06,553 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,553 /// 2022-05-05T12:18:06,554 ~~~ 2022-05-05T12:18:06,554 /// All 5 rounding modes in the IEEE-754R draft are handled correctly for all 2022-05-05T12:18:06,555 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,555 /// implemented operations. Currently implemented operations are add, subtract, 2022-05-05T12:18:06,556 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,556 /// multiply, divide, fused-multiply-add, conversion-to-float, 2022-05-05T12:18:06,557 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,557 /// conversion-to-integer and conversion-from-integer. New rounding modes 2022-05-05T12:18:06,558 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,559 /// (e.g. away from zero) can be added with three or four lines of code. 2022-05-05T12:18:06,559 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,560 /// 2022-05-05T12:18:06,560 ~~~ 2022-05-05T12:18:06,561 /// Four formats are built-in: IEEE single precision, double precision, 2022-05-05T12:18:06,561 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,562 /// quadruple precision, and x87 80-bit extended double (when operating with 2022-05-05T12:18:06,562 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,563 /// full extended precision). Adding a new format that obeys IEEE semantics 2022-05-05T12:18:06,563 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,564 /// only requires adding two lines of code: a declaration and definition of the 2022-05-05T12:18:06,564 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,565 /// format. 2022-05-05T12:18:06,565 ~~~~~~~~~~~ 2022-05-05T12:18:06,566 /// 2022-05-05T12:18:06,566 ~~~ 2022-05-05T12:18:06,567 /// All operations return the status of that operation as an exception bit-mask, 2022-05-05T12:18:06,567 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,568 /// so multiple operations can be done consecutively with their results or-ed 2022-05-05T12:18:06,568 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,569 /// together. The returned status can be useful for compiler diagnostics; e.g., 2022-05-05T12:18:06,569 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,570 /// inexact, underflow and overflow can be easily diagnosed on constant folding, 2022-05-05T12:18:06,570 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,571 /// and compiler optimizers can determine what exceptions would be raised by 2022-05-05T12:18:06,571 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,572 /// folding operations and optimize, or perhaps not optimize, accordingly. 2022-05-05T12:18:06,572 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,573 /// 2022-05-05T12:18:06,573 ~~~ 2022-05-05T12:18:06,574 /// At present, underflow tininess is detected after rounding; it should be 2022-05-05T12:18:06,574 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,574 /// straight forward to add support for the before-rounding case too. 2022-05-05T12:18:06,575 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,576 /// 2022-05-05T12:18:06,576 ~~~ 2022-05-05T12:18:06,577 /// The library reads hexadecimal floating point numbers as per C99, and 2022-05-05T12:18:06,577 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,578 /// correctly rounds if necessary according to the specified rounding mode. 2022-05-05T12:18:06,578 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,579 /// Syntax is required to have been validated by the caller. It also converts 2022-05-05T12:18:06,579 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,580 /// floating point numbers to hexadecimal text as per the C99 %a and %A 2022-05-05T12:18:06,580 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,581 /// conversions. The output precision (or alternatively the natural minimal 2022-05-05T12:18:06,582 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,582 /// precision) can be specified; if the requested precision is less than the 2022-05-05T12:18:06,583 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,583 /// natural precision the output is correctly rounded for the specified rounding 2022-05-05T12:18:06,584 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,584 /// mode. 2022-05-05T12:18:06,585 ~~~~~~~~~ 2022-05-05T12:18:06,585 /// 2022-05-05T12:18:06,586 ~~~ 2022-05-05T12:18:06,586 /// It also reads decimal floating point numbers and correctly rounds according 2022-05-05T12:18:06,587 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,588 /// to the specified rounding mode. 2022-05-05T12:18:06,588 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,589 /// 2022-05-05T12:18:06,589 ~~~ 2022-05-05T12:18:06,590 /// Conversion to decimal text is not currently implemented. 2022-05-05T12:18:06,590 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,591 /// 2022-05-05T12:18:06,591 ~~~ 2022-05-05T12:18:06,592 /// Non-zero finite numbers are represented internally as a sign bit, a 16-bit 2022-05-05T12:18:06,592 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,593 /// signed exponent, and the significand as an array of integer parts. After 2022-05-05T12:18:06,594 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,594 /// normalization of a number of precision P the exponent is within the range of 2022-05-05T12:18:06,595 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,595 /// the format, and if the number is not denormal the P-th bit of the 2022-05-05T12:18:06,596 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,596 /// significand is set as an explicit integer bit. For denormals the most 2022-05-05T12:18:06,597 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,597 /// significant bit is shifted right so that the exponent is maintained at the 2022-05-05T12:18:06,598 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,598 /// format's minimum, so that the smallest denormal has just the least 2022-05-05T12:18:06,599 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,599 /// significant bit of the significand set. The sign of zeroes and infinities 2022-05-05T12:18:06,600 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,600 /// is significant; the exponent and significand of such numbers is not stored, 2022-05-05T12:18:06,601 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,601 /// but has a known implicit (deterministic) value: 0 for the significands, 0 2022-05-05T12:18:06,602 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,602 /// for zero exponent, all 1 bits for infinity exponent. For NaNs the sign and 2022-05-05T12:18:06,603 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,603 /// significand are deterministic, although not really meaningful, and preserved 2022-05-05T12:18:06,604 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,605 /// in non-conversion operations. The exponent is implicitly all 1 bits. 2022-05-05T12:18:06,605 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,606 /// 2022-05-05T12:18:06,606 ~~~ 2022-05-05T12:18:06,607 /// APFloat does not provide any exception handling beyond default exception 2022-05-05T12:18:06,607 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,608 /// handling. We represent Signaling NaNs via IEEE-754R 2008 6.2.1 should clause 2022-05-05T12:18:06,608 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,609 /// by encoding Signaling NaNs with the first bit of its trailing significand as 2022-05-05T12:18:06,609 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,610 /// 0. 2022-05-05T12:18:06,610 ~~~~~~ 2022-05-05T12:18:06,611 /// 2022-05-05T12:18:06,611 ~~~ 2022-05-05T12:18:06,612 /// TODO 2022-05-05T12:18:06,612 ~~~~~~~~ 2022-05-05T12:18:06,613 /// ==== 2022-05-05T12:18:06,613 ~~~~~~~~ 2022-05-05T12:18:06,614 /// 2022-05-05T12:18:06,614 ~~~ 2022-05-05T12:18:06,615 /// Some features that may or may not be worth adding: 2022-05-05T12:18:06,615 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,615 /// 2022-05-05T12:18:06,616 ~~~ 2022-05-05T12:18:06,616 /// Binary to decimal conversion (hard). 2022-05-05T12:18:06,617 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,618 /// 2022-05-05T12:18:06,618 ~~~ 2022-05-05T12:18:06,619 /// Optional ability to detect underflow tininess before rounding. 2022-05-05T12:18:06,619 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,620 /// 2022-05-05T12:18:06,620 ~~~ 2022-05-05T12:18:06,621 /// New formats: x87 in single and double precision mode (IEEE apart from 2022-05-05T12:18:06,621 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,621 /// extended exponent range) (hard). 2022-05-05T12:18:06,622 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,622 /// 2022-05-05T12:18:06,623 ~~~ 2022-05-05T12:18:06,623 /// New operations: sqrt, IEEE remainder, C90 fmod, nexttoward. 2022-05-05T12:18:06,624 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,624 /// 2022-05-05T12:18:06,625 ~~~ 2022-05-05T12:18:06,626 // This is the common type definitions shared by APFloat and its internal 2022-05-05T12:18:06,627 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,627 // implementation classes. This struct should not define any non-static data 2022-05-05T12:18:06,628 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,628 // members. 2022-05-05T12:18:06,629 ~~~~~~~~~~~ 2022-05-05T12:18:06,629 struct APFloatBase { 2022-05-05T12:18:06,630 ~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,630 typedef APInt::WordType integerPart; 2022-05-05T12:18:06,631 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,631 static constexpr unsigned integerPartWidth = APInt::APINT_BITS_PER_WORD; 2022-05-05T12:18:06,632 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,633 /// A signed type to represent a floating point numbers unbiased exponent. 2022-05-05T12:18:06,634 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,634 typedef int32_t ExponentType; 2022-05-05T12:18:06,635 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,636 /// \name Floating Point Semantics. 2022-05-05T12:18:06,637 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,637 /// @{ 2022-05-05T12:18:06,638 ~~~~~~ 2022-05-05T12:18:06,638 enum Semantics { 2022-05-05T12:18:06,639 ~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,640 S_IEEEhalf, 2022-05-05T12:18:06,640 ~~~~~~~~~~~ 2022-05-05T12:18:06,641 S_BFloat, 2022-05-05T12:18:06,641 ~~~~~~~~~ 2022-05-05T12:18:06,642 S_IEEEsingle, 2022-05-05T12:18:06,643 ~~~~~~~~~~~~~ 2022-05-05T12:18:06,643 S_IEEEdouble, 2022-05-05T12:18:06,644 ~~~~~~~~~~~~~ 2022-05-05T12:18:06,644 S_x87DoubleExtended, 2022-05-05T12:18:06,645 ~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,645 S_IEEEquad, 2022-05-05T12:18:06,646 ~~~~~~~~~~~ 2022-05-05T12:18:06,646 S_PPCDoubleDouble 2022-05-05T12:18:06,647 ~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,648 }; 2022-05-05T12:18:06,648 ~~ 2022-05-05T12:18:06,650 static const llvm::fltSemantics &EnumToSemantics(Semantics S); 2022-05-05T12:18:06,650 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,651 static Semantics SemanticsToEnum(const llvm::fltSemantics &Sem); 2022-05-05T12:18:06,651 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,653 static const fltSemantics &IEEEhalf() LLVM_READNONE; 2022-05-05T12:18:06,653 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,654 static const fltSemantics &BFloat() LLVM_READNONE; 2022-05-05T12:18:06,654 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,655 static const fltSemantics &IEEEsingle() LLVM_READNONE; 2022-05-05T12:18:06,655 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,656 static const fltSemantics &IEEEdouble() LLVM_READNONE; 2022-05-05T12:18:06,656 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,657 static const fltSemantics &IEEEquad() LLVM_READNONE; 2022-05-05T12:18:06,657 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,658 static const fltSemantics &PPCDoubleDouble() LLVM_READNONE; 2022-05-05T12:18:06,658 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,659 static const fltSemantics &x87DoubleExtended() LLVM_READNONE; 2022-05-05T12:18:06,659 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,661 /// A Pseudo fltsemantic used to construct APFloats that cannot conflict with 2022-05-05T12:18:06,661 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,662 /// anything real. 2022-05-05T12:18:06,662 ~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,663 static const fltSemantics &Bogus() LLVM_READNONE; 2022-05-05T12:18:06,664 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,666 /// @} 2022-05-05T12:18:06,686 ~~~~~~ 2022-05-05T12:18:06,688 /// IEEE-754R 5.11: Floating Point Comparison Relations. 2022-05-05T12:18:06,688 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,689 enum cmpResult { 2022-05-05T12:18:06,689 ~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,690 cmpLessThan, 2022-05-05T12:18:06,690 ~~~~~~~~~~~~ 2022-05-05T12:18:06,691 cmpEqual, 2022-05-05T12:18:06,691 ~~~~~~~~~ 2022-05-05T12:18:06,691 cmpGreaterThan, 2022-05-05T12:18:06,692 ~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,692 cmpUnordered 2022-05-05T12:18:06,693 ~~~~~~~~~~~~ 2022-05-05T12:18:06,693 }; 2022-05-05T12:18:06,694 ~~ 2022-05-05T12:18:06,695 /// IEEE-754R 4.3: Rounding-direction attributes. 2022-05-05T12:18:06,696 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,706 using roundingMode = llvm::RoundingMode; 2022-05-05T12:18:06,707 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,709 static constexpr roundingMode rmNearestTiesToEven = 2022-05-05T12:18:06,709 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,710 RoundingMode::NearestTiesToEven; 2022-05-05T12:18:06,710 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,711 static constexpr roundingMode rmTowardPositive = RoundingMode::TowardPositive; 2022-05-05T12:18:06,711 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,712 static constexpr roundingMode rmTowardNegative = RoundingMode::TowardNegative; 2022-05-05T12:18:06,712 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,713 static constexpr roundingMode rmTowardZero = RoundingMode::TowardZero; 2022-05-05T12:18:06,713 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,714 static constexpr roundingMode rmNearestTiesToAway = 2022-05-05T12:18:06,714 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,714 RoundingMode::NearestTiesToAway; 2022-05-05T12:18:06,715 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,727 /// IEEE-754R 7: Default exception handling. 2022-05-05T12:18:06,727 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,728 /// 2022-05-05T12:18:06,729 ~~~ 2022-05-05T12:18:06,729 /// opUnderflow or opOverflow are always returned or-ed with opInexact. 2022-05-05T12:18:06,730 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,731 /// 2022-05-05T12:18:06,731 ~~~ 2022-05-05T12:18:06,732 /// APFloat models this behavior specified by IEEE-754: 2022-05-05T12:18:06,733 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,733 /// "For operations producing results in floating-point format, the default 2022-05-05T12:18:06,734 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,735 /// result of an operation that signals the invalid operation exception 2022-05-05T12:18:06,735 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,736 /// shall be a quiet NaN." 2022-05-05T12:18:06,747 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,747 enum opStatus { 2022-05-05T12:18:06,748 ~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,749 opOK = 0x00, 2022-05-05T12:18:06,749 ~~~~~~~~~~~~ 2022-05-05T12:18:06,750 opInvalidOp = 0x01, 2022-05-05T12:18:06,751 ~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,751 opDivByZero = 0x02, 2022-05-05T12:18:06,752 ~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,753 opOverflow = 0x04, 2022-05-05T12:18:06,753 ~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,754 opUnderflow = 0x08, 2022-05-05T12:18:06,754 ~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,755 opInexact = 0x10 2022-05-05T12:18:06,755 ~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,756 }; 2022-05-05T12:18:06,767 ~~ 2022-05-05T12:18:06,769 /// Category of internally-represented number. 2022-05-05T12:18:06,769 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,770 enum fltCategory { 2022-05-05T12:18:06,770 ~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,771 fcInfinity, 2022-05-05T12:18:06,772 ~~~~~~~~~~~ 2022-05-05T12:18:06,772 fcNaN, 2022-05-05T12:18:06,773 ~~~~~~ 2022-05-05T12:18:06,773 fcNormal, 2022-05-05T12:18:06,774 ~~~~~~~~~ 2022-05-05T12:18:06,774 fcZero 2022-05-05T12:18:06,775 ~~~~~~ 2022-05-05T12:18:06,775 }; 2022-05-05T12:18:06,775 ~~ 2022-05-05T12:18:06,787 /// Convenience enum used to construct an uninitialized APFloat. 2022-05-05T12:18:06,788 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,788 enum uninitializedTag { 2022-05-05T12:18:06,789 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,789 uninitialized 2022-05-05T12:18:06,790 ~~~~~~~~~~~~~ 2022-05-05T12:18:06,790 }; 2022-05-05T12:18:06,791 ~~ 2022-05-05T12:18:06,793 /// Enumeration of \c ilogb error results. 2022-05-05T12:18:06,793 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,794 enum IlogbErrorKinds { 2022-05-05T12:18:06,794 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,795 IEK_Zero = INT_MIN + 1, 2022-05-05T12:18:06,795 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,806 IEK_NaN = INT_MIN, 2022-05-05T12:18:06,807 ~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,808 IEK_Inf = INT_MAX 2022-05-05T12:18:06,808 ~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,809 }; 2022-05-05T12:18:06,809 ~~ 2022-05-05T12:18:06,811 static unsigned int semanticsPrecision(const fltSemantics &); 2022-05-05T12:18:06,812 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,812 static ExponentType semanticsMinExponent(const fltSemantics &); 2022-05-05T12:18:06,813 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,813 static ExponentType semanticsMaxExponent(const fltSemantics &); 2022-05-05T12:18:06,814 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,814 static unsigned int semanticsSizeInBits(const fltSemantics &); 2022-05-05T12:18:06,815 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,827 /// Returns the size of the floating point number (in bits) in the given 2022-05-05T12:18:06,828 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,829 /// semantics. 2022-05-05T12:18:06,830 ~~~~~~~~~~~~~~ 2022-05-05T12:18:06,831 static unsigned getSizeInBits(const fltSemantics &Sem); 2022-05-05T12:18:06,832 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,832 }; 2022-05-05T12:18:06,833 ~~ 2022-05-05T12:18:06,835 namespace detail { 2022-05-05T12:18:06,836 ~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,848 class IEEEFloat final : public APFloatBase { 2022-05-05T12:18:06,849 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,850 public: 2022-05-05T12:18:06,850 ~~~~~~~ 2022-05-05T12:18:06,851 /// \name Constructors 2022-05-05T12:18:06,851 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,852 /// @{ 2022-05-05T12:18:06,853 ~~~~~~ 2022-05-05T12:18:06,854 IEEEFloat(const fltSemantics &); // Default construct to +0.0 2022-05-05T12:18:06,855 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,855 IEEEFloat(const fltSemantics &, integerPart); 2022-05-05T12:18:06,856 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,867 IEEEFloat(const fltSemantics &, uninitializedTag); 2022-05-05T12:18:06,867 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,868 IEEEFloat(const fltSemantics &, const APInt &); 2022-05-05T12:18:06,869 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,869 explicit IEEEFloat(double d); 2022-05-05T12:18:06,870 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,870 explicit IEEEFloat(float f); 2022-05-05T12:18:06,871 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,871 IEEEFloat(const IEEEFloat &); 2022-05-05T12:18:06,872 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,873 IEEEFloat(IEEEFloat &&); 2022-05-05T12:18:06,873 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,874 ~IEEEFloat(); 2022-05-05T12:18:06,875 ~~~~~~~~~~~~~ 2022-05-05T12:18:06,887 /// @} 2022-05-05T12:18:06,887 ~~~~~~ 2022-05-05T12:18:06,889 /// Returns whether this instance allocated memory. 2022-05-05T12:18:06,889 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,890 bool needsCleanup() const { return partCount() > 1; } 2022-05-05T12:18:06,890 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,892 /// \name Convenience "constructors" 2022-05-05T12:18:06,893 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,893 /// @{ 2022-05-05T12:18:06,893 ~~~~~~ 2022-05-05T12:18:06,895 /// @} 2022-05-05T12:18:06,895 ~~~~~~ 2022-05-05T12:18:06,907 /// \name Arithmetic 2022-05-05T12:18:06,907 ~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,908 /// @{ 2022-05-05T12:18:06,908 ~~~~~~ 2022-05-05T12:18:06,910 opStatus add(const IEEEFloat &, roundingMode); 2022-05-05T12:18:06,910 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,911 opStatus subtract(const IEEEFloat &, roundingMode); 2022-05-05T12:18:06,912 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,912 opStatus multiply(const IEEEFloat &, roundingMode); 2022-05-05T12:18:06,913 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,913 opStatus divide(const IEEEFloat &, roundingMode); 2022-05-05T12:18:06,914 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,915 /// IEEE remainder. 2022-05-05T12:18:06,915 ~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,916 opStatus remainder(const IEEEFloat &); 2022-05-05T12:18:06,927 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,927 /// C fmod, or llvm frem. 2022-05-05T12:18:06,928 ~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,929 opStatus mod(const IEEEFloat &); 2022-05-05T12:18:06,930 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,930 opStatus fusedMultiplyAdd(const IEEEFloat &, const IEEEFloat &, roundingMode); 2022-05-05T12:18:06,931 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,931 opStatus roundToIntegral(roundingMode); 2022-05-05T12:18:06,931 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,932 /// IEEE-754R 5.3.1: nextUp/nextDown. 2022-05-05T12:18:06,932 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,933 opStatus next(bool nextDown); 2022-05-05T12:18:06,933 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,935 /// @} 2022-05-05T12:18:06,936 ~~~~~~ 2022-05-05T12:18:06,948 /// \name Sign operations. 2022-05-05T12:18:06,948 ~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,949 /// @{ 2022-05-05T12:18:06,949 ~~~~~~ 2022-05-05T12:18:06,951 void changeSign(); 2022-05-05T12:18:06,951 ~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,953 /// @} 2022-05-05T12:18:06,953 ~~~~~~ 2022-05-05T12:18:06,955 /// \name Conversions 2022-05-05T12:18:06,955 ~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,956 /// @{ 2022-05-05T12:18:06,967 ~~~~~~ 2022-05-05T12:18:06,968 opStatus convert(const fltSemantics &, roundingMode, bool *); 2022-05-05T12:18:06,968 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,969 opStatus convertToInteger(MutableArrayRef, unsigned int, bool, 2022-05-05T12:18:06,969 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,970 roundingMode, bool *) const; 2022-05-05T12:18:06,970 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,970 opStatus convertFromAPInt(const APInt &, bool, roundingMode); 2022-05-05T12:18:06,971 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,971 opStatus convertFromSignExtendedInteger(const integerPart *, unsigned int, 2022-05-05T12:18:06,972 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,972 bool, roundingMode); 2022-05-05T12:18:06,973 ~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,973 opStatus convertFromZeroExtendedInteger(const integerPart *, unsigned int, 2022-05-05T12:18:06,974 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,974 bool, roundingMode); 2022-05-05T12:18:06,975 ~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,975 Expected convertFromString(StringRef, roundingMode); 2022-05-05T12:18:06,976 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,987 APInt bitcastToAPInt() const; 2022-05-05T12:18:06,988 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,988 double convertToDouble() const; 2022-05-05T12:18:06,988 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,989 float convertToFloat() const; 2022-05-05T12:18:06,990 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,991 /// @} 2022-05-05T12:18:06,991 ~~~~~~ 2022-05-05T12:18:06,993 /// The definition of equality is not straightforward for floating point, so 2022-05-05T12:18:06,994 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,994 /// we won't use operator==. Use one of the following, or write whatever it 2022-05-05T12:18:06,995 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:06,995 /// is you really mean. 2022-05-05T12:18:06,996 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,003 bool operator==(const IEEEFloat &) const = delete; 2022-05-05T12:18:07,004 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,005 /// IEEE comparison with another floating point number (NaNs compare 2022-05-05T12:18:07,006 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,006 /// unordered, 0==-0). 2022-05-05T12:18:07,007 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,007 cmpResult compare(const IEEEFloat &) const; 2022-05-05T12:18:07,008 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,009 /// Bitwise comparison for equality (QNaNs compare equal, 0!=-0). 2022-05-05T12:18:07,010 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,010 bool bitwiseIsEqual(const IEEEFloat &) const; 2022-05-05T12:18:07,011 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,012 /// Write out a hexadecimal representation of the floating point value to DST, 2022-05-05T12:18:07,013 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,013 /// which must be of sufficient size, in the C99 form [-]0xh.hhhhp[+-]d. 2022-05-05T12:18:07,014 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,014 /// Return the number of characters written, excluding the terminating NUL. 2022-05-05T12:18:07,015 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,015 unsigned int convertToHexString(char *dst, unsigned int hexDigits, 2022-05-05T12:18:07,016 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,027 bool upperCase, roundingMode) const; 2022-05-05T12:18:07,027 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,029 /// \name IEEE-754R 5.7.2 General operations. 2022-05-05T12:18:07,030 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,031 /// @{ 2022-05-05T12:18:07,032 ~~~~~~ 2022-05-05T12:18:07,034 /// IEEE-754R isSignMinus: Returns true if and only if the current value is 2022-05-05T12:18:07,034 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,035 /// negative. 2022-05-05T12:18:07,036 ~~~~~~~~~~~~~ 2022-05-05T12:18:07,046 /// 2022-05-05T12:18:07,047 ~~~ 2022-05-05T12:18:07,047 /// This applies to zeros and NaNs as well. 2022-05-05T12:18:07,048 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,048 bool isNegative() const { return sign; } 2022-05-05T12:18:07,049 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,050 /// IEEE-754R isNormal: Returns true if and only if the current value is normal. 2022-05-05T12:18:07,051 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,051 /// 2022-05-05T12:18:07,051 ~~~ 2022-05-05T12:18:07,052 /// This implies that the current value of the float is not zero, subnormal, 2022-05-05T12:18:07,052 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,053 /// infinite, or NaN following the definition of normality from IEEE-754R. 2022-05-05T12:18:07,053 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,054 bool isNormal() const { return !isDenormal() && isFiniteNonZero(); } 2022-05-05T12:18:07,054 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,056 /// Returns true if and only if the current value is zero, subnormal, or 2022-05-05T12:18:07,063 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,064 /// normal. 2022-05-05T12:18:07,064 ~~~~~~~~~~~ 2022-05-05T12:18:07,064 /// 2022-05-05T12:18:07,065 ~~~ 2022-05-05T12:18:07,065 /// This means that the value is not infinite or NaN. 2022-05-05T12:18:07,066 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,066 bool isFinite() const { return !isNaN() && !isInfinity(); } 2022-05-05T12:18:07,067 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,068 /// Returns true if and only if the float is plus or minus zero. 2022-05-05T12:18:07,069 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,069 bool isZero() const { return category == fcZero; } 2022-05-05T12:18:07,070 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,071 /// IEEE-754R isSubnormal(): Returns true if and only if the float is a 2022-05-05T12:18:07,071 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,072 /// denormal. 2022-05-05T12:18:07,072 ~~~~~~~~~~~~~ 2022-05-05T12:18:07,073 bool isDenormal() const; 2022-05-05T12:18:07,073 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,074 /// IEEE-754R isInfinite(): Returns true if and only if the float is infinity. 2022-05-05T12:18:07,075 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,075 bool isInfinity() const { return category == fcInfinity; } 2022-05-05T12:18:07,075 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,097 /// Returns true if and only if the float is a quiet or signaling NaN. 2022-05-05T12:18:07,098 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,098 bool isNaN() const { return category == fcNaN; } 2022-05-05T12:18:07,099 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,100 /// Returns true if and only if the float is a signaling NaN. 2022-05-05T12:18:07,101 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,101 bool isSignaling() const; 2022-05-05T12:18:07,102 ~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,103 /// @} 2022-05-05T12:18:07,103 ~~~~~~ 2022-05-05T12:18:07,104 /// \name Simple Queries 2022-05-05T12:18:07,105 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,105 /// @{ 2022-05-05T12:18:07,106 ~~~~~~ 2022-05-05T12:18:07,118 fltCategory getCategory() const { return category; } 2022-05-05T12:18:07,118 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,118 const fltSemantics &getSemantics() const { return *semantics; } 2022-05-05T12:18:07,119 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,119 bool isNonZero() const { return category != fcZero; } 2022-05-05T12:18:07,120 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,120 bool isFiniteNonZero() const { return isFinite() && !isZero(); } 2022-05-05T12:18:07,120 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,121 bool isPosZero() const { return isZero() && !isNegative(); } 2022-05-05T12:18:07,121 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,121 bool isNegZero() const { return isZero() && isNegative(); } 2022-05-05T12:18:07,122 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,123 /// Returns true if and only if the number has the smallest possible non-zero 2022-05-05T12:18:07,123 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,124 /// magnitude in the current semantics. 2022-05-05T12:18:07,124 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,125 bool isSmallest() const; 2022-05-05T12:18:07,125 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,136 /// Returns true if and only if the number has the largest possible finite 2022-05-05T12:18:07,137 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,137 /// magnitude in the current semantics. 2022-05-05T12:18:07,138 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,138 bool isLargest() const; 2022-05-05T12:18:07,139 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,141 /// Returns true if and only if the number is an exact integer. 2022-05-05T12:18:07,141 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,142 bool isInteger() const; 2022-05-05T12:18:07,142 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,144 /// @} 2022-05-05T12:18:07,145 ~~~~~~ 2022-05-05T12:18:07,146 IEEEFloat &operator=(const IEEEFloat &); 2022-05-05T12:18:07,157 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,157 IEEEFloat &operator=(IEEEFloat &&); 2022-05-05T12:18:07,158 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,160 /// Overload to compute a hash code for an APFloat value. 2022-05-05T12:18:07,160 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,161 /// 2022-05-05T12:18:07,161 ~~~ 2022-05-05T12:18:07,162 /// Note that the use of hash codes for floating point values is in general 2022-05-05T12:18:07,162 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,163 /// frought with peril. Equality is hard to define for these values. For 2022-05-05T12:18:07,163 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,164 /// example, should negative and positive zero hash to different codes? Are 2022-05-05T12:18:07,164 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,165 /// they equal or not? This hash value implementation specifically 2022-05-05T12:18:07,165 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,166 /// emphasizes producing different codes for different inputs in order to 2022-05-05T12:18:07,167 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,167 /// be used in canonicalization and memoization. As such, equality is 2022-05-05T12:18:07,168 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,168 /// bitwiseIsEqual, and 0 != -0. 2022-05-05T12:18:07,169 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,169 friend hash_code hash_value(const IEEEFloat &Arg); 2022-05-05T12:18:07,170 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,171 /// Converts this value into a decimal string. 2022-05-05T12:18:07,172 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,172 /// 2022-05-05T12:18:07,172 ~~~ 2022-05-05T12:18:07,173 /// \param FormatPrecision The maximum number of digits of 2022-05-05T12:18:07,174 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,174 /// precision to output. If there are fewer digits available, 2022-05-05T12:18:07,174 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,175 /// zero padding will not be used unless the value is 2022-05-05T12:18:07,175 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,176 /// integral and small enough to be expressed in 2022-05-05T12:18:07,177 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,177 /// FormatPrecision digits. 0 means to use the natural 2022-05-05T12:18:07,178 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,178 /// precision of the number. 2022-05-05T12:18:07,179 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,179 /// \param FormatMaxPadding The maximum number of zeros to 2022-05-05T12:18:07,180 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,181 /// consider inserting before falling back to scientific 2022-05-05T12:18:07,181 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,182 /// notation. 0 means to always use scientific notation. 2022-05-05T12:18:07,182 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,183 /// 2022-05-05T12:18:07,184 ~~~ 2022-05-05T12:18:07,184 /// \param TruncateZero Indicate whether to remove the trailing zero in 2022-05-05T12:18:07,184 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,185 /// fraction part or not. Also setting this parameter to false forcing 2022-05-05T12:18:07,185 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,186 /// producing of output more similar to default printf behavior. 2022-05-05T12:18:07,186 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,187 /// Specifically the lower e is used as exponent delimiter and exponent 2022-05-05T12:18:07,188 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,189 /// always contains no less than two digits. 2022-05-05T12:18:07,190 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,190 /// 2022-05-05T12:18:07,191 ~~~ 2022-05-05T12:18:07,192 /// Number Precision MaxPadding Result 2022-05-05T12:18:07,193 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,193 /// ------ --------- ---------- ------ 2022-05-05T12:18:07,194 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,195 /// 1.01E+4 5 2 10100 2022-05-05T12:18:07,195 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,196 /// 1.01E+4 4 2 1.01E+4 2022-05-05T12:18:07,197 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,197 /// 1.01E+4 5 1 1.01E+4 2022-05-05T12:18:07,198 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,198 /// 1.01E-2 5 2 0.0101 2022-05-05T12:18:07,199 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,199 /// 1.01E-2 4 2 0.0101 2022-05-05T12:18:07,200 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,200 /// 1.01E-2 4 1 1.01E-2 2022-05-05T12:18:07,200 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,201 void toString(SmallVectorImpl &Str, unsigned FormatPrecision = 0, 2022-05-05T12:18:07,201 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,202 unsigned FormatMaxPadding = 3, bool TruncateZero = true) const; 2022-05-05T12:18:07,202 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,203 /// If this value has an exact multiplicative inverse, store it in inv and 2022-05-05T12:18:07,204 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,204 /// return true. 2022-05-05T12:18:07,205 ~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,205 bool getExactInverse(APFloat *inv) const; 2022-05-05T12:18:07,206 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,208 /// Returns the exponent of the internal representation of the APFloat. 2022-05-05T12:18:07,208 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,209 /// 2022-05-05T12:18:07,209 ~~~ 2022-05-05T12:18:07,210 /// Because the radix of APFloat is 2, this is equivalent to floor(log2(x)). 2022-05-05T12:18:07,210 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,211 /// For special APFloat values, this returns special error codes: 2022-05-05T12:18:07,211 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,212 /// 2022-05-05T12:18:07,212 ~~~ 2022-05-05T12:18:07,213 /// NaN -> \c IEK_NaN 2022-05-05T12:18:07,213 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,214 /// 0 -> \c IEK_Zero 2022-05-05T12:18:07,214 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,215 /// Inf -> \c IEK_Inf 2022-05-05T12:18:07,216 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,216 /// 2022-05-05T12:18:07,217 ~~~ 2022-05-05T12:18:07,218 friend int ilogb(const IEEEFloat &Arg); 2022-05-05T12:18:07,218 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,219 /// Returns: X * 2^Exp for integral exponents. 2022-05-05T12:18:07,220 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,221 friend IEEEFloat scalbn(IEEEFloat X, int Exp, roundingMode); 2022-05-05T12:18:07,221 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,223 friend IEEEFloat frexp(const IEEEFloat &X, int &Exp, roundingMode); 2022-05-05T12:18:07,224 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,226 /// \name Special value setters. 2022-05-05T12:18:07,226 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,227 /// @{ 2022-05-05T12:18:07,228 ~~~~~~ 2022-05-05T12:18:07,230 void makeLargest(bool Neg = false); 2022-05-05T12:18:07,231 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,231 void makeSmallest(bool Neg = false); 2022-05-05T12:18:07,232 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,232 void makeNaN(bool SNaN = false, bool Neg = false, 2022-05-05T12:18:07,233 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,234 const APInt *fill = nullptr); 2022-05-05T12:18:07,234 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,235 void makeInf(bool Neg = false); 2022-05-05T12:18:07,236 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,236 void makeZero(bool Neg = false); 2022-05-05T12:18:07,237 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,237 void makeQuiet(); 2022-05-05T12:18:07,238 ~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,239 /// Returns the smallest (by magnitude) normalized finite number in the given 2022-05-05T12:18:07,240 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,240 /// semantics. 2022-05-05T12:18:07,241 ~~~~~~~~~~~~~~ 2022-05-05T12:18:07,241 /// 2022-05-05T12:18:07,242 ~~~ 2022-05-05T12:18:07,242 /// \param Negative - True iff the number should be negative 2022-05-05T12:18:07,243 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,243 void makeSmallestNormalized(bool Negative = false); 2022-05-05T12:18:07,244 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,246 /// @} 2022-05-05T12:18:07,246 ~~~~~~ 2022-05-05T12:18:07,247 cmpResult compareAbsoluteValue(const IEEEFloat &) const; 2022-05-05T12:18:07,248 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,249 private: 2022-05-05T12:18:07,249 ~~~~~~~~ 2022-05-05T12:18:07,250 /// \name Simple Queries 2022-05-05T12:18:07,250 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,251 /// @{ 2022-05-05T12:18:07,251 ~~~~~~ 2022-05-05T12:18:07,252 integerPart *significandParts(); 2022-05-05T12:18:07,253 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,253 const integerPart *significandParts() const; 2022-05-05T12:18:07,254 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,254 unsigned int partCount() const; 2022-05-05T12:18:07,255 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,256 /// @} 2022-05-05T12:18:07,257 ~~~~~~ 2022-05-05T12:18:07,259 /// \name Significand operations. 2022-05-05T12:18:07,259 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,260 /// @{ 2022-05-05T12:18:07,261 ~~~~~~ 2022-05-05T12:18:07,262 integerPart addSignificand(const IEEEFloat &); 2022-05-05T12:18:07,263 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,264 integerPart subtractSignificand(const IEEEFloat &, integerPart); 2022-05-05T12:18:07,264 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,264 lostFraction addOrSubtractSignificand(const IEEEFloat &, bool subtract); 2022-05-05T12:18:07,265 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,265 lostFraction multiplySignificand(const IEEEFloat &, IEEEFloat); 2022-05-05T12:18:07,266 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,267 lostFraction multiplySignificand(const IEEEFloat&); 2022-05-05T12:18:07,267 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,268 lostFraction divideSignificand(const IEEEFloat &); 2022-05-05T12:18:07,268 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,269 void incrementSignificand(); 2022-05-05T12:18:07,269 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,269 void initialize(const fltSemantics *); 2022-05-05T12:18:07,270 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,270 void shiftSignificandLeft(unsigned int); 2022-05-05T12:18:07,271 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,272 lostFraction shiftSignificandRight(unsigned int); 2022-05-05T12:18:07,272 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,273 unsigned int significandLSB() const; 2022-05-05T12:18:07,273 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,274 unsigned int significandMSB() const; 2022-05-05T12:18:07,274 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,275 void zeroSignificand(); 2022-05-05T12:18:07,276 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,276 /// Return true if the significand excluding the integral bit is all ones. 2022-05-05T12:18:07,277 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,277 bool isSignificandAllOnes() const; 2022-05-05T12:18:07,278 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,278 /// Return true if the significand excluding the integral bit is all zeros. 2022-05-05T12:18:07,278 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,279 bool isSignificandAllZeros() const; 2022-05-05T12:18:07,280 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,281 /// @} 2022-05-05T12:18:07,282 ~~~~~~ 2022-05-05T12:18:07,283 /// \name Arithmetic on special values. 2022-05-05T12:18:07,284 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,284 /// @{ 2022-05-05T12:18:07,285 ~~~~~~ 2022-05-05T12:18:07,286 opStatus addOrSubtractSpecials(const IEEEFloat &, bool subtract); 2022-05-05T12:18:07,287 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,287 opStatus divideSpecials(const IEEEFloat &); 2022-05-05T12:18:07,288 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,288 opStatus multiplySpecials(const IEEEFloat &); 2022-05-05T12:18:07,289 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,289 opStatus modSpecials(const IEEEFloat &); 2022-05-05T12:18:07,290 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,290 opStatus remainderSpecials(const IEEEFloat&); 2022-05-05T12:18:07,291 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,292 /// @} 2022-05-05T12:18:07,293 ~~~~~~ 2022-05-05T12:18:07,294 /// \name Miscellany 2022-05-05T12:18:07,295 ~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,295 /// @{ 2022-05-05T12:18:07,296 ~~~~~~ 2022-05-05T12:18:07,298 bool convertFromStringSpecials(StringRef str); 2022-05-05T12:18:07,298 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,298 opStatus normalize(roundingMode, lostFraction); 2022-05-05T12:18:07,299 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,299 opStatus addOrSubtract(const IEEEFloat &, roundingMode, bool subtract); 2022-05-05T12:18:07,300 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,300 opStatus handleOverflow(roundingMode); 2022-05-05T12:18:07,301 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,301 bool roundAwayFromZero(roundingMode, lostFraction, unsigned int) const; 2022-05-05T12:18:07,302 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,302 opStatus convertToSignExtendedInteger(MutableArrayRef, 2022-05-05T12:18:07,303 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,303 unsigned int, bool, roundingMode, 2022-05-05T12:18:07,304 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,304 bool *) const; 2022-05-05T12:18:07,305 ~~~~~~~~~~~~~~ 2022-05-05T12:18:07,306 opStatus convertFromUnsignedParts(const integerPart *, unsigned int, 2022-05-05T12:18:07,306 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,307 roundingMode); 2022-05-05T12:18:07,308 ~~~~~~~~~~~~~~ 2022-05-05T12:18:07,308 Expected convertFromHexadecimalString(StringRef, roundingMode); 2022-05-05T12:18:07,309 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,310 Expected convertFromDecimalString(StringRef, roundingMode); 2022-05-05T12:18:07,311 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,311 char *convertNormalToHexString(char *, unsigned int, bool, 2022-05-05T12:18:07,312 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,313 roundingMode) const; 2022-05-05T12:18:07,314 ~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,314 opStatus roundSignificandWithExponent(const integerPart *, unsigned int, int, 2022-05-05T12:18:07,315 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,316 roundingMode); 2022-05-05T12:18:07,317 ~~~~~~~~~~~~~~ 2022-05-05T12:18:07,317 ExponentType exponentNaN() const; 2022-05-05T12:18:07,318 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,318 ExponentType exponentInf() const; 2022-05-05T12:18:07,319 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,319 ExponentType exponentZero() const; 2022-05-05T12:18:07,320 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,321 /// @} 2022-05-05T12:18:07,322 ~~~~~~ 2022-05-05T12:18:07,323 APInt convertHalfAPFloatToAPInt() const; 2022-05-05T12:18:07,323 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,324 APInt convertBFloatAPFloatToAPInt() const; 2022-05-05T12:18:07,324 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,325 APInt convertFloatAPFloatToAPInt() const; 2022-05-05T12:18:07,326 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,326 APInt convertDoubleAPFloatToAPInt() const; 2022-05-05T12:18:07,327 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,328 APInt convertQuadrupleAPFloatToAPInt() const; 2022-05-05T12:18:07,329 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,329 APInt convertF80LongDoubleAPFloatToAPInt() const; 2022-05-05T12:18:07,330 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,331 APInt convertPPCDoubleDoubleAPFloatToAPInt() const; 2022-05-05T12:18:07,331 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,332 void initFromAPInt(const fltSemantics *Sem, const APInt &api); 2022-05-05T12:18:07,332 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,333 void initFromHalfAPInt(const APInt &api); 2022-05-05T12:18:07,334 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,334 void initFromBFloatAPInt(const APInt &api); 2022-05-05T12:18:07,335 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,336 void initFromFloatAPInt(const APInt &api); 2022-05-05T12:18:07,336 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,337 void initFromDoubleAPInt(const APInt &api); 2022-05-05T12:18:07,337 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,338 void initFromQuadrupleAPInt(const APInt &api); 2022-05-05T12:18:07,338 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,339 void initFromF80LongDoubleAPInt(const APInt &api); 2022-05-05T12:18:07,339 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,339 void initFromPPCDoubleDoubleAPInt(const APInt &api); 2022-05-05T12:18:07,340 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,342 void assign(const IEEEFloat &); 2022-05-05T12:18:07,342 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,343 void copySignificand(const IEEEFloat &); 2022-05-05T12:18:07,343 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,344 void freeSignificand(); 2022-05-05T12:18:07,345 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,346 /// Note: this must be the first data member. 2022-05-05T12:18:07,347 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,347 /// The semantics that this value obeys. 2022-05-05T12:18:07,348 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,348 const fltSemantics *semantics; 2022-05-05T12:18:07,349 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,350 /// A binary fraction with an explicit integer bit. 2022-05-05T12:18:07,351 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,351 /// 2022-05-05T12:18:07,352 ~~~ 2022-05-05T12:18:07,352 /// The significand must be at least one bit wider than the target precision. 2022-05-05T12:18:07,353 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,353 union Significand { 2022-05-05T12:18:07,353 ~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,354 integerPart part; 2022-05-05T12:18:07,354 ~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,355 integerPart *parts; 2022-05-05T12:18:07,355 ~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,356 } significand; 2022-05-05T12:18:07,356 ~~~~~~~~~~~~~~ 2022-05-05T12:18:07,358 /// The signed unbiased exponent of the value. 2022-05-05T12:18:07,359 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,359 ExponentType exponent; 2022-05-05T12:18:07,360 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,361 /// What kind of floating point number this is. 2022-05-05T12:18:07,362 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,362 /// 2022-05-05T12:18:07,363 ~~~ 2022-05-05T12:18:07,363 /// Only 2 bits are required, but VisualStudio incorrectly sign extends it. 2022-05-05T12:18:07,363 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,364 /// Using the extra bit keeps it from failing under VisualStudio. 2022-05-05T12:18:07,364 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,365 fltCategory category : 3; 2022-05-05T12:18:07,365 ~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,367 /// Sign bit of the number. 2022-05-05T12:18:07,367 ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,368 unsigned int sign : 1; 2022-05-05T12:18:07,368 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,369 }; 2022-05-05T12:18:07,369 ~~ 2022-05-05T12:18:07,371 hash_code hash_value(const IEEEFloat &Arg); 2022-05-05T12:18:07,371 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,372 int ilogb(const IEEEFloat &Arg); 2022-05-05T12:18:07,372 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,372 IEEEFloat scalbn(IEEEFloat X, int Exp, IEEEFloat::roundingMode); 2022-05-05T12:18:07,373 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,373 IEEEFloat frexp(const IEEEFloat &Val, int &Exp, IEEEFloat::roundingMode RM); 2022-05-05T12:18:07,374 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,375 // This mode implements more precise float in terms of two APFloats. 2022-05-05T12:18:07,376 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,376 // The interface and layout is designed for arbitrary underlying semantics, 2022-05-05T12:18:07,377 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,377 // though currently only PPCDoubleDouble semantics are supported, whose 2022-05-05T12:18:07,385 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,386 // corresponding underlying semantics are IEEEdouble. 2022-05-05T12:18:07,397 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,398 class DoubleAPFloat final : public APFloatBase { 2022-05-05T12:18:07,399 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,400 // Note: this must be the first data member. 2022-05-05T12:18:07,400 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,401 const fltSemantics *Semantics; 2022-05-05T12:18:07,402 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,402 std::unique_ptr Floats; 2022-05-05T12:18:07,403 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,405 opStatus addImpl(const APFloat &a, const APFloat &aa, const APFloat &c, 2022-05-05T12:18:07,405 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,406 const APFloat &cc, roundingMode RM); 2022-05-05T12:18:07,417 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,419 opStatus addWithSpecial(const DoubleAPFloat &LHS, const DoubleAPFloat &RHS, 2022-05-05T12:18:07,419 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,420 DoubleAPFloat &Out, roundingMode RM); 2022-05-05T12:18:07,421 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,423 public: 2022-05-05T12:18:07,424 ~~~~~~~ 2022-05-05T12:18:07,424 DoubleAPFloat(const fltSemantics &S); 2022-05-05T12:18:07,425 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,425 DoubleAPFloat(const fltSemantics &S, uninitializedTag); 2022-05-05T12:18:07,425 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,426 DoubleAPFloat(const fltSemantics &S, integerPart); 2022-05-05T12:18:07,427 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,427 DoubleAPFloat(const fltSemantics &S, const APInt &I); 2022-05-05T12:18:07,428 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,429 DoubleAPFloat(const fltSemantics &S, APFloat &&First, APFloat &&Second); 2022-05-05T12:18:07,429 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,430 DoubleAPFloat(const DoubleAPFloat &RHS); 2022-05-05T12:18:07,431 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,431 DoubleAPFloat(DoubleAPFloat &&RHS); 2022-05-05T12:18:07,432 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,434 DoubleAPFloat &operator=(const DoubleAPFloat &RHS); 2022-05-05T12:18:07,435 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,437 DoubleAPFloat &operator=(DoubleAPFloat &&RHS) { 2022-05-05T12:18:07,438 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,438 if (this != &RHS) { 2022-05-05T12:18:07,439 ~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,440 this->~DoubleAPFloat(); 2022-05-05T12:18:07,441 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,441 new (this) DoubleAPFloat(std::move(RHS)); 2022-05-05T12:18:07,442 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,443 } 2022-05-05T12:18:07,444 ~ 2022-05-05T12:18:07,444 return *this; 2022-05-05T12:18:07,445 ~~~~~~~~~~~~~ 2022-05-05T12:18:07,446 } 2022-05-05T12:18:07,449 ~ 2022-05-05T12:18:07,467 bool needsCleanup() const { return Floats != nullptr; } 2022-05-05T12:18:07,468 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,470 APFloat &getFirst() { return Floats[0]; } 2022-05-05T12:18:07,471 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,472 const APFloat &getFirst() const { return Floats[0]; } 2022-05-05T12:18:07,472 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,473 APFloat &getSecond() { return Floats[1]; } 2022-05-05T12:18:07,474 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,474 const APFloat &getSecond() const { return Floats[1]; } 2022-05-05T12:18:07,475 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,480 opStatus add(const DoubleAPFloat &RHS, roundingMode RM); 2022-05-05T12:18:07,481 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,481 opStatus subtract(const DoubleAPFloat &RHS, roundingMode RM); 2022-05-05T12:18:07,482 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,483 opStatus multiply(const DoubleAPFloat &RHS, roundingMode RM); 2022-05-05T12:18:07,483 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,484 opStatus divide(const DoubleAPFloat &RHS, roundingMode RM); 2022-05-05T12:18:07,484 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,485 opStatus remainder(const DoubleAPFloat &RHS); 2022-05-05T12:18:07,485 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,485 opStatus mod(const DoubleAPFloat &RHS); 2022-05-05T12:18:07,486 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,486 opStatus fusedMultiplyAdd(const DoubleAPFloat &Multiplicand, 2022-05-05T12:18:07,487 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,487 const DoubleAPFloat &Addend, roundingMode RM); 2022-05-05T12:18:07,487 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,488 opStatus roundToIntegral(roundingMode RM); 2022-05-05T12:18:07,488 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,489 void changeSign(); 2022-05-05T12:18:07,489 ~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,490 cmpResult compareAbsoluteValue(const DoubleAPFloat &RHS) const; 2022-05-05T12:18:07,490 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,491 fltCategory getCategory() const; 2022-05-05T12:18:07,491 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,492 bool isNegative() const; 2022-05-05T12:18:07,493 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,494 void makeInf(bool Neg); 2022-05-05T12:18:07,494 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,495 void makeZero(bool Neg); 2022-05-05T12:18:07,495 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,496 void makeLargest(bool Neg); 2022-05-05T12:18:07,496 ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,517 void makeSmallest(bool Neg); 2022-05-05T12:18:07,518 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,518 void makeSmallestNormalized(bool Neg); 2022-05-05T12:18:07,519 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,519 void makeNaN(bool SNaN, bool Neg, const APInt *fill); 2022-05-05T12:18:07,520 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,522 cmpResult compare(const DoubleAPFloat &RHS) const; 2022-05-05T12:18:07,523 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,523 bool bitwiseIsEqual(const DoubleAPFloat &RHS) const; 2022-05-05T12:18:07,524 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,524 APInt bitcastToAPInt() const; 2022-05-05T12:18:07,525 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,525 Expected convertFromString(StringRef, roundingMode); 2022-05-05T12:18:07,525 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,526 opStatus next(bool nextDown); 2022-05-05T12:18:07,526 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,528 opStatus convertToInteger(MutableArrayRef Input, 2022-05-05T12:18:07,528 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,529 unsigned int Width, bool IsSigned, roundingMode RM, 2022-05-05T12:18:07,529 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,530 bool *IsExact) const; 2022-05-05T12:18:07,530 ~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,531 opStatus convertFromAPInt(const APInt &Input, bool IsSigned, roundingMode RM); 2022-05-05T12:18:07,531 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,532 opStatus convertFromSignExtendedInteger(const integerPart *Input, 2022-05-05T12:18:07,532 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,533 unsigned int InputSize, bool IsSigned, 2022-05-05T12:18:07,533 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,534 roundingMode RM); 2022-05-05T12:18:07,535 ~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,535 opStatus convertFromZeroExtendedInteger(const integerPart *Input, 2022-05-05T12:18:07,536 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,536 unsigned int InputSize, bool IsSigned, 2022-05-05T12:18:07,537 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,537 roundingMode RM); 2022-05-05T12:18:07,538 ~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,538 unsigned int convertToHexString(char *DST, unsigned int HexDigits, 2022-05-05T12:18:07,538 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,539 bool UpperCase, roundingMode RM) const; 2022-05-05T12:18:07,539 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,541 bool isDenormal() const; 2022-05-05T12:18:07,541 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,542 bool isSmallest() const; 2022-05-05T12:18:07,542 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,543 bool isLargest() const; 2022-05-05T12:18:07,543 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,544 bool isInteger() const; 2022-05-05T12:18:07,544 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,545 void toString(SmallVectorImpl &Str, unsigned FormatPrecision, 2022-05-05T12:18:07,546 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,547 unsigned FormatMaxPadding, bool TruncateZero = true) const; 2022-05-05T12:18:07,547 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,549 bool getExactInverse(APFloat *inv) const; 2022-05-05T12:18:07,550 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,552 friend DoubleAPFloat scalbn(const DoubleAPFloat &X, int Exp, roundingMode); 2022-05-05T12:18:07,552 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,553 friend DoubleAPFloat frexp(const DoubleAPFloat &X, int &Exp, roundingMode); 2022-05-05T12:18:07,553 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,554 friend hash_code hash_value(const DoubleAPFloat &Arg); 2022-05-05T12:18:07,554 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,555 }; 2022-05-05T12:18:07,556 ~~ 2022-05-05T12:18:07,558 hash_code hash_value(const DoubleAPFloat &Arg); 2022-05-05T12:18:07,559 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,561 } // End detail namespace 2022-05-05T12:18:07,562 ~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,564 // This is a interface class that is currently forwarding functionalities from 2022-05-05T12:18:07,565 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,566 // detail::IEEEFloat. 2022-05-05T12:18:07,567 ~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,567 class APFloat : public APFloatBase { 2022-05-05T12:18:07,568 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,569 typedef detail::IEEEFloat IEEEFloat; 2022-05-05T12:18:07,570 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,570 typedef detail::DoubleAPFloat DoubleAPFloat; 2022-05-05T12:18:07,571 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,573 static_assert(std::is_standard_layout::value, ""); 2022-05-05T12:18:07,574 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,575 union Storage { 2022-05-05T12:18:07,576 ~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,577 const fltSemantics *semantics; 2022-05-05T12:18:07,577 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,578 IEEEFloat IEEE; 2022-05-05T12:18:07,579 ~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,580 DoubleAPFloat Double; 2022-05-05T12:18:07,581 ~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,582 explicit Storage(IEEEFloat F, const fltSemantics &S); 2022-05-05T12:18:07,583 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,583 explicit Storage(DoubleAPFloat F, const fltSemantics &S) 2022-05-05T12:18:07,584 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,585 : Double(std::move(F)) { 2022-05-05T12:18:07,586 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,587 assert(&S == &PPCDoubleDouble()); 2022-05-05T12:18:07,587 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,588 } 2022-05-05T12:18:07,589 ~ 2022-05-05T12:18:07,591 template 2022-05-05T12:18:07,592 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,593 Storage(const fltSemantics &Semantics, ArgTypes &&... Args) { 2022-05-05T12:18:07,594 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,595 if (usesLayout(Semantics)) { 2022-05-05T12:18:07,595 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,596 new (&IEEE) IEEEFloat(Semantics, std::forward(Args)...); 2022-05-05T12:18:07,597 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,598 return; 2022-05-05T12:18:07,599 ~~~~~~~ 2022-05-05T12:18:07,599 } 2022-05-05T12:18:07,600 ~ 2022-05-05T12:18:07,601 if (usesLayout(Semantics)) { 2022-05-05T12:18:07,601 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,602 new (&Double) DoubleAPFloat(Semantics, std::forward(Args)...); 2022-05-05T12:18:07,602 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,603 return; 2022-05-05T12:18:07,604 ~~~~~~~ 2022-05-05T12:18:07,604 } 2022-05-05T12:18:07,605 ~ 2022-05-05T12:18:07,606 llvm_unreachable("Unexpected semantics"); 2022-05-05T12:18:07,606 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,607 } 2022-05-05T12:18:07,607 ~ 2022-05-05T12:18:07,609 ~Storage() { 2022-05-05T12:18:07,610 ~~~~~~~~~~~~ 2022-05-05T12:18:07,610 if (usesLayout(*semantics)) { 2022-05-05T12:18:07,611 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,612 IEEE.~IEEEFloat(); 2022-05-05T12:18:07,612 ~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,613 return; 2022-05-05T12:18:07,613 ~~~~~~~ 2022-05-05T12:18:07,614 } 2022-05-05T12:18:07,614 ~ 2022-05-05T12:18:07,615 if (usesLayout(*semantics)) { 2022-05-05T12:18:07,616 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,616 Double.~DoubleAPFloat(); 2022-05-05T12:18:07,617 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,618 return; 2022-05-05T12:18:07,618 ~~~~~~~ 2022-05-05T12:18:07,619 } 2022-05-05T12:18:07,620 ~ 2022-05-05T12:18:07,620 llvm_unreachable("Unexpected semantics"); 2022-05-05T12:18:07,621 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,622 } 2022-05-05T12:18:07,623 ~ 2022-05-05T12:18:07,625 Storage(const Storage &RHS) { 2022-05-05T12:18:07,625 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,626 if (usesLayout(*RHS.semantics)) { 2022-05-05T12:18:07,627 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,627 new (this) IEEEFloat(RHS.IEEE); 2022-05-05T12:18:07,628 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,628 return; 2022-05-05T12:18:07,629 ~~~~~~~ 2022-05-05T12:18:07,629 } 2022-05-05T12:18:07,629 ~ 2022-05-05T12:18:07,630 if (usesLayout(*RHS.semantics)) { 2022-05-05T12:18:07,630 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,631 new (this) DoubleAPFloat(RHS.Double); 2022-05-05T12:18:07,631 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,632 return; 2022-05-05T12:18:07,632 ~~~~~~~ 2022-05-05T12:18:07,632 } 2022-05-05T12:18:07,633 ~ 2022-05-05T12:18:07,633 llvm_unreachable("Unexpected semantics"); 2022-05-05T12:18:07,634 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,634 } 2022-05-05T12:18:07,635 ~ 2022-05-05T12:18:07,636 Storage(Storage &&RHS) { 2022-05-05T12:18:07,637 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,638 if (usesLayout(*RHS.semantics)) { 2022-05-05T12:18:07,638 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,639 new (this) IEEEFloat(std::move(RHS.IEEE)); 2022-05-05T12:18:07,639 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,640 return; 2022-05-05T12:18:07,640 ~~~~~~~ 2022-05-05T12:18:07,640 } 2022-05-05T12:18:07,641 ~ 2022-05-05T12:18:07,641 if (usesLayout(*RHS.semantics)) { 2022-05-05T12:18:07,642 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,643 new (this) DoubleAPFloat(std::move(RHS.Double)); 2022-05-05T12:18:07,643 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,644 return; 2022-05-05T12:18:07,645 ~~~~~~~ 2022-05-05T12:18:07,645 } 2022-05-05T12:18:07,646 ~ 2022-05-05T12:18:07,646 llvm_unreachable("Unexpected semantics"); 2022-05-05T12:18:07,647 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,647 } 2022-05-05T12:18:07,648 ~ 2022-05-05T12:18:07,649 Storage &operator=(const Storage &RHS) { 2022-05-05T12:18:07,650 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,650 if (usesLayout(*semantics) && 2022-05-05T12:18:07,651 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,652 usesLayout(*RHS.semantics)) { 2022-05-05T12:18:07,652 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,653 IEEE = RHS.IEEE; 2022-05-05T12:18:07,653 ~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,654 } else if (usesLayout(*semantics) && 2022-05-05T12:18:07,655 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,655 usesLayout(*RHS.semantics)) { 2022-05-05T12:18:07,656 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,656 Double = RHS.Double; 2022-05-05T12:18:07,657 ~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,657 } else if (this != &RHS) { 2022-05-05T12:18:07,658 ~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,658 this->~Storage(); 2022-05-05T12:18:07,659 ~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,659 new (this) Storage(RHS); 2022-05-05T12:18:07,660 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,660 } 2022-05-05T12:18:07,661 ~ 2022-05-05T12:18:07,662 return *this; 2022-05-05T12:18:07,662 ~~~~~~~~~~~~~ 2022-05-05T12:18:07,663 } 2022-05-05T12:18:07,664 ~ 2022-05-05T12:18:07,665 Storage &operator=(Storage &&RHS) { 2022-05-05T12:18:07,666 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,666 if (usesLayout(*semantics) && 2022-05-05T12:18:07,667 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,667 usesLayout(*RHS.semantics)) { 2022-05-05T12:18:07,668 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,668 IEEE = std::move(RHS.IEEE); 2022-05-05T12:18:07,669 ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,669 } else if (usesLayout(*semantics) && 2022-05-05T12:18:07,670 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,670 usesLayout(*RHS.semantics)) { 2022-05-05T12:18:07,671 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,671 Double = std::move(RHS.Double); 2022-05-05T12:18:07,672 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,673 } else if (this != &RHS) { 2022-05-05T12:18:07,673 ~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,674 this->~Storage(); 2022-05-05T12:18:07,674 ~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,675 new (this) Storage(std::move(RHS)); 2022-05-05T12:18:07,676 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,676 } 2022-05-05T12:18:07,677 ~ 2022-05-05T12:18:07,677 return *this; 2022-05-05T12:18:07,678 ~~~~~~~~~~~~~ 2022-05-05T12:18:07,679 } 2022-05-05T12:18:07,679 ~ 2022-05-05T12:18:07,680 } U; 2022-05-05T12:18:07,680 ~~~~ 2022-05-05T12:18:07,682 template static bool usesLayout(const fltSemantics &Semantics) { 2022-05-05T12:18:07,683 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,683 static_assert(std::is_same::value || 2022-05-05T12:18:07,684 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,684 std::is_same::value, ""); 2022-05-05T12:18:07,685 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,685 if (std::is_same::value) { 2022-05-05T12:18:07,686 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,686 return &Semantics == &PPCDoubleDouble(); 2022-05-05T12:18:07,687 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,687 } 2022-05-05T12:18:07,688 ~ 2022-05-05T12:18:07,688 return &Semantics != &PPCDoubleDouble(); 2022-05-05T12:18:07,689 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,690 } 2022-05-05T12:18:07,690 ~ 2022-05-05T12:18:07,692 IEEEFloat &getIEEE() { 2022-05-05T12:18:07,693 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,693 if (usesLayout(*U.semantics)) 2022-05-05T12:18:07,694 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,694 return U.IEEE; 2022-05-05T12:18:07,695 ~~~~~~~~~~~~~~ 2022-05-05T12:18:07,695 if (usesLayout(*U.semantics)) 2022-05-05T12:18:07,696 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,696 return U.Double.getFirst().U.IEEE; 2022-05-05T12:18:07,697 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,698 llvm_unreachable("Unexpected semantics"); 2022-05-05T12:18:07,698 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,699 } 2022-05-05T12:18:07,699 ~ 2022-05-05T12:18:07,701 const IEEEFloat &getIEEE() const { 2022-05-05T12:18:07,702 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,702 if (usesLayout(*U.semantics)) 2022-05-05T12:18:07,703 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,704 return U.IEEE; 2022-05-05T12:18:07,704 ~~~~~~~~~~~~~~ 2022-05-05T12:18:07,705 if (usesLayout(*U.semantics)) 2022-05-05T12:18:07,705 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,706 return U.Double.getFirst().U.IEEE; 2022-05-05T12:18:07,706 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,707 llvm_unreachable("Unexpected semantics"); 2022-05-05T12:18:07,708 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,708 } 2022-05-05T12:18:07,709 ~ 2022-05-05T12:18:07,710 void makeZero(bool Neg) { APFLOAT_DISPATCH_ON_SEMANTICS(makeZero(Neg)); } 2022-05-05T12:18:07,711 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,713 void makeInf(bool Neg) { APFLOAT_DISPATCH_ON_SEMANTICS(makeInf(Neg)); } 2022-05-05T12:18:07,713 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,715 void makeNaN(bool SNaN, bool Neg, const APInt *fill) { 2022-05-05T12:18:07,715 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,716 APFLOAT_DISPATCH_ON_SEMANTICS(makeNaN(SNaN, Neg, fill)); 2022-05-05T12:18:07,717 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,717 } 2022-05-05T12:18:07,717 ~ 2022-05-05T12:18:07,719 void makeLargest(bool Neg) { 2022-05-05T12:18:07,720 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,720 APFLOAT_DISPATCH_ON_SEMANTICS(makeLargest(Neg)); 2022-05-05T12:18:07,721 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,721 } 2022-05-05T12:18:07,722 ~ 2022-05-05T12:18:07,723 void makeSmallest(bool Neg) { 2022-05-05T12:18:07,724 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,724 APFLOAT_DISPATCH_ON_SEMANTICS(makeSmallest(Neg)); 2022-05-05T12:18:07,725 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,725 } 2022-05-05T12:18:07,726 ~ 2022-05-05T12:18:07,727 void makeSmallestNormalized(bool Neg) { 2022-05-05T12:18:07,728 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,728 APFLOAT_DISPATCH_ON_SEMANTICS(makeSmallestNormalized(Neg)); 2022-05-05T12:18:07,729 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,730 } 2022-05-05T12:18:07,730 ~ 2022-05-05T12:18:07,732 // FIXME: This is due to clang 3.3 (or older version) always checks for the 2022-05-05T12:18:07,732 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,733 // default constructor in an array aggregate initialization, even if no 2022-05-05T12:18:07,733 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,734 // elements in the array is default initialized. 2022-05-05T12:18:07,734 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,735 APFloat() : U(IEEEdouble()) { 2022-05-05T12:18:07,735 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,736 llvm_unreachable("This is a workaround for old clang."); 2022-05-05T12:18:07,736 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,737 } 2022-05-05T12:18:07,737 ~ 2022-05-05T12:18:07,739 explicit APFloat(IEEEFloat F, const fltSemantics &S) : U(std::move(F), S) {} 2022-05-05T12:18:07,739 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,740 explicit APFloat(DoubleAPFloat F, const fltSemantics &S) 2022-05-05T12:18:07,740 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,741 : U(std::move(F), S) {} 2022-05-05T12:18:07,742 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,743 cmpResult compareAbsoluteValue(const APFloat &RHS) const { 2022-05-05T12:18:07,743 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,744 assert(&getSemantics() == &RHS.getSemantics() && 2022-05-05T12:18:07,745 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,745 "Should only compare APFloats with the same semantics"); 2022-05-05T12:18:07,746 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,747 if (usesLayout(getSemantics())) 2022-05-05T12:18:07,747 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,748 return U.IEEE.compareAbsoluteValue(RHS.U.IEEE); 2022-05-05T12:18:07,748 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,749 if (usesLayout(getSemantics())) 2022-05-05T12:18:07,749 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,750 return U.Double.compareAbsoluteValue(RHS.U.Double); 2022-05-05T12:18:07,750 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,751 llvm_unreachable("Unexpected semantics"); 2022-05-05T12:18:07,751 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,752 } 2022-05-05T12:18:07,752 ~ 2022-05-05T12:18:07,753 public: 2022-05-05T12:18:07,754 ~~~~~~~ 2022-05-05T12:18:07,754 APFloat(const fltSemantics &Semantics) : U(Semantics) {} 2022-05-05T12:18:07,755 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,755 APFloat(const fltSemantics &Semantics, StringRef S); 2022-05-05T12:18:07,756 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,756 APFloat(const fltSemantics &Semantics, integerPart I) : U(Semantics, I) {} 2022-05-05T12:18:07,757 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,757 template ::value>> 2022-05-05T12:18:07,759 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,759 APFloat(const fltSemantics &Semantics, T V) = delete; 2022-05-05T12:18:07,760 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,760 // TODO: Remove this constructor. This isn't faster than the first one. 2022-05-05T12:18:07,761 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,761 APFloat(const fltSemantics &Semantics, uninitializedTag) 2022-05-05T12:18:07,762 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,762 : U(Semantics, uninitialized) {} 2022-05-05T12:18:07,763 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,763 APFloat(const fltSemantics &Semantics, const APInt &I) : U(Semantics, I) {} 2022-05-05T12:18:07,764 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,764 explicit APFloat(double d) : U(IEEEFloat(d), IEEEdouble()) {} 2022-05-05T12:18:07,765 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,766 explicit APFloat(float f) : U(IEEEFloat(f), IEEEsingle()) {} 2022-05-05T12:18:07,766 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,767 APFloat(const APFloat &RHS) = default; 2022-05-05T12:18:07,768 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,768 APFloat(APFloat &&RHS) = default; 2022-05-05T12:18:07,769 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,771 ~APFloat() = default; 2022-05-05T12:18:07,771 ~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,773 bool needsCleanup() const { APFLOAT_DISPATCH_ON_SEMANTICS(needsCleanup()); } 2022-05-05T12:18:07,773 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,775 /// Factory for Positive and Negative Zero. 2022-05-05T12:18:07,776 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,776 /// 2022-05-05T12:18:07,777 ~~~ 2022-05-05T12:18:07,777 /// \param Negative True iff the number should be negative. 2022-05-05T12:18:07,778 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,778 static APFloat getZero(const fltSemantics &Sem, bool Negative = false) { 2022-05-05T12:18:07,779 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,779 APFloat Val(Sem, uninitialized); 2022-05-05T12:18:07,780 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,780 Val.makeZero(Negative); 2022-05-05T12:18:07,781 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,781 return Val; 2022-05-05T12:18:07,782 ~~~~~~~~~~~ 2022-05-05T12:18:07,782 } 2022-05-05T12:18:07,783 ~ 2022-05-05T12:18:07,784 /// Factory for Positive and Negative Infinity. 2022-05-05T12:18:07,785 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,785 /// 2022-05-05T12:18:07,786 ~~~ 2022-05-05T12:18:07,787 /// \param Negative True iff the number should be negative. 2022-05-05T12:18:07,787 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,788 static APFloat getInf(const fltSemantics &Sem, bool Negative = false) { 2022-05-05T12:18:07,788 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,789 APFloat Val(Sem, uninitialized); 2022-05-05T12:18:07,789 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,789 Val.makeInf(Negative); 2022-05-05T12:18:07,790 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,791 return Val; 2022-05-05T12:18:07,791 ~~~~~~~~~~~ 2022-05-05T12:18:07,792 } 2022-05-05T12:18:07,792 ~ 2022-05-05T12:18:07,794 /// Factory for NaN values. 2022-05-05T12:18:07,794 ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,794 /// 2022-05-05T12:18:07,795 ~~~ 2022-05-05T12:18:07,795 /// \param Negative - True iff the NaN generated should be negative. 2022-05-05T12:18:07,796 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,797 /// \param payload - The unspecified fill bits for creating the NaN, 0 by 2022-05-05T12:18:07,797 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,798 /// default. The value is truncated as necessary. 2022-05-05T12:18:07,799 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,799 static APFloat getNaN(const fltSemantics &Sem, bool Negative = false, 2022-05-05T12:18:07,800 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,800 uint64_t payload = 0) { 2022-05-05T12:18:07,800 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,801 if (payload) { 2022-05-05T12:18:07,801 ~~~~~~~~~~~~~~ 2022-05-05T12:18:07,802 APInt intPayload(64, payload); 2022-05-05T12:18:07,802 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,803 return getQNaN(Sem, Negative, &intPayload); 2022-05-05T12:18:07,803 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,804 } else { 2022-05-05T12:18:07,804 ~~~~~~~~ 2022-05-05T12:18:07,805 return getQNaN(Sem, Negative, nullptr); 2022-05-05T12:18:07,805 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,806 } 2022-05-05T12:18:07,807 ~ 2022-05-05T12:18:07,807 } 2022-05-05T12:18:07,808 ~ 2022-05-05T12:18:07,809 /// Factory for QNaN values. 2022-05-05T12:18:07,810 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,810 static APFloat getQNaN(const fltSemantics &Sem, bool Negative = false, 2022-05-05T12:18:07,811 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,811 const APInt *payload = nullptr) { 2022-05-05T12:18:07,812 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,812 APFloat Val(Sem, uninitialized); 2022-05-05T12:18:07,813 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,814 Val.makeNaN(false, Negative, payload); 2022-05-05T12:18:07,814 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,815 return Val; 2022-05-05T12:18:07,815 ~~~~~~~~~~~ 2022-05-05T12:18:07,816 } 2022-05-05T12:18:07,816 ~ 2022-05-05T12:18:07,818 /// Factory for SNaN values. 2022-05-05T12:18:07,818 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,819 static APFloat getSNaN(const fltSemantics &Sem, bool Negative = false, 2022-05-05T12:18:07,820 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,820 const APInt *payload = nullptr) { 2022-05-05T12:18:07,821 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,821 APFloat Val(Sem, uninitialized); 2022-05-05T12:18:07,822 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,822 Val.makeNaN(true, Negative, payload); 2022-05-05T12:18:07,823 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,823 return Val; 2022-05-05T12:18:07,823 ~~~~~~~~~~~ 2022-05-05T12:18:07,824 } 2022-05-05T12:18:07,824 ~ 2022-05-05T12:18:07,826 /// Returns the largest finite number in the given semantics. 2022-05-05T12:18:07,826 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,827 /// 2022-05-05T12:18:07,827 ~~~ 2022-05-05T12:18:07,828 /// \param Negative - True iff the number should be negative 2022-05-05T12:18:07,828 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,828 static APFloat getLargest(const fltSemantics &Sem, bool Negative = false) { 2022-05-05T12:18:07,829 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,830 APFloat Val(Sem, uninitialized); 2022-05-05T12:18:07,830 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,831 Val.makeLargest(Negative); 2022-05-05T12:18:07,831 ~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,832 return Val; 2022-05-05T12:18:07,833 ~~~~~~~~~~~ 2022-05-05T12:18:07,833 } 2022-05-05T12:18:07,834 ~ 2022-05-05T12:18:07,835 /// Returns the smallest (by magnitude) finite number in the given semantics. 2022-05-05T12:18:07,836 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,837 /// Might be denormalized, which implies a relative loss of precision. 2022-05-05T12:18:07,837 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,838 /// 2022-05-05T12:18:07,838 ~~~ 2022-05-05T12:18:07,839 /// \param Negative - True iff the number should be negative 2022-05-05T12:18:07,840 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,840 static APFloat getSmallest(const fltSemantics &Sem, bool Negative = false) { 2022-05-05T12:18:07,841 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,842 APFloat Val(Sem, uninitialized); 2022-05-05T12:18:07,842 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,843 Val.makeSmallest(Negative); 2022-05-05T12:18:07,843 ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,844 return Val; 2022-05-05T12:18:07,844 ~~~~~~~~~~~ 2022-05-05T12:18:07,845 } 2022-05-05T12:18:07,845 ~ 2022-05-05T12:18:07,847 /// Returns the smallest (by magnitude) normalized finite number in the given 2022-05-05T12:18:07,848 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,848 /// semantics. 2022-05-05T12:18:07,849 ~~~~~~~~~~~~~~ 2022-05-05T12:18:07,849 /// 2022-05-05T12:18:07,850 ~~~ 2022-05-05T12:18:07,851 /// \param Negative - True iff the number should be negative 2022-05-05T12:18:07,851 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,852 static APFloat getSmallestNormalized(const fltSemantics &Sem, 2022-05-05T12:18:07,852 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,852 bool Negative = false) { 2022-05-05T12:18:07,853 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,853 APFloat Val(Sem, uninitialized); 2022-05-05T12:18:07,854 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,854 Val.makeSmallestNormalized(Negative); 2022-05-05T12:18:07,855 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,855 return Val; 2022-05-05T12:18:07,856 ~~~~~~~~~~~ 2022-05-05T12:18:07,856 } 2022-05-05T12:18:07,857 ~ 2022-05-05T12:18:07,859 /// Returns a float which is bitcasted from an all one value int. 2022-05-05T12:18:07,859 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,860 /// 2022-05-05T12:18:07,861 ~~~ 2022-05-05T12:18:07,861 /// \param Semantics - type float semantics 2022-05-05T12:18:07,862 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,863 static APFloat getAllOnesValue(const fltSemantics &Semantics); 2022-05-05T12:18:07,863 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,865 /// Used to insert APFloat objects, or objects that contain APFloat objects, 2022-05-05T12:18:07,865 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,866 /// into FoldingSets. 2022-05-05T12:18:07,866 ~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,867 void Profile(FoldingSetNodeID &NID) const; 2022-05-05T12:18:07,868 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,870 opStatus add(const APFloat &RHS, roundingMode RM) { 2022-05-05T12:18:07,870 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,871 assert(&getSemantics() == &RHS.getSemantics() && 2022-05-05T12:18:07,871 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,872 "Should only call on two APFloats with the same semantics"); 2022-05-05T12:18:07,873 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,873 if (usesLayout(getSemantics())) 2022-05-05T12:18:07,874 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,875 return U.IEEE.add(RHS.U.IEEE, RM); 2022-05-05T12:18:07,875 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,876 if (usesLayout(getSemantics())) 2022-05-05T12:18:07,876 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,877 return U.Double.add(RHS.U.Double, RM); 2022-05-05T12:18:07,878 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,878 llvm_unreachable("Unexpected semantics"); 2022-05-05T12:18:07,879 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,879 } 2022-05-05T12:18:07,880 ~ 2022-05-05T12:18:07,880 opStatus subtract(const APFloat &RHS, roundingMode RM) { 2022-05-05T12:18:07,881 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,881 assert(&getSemantics() == &RHS.getSemantics() && 2022-05-05T12:18:07,882 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,883 "Should only call on two APFloats with the same semantics"); 2022-05-05T12:18:07,883 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,884 if (usesLayout(getSemantics())) 2022-05-05T12:18:07,884 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,885 return U.IEEE.subtract(RHS.U.IEEE, RM); 2022-05-05T12:18:07,885 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,886 if (usesLayout(getSemantics())) 2022-05-05T12:18:07,886 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,887 return U.Double.subtract(RHS.U.Double, RM); 2022-05-05T12:18:07,887 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,888 llvm_unreachable("Unexpected semantics"); 2022-05-05T12:18:07,888 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,888 } 2022-05-05T12:18:07,889 ~ 2022-05-05T12:18:07,889 opStatus multiply(const APFloat &RHS, roundingMode RM) { 2022-05-05T12:18:07,890 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,890 assert(&getSemantics() == &RHS.getSemantics() && 2022-05-05T12:18:07,890 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,891 "Should only call on two APFloats with the same semantics"); 2022-05-05T12:18:07,891 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,892 if (usesLayout(getSemantics())) 2022-05-05T12:18:07,892 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,893 return U.IEEE.multiply(RHS.U.IEEE, RM); 2022-05-05T12:18:07,893 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,894 if (usesLayout(getSemantics())) 2022-05-05T12:18:07,894 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,894 return U.Double.multiply(RHS.U.Double, RM); 2022-05-05T12:18:07,895 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,895 llvm_unreachable("Unexpected semantics"); 2022-05-05T12:18:07,896 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,896 } 2022-05-05T12:18:07,897 ~ 2022-05-05T12:18:07,897 opStatus divide(const APFloat &RHS, roundingMode RM) { 2022-05-05T12:18:07,898 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,898 assert(&getSemantics() == &RHS.getSemantics() && 2022-05-05T12:18:07,899 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,899 "Should only call on two APFloats with the same semantics"); 2022-05-05T12:18:07,900 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,900 if (usesLayout(getSemantics())) 2022-05-05T12:18:07,901 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,901 return U.IEEE.divide(RHS.U.IEEE, RM); 2022-05-05T12:18:07,902 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,902 if (usesLayout(getSemantics())) 2022-05-05T12:18:07,903 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,903 return U.Double.divide(RHS.U.Double, RM); 2022-05-05T12:18:07,904 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,904 llvm_unreachable("Unexpected semantics"); 2022-05-05T12:18:07,905 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,906 } 2022-05-05T12:18:07,906 ~ 2022-05-05T12:18:07,907 opStatus remainder(const APFloat &RHS) { 2022-05-05T12:18:07,907 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,907 assert(&getSemantics() == &RHS.getSemantics() && 2022-05-05T12:18:07,908 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,908 "Should only call on two APFloats with the same semantics"); 2022-05-05T12:18:07,909 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,909 if (usesLayout(getSemantics())) 2022-05-05T12:18:07,910 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,910 return U.IEEE.remainder(RHS.U.IEEE); 2022-05-05T12:18:07,911 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,911 if (usesLayout(getSemantics())) 2022-05-05T12:18:07,912 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,912 return U.Double.remainder(RHS.U.Double); 2022-05-05T12:18:07,913 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,913 llvm_unreachable("Unexpected semantics"); 2022-05-05T12:18:07,914 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,914 } 2022-05-05T12:18:07,915 ~ 2022-05-05T12:18:07,915 opStatus mod(const APFloat &RHS) { 2022-05-05T12:18:07,916 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,916 assert(&getSemantics() == &RHS.getSemantics() && 2022-05-05T12:18:07,917 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,917 "Should only call on two APFloats with the same semantics"); 2022-05-05T12:18:07,918 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,918 if (usesLayout(getSemantics())) 2022-05-05T12:18:07,919 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,919 return U.IEEE.mod(RHS.U.IEEE); 2022-05-05T12:18:07,920 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,920 if (usesLayout(getSemantics())) 2022-05-05T12:18:07,921 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,921 return U.Double.mod(RHS.U.Double); 2022-05-05T12:18:07,922 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,922 llvm_unreachable("Unexpected semantics"); 2022-05-05T12:18:07,923 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,923 } 2022-05-05T12:18:07,924 ~ 2022-05-05T12:18:07,924 opStatus fusedMultiplyAdd(const APFloat &Multiplicand, const APFloat &Addend, 2022-05-05T12:18:07,925 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,925 roundingMode RM) { 2022-05-05T12:18:07,926 ~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,926 assert(&getSemantics() == &Multiplicand.getSemantics() && 2022-05-05T12:18:07,927 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,927 "Should only call on APFloats with the same semantics"); 2022-05-05T12:18:07,928 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,928 assert(&getSemantics() == &Addend.getSemantics() && 2022-05-05T12:18:07,929 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,929 "Should only call on APFloats with the same semantics"); 2022-05-05T12:18:07,930 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,930 if (usesLayout(getSemantics())) 2022-05-05T12:18:07,931 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,931 return U.IEEE.fusedMultiplyAdd(Multiplicand.U.IEEE, Addend.U.IEEE, RM); 2022-05-05T12:18:07,932 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,932 if (usesLayout(getSemantics())) 2022-05-05T12:18:07,933 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,933 return U.Double.fusedMultiplyAdd(Multiplicand.U.Double, Addend.U.Double, 2022-05-05T12:18:07,933 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,934 RM); 2022-05-05T12:18:07,934 ~~~~ 2022-05-05T12:18:07,935 llvm_unreachable("Unexpected semantics"); 2022-05-05T12:18:07,935 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,936 } 2022-05-05T12:18:07,936 ~ 2022-05-05T12:18:07,937 opStatus roundToIntegral(roundingMode RM) { 2022-05-05T12:18:07,937 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,938 APFLOAT_DISPATCH_ON_SEMANTICS(roundToIntegral(RM)); 2022-05-05T12:18:07,938 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,939 } 2022-05-05T12:18:07,939 ~ 2022-05-05T12:18:07,940 // TODO: bool parameters are not readable and a source of bugs. 2022-05-05T12:18:07,941 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,941 // Do something. 2022-05-05T12:18:07,941 ~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,942 opStatus next(bool nextDown) { 2022-05-05T12:18:07,942 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,943 APFLOAT_DISPATCH_ON_SEMANTICS(next(nextDown)); 2022-05-05T12:18:07,943 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,943 } 2022-05-05T12:18:07,944 ~ 2022-05-05T12:18:07,945 /// Negate an APFloat. 2022-05-05T12:18:07,945 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,946 APFloat operator-() const { 2022-05-05T12:18:07,946 ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,946 APFloat Result(*this); 2022-05-05T12:18:07,947 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,947 Result.changeSign(); 2022-05-05T12:18:07,948 ~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,948 return Result; 2022-05-05T12:18:07,948 ~~~~~~~~~~~~~~ 2022-05-05T12:18:07,949 } 2022-05-05T12:18:07,949 ~ 2022-05-05T12:18:07,950 /// Add two APFloats, rounding ties to the nearest even. 2022-05-05T12:18:07,951 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,951 /// No error checking. 2022-05-05T12:18:07,952 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,952 APFloat operator+(const APFloat &RHS) const { 2022-05-05T12:18:07,952 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,953 APFloat Result(*this); 2022-05-05T12:18:07,953 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,954 (void)Result.add(RHS, rmNearestTiesToEven); 2022-05-05T12:18:07,955 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,955 return Result; 2022-05-05T12:18:07,955 ~~~~~~~~~~~~~~ 2022-05-05T12:18:07,956 } 2022-05-05T12:18:07,956 ~ 2022-05-05T12:18:07,958 /// Subtract two APFloats, rounding ties to the nearest even. 2022-05-05T12:18:07,958 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,958 /// No error checking. 2022-05-05T12:18:07,959 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,959 APFloat operator-(const APFloat &RHS) const { 2022-05-05T12:18:07,960 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,960 APFloat Result(*this); 2022-05-05T12:18:07,960 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,961 (void)Result.subtract(RHS, rmNearestTiesToEven); 2022-05-05T12:18:07,961 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,962 return Result; 2022-05-05T12:18:07,962 ~~~~~~~~~~~~~~ 2022-05-05T12:18:07,962 } 2022-05-05T12:18:07,963 ~ 2022-05-05T12:18:07,964 /// Multiply two APFloats, rounding ties to the nearest even. 2022-05-05T12:18:07,964 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,965 /// No error checking. 2022-05-05T12:18:07,965 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,966 APFloat operator*(const APFloat &RHS) const { 2022-05-05T12:18:07,966 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,966 APFloat Result(*this); 2022-05-05T12:18:07,967 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,967 (void)Result.multiply(RHS, rmNearestTiesToEven); 2022-05-05T12:18:07,968 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,968 return Result; 2022-05-05T12:18:07,969 ~~~~~~~~~~~~~~ 2022-05-05T12:18:07,969 } 2022-05-05T12:18:07,969 ~ 2022-05-05T12:18:07,971 /// Divide the first APFloat by the second, rounding ties to the nearest even. 2022-05-05T12:18:07,971 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,971 /// No error checking. 2022-05-05T12:18:07,972 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,972 APFloat operator/(const APFloat &RHS) const { 2022-05-05T12:18:07,973 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,973 APFloat Result(*this); 2022-05-05T12:18:07,973 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,974 (void)Result.divide(RHS, rmNearestTiesToEven); 2022-05-05T12:18:07,974 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,975 return Result; 2022-05-05T12:18:07,975 ~~~~~~~~~~~~~~ 2022-05-05T12:18:07,975 } 2022-05-05T12:18:07,976 ~ 2022-05-05T12:18:07,977 void changeSign() { APFLOAT_DISPATCH_ON_SEMANTICS(changeSign()); } 2022-05-05T12:18:07,977 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,978 void clearSign() { 2022-05-05T12:18:07,978 ~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,979 if (isNegative()) 2022-05-05T12:18:07,979 ~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,980 changeSign(); 2022-05-05T12:18:07,980 ~~~~~~~~~~~~~ 2022-05-05T12:18:07,980 } 2022-05-05T12:18:07,981 ~ 2022-05-05T12:18:07,981 void copySign(const APFloat &RHS) { 2022-05-05T12:18:07,982 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,982 if (isNegative() != RHS.isNegative()) 2022-05-05T12:18:07,982 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,983 changeSign(); 2022-05-05T12:18:07,983 ~~~~~~~~~~~~~ 2022-05-05T12:18:07,984 } 2022-05-05T12:18:07,984 ~ 2022-05-05T12:18:07,985 /// A static helper to produce a copy of an APFloat value with its sign 2022-05-05T12:18:07,986 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,986 /// copied from some other APFloat. 2022-05-05T12:18:07,986 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,987 static APFloat copySign(APFloat Value, const APFloat &Sign) { 2022-05-05T12:18:07,987 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,988 Value.copySign(Sign); 2022-05-05T12:18:07,988 ~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,988 return Value; 2022-05-05T12:18:07,989 ~~~~~~~~~~~~~ 2022-05-05T12:18:07,989 } 2022-05-05T12:18:07,990 ~ 2022-05-05T12:18:07,991 opStatus convert(const fltSemantics &ToSemantics, roundingMode RM, 2022-05-05T12:18:07,991 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,992 bool *losesInfo); 2022-05-05T12:18:07,992 ~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,992 opStatus convertToInteger(MutableArrayRef Input, 2022-05-05T12:18:07,993 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,993 unsigned int Width, bool IsSigned, roundingMode RM, 2022-05-05T12:18:07,994 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,994 bool *IsExact) const { 2022-05-05T12:18:07,995 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,995 APFLOAT_DISPATCH_ON_SEMANTICS( 2022-05-05T12:18:07,996 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,996 convertToInteger(Input, Width, IsSigned, RM, IsExact)); 2022-05-05T12:18:07,996 ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:07,997 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/APFloat.h:29:23: note: in definition of macro ‘APFLOAT_DISPATCH_ON_SEMANTICS’ 2022-05-05T12:18:07,997 return U.Double.METHOD_CALL; \ 2022-05-05T12:18:07,998 ^~~~~~~~~~~ 2022-05-05T12:18:07,998 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/APFloat.h: In member function ‘llvm::APFloatBase::opStatus llvm::APFloat::convertToInteger(llvm::APSInt&, llvm::APFloatBase::roundingMode, bool*) const’: 2022-05-05T12:18:07,999 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/APFloat.h:1108:25: note: parameter passing for argument of type ‘llvm::MutableArrayRef’ changed in GCC 7.1 2022-05-05T12:18:07,999 return U.IEEE.METHOD_CALL; \ 2022-05-05T12:18:08,000 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,000 if (usesLayout(getSemantics())) \ 2022-05-05T12:18:08,001 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,001 return U.Double.METHOD_CALL; \ 2022-05-05T12:18:08,001 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,002 llvm_unreachable("Unexpected semantics"); \ 2022-05-05T12:18:08,002 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,003 } while (false) 2022-05-05T12:18:08,003 ~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,004 namespace llvm { 2022-05-05T12:18:08,005 ~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,006 struct fltSemantics; 2022-05-05T12:18:08,007 ~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,007 class APSInt; 2022-05-05T12:18:08,008 ~~~~~~~~~~~~~ 2022-05-05T12:18:08,008 class StringRef; 2022-05-05T12:18:08,008 ~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,009 class APFloat; 2022-05-05T12:18:08,009 ~~~~~~~~~~~~~~ 2022-05-05T12:18:08,010 class raw_ostream; 2022-05-05T12:18:08,010 ~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,011 template class Expected; 2022-05-05T12:18:08,012 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,012 template class SmallVectorImpl; 2022-05-05T12:18:08,013 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,014 /// Enum that represents what fraction of the LSB truncated bits of an fp number 2022-05-05T12:18:08,015 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,015 /// represent. 2022-05-05T12:18:08,015 ~~~~~~~~~~~~~~ 2022-05-05T12:18:08,016 /// 2022-05-05T12:18:08,016 ~~~ 2022-05-05T12:18:08,017 /// This essentially combines the roles of guard and sticky bits. 2022-05-05T12:18:08,017 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,018 enum lostFraction { // Example of truncated bits: 2022-05-05T12:18:08,018 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,019 lfExactlyZero, // 000000 2022-05-05T12:18:08,019 ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,019 lfLessThanHalf, // 0xxxxx x's not all zero 2022-05-05T12:18:08,020 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,020 lfExactlyHalf, // 100000 2022-05-05T12:18:08,021 ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,021 lfMoreThanHalf // 1xxxxx x's not all zero 2022-05-05T12:18:08,022 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,022 }; 2022-05-05T12:18:08,023 ~~ 2022-05-05T12:18:08,024 /// A self-contained host- and target-independent arbitrary-precision 2022-05-05T12:18:08,024 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,025 /// floating-point software implementation. 2022-05-05T12:18:08,025 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,026 /// 2022-05-05T12:18:08,026 ~~~ 2022-05-05T12:18:08,026 /// APFloat uses bignum integer arithmetic as provided by static functions in 2022-05-05T12:18:08,027 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,027 /// the APInt class. The library will work with bignum integers whose parts are 2022-05-05T12:18:08,028 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,028 /// any unsigned type at least 16 bits wide, but 64 bits is recommended. 2022-05-05T12:18:08,028 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,029 /// 2022-05-05T12:18:08,029 ~~~ 2022-05-05T12:18:08,030 /// Written for clarity rather than speed, in particular with a view to use in 2022-05-05T12:18:08,030 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,030 /// the front-end of a cross compiler so that target arithmetic can be correctly 2022-05-05T12:18:08,031 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,031 /// performed on the host. Performance should nonetheless be reasonable, 2022-05-05T12:18:08,032 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,032 /// particularly for its intended use. It may be useful as a base 2022-05-05T12:18:08,033 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,033 /// implementation for a run-time library during development of a faster 2022-05-05T12:18:08,034 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,034 /// target-specific one. 2022-05-05T12:18:08,034 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,035 /// 2022-05-05T12:18:08,035 ~~~ 2022-05-05T12:18:08,036 /// All 5 rounding modes in the IEEE-754R draft are handled correctly for all 2022-05-05T12:18:08,036 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,036 /// implemented operations. Currently implemented operations are add, subtract, 2022-05-05T12:18:08,037 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,037 /// multiply, divide, fused-multiply-add, conversion-to-float, 2022-05-05T12:18:08,038 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,038 /// conversion-to-integer and conversion-from-integer. New rounding modes 2022-05-05T12:18:08,039 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,039 /// (e.g. away from zero) can be added with three or four lines of code. 2022-05-05T12:18:08,039 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,040 /// 2022-05-05T12:18:08,040 ~~~ 2022-05-05T12:18:08,041 /// Four formats are built-in: IEEE single precision, double precision, 2022-05-05T12:18:08,041 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,042 /// quadruple precision, and x87 80-bit extended double (when operating with 2022-05-05T12:18:08,042 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,042 /// full extended precision). Adding a new format that obeys IEEE semantics 2022-05-05T12:18:08,043 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,043 /// only requires adding two lines of code: a declaration and definition of the 2022-05-05T12:18:08,044 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,044 /// format. 2022-05-05T12:18:08,045 ~~~~~~~~~~~ 2022-05-05T12:18:08,045 /// 2022-05-05T12:18:08,045 ~~~ 2022-05-05T12:18:08,046 /// All operations return the status of that operation as an exception bit-mask, 2022-05-05T12:18:08,046 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,047 /// so multiple operations can be done consecutively with their results or-ed 2022-05-05T12:18:08,047 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,048 /// together. The returned status can be useful for compiler diagnostics; e.g., 2022-05-05T12:18:08,048 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,049 /// inexact, underflow and overflow can be easily diagnosed on constant folding, 2022-05-05T12:18:08,049 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,050 /// and compiler optimizers can determine what exceptions would be raised by 2022-05-05T12:18:08,050 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,050 /// folding operations and optimize, or perhaps not optimize, accordingly. 2022-05-05T12:18:08,051 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,051 /// 2022-05-05T12:18:08,052 ~~~ 2022-05-05T12:18:08,052 /// At present, underflow tininess is detected after rounding; it should be 2022-05-05T12:18:08,053 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,053 /// straight forward to add support for the before-rounding case too. 2022-05-05T12:18:08,053 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,054 /// 2022-05-05T12:18:08,054 ~~~ 2022-05-05T12:18:08,055 /// The library reads hexadecimal floating point numbers as per C99, and 2022-05-05T12:18:08,055 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,056 /// correctly rounds if necessary according to the specified rounding mode. 2022-05-05T12:18:08,056 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,057 /// Syntax is required to have been validated by the caller. It also converts 2022-05-05T12:18:08,057 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,058 /// floating point numbers to hexadecimal text as per the C99 %a and %A 2022-05-05T12:18:08,059 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,059 /// conversions. The output precision (or alternatively the natural minimal 2022-05-05T12:18:08,059 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,060 /// precision) can be specified; if the requested precision is less than the 2022-05-05T12:18:08,060 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,061 /// natural precision the output is correctly rounded for the specified rounding 2022-05-05T12:18:08,061 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,062 /// mode. 2022-05-05T12:18:08,062 ~~~~~~~~~ 2022-05-05T12:18:08,063 /// 2022-05-05T12:18:08,063 ~~~ 2022-05-05T12:18:08,064 /// It also reads decimal floating point numbers and correctly rounds according 2022-05-05T12:18:08,064 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,065 /// to the specified rounding mode. 2022-05-05T12:18:08,065 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,065 /// 2022-05-05T12:18:08,066 ~~~ 2022-05-05T12:18:08,067 /// Conversion to decimal text is not currently implemented. 2022-05-05T12:18:08,067 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,067 /// 2022-05-05T12:18:08,068 ~~~ 2022-05-05T12:18:08,068 /// Non-zero finite numbers are represented internally as a sign bit, a 16-bit 2022-05-05T12:18:08,069 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,069 /// signed exponent, and the significand as an array of integer parts. After 2022-05-05T12:18:08,070 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,070 /// normalization of a number of precision P the exponent is within the range of 2022-05-05T12:18:08,071 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,071 /// the format, and if the number is not denormal the P-th bit of the 2022-05-05T12:18:08,072 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,072 /// significand is set as an explicit integer bit. For denormals the most 2022-05-05T12:18:08,072 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,073 /// significant bit is shifted right so that the exponent is maintained at the 2022-05-05T12:18:08,073 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,074 /// format's minimum, so that the smallest denormal has just the least 2022-05-05T12:18:08,074 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,075 /// significant bit of the significand set. The sign of zeroes and infinities 2022-05-05T12:18:08,075 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,076 /// is significant; the exponent and significand of such numbers is not stored, 2022-05-05T12:18:08,076 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,076 /// but has a known implicit (deterministic) value: 0 for the significands, 0 2022-05-05T12:18:08,077 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,077 /// for zero exponent, all 1 bits for infinity exponent. For NaNs the sign and 2022-05-05T12:18:08,078 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,078 /// significand are deterministic, although not really meaningful, and preserved 2022-05-05T12:18:08,078 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,079 /// in non-conversion operations. The exponent is implicitly all 1 bits. 2022-05-05T12:18:08,079 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,080 /// 2022-05-05T12:18:08,080 ~~~ 2022-05-05T12:18:08,081 /// APFloat does not provide any exception handling beyond default exception 2022-05-05T12:18:08,081 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,082 /// handling. We represent Signaling NaNs via IEEE-754R 2008 6.2.1 should clause 2022-05-05T12:18:08,082 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,082 /// by encoding Signaling NaNs with the first bit of its trailing significand as 2022-05-05T12:18:08,083 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,083 /// 0. 2022-05-05T12:18:08,084 ~~~~~~ 2022-05-05T12:18:08,084 /// 2022-05-05T12:18:08,085 ~~~ 2022-05-05T12:18:08,085 /// TODO 2022-05-05T12:18:08,085 ~~~~~~~~ 2022-05-05T12:18:08,086 /// ==== 2022-05-05T12:18:08,086 ~~~~~~~~ 2022-05-05T12:18:08,087 /// 2022-05-05T12:18:08,087 ~~~ 2022-05-05T12:18:08,088 /// Some features that may or may not be worth adding: 2022-05-05T12:18:08,088 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,089 /// 2022-05-05T12:18:08,089 ~~~ 2022-05-05T12:18:08,090 /// Binary to decimal conversion (hard). 2022-05-05T12:18:08,090 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,091 /// 2022-05-05T12:18:08,091 ~~~ 2022-05-05T12:18:08,092 /// Optional ability to detect underflow tininess before rounding. 2022-05-05T12:18:08,092 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,092 /// 2022-05-05T12:18:08,093 ~~~ 2022-05-05T12:18:08,093 /// New formats: x87 in single and double precision mode (IEEE apart from 2022-05-05T12:18:08,094 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,094 /// extended exponent range) (hard). 2022-05-05T12:18:08,095 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,095 /// 2022-05-05T12:18:08,096 ~~~ 2022-05-05T12:18:08,096 /// New operations: sqrt, IEEE remainder, C90 fmod, nexttoward. 2022-05-05T12:18:08,097 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,097 /// 2022-05-05T12:18:08,098 ~~~ 2022-05-05T12:18:08,099 // This is the common type definitions shared by APFloat and its internal 2022-05-05T12:18:08,100 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,100 // implementation classes. This struct should not define any non-static data 2022-05-05T12:18:08,100 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,101 // members. 2022-05-05T12:18:08,101 ~~~~~~~~~~~ 2022-05-05T12:18:08,102 struct APFloatBase { 2022-05-05T12:18:08,102 ~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,103 typedef APInt::WordType integerPart; 2022-05-05T12:18:08,103 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,104 static constexpr unsigned integerPartWidth = APInt::APINT_BITS_PER_WORD; 2022-05-05T12:18:08,104 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,106 /// A signed type to represent a floating point numbers unbiased exponent. 2022-05-05T12:18:08,106 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,107 typedef int32_t ExponentType; 2022-05-05T12:18:08,107 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,109 /// \name Floating Point Semantics. 2022-05-05T12:18:08,109 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,110 /// @{ 2022-05-05T12:18:08,110 ~~~~~~ 2022-05-05T12:18:08,111 enum Semantics { 2022-05-05T12:18:08,111 ~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,112 S_IEEEhalf, 2022-05-05T12:18:08,112 ~~~~~~~~~~~ 2022-05-05T12:18:08,113 S_BFloat, 2022-05-05T12:18:08,113 ~~~~~~~~~ 2022-05-05T12:18:08,114 S_IEEEsingle, 2022-05-05T12:18:08,114 ~~~~~~~~~~~~~ 2022-05-05T12:18:08,114 S_IEEEdouble, 2022-05-05T12:18:08,115 ~~~~~~~~~~~~~ 2022-05-05T12:18:08,116 S_x87DoubleExtended, 2022-05-05T12:18:08,116 ~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,117 S_IEEEquad, 2022-05-05T12:18:08,117 ~~~~~~~~~~~ 2022-05-05T12:18:08,117 S_PPCDoubleDouble 2022-05-05T12:18:08,118 ~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,118 }; 2022-05-05T12:18:08,119 ~~ 2022-05-05T12:18:08,120 static const llvm::fltSemantics &EnumToSemantics(Semantics S); 2022-05-05T12:18:08,120 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,121 static Semantics SemanticsToEnum(const llvm::fltSemantics &Sem); 2022-05-05T12:18:08,121 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,123 static const fltSemantics &IEEEhalf() LLVM_READNONE; 2022-05-05T12:18:08,123 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,124 static const fltSemantics &BFloat() LLVM_READNONE; 2022-05-05T12:18:08,124 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,124 static const fltSemantics &IEEEsingle() LLVM_READNONE; 2022-05-05T12:18:08,125 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,125 static const fltSemantics &IEEEdouble() LLVM_READNONE; 2022-05-05T12:18:08,126 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,126 static const fltSemantics &IEEEquad() LLVM_READNONE; 2022-05-05T12:18:08,126 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,127 static const fltSemantics &PPCDoubleDouble() LLVM_READNONE; 2022-05-05T12:18:08,127 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,128 static const fltSemantics &x87DoubleExtended() LLVM_READNONE; 2022-05-05T12:18:08,128 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,130 /// A Pseudo fltsemantic used to construct APFloats that cannot conflict with 2022-05-05T12:18:08,130 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,131 /// anything real. 2022-05-05T12:18:08,131 ~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,131 static const fltSemantics &Bogus() LLVM_READNONE; 2022-05-05T12:18:08,132 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,133 /// @} 2022-05-05T12:18:08,134 ~~~~~~ 2022-05-05T12:18:08,135 /// IEEE-754R 5.11: Floating Point Comparison Relations. 2022-05-05T12:18:08,136 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,136 enum cmpResult { 2022-05-05T12:18:08,137 ~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,137 cmpLessThan, 2022-05-05T12:18:08,138 ~~~~~~~~~~~~ 2022-05-05T12:18:08,138 cmpEqual, 2022-05-05T12:18:08,139 ~~~~~~~~~ 2022-05-05T12:18:08,139 cmpGreaterThan, 2022-05-05T12:18:08,140 ~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,140 cmpUnordered 2022-05-05T12:18:08,141 ~~~~~~~~~~~~ 2022-05-05T12:18:08,141 }; 2022-05-05T12:18:08,142 ~~ 2022-05-05T12:18:08,143 /// IEEE-754R 4.3: Rounding-direction attributes. 2022-05-05T12:18:08,144 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,144 using roundingMode = llvm::RoundingMode; 2022-05-05T12:18:08,145 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,146 static constexpr roundingMode rmNearestTiesToEven = 2022-05-05T12:18:08,147 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,147 RoundingMode::NearestTiesToEven; 2022-05-05T12:18:08,148 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,148 static constexpr roundingMode rmTowardPositive = RoundingMode::TowardPositive; 2022-05-05T12:18:08,149 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,149 static constexpr roundingMode rmTowardNegative = RoundingMode::TowardNegative; 2022-05-05T12:18:08,150 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,150 static constexpr roundingMode rmTowardZero = RoundingMode::TowardZero; 2022-05-05T12:18:08,151 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,151 static constexpr roundingMode rmNearestTiesToAway = 2022-05-05T12:18:08,152 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,152 RoundingMode::NearestTiesToAway; 2022-05-05T12:18:08,153 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,154 /// IEEE-754R 7: Default exception handling. 2022-05-05T12:18:08,155 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,155 /// 2022-05-05T12:18:08,156 ~~~ 2022-05-05T12:18:08,156 /// opUnderflow or opOverflow are always returned or-ed with opInexact. 2022-05-05T12:18:08,157 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,158 /// 2022-05-05T12:18:08,158 ~~~ 2022-05-05T12:18:08,159 /// APFloat models this behavior specified by IEEE-754: 2022-05-05T12:18:08,159 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,160 /// "For operations producing results in floating-point format, the default 2022-05-05T12:18:08,160 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,161 /// result of an operation that signals the invalid operation exception 2022-05-05T12:18:08,161 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,162 /// shall be a quiet NaN." 2022-05-05T12:18:08,162 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,163 enum opStatus { 2022-05-05T12:18:08,163 ~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,164 opOK = 0x00, 2022-05-05T12:18:08,164 ~~~~~~~~~~~~ 2022-05-05T12:18:08,164 opInvalidOp = 0x01, 2022-05-05T12:18:08,165 ~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,165 opDivByZero = 0x02, 2022-05-05T12:18:08,166 ~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,166 opOverflow = 0x04, 2022-05-05T12:18:08,167 ~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,167 opUnderflow = 0x08, 2022-05-05T12:18:08,168 ~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,168 opInexact = 0x10 2022-05-05T12:18:08,168 ~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,169 }; 2022-05-05T12:18:08,169 ~~ 2022-05-05T12:18:08,171 /// Category of internally-represented number. 2022-05-05T12:18:08,171 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,171 enum fltCategory { 2022-05-05T12:18:08,172 ~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,172 fcInfinity, 2022-05-05T12:18:08,172 ~~~~~~~~~~~ 2022-05-05T12:18:08,173 fcNaN, 2022-05-05T12:18:08,173 ~~~~~~ 2022-05-05T12:18:08,174 fcNormal, 2022-05-05T12:18:08,174 ~~~~~~~~~ 2022-05-05T12:18:08,175 fcZero 2022-05-05T12:18:08,176 ~~~~~~ 2022-05-05T12:18:08,176 }; 2022-05-05T12:18:08,177 ~~ 2022-05-05T12:18:08,179 /// Convenience enum used to construct an uninitialized APFloat. 2022-05-05T12:18:08,179 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,180 enum uninitializedTag { 2022-05-05T12:18:08,180 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,180 uninitialized 2022-05-05T12:18:08,181 ~~~~~~~~~~~~~ 2022-05-05T12:18:08,181 }; 2022-05-05T12:18:08,182 ~~ 2022-05-05T12:18:08,183 /// Enumeration of \c ilogb error results. 2022-05-05T12:18:08,183 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,184 enum IlogbErrorKinds { 2022-05-05T12:18:08,184 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,184 IEK_Zero = INT_MIN + 1, 2022-05-05T12:18:08,185 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,185 IEK_NaN = INT_MIN, 2022-05-05T12:18:08,186 ~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,186 IEK_Inf = INT_MAX 2022-05-05T12:18:08,187 ~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,187 }; 2022-05-05T12:18:08,188 ~~ 2022-05-05T12:18:08,189 static unsigned int semanticsPrecision(const fltSemantics &); 2022-05-05T12:18:08,189 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,190 static ExponentType semanticsMinExponent(const fltSemantics &); 2022-05-05T12:18:08,190 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,190 static ExponentType semanticsMaxExponent(const fltSemantics &); 2022-05-05T12:18:08,191 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,191 static unsigned int semanticsSizeInBits(const fltSemantics &); 2022-05-05T12:18:08,192 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,193 /// Returns the size of the floating point number (in bits) in the given 2022-05-05T12:18:08,193 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,194 /// semantics. 2022-05-05T12:18:08,194 ~~~~~~~~~~~~~~ 2022-05-05T12:18:08,195 static unsigned getSizeInBits(const fltSemantics &Sem); 2022-05-05T12:18:08,195 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,196 }; 2022-05-05T12:18:08,197 ~~ 2022-05-05T12:18:08,198 namespace detail { 2022-05-05T12:18:08,199 ~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,200 class IEEEFloat final : public APFloatBase { 2022-05-05T12:18:08,201 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,201 public: 2022-05-05T12:18:08,202 ~~~~~~~ 2022-05-05T12:18:08,202 /// \name Constructors 2022-05-05T12:18:08,203 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,203 /// @{ 2022-05-05T12:18:08,204 ~~~~~~ 2022-05-05T12:18:08,205 IEEEFloat(const fltSemantics &); // Default construct to +0.0 2022-05-05T12:18:08,206 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,206 IEEEFloat(const fltSemantics &, integerPart); 2022-05-05T12:18:08,207 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,208 IEEEFloat(const fltSemantics &, uninitializedTag); 2022-05-05T12:18:08,208 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,209 IEEEFloat(const fltSemantics &, const APInt &); 2022-05-05T12:18:08,209 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,210 explicit IEEEFloat(double d); 2022-05-05T12:18:08,210 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,211 explicit IEEEFloat(float f); 2022-05-05T12:18:08,211 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,212 IEEEFloat(const IEEEFloat &); 2022-05-05T12:18:08,212 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,213 IEEEFloat(IEEEFloat &&); 2022-05-05T12:18:08,213 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,214 ~IEEEFloat(); 2022-05-05T12:18:08,214 ~~~~~~~~~~~~~ 2022-05-05T12:18:08,216 /// @} 2022-05-05T12:18:08,216 ~~~~~~ 2022-05-05T12:18:08,218 /// Returns whether this instance allocated memory. 2022-05-05T12:18:08,218 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,219 bool needsCleanup() const { return partCount() > 1; } 2022-05-05T12:18:08,219 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,221 /// \name Convenience "constructors" 2022-05-05T12:18:08,221 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,222 /// @{ 2022-05-05T12:18:08,222 ~~~~~~ 2022-05-05T12:18:08,224 /// @} 2022-05-05T12:18:08,225 ~~~~~~ 2022-05-05T12:18:08,226 /// \name Arithmetic 2022-05-05T12:18:08,227 ~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,227 /// @{ 2022-05-05T12:18:08,228 ~~~~~~ 2022-05-05T12:18:08,229 opStatus add(const IEEEFloat &, roundingMode); 2022-05-05T12:18:08,229 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,230 opStatus subtract(const IEEEFloat &, roundingMode); 2022-05-05T12:18:08,230 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,231 opStatus multiply(const IEEEFloat &, roundingMode); 2022-05-05T12:18:08,231 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,232 opStatus divide(const IEEEFloat &, roundingMode); 2022-05-05T12:18:08,232 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,233 /// IEEE remainder. 2022-05-05T12:18:08,233 ~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,234 opStatus remainder(const IEEEFloat &); 2022-05-05T12:18:08,234 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,235 /// C fmod, or llvm frem. 2022-05-05T12:18:08,235 ~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,236 opStatus mod(const IEEEFloat &); 2022-05-05T12:18:08,236 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,237 opStatus fusedMultiplyAdd(const IEEEFloat &, const IEEEFloat &, roundingMode); 2022-05-05T12:18:08,237 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,238 opStatus roundToIntegral(roundingMode); 2022-05-05T12:18:08,238 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,239 /// IEEE-754R 5.3.1: nextUp/nextDown. 2022-05-05T12:18:08,239 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,240 opStatus next(bool nextDown); 2022-05-05T12:18:08,240 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,242 /// @} 2022-05-05T12:18:08,242 ~~~~~~ 2022-05-05T12:18:08,244 /// \name Sign operations. 2022-05-05T12:18:08,244 ~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,245 /// @{ 2022-05-05T12:18:08,245 ~~~~~~ 2022-05-05T12:18:08,247 void changeSign(); 2022-05-05T12:18:08,247 ~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,249 /// @} 2022-05-05T12:18:08,249 ~~~~~~ 2022-05-05T12:18:08,251 /// \name Conversions 2022-05-05T12:18:08,251 ~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,252 /// @{ 2022-05-05T12:18:08,252 ~~~~~~ 2022-05-05T12:18:08,254 opStatus convert(const fltSemantics &, roundingMode, bool *); 2022-05-05T12:18:08,254 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,255 opStatus convertToInteger(MutableArrayRef, unsigned int, bool, 2022-05-05T12:18:08,255 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,256 roundingMode, bool *) const; 2022-05-05T12:18:08,256 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,257 opStatus convertFromAPInt(const APInt &, bool, roundingMode); 2022-05-05T12:18:08,257 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,258 opStatus convertFromSignExtendedInteger(const integerPart *, unsigned int, 2022-05-05T12:18:08,258 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,259 bool, roundingMode); 2022-05-05T12:18:08,259 ~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,260 opStatus convertFromZeroExtendedInteger(const integerPart *, unsigned int, 2022-05-05T12:18:08,260 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,261 bool, roundingMode); 2022-05-05T12:18:08,261 ~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,262 Expected convertFromString(StringRef, roundingMode); 2022-05-05T12:18:08,262 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,263 APInt bitcastToAPInt() const; 2022-05-05T12:18:08,264 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,264 double convertToDouble() const; 2022-05-05T12:18:08,265 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,265 float convertToFloat() const; 2022-05-05T12:18:08,266 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,267 /// @} 2022-05-05T12:18:08,268 ~~~~~~ 2022-05-05T12:18:08,269 /// The definition of equality is not straightforward for floating point, so 2022-05-05T12:18:08,270 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,270 /// we won't use operator==. Use one of the following, or write whatever it 2022-05-05T12:18:08,271 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,271 /// is you really mean. 2022-05-05T12:18:08,272 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,272 bool operator==(const IEEEFloat &) const = delete; 2022-05-05T12:18:08,273 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,274 /// IEEE comparison with another floating point number (NaNs compare 2022-05-05T12:18:08,275 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,275 /// unordered, 0==-0). 2022-05-05T12:18:08,276 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,276 cmpResult compare(const IEEEFloat &) const; 2022-05-05T12:18:08,277 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,278 /// Bitwise comparison for equality (QNaNs compare equal, 0!=-0). 2022-05-05T12:18:08,279 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,279 bool bitwiseIsEqual(const IEEEFloat &) const; 2022-05-05T12:18:08,280 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,281 /// Write out a hexadecimal representation of the floating point value to DST, 2022-05-05T12:18:08,282 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,283 /// which must be of sufficient size, in the C99 form [-]0xh.hhhhp[+-]d. 2022-05-05T12:18:08,283 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,284 /// Return the number of characters written, excluding the terminating NUL. 2022-05-05T12:18:08,284 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,285 unsigned int convertToHexString(char *dst, unsigned int hexDigits, 2022-05-05T12:18:08,285 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,286 bool upperCase, roundingMode) const; 2022-05-05T12:18:08,286 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,288 /// \name IEEE-754R 5.7.2 General operations. 2022-05-05T12:18:08,288 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,289 /// @{ 2022-05-05T12:18:08,289 ~~~~~~ 2022-05-05T12:18:08,291 /// IEEE-754R isSignMinus: Returns true if and only if the current value is 2022-05-05T12:18:08,291 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,292 /// negative. 2022-05-05T12:18:08,292 ~~~~~~~~~~~~~ 2022-05-05T12:18:08,293 /// 2022-05-05T12:18:08,293 ~~~ 2022-05-05T12:18:08,294 /// This applies to zeros and NaNs as well. 2022-05-05T12:18:08,294 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,295 bool isNegative() const { return sign; } 2022-05-05T12:18:08,295 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,297 /// IEEE-754R isNormal: Returns true if and only if the current value is normal. 2022-05-05T12:18:08,297 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,298 /// 2022-05-05T12:18:08,298 ~~~ 2022-05-05T12:18:08,298 /// This implies that the current value of the float is not zero, subnormal, 2022-05-05T12:18:08,299 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,300 /// infinite, or NaN following the definition of normality from IEEE-754R. 2022-05-05T12:18:08,300 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,301 bool isNormal() const { return !isDenormal() && isFiniteNonZero(); } 2022-05-05T12:18:08,301 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,303 /// Returns true if and only if the current value is zero, subnormal, or 2022-05-05T12:18:08,304 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,304 /// normal. 2022-05-05T12:18:08,305 ~~~~~~~~~~~ 2022-05-05T12:18:08,305 /// 2022-05-05T12:18:08,306 ~~~ 2022-05-05T12:18:08,306 /// This means that the value is not infinite or NaN. 2022-05-05T12:18:08,307 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,307 bool isFinite() const { return !isNaN() && !isInfinity(); } 2022-05-05T12:18:08,308 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,310 /// Returns true if and only if the float is plus or minus zero. 2022-05-05T12:18:08,310 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,311 bool isZero() const { return category == fcZero; } 2022-05-05T12:18:08,311 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,313 /// IEEE-754R isSubnormal(): Returns true if and only if the float is a 2022-05-05T12:18:08,313 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,314 /// denormal. 2022-05-05T12:18:08,314 ~~~~~~~~~~~~~ 2022-05-05T12:18:08,315 bool isDenormal() const; 2022-05-05T12:18:08,315 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,317 /// IEEE-754R isInfinite(): Returns true if and only if the float is infinity. 2022-05-05T12:18:08,317 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,318 bool isInfinity() const { return category == fcInfinity; } 2022-05-05T12:18:08,318 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,320 /// Returns true if and only if the float is a quiet or signaling NaN. 2022-05-05T12:18:08,320 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,321 bool isNaN() const { return category == fcNaN; } 2022-05-05T12:18:08,321 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,323 /// Returns true if and only if the float is a signaling NaN. 2022-05-05T12:18:08,323 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,324 bool isSignaling() const; 2022-05-05T12:18:08,324 ~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,326 /// @} 2022-05-05T12:18:08,327 ~~~~~~ 2022-05-05T12:18:08,328 /// \name Simple Queries 2022-05-05T12:18:08,329 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,329 /// @{ 2022-05-05T12:18:08,330 ~~~~~~ 2022-05-05T12:18:08,331 fltCategory getCategory() const { return category; } 2022-05-05T12:18:08,332 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,332 const fltSemantics &getSemantics() const { return *semantics; } 2022-05-05T12:18:08,333 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,333 bool isNonZero() const { return category != fcZero; } 2022-05-05T12:18:08,334 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,335 bool isFiniteNonZero() const { return isFinite() && !isZero(); } 2022-05-05T12:18:08,335 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,336 bool isPosZero() const { return isZero() && !isNegative(); } 2022-05-05T12:18:08,336 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,337 bool isNegZero() const { return isZero() && isNegative(); } 2022-05-05T12:18:08,337 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,339 /// Returns true if and only if the number has the smallest possible non-zero 2022-05-05T12:18:08,339 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,340 /// magnitude in the current semantics. 2022-05-05T12:18:08,340 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,341 bool isSmallest() const; 2022-05-05T12:18:08,341 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,343 /// Returns true if and only if the number has the largest possible finite 2022-05-05T12:18:08,343 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,344 /// magnitude in the current semantics. 2022-05-05T12:18:08,344 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,345 bool isLargest() const; 2022-05-05T12:18:08,345 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,347 /// Returns true if and only if the number is an exact integer. 2022-05-05T12:18:08,347 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,348 bool isInteger() const; 2022-05-05T12:18:08,348 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,350 /// @} 2022-05-05T12:18:08,351 ~~~~~~ 2022-05-05T12:18:08,352 IEEEFloat &operator=(const IEEEFloat &); 2022-05-05T12:18:08,353 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,353 IEEEFloat &operator=(IEEEFloat &&); 2022-05-05T12:18:08,354 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,355 /// Overload to compute a hash code for an APFloat value. 2022-05-05T12:18:08,356 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,356 /// 2022-05-05T12:18:08,357 ~~~ 2022-05-05T12:18:08,357 /// Note that the use of hash codes for floating point values is in general 2022-05-05T12:18:08,358 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,359 /// frought with peril. Equality is hard to define for these values. For 2022-05-05T12:18:08,359 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,360 /// example, should negative and positive zero hash to different codes? Are 2022-05-05T12:18:08,360 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,361 /// they equal or not? This hash value implementation specifically 2022-05-05T12:18:08,361 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,362 /// emphasizes producing different codes for different inputs in order to 2022-05-05T12:18:08,362 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,363 /// be used in canonicalization and memoization. As such, equality is 2022-05-05T12:18:08,363 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,364 /// bitwiseIsEqual, and 0 != -0. 2022-05-05T12:18:08,364 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,365 friend hash_code hash_value(const IEEEFloat &Arg); 2022-05-05T12:18:08,365 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,367 /// Converts this value into a decimal string. 2022-05-05T12:18:08,367 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,368 /// 2022-05-05T12:18:08,368 ~~~ 2022-05-05T12:18:08,369 /// \param FormatPrecision The maximum number of digits of 2022-05-05T12:18:08,369 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,370 /// precision to output. If there are fewer digits available, 2022-05-05T12:18:08,370 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,371 /// zero padding will not be used unless the value is 2022-05-05T12:18:08,371 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,372 /// integral and small enough to be expressed in 2022-05-05T12:18:08,372 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,373 /// FormatPrecision digits. 0 means to use the natural 2022-05-05T12:18:08,373 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,374 /// precision of the number. 2022-05-05T12:18:08,374 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,375 /// \param FormatMaxPadding The maximum number of zeros to 2022-05-05T12:18:08,375 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,376 /// consider inserting before falling back to scientific 2022-05-05T12:18:08,376 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,377 /// notation. 0 means to always use scientific notation. 2022-05-05T12:18:08,378 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,378 /// 2022-05-05T12:18:08,379 ~~~ 2022-05-05T12:18:08,379 /// \param TruncateZero Indicate whether to remove the trailing zero in 2022-05-05T12:18:08,380 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,380 /// fraction part or not. Also setting this parameter to false forcing 2022-05-05T12:18:08,381 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,381 /// producing of output more similar to default printf behavior. 2022-05-05T12:18:08,382 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,382 /// Specifically the lower e is used as exponent delimiter and exponent 2022-05-05T12:18:08,383 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,383 /// always contains no less than two digits. 2022-05-05T12:18:08,384 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,384 /// 2022-05-05T12:18:08,385 ~~~ 2022-05-05T12:18:08,385 /// Number Precision MaxPadding Result 2022-05-05T12:18:08,386 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,386 /// ------ --------- ---------- ------ 2022-05-05T12:18:08,387 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,387 /// 1.01E+4 5 2 10100 2022-05-05T12:18:08,388 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,388 /// 1.01E+4 4 2 1.01E+4 2022-05-05T12:18:08,389 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,389 /// 1.01E+4 5 1 1.01E+4 2022-05-05T12:18:08,390 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,390 /// 1.01E-2 5 2 0.0101 2022-05-05T12:18:08,391 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,391 /// 1.01E-2 4 2 0.0101 2022-05-05T12:18:08,392 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,392 /// 1.01E-2 4 1 1.01E-2 2022-05-05T12:18:08,393 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,393 void toString(SmallVectorImpl &Str, unsigned FormatPrecision = 0, 2022-05-05T12:18:08,394 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,394 unsigned FormatMaxPadding = 3, bool TruncateZero = true) const; 2022-05-05T12:18:08,395 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,396 /// If this value has an exact multiplicative inverse, store it in inv and 2022-05-05T12:18:08,397 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,397 /// return true. 2022-05-05T12:18:08,398 ~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,398 bool getExactInverse(APFloat *inv) const; 2022-05-05T12:18:08,399 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,400 /// Returns the exponent of the internal representation of the APFloat. 2022-05-05T12:18:08,401 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,401 /// 2022-05-05T12:18:08,402 ~~~ 2022-05-05T12:18:08,402 /// Because the radix of APFloat is 2, this is equivalent to floor(log2(x)). 2022-05-05T12:18:08,403 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,403 /// For special APFloat values, this returns special error codes: 2022-05-05T12:18:08,404 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,404 /// 2022-05-05T12:18:08,405 ~~~ 2022-05-05T12:18:08,405 /// NaN -> \c IEK_NaN 2022-05-05T12:18:08,406 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,406 /// 0 -> \c IEK_Zero 2022-05-05T12:18:08,407 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,408 /// Inf -> \c IEK_Inf 2022-05-05T12:18:08,408 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,409 /// 2022-05-05T12:18:08,409 ~~~ 2022-05-05T12:18:08,410 friend int ilogb(const IEEEFloat &Arg); 2022-05-05T12:18:08,410 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,412 /// Returns: X * 2^Exp for integral exponents. 2022-05-05T12:18:08,412 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,413 friend IEEEFloat scalbn(IEEEFloat X, int Exp, roundingMode); 2022-05-05T12:18:08,413 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,415 friend IEEEFloat frexp(const IEEEFloat &X, int &Exp, roundingMode); 2022-05-05T12:18:08,415 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,417 /// \name Special value setters. 2022-05-05T12:18:08,417 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,418 /// @{ 2022-05-05T12:18:08,418 ~~~~~~ 2022-05-05T12:18:08,420 void makeLargest(bool Neg = false); 2022-05-05T12:18:08,420 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,421 void makeSmallest(bool Neg = false); 2022-05-05T12:18:08,421 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,422 void makeNaN(bool SNaN = false, bool Neg = false, 2022-05-05T12:18:08,422 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,423 const APInt *fill = nullptr); 2022-05-05T12:18:08,423 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,424 void makeInf(bool Neg = false); 2022-05-05T12:18:08,424 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,425 void makeZero(bool Neg = false); 2022-05-05T12:18:08,426 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,426 void makeQuiet(); 2022-05-05T12:18:08,427 ~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,428 /// Returns the smallest (by magnitude) normalized finite number in the given 2022-05-05T12:18:08,429 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,429 /// semantics. 2022-05-05T12:18:08,430 ~~~~~~~~~~~~~~ 2022-05-05T12:18:08,430 /// 2022-05-05T12:18:08,431 ~~~ 2022-05-05T12:18:08,431 /// \param Negative - True iff the number should be negative 2022-05-05T12:18:08,432 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,432 void makeSmallestNormalized(bool Negative = false); 2022-05-05T12:18:08,433 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,434 /// @} 2022-05-05T12:18:08,435 ~~~~~~ 2022-05-05T12:18:08,436 cmpResult compareAbsoluteValue(const IEEEFloat &) const; 2022-05-05T12:18:08,437 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,438 private: 2022-05-05T12:18:08,439 ~~~~~~~~ 2022-05-05T12:18:08,439 /// \name Simple Queries 2022-05-05T12:18:08,440 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,440 /// @{ 2022-05-05T12:18:08,441 ~~~~~~ 2022-05-05T12:18:08,442 integerPart *significandParts(); 2022-05-05T12:18:08,442 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,443 const integerPart *significandParts() const; 2022-05-05T12:18:08,443 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,444 unsigned int partCount() const; 2022-05-05T12:18:08,444 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,446 /// @} 2022-05-05T12:18:08,446 ~~~~~~ 2022-05-05T12:18:08,448 /// \name Significand operations. 2022-05-05T12:18:08,448 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,449 /// @{ 2022-05-05T12:18:08,449 ~~~~~~ 2022-05-05T12:18:08,451 integerPart addSignificand(const IEEEFloat &); 2022-05-05T12:18:08,451 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,452 integerPart subtractSignificand(const IEEEFloat &, integerPart); 2022-05-05T12:18:08,452 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,453 lostFraction addOrSubtractSignificand(const IEEEFloat &, bool subtract); 2022-05-05T12:18:08,453 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,454 lostFraction multiplySignificand(const IEEEFloat &, IEEEFloat); 2022-05-05T12:18:08,454 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,455 lostFraction multiplySignificand(const IEEEFloat&); 2022-05-05T12:18:08,455 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,456 lostFraction divideSignificand(const IEEEFloat &); 2022-05-05T12:18:08,456 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,457 void incrementSignificand(); 2022-05-05T12:18:08,457 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,458 void initialize(const fltSemantics *); 2022-05-05T12:18:08,458 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,459 void shiftSignificandLeft(unsigned int); 2022-05-05T12:18:08,459 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,460 lostFraction shiftSignificandRight(unsigned int); 2022-05-05T12:18:08,460 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,461 unsigned int significandLSB() const; 2022-05-05T12:18:08,461 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,462 unsigned int significandMSB() const; 2022-05-05T12:18:08,462 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,463 void zeroSignificand(); 2022-05-05T12:18:08,463 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,464 /// Return true if the significand excluding the integral bit is all ones. 2022-05-05T12:18:08,464 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,465 bool isSignificandAllOnes() const; 2022-05-05T12:18:08,465 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,466 /// Return true if the significand excluding the integral bit is all zeros. 2022-05-05T12:18:08,466 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,467 bool isSignificandAllZeros() const; 2022-05-05T12:18:08,467 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,469 /// @} 2022-05-05T12:18:08,469 ~~~~~~ 2022-05-05T12:18:08,470 /// \name Arithmetic on special values. 2022-05-05T12:18:08,471 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,471 /// @{ 2022-05-05T12:18:08,472 ~~~~~~ 2022-05-05T12:18:08,473 opStatus addOrSubtractSpecials(const IEEEFloat &, bool subtract); 2022-05-05T12:18:08,474 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,475 opStatus divideSpecials(const IEEEFloat &); 2022-05-05T12:18:08,475 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,475 opStatus multiplySpecials(const IEEEFloat &); 2022-05-05T12:18:08,476 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,476 opStatus modSpecials(const IEEEFloat &); 2022-05-05T12:18:08,477 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,477 opStatus remainderSpecials(const IEEEFloat&); 2022-05-05T12:18:08,478 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,479 /// @} 2022-05-05T12:18:08,480 ~~~~~~ 2022-05-05T12:18:08,481 /// \name Miscellany 2022-05-05T12:18:08,482 ~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,482 /// @{ 2022-05-05T12:18:08,483 ~~~~~~ 2022-05-05T12:18:08,485 bool convertFromStringSpecials(StringRef str); 2022-05-05T12:18:08,485 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,485 opStatus normalize(roundingMode, lostFraction); 2022-05-05T12:18:08,486 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,487 opStatus addOrSubtract(const IEEEFloat &, roundingMode, bool subtract); 2022-05-05T12:18:08,487 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,488 opStatus handleOverflow(roundingMode); 2022-05-05T12:18:08,488 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,488 bool roundAwayFromZero(roundingMode, lostFraction, unsigned int) const; 2022-05-05T12:18:08,489 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,489 opStatus convertToSignExtendedInteger(MutableArrayRef, 2022-05-05T12:18:08,490 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,490 unsigned int, bool, roundingMode, 2022-05-05T12:18:08,491 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,491 bool *) const; 2022-05-05T12:18:08,492 ~~~~~~~~~~~~~~ 2022-05-05T12:18:08,492 opStatus convertFromUnsignedParts(const integerPart *, unsigned int, 2022-05-05T12:18:08,493 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,493 roundingMode); 2022-05-05T12:18:08,493 ~~~~~~~~~~~~~~ 2022-05-05T12:18:08,494 Expected convertFromHexadecimalString(StringRef, roundingMode); 2022-05-05T12:18:08,494 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,495 Expected convertFromDecimalString(StringRef, roundingMode); 2022-05-05T12:18:08,495 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,496 char *convertNormalToHexString(char *, unsigned int, bool, 2022-05-05T12:18:08,496 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,497 roundingMode) const; 2022-05-05T12:18:08,497 ~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,498 opStatus roundSignificandWithExponent(const integerPart *, unsigned int, int, 2022-05-05T12:18:08,498 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,499 roundingMode); 2022-05-05T12:18:08,500 ~~~~~~~~~~~~~~ 2022-05-05T12:18:08,500 ExponentType exponentNaN() const; 2022-05-05T12:18:08,501 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,501 ExponentType exponentInf() const; 2022-05-05T12:18:08,502 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,502 ExponentType exponentZero() const; 2022-05-05T12:18:08,502 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,504 /// @} 2022-05-05T12:18:08,504 ~~~~~~ 2022-05-05T12:18:08,506 APInt convertHalfAPFloatToAPInt() const; 2022-05-05T12:18:08,506 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,507 APInt convertBFloatAPFloatToAPInt() const; 2022-05-05T12:18:08,508 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,508 APInt convertFloatAPFloatToAPInt() const; 2022-05-05T12:18:08,509 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,509 APInt convertDoubleAPFloatToAPInt() const; 2022-05-05T12:18:08,510 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,510 APInt convertQuadrupleAPFloatToAPInt() const; 2022-05-05T12:18:08,511 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,511 APInt convertF80LongDoubleAPFloatToAPInt() const; 2022-05-05T12:18:08,511 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,512 APInt convertPPCDoubleDoubleAPFloatToAPInt() const; 2022-05-05T12:18:08,512 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,513 void initFromAPInt(const fltSemantics *Sem, const APInt &api); 2022-05-05T12:18:08,513 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,514 void initFromHalfAPInt(const APInt &api); 2022-05-05T12:18:08,514 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,515 void initFromBFloatAPInt(const APInt &api); 2022-05-05T12:18:08,515 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,516 void initFromFloatAPInt(const APInt &api); 2022-05-05T12:18:08,517 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,517 void initFromDoubleAPInt(const APInt &api); 2022-05-05T12:18:08,518 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,518 void initFromQuadrupleAPInt(const APInt &api); 2022-05-05T12:18:08,519 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,519 void initFromF80LongDoubleAPInt(const APInt &api); 2022-05-05T12:18:08,520 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,520 void initFromPPCDoubleDoubleAPInt(const APInt &api); 2022-05-05T12:18:08,521 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,522 void assign(const IEEEFloat &); 2022-05-05T12:18:08,523 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,523 void copySignificand(const IEEEFloat &); 2022-05-05T12:18:08,524 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,524 void freeSignificand(); 2022-05-05T12:18:08,525 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,527 /// Note: this must be the first data member. 2022-05-05T12:18:08,527 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,528 /// The semantics that this value obeys. 2022-05-05T12:18:08,528 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,529 const fltSemantics *semantics; 2022-05-05T12:18:08,529 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,531 /// A binary fraction with an explicit integer bit. 2022-05-05T12:18:08,531 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,531 /// 2022-05-05T12:18:08,532 ~~~ 2022-05-05T12:18:08,532 /// The significand must be at least one bit wider than the target precision. 2022-05-05T12:18:08,533 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,533 union Significand { 2022-05-05T12:18:08,534 ~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,534 integerPart part; 2022-05-05T12:18:08,535 ~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,535 integerPart *parts; 2022-05-05T12:18:08,536 ~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,536 } significand; 2022-05-05T12:18:08,537 ~~~~~~~~~~~~~~ 2022-05-05T12:18:08,538 /// The signed unbiased exponent of the value. 2022-05-05T12:18:08,539 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,539 ExponentType exponent; 2022-05-05T12:18:08,540 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,541 /// What kind of floating point number this is. 2022-05-05T12:18:08,542 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,542 /// 2022-05-05T12:18:08,543 ~~~ 2022-05-05T12:18:08,543 /// Only 2 bits are required, but VisualStudio incorrectly sign extends it. 2022-05-05T12:18:08,544 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,544 /// Using the extra bit keeps it from failing under VisualStudio. 2022-05-05T12:18:08,545 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,546 fltCategory category : 3; 2022-05-05T12:18:08,546 ~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,548 /// Sign bit of the number. 2022-05-05T12:18:08,548 ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,549 unsigned int sign : 1; 2022-05-05T12:18:08,549 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,550 }; 2022-05-05T12:18:08,550 ~~ 2022-05-05T12:18:08,552 hash_code hash_value(const IEEEFloat &Arg); 2022-05-05T12:18:08,552 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,552 int ilogb(const IEEEFloat &Arg); 2022-05-05T12:18:08,553 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,553 IEEEFloat scalbn(IEEEFloat X, int Exp, IEEEFloat::roundingMode); 2022-05-05T12:18:08,554 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,554 IEEEFloat frexp(const IEEEFloat &Val, int &Exp, IEEEFloat::roundingMode RM); 2022-05-05T12:18:08,555 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,557 // This mode implements more precise float in terms of two APFloats. 2022-05-05T12:18:08,557 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,558 // The interface and layout is designed for arbitrary underlying semantics, 2022-05-05T12:18:08,558 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,559 // though currently only PPCDoubleDouble semantics are supported, whose 2022-05-05T12:18:08,560 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,560 // corresponding underlying semantics are IEEEdouble. 2022-05-05T12:18:08,561 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,561 class DoubleAPFloat final : public APFloatBase { 2022-05-05T12:18:08,562 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,562 // Note: this must be the first data member. 2022-05-05T12:18:08,562 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,563 const fltSemantics *Semantics; 2022-05-05T12:18:08,563 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,564 std::unique_ptr Floats; 2022-05-05T12:18:08,564 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,565 opStatus addImpl(const APFloat &a, const APFloat &aa, const APFloat &c, 2022-05-05T12:18:08,566 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,566 const APFloat &cc, roundingMode RM); 2022-05-05T12:18:08,567 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,568 opStatus addWithSpecial(const DoubleAPFloat &LHS, const DoubleAPFloat &RHS, 2022-05-05T12:18:08,569 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,569 DoubleAPFloat &Out, roundingMode RM); 2022-05-05T12:18:08,569 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,571 public: 2022-05-05T12:18:08,571 ~~~~~~~ 2022-05-05T12:18:08,571 DoubleAPFloat(const fltSemantics &S); 2022-05-05T12:18:08,572 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,572 DoubleAPFloat(const fltSemantics &S, uninitializedTag); 2022-05-05T12:18:08,573 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,573 DoubleAPFloat(const fltSemantics &S, integerPart); 2022-05-05T12:18:08,573 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,574 DoubleAPFloat(const fltSemantics &S, const APInt &I); 2022-05-05T12:18:08,574 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,575 DoubleAPFloat(const fltSemantics &S, APFloat &&First, APFloat &&Second); 2022-05-05T12:18:08,575 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,575 DoubleAPFloat(const DoubleAPFloat &RHS); 2022-05-05T12:18:08,576 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,576 DoubleAPFloat(DoubleAPFloat &&RHS); 2022-05-05T12:18:08,577 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,578 DoubleAPFloat &operator=(const DoubleAPFloat &RHS); 2022-05-05T12:18:08,578 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,580 DoubleAPFloat &operator=(DoubleAPFloat &&RHS) { 2022-05-05T12:18:08,580 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,581 if (this != &RHS) { 2022-05-05T12:18:08,581 ~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,581 this->~DoubleAPFloat(); 2022-05-05T12:18:08,582 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,582 new (this) DoubleAPFloat(std::move(RHS)); 2022-05-05T12:18:08,583 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,583 } 2022-05-05T12:18:08,584 ~ 2022-05-05T12:18:08,584 return *this; 2022-05-05T12:18:08,585 ~~~~~~~~~~~~~ 2022-05-05T12:18:08,585 } 2022-05-05T12:18:08,585 ~ 2022-05-05T12:18:08,587 bool needsCleanup() const { return Floats != nullptr; } 2022-05-05T12:18:08,587 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,589 APFloat &getFirst() { return Floats[0]; } 2022-05-05T12:18:08,589 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,590 const APFloat &getFirst() const { return Floats[0]; } 2022-05-05T12:18:08,590 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,590 APFloat &getSecond() { return Floats[1]; } 2022-05-05T12:18:08,591 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,591 const APFloat &getSecond() const { return Floats[1]; } 2022-05-05T12:18:08,592 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,593 opStatus add(const DoubleAPFloat &RHS, roundingMode RM); 2022-05-05T12:18:08,593 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,594 opStatus subtract(const DoubleAPFloat &RHS, roundingMode RM); 2022-05-05T12:18:08,594 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,595 opStatus multiply(const DoubleAPFloat &RHS, roundingMode RM); 2022-05-05T12:18:08,595 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,596 opStatus divide(const DoubleAPFloat &RHS, roundingMode RM); 2022-05-05T12:18:08,597 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,597 opStatus remainder(const DoubleAPFloat &RHS); 2022-05-05T12:18:08,597 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,598 opStatus mod(const DoubleAPFloat &RHS); 2022-05-05T12:18:08,598 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,599 opStatus fusedMultiplyAdd(const DoubleAPFloat &Multiplicand, 2022-05-05T12:18:08,599 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,600 const DoubleAPFloat &Addend, roundingMode RM); 2022-05-05T12:18:08,600 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,600 opStatus roundToIntegral(roundingMode RM); 2022-05-05T12:18:08,601 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,601 void changeSign(); 2022-05-05T12:18:08,602 ~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,602 cmpResult compareAbsoluteValue(const DoubleAPFloat &RHS) const; 2022-05-05T12:18:08,603 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,604 fltCategory getCategory() const; 2022-05-05T12:18:08,605 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,605 bool isNegative() const; 2022-05-05T12:18:08,606 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,607 void makeInf(bool Neg); 2022-05-05T12:18:08,608 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,608 void makeZero(bool Neg); 2022-05-05T12:18:08,609 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,610 void makeLargest(bool Neg); 2022-05-05T12:18:08,611 ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,612 void makeSmallest(bool Neg); 2022-05-05T12:18:08,612 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,613 void makeSmallestNormalized(bool Neg); 2022-05-05T12:18:08,613 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,614 void makeNaN(bool SNaN, bool Neg, const APInt *fill); 2022-05-05T12:18:08,614 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,616 cmpResult compare(const DoubleAPFloat &RHS) const; 2022-05-05T12:18:08,617 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,617 bool bitwiseIsEqual(const DoubleAPFloat &RHS) const; 2022-05-05T12:18:08,618 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,619 APInt bitcastToAPInt() const; 2022-05-05T12:18:08,619 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,620 Expected convertFromString(StringRef, roundingMode); 2022-05-05T12:18:08,620 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,621 opStatus next(bool nextDown); 2022-05-05T12:18:08,621 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,623 opStatus convertToInteger(MutableArrayRef Input, 2022-05-05T12:18:08,624 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,624 unsigned int Width, bool IsSigned, roundingMode RM, 2022-05-05T12:18:08,625 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,625 bool *IsExact) const; 2022-05-05T12:18:08,626 ~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,627 opStatus convertFromAPInt(const APInt &Input, bool IsSigned, roundingMode RM); 2022-05-05T12:18:08,627 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,628 opStatus convertFromSignExtendedInteger(const integerPart *Input, 2022-05-05T12:18:08,629 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,629 unsigned int InputSize, bool IsSigned, 2022-05-05T12:18:08,630 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,630 roundingMode RM); 2022-05-05T12:18:08,631 ~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,631 opStatus convertFromZeroExtendedInteger(const integerPart *Input, 2022-05-05T12:18:08,632 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,633 unsigned int InputSize, bool IsSigned, 2022-05-05T12:18:08,633 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,634 roundingMode RM); 2022-05-05T12:18:08,634 ~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,635 unsigned int convertToHexString(char *DST, unsigned int HexDigits, 2022-05-05T12:18:08,636 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,636 bool UpperCase, roundingMode RM) const; 2022-05-05T12:18:08,637 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,638 bool isDenormal() const; 2022-05-05T12:18:08,639 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,639 bool isSmallest() const; 2022-05-05T12:18:08,640 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,640 bool isLargest() const; 2022-05-05T12:18:08,641 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,642 bool isInteger() const; 2022-05-05T12:18:08,642 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,644 void toString(SmallVectorImpl &Str, unsigned FormatPrecision, 2022-05-05T12:18:08,644 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,645 unsigned FormatMaxPadding, bool TruncateZero = true) const; 2022-05-05T12:18:08,645 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,647 bool getExactInverse(APFloat *inv) const; 2022-05-05T12:18:08,648 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,649 friend DoubleAPFloat scalbn(const DoubleAPFloat &X, int Exp, roundingMode); 2022-05-05T12:18:08,650 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,650 friend DoubleAPFloat frexp(const DoubleAPFloat &X, int &Exp, roundingMode); 2022-05-05T12:18:08,651 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,651 friend hash_code hash_value(const DoubleAPFloat &Arg); 2022-05-05T12:18:08,652 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,653 }; 2022-05-05T12:18:08,653 ~~ 2022-05-05T12:18:08,655 hash_code hash_value(const DoubleAPFloat &Arg); 2022-05-05T12:18:08,655 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,657 } // End detail namespace 2022-05-05T12:18:08,658 ~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,659 // This is a interface class that is currently forwarding functionalities from 2022-05-05T12:18:08,660 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,660 // detail::IEEEFloat. 2022-05-05T12:18:08,661 ~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,661 class APFloat : public APFloatBase { 2022-05-05T12:18:08,662 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,663 typedef detail::IEEEFloat IEEEFloat; 2022-05-05T12:18:08,663 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,664 typedef detail::DoubleAPFloat DoubleAPFloat; 2022-05-05T12:18:08,664 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,665 static_assert(std::is_standard_layout::value, ""); 2022-05-05T12:18:08,666 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,668 union Storage { 2022-05-05T12:18:08,668 ~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,669 const fltSemantics *semantics; 2022-05-05T12:18:08,669 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,670 IEEEFloat IEEE; 2022-05-05T12:18:08,671 ~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,671 DoubleAPFloat Double; 2022-05-05T12:18:08,672 ~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,673 explicit Storage(IEEEFloat F, const fltSemantics &S); 2022-05-05T12:18:08,674 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,674 explicit Storage(DoubleAPFloat F, const fltSemantics &S) 2022-05-05T12:18:08,675 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,675 : Double(std::move(F)) { 2022-05-05T12:18:08,676 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,677 assert(&S == &PPCDoubleDouble()); 2022-05-05T12:18:08,677 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,678 } 2022-05-05T12:18:08,679 ~ 2022-05-05T12:18:08,680 template 2022-05-05T12:18:08,681 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,681 Storage(const fltSemantics &Semantics, ArgTypes &&... Args) { 2022-05-05T12:18:08,682 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,682 if (usesLayout(Semantics)) { 2022-05-05T12:18:08,683 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,683 new (&IEEE) IEEEFloat(Semantics, std::forward(Args)...); 2022-05-05T12:18:08,684 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,684 return; 2022-05-05T12:18:08,685 ~~~~~~~ 2022-05-05T12:18:08,686 } 2022-05-05T12:18:08,687 ~ 2022-05-05T12:18:08,687 if (usesLayout(Semantics)) { 2022-05-05T12:18:08,688 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,689 new (&Double) DoubleAPFloat(Semantics, std::forward(Args)...); 2022-05-05T12:18:08,689 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,690 return; 2022-05-05T12:18:08,690 ~~~~~~~ 2022-05-05T12:18:08,691 } 2022-05-05T12:18:08,691 ~ 2022-05-05T12:18:08,692 llvm_unreachable("Unexpected semantics"); 2022-05-05T12:18:08,692 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,693 } 2022-05-05T12:18:08,693 ~ 2022-05-05T12:18:08,695 ~Storage() { 2022-05-05T12:18:08,695 ~~~~~~~~~~~~ 2022-05-05T12:18:08,696 if (usesLayout(*semantics)) { 2022-05-05T12:18:08,696 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,697 IEEE.~IEEEFloat(); 2022-05-05T12:18:08,697 ~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,698 return; 2022-05-05T12:18:08,698 ~~~~~~~ 2022-05-05T12:18:08,699 } 2022-05-05T12:18:08,699 ~ 2022-05-05T12:18:08,700 if (usesLayout(*semantics)) { 2022-05-05T12:18:08,700 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,701 Double.~DoubleAPFloat(); 2022-05-05T12:18:08,701 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,702 return; 2022-05-05T12:18:08,702 ~~~~~~~ 2022-05-05T12:18:08,703 } 2022-05-05T12:18:08,703 ~ 2022-05-05T12:18:08,704 llvm_unreachable("Unexpected semantics"); 2022-05-05T12:18:08,704 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,705 } 2022-05-05T12:18:08,705 ~ 2022-05-05T12:18:08,707 Storage(const Storage &RHS) { 2022-05-05T12:18:08,708 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,708 if (usesLayout(*RHS.semantics)) { 2022-05-05T12:18:08,709 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,709 new (this) IEEEFloat(RHS.IEEE); 2022-05-05T12:18:08,710 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,710 return; 2022-05-05T12:18:08,711 ~~~~~~~ 2022-05-05T12:18:08,711 } 2022-05-05T12:18:08,712 ~ 2022-05-05T12:18:08,712 if (usesLayout(*RHS.semantics)) { 2022-05-05T12:18:08,713 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,713 new (this) DoubleAPFloat(RHS.Double); 2022-05-05T12:18:08,714 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,714 return; 2022-05-05T12:18:08,715 ~~~~~~~ 2022-05-05T12:18:08,715 } 2022-05-05T12:18:08,716 ~ 2022-05-05T12:18:08,716 llvm_unreachable("Unexpected semantics"); 2022-05-05T12:18:08,717 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,717 } 2022-05-05T12:18:08,718 ~ 2022-05-05T12:18:08,719 Storage(Storage &&RHS) { 2022-05-05T12:18:08,719 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,720 if (usesLayout(*RHS.semantics)) { 2022-05-05T12:18:08,720 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,720 new (this) IEEEFloat(std::move(RHS.IEEE)); 2022-05-05T12:18:08,721 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,721 return; 2022-05-05T12:18:08,721 ~~~~~~~ 2022-05-05T12:18:08,722 } 2022-05-05T12:18:08,722 ~ 2022-05-05T12:18:08,723 if (usesLayout(*RHS.semantics)) { 2022-05-05T12:18:08,723 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,723 new (this) DoubleAPFloat(std::move(RHS.Double)); 2022-05-05T12:18:08,724 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,724 return; 2022-05-05T12:18:08,725 ~~~~~~~ 2022-05-05T12:18:08,726 } 2022-05-05T12:18:08,727 ~ 2022-05-05T12:18:08,728 llvm_unreachable("Unexpected semantics"); 2022-05-05T12:18:08,728 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,729 } 2022-05-05T12:18:08,730 ~ 2022-05-05T12:18:08,731 Storage &operator=(const Storage &RHS) { 2022-05-05T12:18:08,732 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,732 if (usesLayout(*semantics) && 2022-05-05T12:18:08,733 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,733 usesLayout(*RHS.semantics)) { 2022-05-05T12:18:08,734 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,735 IEEE = RHS.IEEE; 2022-05-05T12:18:08,735 ~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,736 } else if (usesLayout(*semantics) && 2022-05-05T12:18:08,736 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,737 usesLayout(*RHS.semantics)) { 2022-05-05T12:18:08,738 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,738 Double = RHS.Double; 2022-05-05T12:18:08,738 ~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,739 } else if (this != &RHS) { 2022-05-05T12:18:08,739 ~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,740 this->~Storage(); 2022-05-05T12:18:08,740 ~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,741 new (this) Storage(RHS); 2022-05-05T12:18:08,741 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,742 } 2022-05-05T12:18:08,742 ~ 2022-05-05T12:18:08,743 return *this; 2022-05-05T12:18:08,743 ~~~~~~~~~~~~~ 2022-05-05T12:18:08,744 } 2022-05-05T12:18:08,744 ~ 2022-05-05T12:18:08,745 Storage &operator=(Storage &&RHS) { 2022-05-05T12:18:08,746 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,747 if (usesLayout(*semantics) && 2022-05-05T12:18:08,747 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,748 usesLayout(*RHS.semantics)) { 2022-05-05T12:18:08,748 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,749 IEEE = std::move(RHS.IEEE); 2022-05-05T12:18:08,749 ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,750 } else if (usesLayout(*semantics) && 2022-05-05T12:18:08,750 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,750 usesLayout(*RHS.semantics)) { 2022-05-05T12:18:08,751 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,752 Double = std::move(RHS.Double); 2022-05-05T12:18:08,752 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,753 } else if (this != &RHS) { 2022-05-05T12:18:08,753 ~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,753 this->~Storage(); 2022-05-05T12:18:08,754 ~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,754 new (this) Storage(std::move(RHS)); 2022-05-05T12:18:08,755 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,755 } 2022-05-05T12:18:08,756 ~ 2022-05-05T12:18:08,756 return *this; 2022-05-05T12:18:08,757 ~~~~~~~~~~~~~ 2022-05-05T12:18:08,757 } 2022-05-05T12:18:08,758 ~ 2022-05-05T12:18:08,758 } U; 2022-05-05T12:18:08,759 ~~~~ 2022-05-05T12:18:08,760 template static bool usesLayout(const fltSemantics &Semantics) { 2022-05-05T12:18:08,761 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,761 static_assert(std::is_same::value || 2022-05-05T12:18:08,761 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,762 std::is_same::value, ""); 2022-05-05T12:18:08,762 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,763 if (std::is_same::value) { 2022-05-05T12:18:08,763 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,764 return &Semantics == &PPCDoubleDouble(); 2022-05-05T12:18:08,764 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,764 } 2022-05-05T12:18:08,765 ~ 2022-05-05T12:18:08,766 return &Semantics != &PPCDoubleDouble(); 2022-05-05T12:18:08,767 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,767 } 2022-05-05T12:18:08,768 ~ 2022-05-05T12:18:08,769 IEEEFloat &getIEEE() { 2022-05-05T12:18:08,770 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,770 if (usesLayout(*U.semantics)) 2022-05-05T12:18:08,770 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,771 return U.IEEE; 2022-05-05T12:18:08,771 ~~~~~~~~~~~~~~ 2022-05-05T12:18:08,772 if (usesLayout(*U.semantics)) 2022-05-05T12:18:08,772 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,773 return U.Double.getFirst().U.IEEE; 2022-05-05T12:18:08,773 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,774 llvm_unreachable("Unexpected semantics"); 2022-05-05T12:18:08,774 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,775 } 2022-05-05T12:18:08,775 ~ 2022-05-05T12:18:08,777 const IEEEFloat &getIEEE() const { 2022-05-05T12:18:08,778 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,778 if (usesLayout(*U.semantics)) 2022-05-05T12:18:08,779 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,779 return U.IEEE; 2022-05-05T12:18:08,779 ~~~~~~~~~~~~~~ 2022-05-05T12:18:08,780 if (usesLayout(*U.semantics)) 2022-05-05T12:18:08,780 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,781 return U.Double.getFirst().U.IEEE; 2022-05-05T12:18:08,781 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,782 llvm_unreachable("Unexpected semantics"); 2022-05-05T12:18:08,782 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,783 } 2022-05-05T12:18:08,783 ~ 2022-05-05T12:18:08,785 void makeZero(bool Neg) { APFLOAT_DISPATCH_ON_SEMANTICS(makeZero(Neg)); } 2022-05-05T12:18:08,785 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,787 void makeInf(bool Neg) { APFLOAT_DISPATCH_ON_SEMANTICS(makeInf(Neg)); } 2022-05-05T12:18:08,787 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,788 void makeNaN(bool SNaN, bool Neg, const APInt *fill) { 2022-05-05T12:18:08,789 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,789 APFLOAT_DISPATCH_ON_SEMANTICS(makeNaN(SNaN, Neg, fill)); 2022-05-05T12:18:08,790 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,790 } 2022-05-05T12:18:08,791 ~ 2022-05-05T12:18:08,792 void makeLargest(bool Neg) { 2022-05-05T12:18:08,793 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,793 APFLOAT_DISPATCH_ON_SEMANTICS(makeLargest(Neg)); 2022-05-05T12:18:08,794 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,794 } 2022-05-05T12:18:08,795 ~ 2022-05-05T12:18:08,796 void makeSmallest(bool Neg) { 2022-05-05T12:18:08,797 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,797 APFLOAT_DISPATCH_ON_SEMANTICS(makeSmallest(Neg)); 2022-05-05T12:18:08,798 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,798 } 2022-05-05T12:18:08,799 ~ 2022-05-05T12:18:08,800 void makeSmallestNormalized(bool Neg) { 2022-05-05T12:18:08,801 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,801 APFLOAT_DISPATCH_ON_SEMANTICS(makeSmallestNormalized(Neg)); 2022-05-05T12:18:08,801 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,802 } 2022-05-05T12:18:08,802 ~ 2022-05-05T12:18:08,804 // FIXME: This is due to clang 3.3 (or older version) always checks for the 2022-05-05T12:18:08,804 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,805 // default constructor in an array aggregate initialization, even if no 2022-05-05T12:18:08,805 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,806 // elements in the array is default initialized. 2022-05-05T12:18:08,806 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,807 APFloat() : U(IEEEdouble()) { 2022-05-05T12:18:08,807 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,808 llvm_unreachable("This is a workaround for old clang."); 2022-05-05T12:18:08,808 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,809 } 2022-05-05T12:18:08,809 ~ 2022-05-05T12:18:08,811 explicit APFloat(IEEEFloat F, const fltSemantics &S) : U(std::move(F), S) {} 2022-05-05T12:18:08,812 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,812 explicit APFloat(DoubleAPFloat F, const fltSemantics &S) 2022-05-05T12:18:08,813 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,813 : U(std::move(F), S) {} 2022-05-05T12:18:08,814 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,815 cmpResult compareAbsoluteValue(const APFloat &RHS) const { 2022-05-05T12:18:08,816 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,817 assert(&getSemantics() == &RHS.getSemantics() && 2022-05-05T12:18:08,817 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,818 "Should only compare APFloats with the same semantics"); 2022-05-05T12:18:08,818 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,819 if (usesLayout(getSemantics())) 2022-05-05T12:18:08,819 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,820 return U.IEEE.compareAbsoluteValue(RHS.U.IEEE); 2022-05-05T12:18:08,820 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,821 if (usesLayout(getSemantics())) 2022-05-05T12:18:08,821 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,822 return U.Double.compareAbsoluteValue(RHS.U.Double); 2022-05-05T12:18:08,822 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,823 llvm_unreachable("Unexpected semantics"); 2022-05-05T12:18:08,823 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,824 } 2022-05-05T12:18:08,824 ~ 2022-05-05T12:18:08,826 public: 2022-05-05T12:18:08,827 ~~~~~~~ 2022-05-05T12:18:08,827 APFloat(const fltSemantics &Semantics) : U(Semantics) {} 2022-05-05T12:18:08,828 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,828 APFloat(const fltSemantics &Semantics, StringRef S); 2022-05-05T12:18:08,829 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,829 APFloat(const fltSemantics &Semantics, integerPart I) : U(Semantics, I) {} 2022-05-05T12:18:08,830 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,830 template ::value>> 2022-05-05T12:18:08,832 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,833 APFloat(const fltSemantics &Semantics, T V) = delete; 2022-05-05T12:18:08,833 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,834 // TODO: Remove this constructor. This isn't faster than the first one. 2022-05-05T12:18:08,834 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,835 APFloat(const fltSemantics &Semantics, uninitializedTag) 2022-05-05T12:18:08,835 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,836 : U(Semantics, uninitialized) {} 2022-05-05T12:18:08,837 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,837 APFloat(const fltSemantics &Semantics, const APInt &I) : U(Semantics, I) {} 2022-05-05T12:18:08,838 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,838 explicit APFloat(double d) : U(IEEEFloat(d), IEEEdouble()) {} 2022-05-05T12:18:08,839 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,839 explicit APFloat(float f) : U(IEEEFloat(f), IEEEsingle()) {} 2022-05-05T12:18:08,840 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,840 APFloat(const APFloat &RHS) = default; 2022-05-05T12:18:08,841 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,841 APFloat(APFloat &&RHS) = default; 2022-05-05T12:18:08,842 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,843 ~APFloat() = default; 2022-05-05T12:18:08,844 ~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,846 bool needsCleanup() const { APFLOAT_DISPATCH_ON_SEMANTICS(needsCleanup()); } 2022-05-05T12:18:08,846 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,848 /// Factory for Positive and Negative Zero. 2022-05-05T12:18:08,848 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,849 /// 2022-05-05T12:18:08,850 ~~~ 2022-05-05T12:18:08,850 /// \param Negative True iff the number should be negative. 2022-05-05T12:18:08,851 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,851 static APFloat getZero(const fltSemantics &Sem, bool Negative = false) { 2022-05-05T12:18:08,852 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,852 APFloat Val(Sem, uninitialized); 2022-05-05T12:18:08,853 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,853 Val.makeZero(Negative); 2022-05-05T12:18:08,854 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,854 return Val; 2022-05-05T12:18:08,855 ~~~~~~~~~~~ 2022-05-05T12:18:08,855 } 2022-05-05T12:18:08,856 ~ 2022-05-05T12:18:08,858 /// Factory for Positive and Negative Infinity. 2022-05-05T12:18:08,858 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,859 /// 2022-05-05T12:18:08,859 ~~~ 2022-05-05T12:18:08,860 /// \param Negative True iff the number should be negative. 2022-05-05T12:18:08,860 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,861 static APFloat getInf(const fltSemantics &Sem, bool Negative = false) { 2022-05-05T12:18:08,861 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,862 APFloat Val(Sem, uninitialized); 2022-05-05T12:18:08,862 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,863 Val.makeInf(Negative); 2022-05-05T12:18:08,863 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,864 return Val; 2022-05-05T12:18:08,864 ~~~~~~~~~~~ 2022-05-05T12:18:08,865 } 2022-05-05T12:18:08,865 ~ 2022-05-05T12:18:08,867 /// Factory for NaN values. 2022-05-05T12:18:08,867 ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,868 /// 2022-05-05T12:18:08,868 ~~~ 2022-05-05T12:18:08,869 /// \param Negative - True iff the NaN generated should be negative. 2022-05-05T12:18:08,869 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,870 /// \param payload - The unspecified fill bits for creating the NaN, 0 by 2022-05-05T12:18:08,870 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,871 /// default. The value is truncated as necessary. 2022-05-05T12:18:08,871 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,871 static APFloat getNaN(const fltSemantics &Sem, bool Negative = false, 2022-05-05T12:18:08,872 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,872 uint64_t payload = 0) { 2022-05-05T12:18:08,873 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,873 if (payload) { 2022-05-05T12:18:08,874 ~~~~~~~~~~~~~~ 2022-05-05T12:18:08,874 APInt intPayload(64, payload); 2022-05-05T12:18:08,874 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,875 return getQNaN(Sem, Negative, &intPayload); 2022-05-05T12:18:08,875 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,876 } else { 2022-05-05T12:18:08,876 ~~~~~~~~ 2022-05-05T12:18:08,877 return getQNaN(Sem, Negative, nullptr); 2022-05-05T12:18:08,877 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,878 } 2022-05-05T12:18:08,878 ~ 2022-05-05T12:18:08,879 } 2022-05-05T12:18:08,879 ~ 2022-05-05T12:18:08,881 /// Factory for QNaN values. 2022-05-05T12:18:08,881 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,882 static APFloat getQNaN(const fltSemantics &Sem, bool Negative = false, 2022-05-05T12:18:08,882 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,883 const APInt *payload = nullptr) { 2022-05-05T12:18:08,883 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,884 APFloat Val(Sem, uninitialized); 2022-05-05T12:18:08,884 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,885 Val.makeNaN(false, Negative, payload); 2022-05-05T12:18:08,885 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,886 return Val; 2022-05-05T12:18:08,887 ~~~~~~~~~~~ 2022-05-05T12:18:08,887 } 2022-05-05T12:18:08,888 ~ 2022-05-05T12:18:08,889 /// Factory for SNaN values. 2022-05-05T12:18:08,890 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,890 static APFloat getSNaN(const fltSemantics &Sem, bool Negative = false, 2022-05-05T12:18:08,891 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,891 const APInt *payload = nullptr) { 2022-05-05T12:18:08,892 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,892 APFloat Val(Sem, uninitialized); 2022-05-05T12:18:08,893 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,893 Val.makeNaN(true, Negative, payload); 2022-05-05T12:18:08,894 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,894 return Val; 2022-05-05T12:18:08,895 ~~~~~~~~~~~ 2022-05-05T12:18:08,895 } 2022-05-05T12:18:08,896 ~ 2022-05-05T12:18:08,897 /// Returns the largest finite number in the given semantics. 2022-05-05T12:18:08,898 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,899 /// 2022-05-05T12:18:08,899 ~~~ 2022-05-05T12:18:08,900 /// \param Negative - True iff the number should be negative 2022-05-05T12:18:08,900 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,901 static APFloat getLargest(const fltSemantics &Sem, bool Negative = false) { 2022-05-05T12:18:08,901 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,902 APFloat Val(Sem, uninitialized); 2022-05-05T12:18:08,902 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,903 Val.makeLargest(Negative); 2022-05-05T12:18:08,903 ~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,904 return Val; 2022-05-05T12:18:08,904 ~~~~~~~~~~~ 2022-05-05T12:18:08,905 } 2022-05-05T12:18:08,905 ~ 2022-05-05T12:18:08,907 /// Returns the smallest (by magnitude) finite number in the given semantics. 2022-05-05T12:18:08,908 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,908 /// Might be denormalized, which implies a relative loss of precision. 2022-05-05T12:18:08,909 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,909 /// 2022-05-05T12:18:08,910 ~~~ 2022-05-05T12:18:08,910 /// \param Negative - True iff the number should be negative 2022-05-05T12:18:08,911 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,911 static APFloat getSmallest(const fltSemantics &Sem, bool Negative = false) { 2022-05-05T12:18:08,912 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,912 APFloat Val(Sem, uninitialized); 2022-05-05T12:18:08,913 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,913 Val.makeSmallest(Negative); 2022-05-05T12:18:08,914 ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,914 return Val; 2022-05-05T12:18:08,915 ~~~~~~~~~~~ 2022-05-05T12:18:08,915 } 2022-05-05T12:18:08,916 ~ 2022-05-05T12:18:08,917 /// Returns the smallest (by magnitude) normalized finite number in the given 2022-05-05T12:18:08,918 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,919 /// semantics. 2022-05-05T12:18:08,919 ~~~~~~~~~~~~~~ 2022-05-05T12:18:08,920 /// 2022-05-05T12:18:08,920 ~~~ 2022-05-05T12:18:08,920 /// \param Negative - True iff the number should be negative 2022-05-05T12:18:08,921 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,921 static APFloat getSmallestNormalized(const fltSemantics &Sem, 2022-05-05T12:18:08,922 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,922 bool Negative = false) { 2022-05-05T12:18:08,923 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,923 APFloat Val(Sem, uninitialized); 2022-05-05T12:18:08,924 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,924 Val.makeSmallestNormalized(Negative); 2022-05-05T12:18:08,924 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,925 return Val; 2022-05-05T12:18:08,925 ~~~~~~~~~~~ 2022-05-05T12:18:08,926 } 2022-05-05T12:18:08,927 ~ 2022-05-05T12:18:08,928 /// Returns a float which is bitcasted from an all one value int. 2022-05-05T12:18:08,929 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,929 /// 2022-05-05T12:18:08,930 ~~~ 2022-05-05T12:18:08,930 /// \param Semantics - type float semantics 2022-05-05T12:18:08,930 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,931 static APFloat getAllOnesValue(const fltSemantics &Semantics); 2022-05-05T12:18:08,931 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,933 /// Used to insert APFloat objects, or objects that contain APFloat objects, 2022-05-05T12:18:08,933 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,934 /// into FoldingSets. 2022-05-05T12:18:08,934 ~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,935 void Profile(FoldingSetNodeID &NID) const; 2022-05-05T12:18:08,935 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,937 opStatus add(const APFloat &RHS, roundingMode RM) { 2022-05-05T12:18:08,938 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,938 assert(&getSemantics() == &RHS.getSemantics() && 2022-05-05T12:18:08,939 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,939 "Should only call on two APFloats with the same semantics"); 2022-05-05T12:18:08,940 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,940 if (usesLayout(getSemantics())) 2022-05-05T12:18:08,941 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,941 return U.IEEE.add(RHS.U.IEEE, RM); 2022-05-05T12:18:08,942 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,942 if (usesLayout(getSemantics())) 2022-05-05T12:18:08,943 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,943 return U.Double.add(RHS.U.Double, RM); 2022-05-05T12:18:08,943 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,944 llvm_unreachable("Unexpected semantics"); 2022-05-05T12:18:08,944 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,945 } 2022-05-05T12:18:08,945 ~ 2022-05-05T12:18:08,946 opStatus subtract(const APFloat &RHS, roundingMode RM) { 2022-05-05T12:18:08,946 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,947 assert(&getSemantics() == &RHS.getSemantics() && 2022-05-05T12:18:08,947 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,948 "Should only call on two APFloats with the same semantics"); 2022-05-05T12:18:08,949 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,949 if (usesLayout(getSemantics())) 2022-05-05T12:18:08,950 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,950 return U.IEEE.subtract(RHS.U.IEEE, RM); 2022-05-05T12:18:08,951 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,951 if (usesLayout(getSemantics())) 2022-05-05T12:18:08,952 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,952 return U.Double.subtract(RHS.U.Double, RM); 2022-05-05T12:18:08,953 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,953 llvm_unreachable("Unexpected semantics"); 2022-05-05T12:18:08,954 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,954 } 2022-05-05T12:18:08,955 ~ 2022-05-05T12:18:08,955 opStatus multiply(const APFloat &RHS, roundingMode RM) { 2022-05-05T12:18:08,956 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,956 assert(&getSemantics() == &RHS.getSemantics() && 2022-05-05T12:18:08,957 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,957 "Should only call on two APFloats with the same semantics"); 2022-05-05T12:18:08,957 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,958 if (usesLayout(getSemantics())) 2022-05-05T12:18:08,958 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,959 return U.IEEE.multiply(RHS.U.IEEE, RM); 2022-05-05T12:18:08,959 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,960 if (usesLayout(getSemantics())) 2022-05-05T12:18:08,960 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,960 return U.Double.multiply(RHS.U.Double, RM); 2022-05-05T12:18:08,961 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,961 llvm_unreachable("Unexpected semantics"); 2022-05-05T12:18:08,962 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,962 } 2022-05-05T12:18:08,963 ~ 2022-05-05T12:18:08,963 opStatus divide(const APFloat &RHS, roundingMode RM) { 2022-05-05T12:18:08,964 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,964 assert(&getSemantics() == &RHS.getSemantics() && 2022-05-05T12:18:08,965 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,965 "Should only call on two APFloats with the same semantics"); 2022-05-05T12:18:08,966 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,967 if (usesLayout(getSemantics())) 2022-05-05T12:18:08,967 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,968 return U.IEEE.divide(RHS.U.IEEE, RM); 2022-05-05T12:18:08,968 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,969 if (usesLayout(getSemantics())) 2022-05-05T12:18:08,969 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,970 return U.Double.divide(RHS.U.Double, RM); 2022-05-05T12:18:08,970 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,971 llvm_unreachable("Unexpected semantics"); 2022-05-05T12:18:08,971 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,972 } 2022-05-05T12:18:08,972 ~ 2022-05-05T12:18:08,973 opStatus remainder(const APFloat &RHS) { 2022-05-05T12:18:08,973 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,974 assert(&getSemantics() == &RHS.getSemantics() && 2022-05-05T12:18:08,974 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,975 "Should only call on two APFloats with the same semantics"); 2022-05-05T12:18:08,975 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,976 if (usesLayout(getSemantics())) 2022-05-05T12:18:08,976 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,977 return U.IEEE.remainder(RHS.U.IEEE); 2022-05-05T12:18:08,978 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,978 if (usesLayout(getSemantics())) 2022-05-05T12:18:08,979 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,979 return U.Double.remainder(RHS.U.Double); 2022-05-05T12:18:08,980 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,980 llvm_unreachable("Unexpected semantics"); 2022-05-05T12:18:08,981 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,981 } 2022-05-05T12:18:08,982 ~ 2022-05-05T12:18:08,982 opStatus mod(const APFloat &RHS) { 2022-05-05T12:18:08,983 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,984 assert(&getSemantics() == &RHS.getSemantics() && 2022-05-05T12:18:08,984 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,985 "Should only call on two APFloats with the same semantics"); 2022-05-05T12:18:08,985 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,986 if (usesLayout(getSemantics())) 2022-05-05T12:18:08,986 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,987 return U.IEEE.mod(RHS.U.IEEE); 2022-05-05T12:18:08,987 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,988 if (usesLayout(getSemantics())) 2022-05-05T12:18:08,988 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,989 return U.Double.mod(RHS.U.Double); 2022-05-05T12:18:08,989 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,990 llvm_unreachable("Unexpected semantics"); 2022-05-05T12:18:08,990 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,991 } 2022-05-05T12:18:08,991 ~ 2022-05-05T12:18:08,992 opStatus fusedMultiplyAdd(const APFloat &Multiplicand, const APFloat &Addend, 2022-05-05T12:18:08,993 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,993 roundingMode RM) { 2022-05-05T12:18:08,994 ~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,994 assert(&getSemantics() == &Multiplicand.getSemantics() && 2022-05-05T12:18:08,995 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,995 "Should only call on APFloats with the same semantics"); 2022-05-05T12:18:08,996 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,996 assert(&getSemantics() == &Addend.getSemantics() && 2022-05-05T12:18:08,997 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,997 "Should only call on APFloats with the same semantics"); 2022-05-05T12:18:08,998 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,998 if (usesLayout(getSemantics())) 2022-05-05T12:18:08,999 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:08,999 return U.IEEE.fusedMultiplyAdd(Multiplicand.U.IEEE, Addend.U.IEEE, RM); 2022-05-05T12:18:09,000 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,000 if (usesLayout(getSemantics())) 2022-05-05T12:18:09,000 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,001 return U.Double.fusedMultiplyAdd(Multiplicand.U.Double, Addend.U.Double, 2022-05-05T12:18:09,001 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,002 RM); 2022-05-05T12:18:09,002 ~~~~ 2022-05-05T12:18:09,003 llvm_unreachable("Unexpected semantics"); 2022-05-05T12:18:09,003 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,004 } 2022-05-05T12:18:09,004 ~ 2022-05-05T12:18:09,005 opStatus roundToIntegral(roundingMode RM) { 2022-05-05T12:18:09,005 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,006 APFLOAT_DISPATCH_ON_SEMANTICS(roundToIntegral(RM)); 2022-05-05T12:18:09,006 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,006 } 2022-05-05T12:18:09,007 ~ 2022-05-05T12:18:09,008 // TODO: bool parameters are not readable and a source of bugs. 2022-05-05T12:18:09,008 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,009 // Do something. 2022-05-05T12:18:09,009 ~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,009 opStatus next(bool nextDown) { 2022-05-05T12:18:09,010 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,010 APFLOAT_DISPATCH_ON_SEMANTICS(next(nextDown)); 2022-05-05T12:18:09,011 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,011 } 2022-05-05T12:18:09,012 ~ 2022-05-05T12:18:09,013 /// Negate an APFloat. 2022-05-05T12:18:09,013 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,014 APFloat operator-() const { 2022-05-05T12:18:09,014 ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,014 APFloat Result(*this); 2022-05-05T12:18:09,015 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,015 Result.changeSign(); 2022-05-05T12:18:09,016 ~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,016 return Result; 2022-05-05T12:18:09,017 ~~~~~~~~~~~~~~ 2022-05-05T12:18:09,017 } 2022-05-05T12:18:09,017 ~ 2022-05-05T12:18:09,019 /// Add two APFloats, rounding ties to the nearest even. 2022-05-05T12:18:09,019 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,019 /// No error checking. 2022-05-05T12:18:09,020 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,020 APFloat operator+(const APFloat &RHS) const { 2022-05-05T12:18:09,021 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,021 APFloat Result(*this); 2022-05-05T12:18:09,022 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,022 (void)Result.add(RHS, rmNearestTiesToEven); 2022-05-05T12:18:09,022 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,023 return Result; 2022-05-05T12:18:09,023 ~~~~~~~~~~~~~~ 2022-05-05T12:18:09,024 } 2022-05-05T12:18:09,024 ~ 2022-05-05T12:18:09,025 /// Subtract two APFloats, rounding ties to the nearest even. 2022-05-05T12:18:09,026 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,026 /// No error checking. 2022-05-05T12:18:09,027 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,027 APFloat operator-(const APFloat &RHS) const { 2022-05-05T12:18:09,028 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,028 APFloat Result(*this); 2022-05-05T12:18:09,029 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,029 (void)Result.subtract(RHS, rmNearestTiesToEven); 2022-05-05T12:18:09,029 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,030 return Result; 2022-05-05T12:18:09,030 ~~~~~~~~~~~~~~ 2022-05-05T12:18:09,031 } 2022-05-05T12:18:09,031 ~ 2022-05-05T12:18:09,033 /// Multiply two APFloats, rounding ties to the nearest even. 2022-05-05T12:18:09,033 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,034 /// No error checking. 2022-05-05T12:18:09,034 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,035 APFloat operator*(const APFloat &RHS) const { 2022-05-05T12:18:09,035 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,036 APFloat Result(*this); 2022-05-05T12:18:09,036 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,037 (void)Result.multiply(RHS, rmNearestTiesToEven); 2022-05-05T12:18:09,037 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,038 return Result; 2022-05-05T12:18:09,038 ~~~~~~~~~~~~~~ 2022-05-05T12:18:09,039 } 2022-05-05T12:18:09,039 ~ 2022-05-05T12:18:09,041 /// Divide the first APFloat by the second, rounding ties to the nearest even. 2022-05-05T12:18:09,041 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,042 /// No error checking. 2022-05-05T12:18:09,042 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,043 APFloat operator/(const APFloat &RHS) const { 2022-05-05T12:18:09,043 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,044 APFloat Result(*this); 2022-05-05T12:18:09,044 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,045 (void)Result.divide(RHS, rmNearestTiesToEven); 2022-05-05T12:18:09,045 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,046 return Result; 2022-05-05T12:18:09,046 ~~~~~~~~~~~~~~ 2022-05-05T12:18:09,047 } 2022-05-05T12:18:09,047 ~ 2022-05-05T12:18:09,048 void changeSign() { APFLOAT_DISPATCH_ON_SEMANTICS(changeSign()); } 2022-05-05T12:18:09,049 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,049 void clearSign() { 2022-05-05T12:18:09,050 ~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,050 if (isNegative()) 2022-05-05T12:18:09,051 ~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,051 changeSign(); 2022-05-05T12:18:09,052 ~~~~~~~~~~~~~ 2022-05-05T12:18:09,052 } 2022-05-05T12:18:09,052 ~ 2022-05-05T12:18:09,053 void copySign(const APFloat &RHS) { 2022-05-05T12:18:09,053 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,054 if (isNegative() != RHS.isNegative()) 2022-05-05T12:18:09,054 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,055 changeSign(); 2022-05-05T12:18:09,055 ~~~~~~~~~~~~~ 2022-05-05T12:18:09,056 } 2022-05-05T12:18:09,056 ~ 2022-05-05T12:18:09,057 /// A static helper to produce a copy of an APFloat value with its sign 2022-05-05T12:18:09,058 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,058 /// copied from some other APFloat. 2022-05-05T12:18:09,059 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,059 static APFloat copySign(APFloat Value, const APFloat &Sign) { 2022-05-05T12:18:09,059 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,060 Value.copySign(Sign); 2022-05-05T12:18:09,061 ~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,061 return Value; 2022-05-05T12:18:09,062 ~~~~~~~~~~~~~ 2022-05-05T12:18:09,062 } 2022-05-05T12:18:09,063 ~ 2022-05-05T12:18:09,064 opStatus convert(const fltSemantics &ToSemantics, roundingMode RM, 2022-05-05T12:18:09,065 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,065 bool *losesInfo); 2022-05-05T12:18:09,065 ~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,066 opStatus convertToInteger(MutableArrayRef Input, 2022-05-05T12:18:09,066 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,067 unsigned int Width, bool IsSigned, roundingMode RM, 2022-05-05T12:18:09,067 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,067 bool *IsExact) const { 2022-05-05T12:18:09,068 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,068 APFLOAT_DISPATCH_ON_SEMANTICS( 2022-05-05T12:18:09,069 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,069 convertToInteger(Input, Width, IsSigned, RM, IsExact)); 2022-05-05T12:18:09,070 ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,070 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/APFloat.h:27:21: note: in definition of macro ‘APFLOAT_DISPATCH_ON_SEMANTICS’ 2022-05-05T12:18:09,070 return U.IEEE.METHOD_CALL; \ 2022-05-05T12:18:09,071 ^~~~~~~~~~~ 2022-05-05T12:18:09,071 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/APFloat.h:1108:25: note: parameter passing for argument of type ‘llvm::MutableArrayRef’ changed in GCC 7.1 2022-05-05T12:18:09,072 return U.Double.METHOD_CALL; \ 2022-05-05T12:18:09,072 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,072 llvm_unreachable("Unexpected semantics"); \ 2022-05-05T12:18:09,073 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,073 } while (false) 2022-05-05T12:18:09,074 ~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,075 namespace llvm { 2022-05-05T12:18:09,075 ~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,076 struct fltSemantics; 2022-05-05T12:18:09,077 ~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,077 class APSInt; 2022-05-05T12:18:09,078 ~~~~~~~~~~~~~ 2022-05-05T12:18:09,078 class StringRef; 2022-05-05T12:18:09,078 ~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,079 class APFloat; 2022-05-05T12:18:09,079 ~~~~~~~~~~~~~~ 2022-05-05T12:18:09,079 class raw_ostream; 2022-05-05T12:18:09,080 ~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,081 template class Expected; 2022-05-05T12:18:09,081 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,081 template class SmallVectorImpl; 2022-05-05T12:18:09,082 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,083 /// Enum that represents what fraction of the LSB truncated bits of an fp number 2022-05-05T12:18:09,083 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,084 /// represent. 2022-05-05T12:18:09,084 ~~~~~~~~~~~~~~ 2022-05-05T12:18:09,085 /// 2022-05-05T12:18:09,085 ~~~ 2022-05-05T12:18:09,085 /// This essentially combines the roles of guard and sticky bits. 2022-05-05T12:18:09,086 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,086 enum lostFraction { // Example of truncated bits: 2022-05-05T12:18:09,087 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,087 lfExactlyZero, // 000000 2022-05-05T12:18:09,088 ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,088 lfLessThanHalf, // 0xxxxx x's not all zero 2022-05-05T12:18:09,088 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,089 lfExactlyHalf, // 100000 2022-05-05T12:18:09,089 ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,090 lfMoreThanHalf // 1xxxxx x's not all zero 2022-05-05T12:18:09,090 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,090 }; 2022-05-05T12:18:09,091 ~~ 2022-05-05T12:18:09,092 /// A self-contained host- and target-independent arbitrary-precision 2022-05-05T12:18:09,092 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,093 /// floating-point software implementation. 2022-05-05T12:18:09,093 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,093 /// 2022-05-05T12:18:09,094 ~~~ 2022-05-05T12:18:09,094 /// APFloat uses bignum integer arithmetic as provided by static functions in 2022-05-05T12:18:09,094 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,095 /// the APInt class. The library will work with bignum integers whose parts are 2022-05-05T12:18:09,095 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,096 /// any unsigned type at least 16 bits wide, but 64 bits is recommended. 2022-05-05T12:18:09,096 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,097 /// 2022-05-05T12:18:09,097 ~~~ 2022-05-05T12:18:09,098 /// Written for clarity rather than speed, in particular with a view to use in 2022-05-05T12:18:09,098 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,098 /// the front-end of a cross compiler so that target arithmetic can be correctly 2022-05-05T12:18:09,098 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,099 /// performed on the host. Performance should nonetheless be reasonable, 2022-05-05T12:18:09,099 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,100 /// particularly for its intended use. It may be useful as a base 2022-05-05T12:18:09,100 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,100 /// implementation for a run-time library during development of a faster 2022-05-05T12:18:09,101 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,101 /// target-specific one. 2022-05-05T12:18:09,102 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,102 /// 2022-05-05T12:18:09,102 ~~~ 2022-05-05T12:18:09,103 /// All 5 rounding modes in the IEEE-754R draft are handled correctly for all 2022-05-05T12:18:09,103 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,104 /// implemented operations. Currently implemented operations are add, subtract, 2022-05-05T12:18:09,104 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,105 /// multiply, divide, fused-multiply-add, conversion-to-float, 2022-05-05T12:18:09,105 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,106 /// conversion-to-integer and conversion-from-integer. New rounding modes 2022-05-05T12:18:09,106 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,107 /// (e.g. away from zero) can be added with three or four lines of code. 2022-05-05T12:18:09,107 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,108 /// 2022-05-05T12:18:09,108 ~~~ 2022-05-05T12:18:09,108 /// Four formats are built-in: IEEE single precision, double precision, 2022-05-05T12:18:09,109 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,109 /// quadruple precision, and x87 80-bit extended double (when operating with 2022-05-05T12:18:09,110 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,110 /// full extended precision). Adding a new format that obeys IEEE semantics 2022-05-05T12:18:09,110 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,111 /// only requires adding two lines of code: a declaration and definition of the 2022-05-05T12:18:09,111 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,111 /// format. 2022-05-05T12:18:09,112 ~~~~~~~~~~~ 2022-05-05T12:18:09,112 /// 2022-05-05T12:18:09,113 ~~~ 2022-05-05T12:18:09,113 /// All operations return the status of that operation as an exception bit-mask, 2022-05-05T12:18:09,113 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,114 /// so multiple operations can be done consecutively with their results or-ed 2022-05-05T12:18:09,114 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,114 /// together. The returned status can be useful for compiler diagnostics; e.g., 2022-05-05T12:18:09,115 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,115 /// inexact, underflow and overflow can be easily diagnosed on constant folding, 2022-05-05T12:18:09,115 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,116 /// and compiler optimizers can determine what exceptions would be raised by 2022-05-05T12:18:09,116 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,117 /// folding operations and optimize, or perhaps not optimize, accordingly. 2022-05-05T12:18:09,117 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,118 /// 2022-05-05T12:18:09,118 ~~~ 2022-05-05T12:18:09,118 /// At present, underflow tininess is detected after rounding; it should be 2022-05-05T12:18:09,119 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,119 /// straight forward to add support for the before-rounding case too. 2022-05-05T12:18:09,120 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,120 /// 2022-05-05T12:18:09,120 ~~~ 2022-05-05T12:18:09,121 /// The library reads hexadecimal floating point numbers as per C99, and 2022-05-05T12:18:09,121 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,122 /// correctly rounds if necessary according to the specified rounding mode. 2022-05-05T12:18:09,122 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,122 /// Syntax is required to have been validated by the caller. It also converts 2022-05-05T12:18:09,123 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,123 /// floating point numbers to hexadecimal text as per the C99 %a and %A 2022-05-05T12:18:09,124 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,124 /// conversions. The output precision (or alternatively the natural minimal 2022-05-05T12:18:09,124 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,125 /// precision) can be specified; if the requested precision is less than the 2022-05-05T12:18:09,125 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,125 /// natural precision the output is correctly rounded for the specified rounding 2022-05-05T12:18:09,126 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,126 /// mode. 2022-05-05T12:18:09,127 ~~~~~~~~~ 2022-05-05T12:18:09,127 /// 2022-05-05T12:18:09,127 ~~~ 2022-05-05T12:18:09,128 /// It also reads decimal floating point numbers and correctly rounds according 2022-05-05T12:18:09,128 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,128 /// to the specified rounding mode. 2022-05-05T12:18:09,129 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,129 /// 2022-05-05T12:18:09,129 ~~~ 2022-05-05T12:18:09,130 /// Conversion to decimal text is not currently implemented. 2022-05-05T12:18:09,130 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,131 /// 2022-05-05T12:18:09,131 ~~~ 2022-05-05T12:18:09,131 /// Non-zero finite numbers are represented internally as a sign bit, a 16-bit 2022-05-05T12:18:09,132 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,132 /// signed exponent, and the significand as an array of integer parts. After 2022-05-05T12:18:09,133 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,133 /// normalization of a number of precision P the exponent is within the range of 2022-05-05T12:18:09,133 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,134 /// the format, and if the number is not denormal the P-th bit of the 2022-05-05T12:18:09,134 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,135 /// significand is set as an explicit integer bit. For denormals the most 2022-05-05T12:18:09,135 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,136 /// significant bit is shifted right so that the exponent is maintained at the 2022-05-05T12:18:09,136 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,137 /// format's minimum, so that the smallest denormal has just the least 2022-05-05T12:18:09,137 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,137 /// significant bit of the significand set. The sign of zeroes and infinities 2022-05-05T12:18:09,138 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,138 /// is significant; the exponent and significand of such numbers is not stored, 2022-05-05T12:18:09,139 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,139 /// but has a known implicit (deterministic) value: 0 for the significands, 0 2022-05-05T12:18:09,139 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,140 /// for zero exponent, all 1 bits for infinity exponent. For NaNs the sign and 2022-05-05T12:18:09,140 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,141 /// significand are deterministic, although not really meaningful, and preserved 2022-05-05T12:18:09,141 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,142 /// in non-conversion operations. The exponent is implicitly all 1 bits. 2022-05-05T12:18:09,142 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,142 /// 2022-05-05T12:18:09,143 ~~~ 2022-05-05T12:18:09,143 /// APFloat does not provide any exception handling beyond default exception 2022-05-05T12:18:09,143 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,144 /// handling. We represent Signaling NaNs via IEEE-754R 2008 6.2.1 should clause 2022-05-05T12:18:09,144 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,144 /// by encoding Signaling NaNs with the first bit of its trailing significand as 2022-05-05T12:18:09,145 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,145 /// 0. 2022-05-05T12:18:09,145 ~~~~~~ 2022-05-05T12:18:09,146 /// 2022-05-05T12:18:09,146 ~~~ 2022-05-05T12:18:09,147 /// TODO 2022-05-05T12:18:09,147 ~~~~~~~~ 2022-05-05T12:18:09,148 /// ==== 2022-05-05T12:18:09,148 ~~~~~~~~ 2022-05-05T12:18:09,149 /// 2022-05-05T12:18:09,149 ~~~ 2022-05-05T12:18:09,149 /// Some features that may or may not be worth adding: 2022-05-05T12:18:09,150 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,150 /// 2022-05-05T12:18:09,151 ~~~ 2022-05-05T12:18:09,151 /// Binary to decimal conversion (hard). 2022-05-05T12:18:09,152 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,152 /// 2022-05-05T12:18:09,152 ~~~ 2022-05-05T12:18:09,153 /// Optional ability to detect underflow tininess before rounding. 2022-05-05T12:18:09,153 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,154 /// 2022-05-05T12:18:09,154 ~~~ 2022-05-05T12:18:09,154 /// New formats: x87 in single and double precision mode (IEEE apart from 2022-05-05T12:18:09,155 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,155 /// extended exponent range) (hard). 2022-05-05T12:18:09,156 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,156 /// 2022-05-05T12:18:09,156 ~~~ 2022-05-05T12:18:09,157 /// New operations: sqrt, IEEE remainder, C90 fmod, nexttoward. 2022-05-05T12:18:09,157 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,158 /// 2022-05-05T12:18:09,158 ~~~ 2022-05-05T12:18:09,159 // This is the common type definitions shared by APFloat and its internal 2022-05-05T12:18:09,160 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,160 // implementation classes. This struct should not define any non-static data 2022-05-05T12:18:09,161 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,161 // members. 2022-05-05T12:18:09,162 ~~~~~~~~~~~ 2022-05-05T12:18:09,162 struct APFloatBase { 2022-05-05T12:18:09,162 ~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,163 typedef APInt::WordType integerPart; 2022-05-05T12:18:09,163 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,164 static constexpr unsigned integerPartWidth = APInt::APINT_BITS_PER_WORD; 2022-05-05T12:18:09,164 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,165 /// A signed type to represent a floating point numbers unbiased exponent. 2022-05-05T12:18:09,166 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,166 typedef int32_t ExponentType; 2022-05-05T12:18:09,167 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,168 /// \name Floating Point Semantics. 2022-05-05T12:18:09,168 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,169 /// @{ 2022-05-05T12:18:09,169 ~~~~~~ 2022-05-05T12:18:09,170 enum Semantics { 2022-05-05T12:18:09,170 ~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,170 S_IEEEhalf, 2022-05-05T12:18:09,171 ~~~~~~~~~~~ 2022-05-05T12:18:09,171 S_BFloat, 2022-05-05T12:18:09,172 ~~~~~~~~~ 2022-05-05T12:18:09,172 S_IEEEsingle, 2022-05-05T12:18:09,172 ~~~~~~~~~~~~~ 2022-05-05T12:18:09,173 S_IEEEdouble, 2022-05-05T12:18:09,173 ~~~~~~~~~~~~~ 2022-05-05T12:18:09,174 S_x87DoubleExtended, 2022-05-05T12:18:09,174 ~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,175 S_IEEEquad, 2022-05-05T12:18:09,175 ~~~~~~~~~~~ 2022-05-05T12:18:09,175 S_PPCDoubleDouble 2022-05-05T12:18:09,176 ~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,176 }; 2022-05-05T12:18:09,177 ~~ 2022-05-05T12:18:09,178 static const llvm::fltSemantics &EnumToSemantics(Semantics S); 2022-05-05T12:18:09,178 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,179 static Semantics SemanticsToEnum(const llvm::fltSemantics &Sem); 2022-05-05T12:18:09,179 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,181 static const fltSemantics &IEEEhalf() LLVM_READNONE; 2022-05-05T12:18:09,181 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,181 static const fltSemantics &BFloat() LLVM_READNONE; 2022-05-05T12:18:09,182 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,182 static const fltSemantics &IEEEsingle() LLVM_READNONE; 2022-05-05T12:18:09,183 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,183 static const fltSemantics &IEEEdouble() LLVM_READNONE; 2022-05-05T12:18:09,183 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,184 static const fltSemantics &IEEEquad() LLVM_READNONE; 2022-05-05T12:18:09,184 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,184 static const fltSemantics &PPCDoubleDouble() LLVM_READNONE; 2022-05-05T12:18:09,185 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,185 static const fltSemantics &x87DoubleExtended() LLVM_READNONE; 2022-05-05T12:18:09,185 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,186 /// A Pseudo fltsemantic used to construct APFloats that cannot conflict with 2022-05-05T12:18:09,187 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,187 /// anything real. 2022-05-05T12:18:09,187 ~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,188 static const fltSemantics &Bogus() LLVM_READNONE; 2022-05-05T12:18:09,188 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,189 /// @} 2022-05-05T12:18:09,189 ~~~~~~ 2022-05-05T12:18:09,190 /// IEEE-754R 5.11: Floating Point Comparison Relations. 2022-05-05T12:18:09,191 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,191 enum cmpResult { 2022-05-05T12:18:09,191 ~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,192 cmpLessThan, 2022-05-05T12:18:09,192 ~~~~~~~~~~~~ 2022-05-05T12:18:09,192 cmpEqual, 2022-05-05T12:18:09,193 ~~~~~~~~~ 2022-05-05T12:18:09,193 cmpGreaterThan, 2022-05-05T12:18:09,193 ~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,194 cmpUnordered 2022-05-05T12:18:09,194 ~~~~~~~~~~~~ 2022-05-05T12:18:09,194 }; 2022-05-05T12:18:09,195 ~~ 2022-05-05T12:18:09,196 /// IEEE-754R 4.3: Rounding-direction attributes. 2022-05-05T12:18:09,196 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,197 using roundingMode = llvm::RoundingMode; 2022-05-05T12:18:09,197 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,198 static constexpr roundingMode rmNearestTiesToEven = 2022-05-05T12:18:09,198 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,199 RoundingMode::NearestTiesToEven; 2022-05-05T12:18:09,199 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,199 static constexpr roundingMode rmTowardPositive = RoundingMode::TowardPositive; 2022-05-05T12:18:09,200 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,200 static constexpr roundingMode rmTowardNegative = RoundingMode::TowardNegative; 2022-05-05T12:18:09,200 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,201 static constexpr roundingMode rmTowardZero = RoundingMode::TowardZero; 2022-05-05T12:18:09,201 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,201 static constexpr roundingMode rmNearestTiesToAway = 2022-05-05T12:18:09,202 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,202 RoundingMode::NearestTiesToAway; 2022-05-05T12:18:09,202 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,203 /// IEEE-754R 7: Default exception handling. 2022-05-05T12:18:09,203 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,204 /// 2022-05-05T12:18:09,204 ~~~ 2022-05-05T12:18:09,204 /// opUnderflow or opOverflow are always returned or-ed with opInexact. 2022-05-05T12:18:09,205 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,205 /// 2022-05-05T12:18:09,205 ~~~ 2022-05-05T12:18:09,206 /// APFloat models this behavior specified by IEEE-754: 2022-05-05T12:18:09,206 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,207 /// "For operations producing results in floating-point format, the default 2022-05-05T12:18:09,207 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,207 /// result of an operation that signals the invalid operation exception 2022-05-05T12:18:09,208 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,208 /// shall be a quiet NaN." 2022-05-05T12:18:09,208 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,209 enum opStatus { 2022-05-05T12:18:09,209 ~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,209 opOK = 0x00, 2022-05-05T12:18:09,210 ~~~~~~~~~~~~ 2022-05-05T12:18:09,210 opInvalidOp = 0x01, 2022-05-05T12:18:09,211 ~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,211 opDivByZero = 0x02, 2022-05-05T12:18:09,212 ~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,212 opOverflow = 0x04, 2022-05-05T12:18:09,212 ~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,213 opUnderflow = 0x08, 2022-05-05T12:18:09,213 ~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,214 opInexact = 0x10 2022-05-05T12:18:09,214 ~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,214 }; 2022-05-05T12:18:09,215 ~~ 2022-05-05T12:18:09,216 /// Category of internally-represented number. 2022-05-05T12:18:09,217 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,217 enum fltCategory { 2022-05-05T12:18:09,217 ~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,218 fcInfinity, 2022-05-05T12:18:09,218 ~~~~~~~~~~~ 2022-05-05T12:18:09,218 fcNaN, 2022-05-05T12:18:09,219 ~~~~~~ 2022-05-05T12:18:09,219 fcNormal, 2022-05-05T12:18:09,220 ~~~~~~~~~ 2022-05-05T12:18:09,220 fcZero 2022-05-05T12:18:09,220 ~~~~~~ 2022-05-05T12:18:09,221 }; 2022-05-05T12:18:09,221 ~~ 2022-05-05T12:18:09,222 /// Convenience enum used to construct an uninitialized APFloat. 2022-05-05T12:18:09,223 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,223 enum uninitializedTag { 2022-05-05T12:18:09,224 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,224 uninitialized 2022-05-05T12:18:09,225 ~~~~~~~~~~~~~ 2022-05-05T12:18:09,225 }; 2022-05-05T12:18:09,226 ~~ 2022-05-05T12:18:09,227 /// Enumeration of \c ilogb error results. 2022-05-05T12:18:09,228 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,228 enum IlogbErrorKinds { 2022-05-05T12:18:09,228 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,229 IEK_Zero = INT_MIN + 1, 2022-05-05T12:18:09,229 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,229 IEK_NaN = INT_MIN, 2022-05-05T12:18:09,230 ~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,230 IEK_Inf = INT_MAX 2022-05-05T12:18:09,231 ~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,231 }; 2022-05-05T12:18:09,232 ~~ 2022-05-05T12:18:09,234 static unsigned int semanticsPrecision(const fltSemantics &); 2022-05-05T12:18:09,234 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,235 static ExponentType semanticsMinExponent(const fltSemantics &); 2022-05-05T12:18:09,235 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,235 static ExponentType semanticsMaxExponent(const fltSemantics &); 2022-05-05T12:18:09,236 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,236 static unsigned int semanticsSizeInBits(const fltSemantics &); 2022-05-05T12:18:09,237 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,238 /// Returns the size of the floating point number (in bits) in the given 2022-05-05T12:18:09,238 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,239 /// semantics. 2022-05-05T12:18:09,239 ~~~~~~~~~~~~~~ 2022-05-05T12:18:09,240 static unsigned getSizeInBits(const fltSemantics &Sem); 2022-05-05T12:18:09,240 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,241 }; 2022-05-05T12:18:09,241 ~~ 2022-05-05T12:18:09,243 namespace detail { 2022-05-05T12:18:09,243 ~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,245 class IEEEFloat final : public APFloatBase { 2022-05-05T12:18:09,245 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,246 public: 2022-05-05T12:18:09,247 ~~~~~~~ 2022-05-05T12:18:09,247 /// \name Constructors 2022-05-05T12:18:09,248 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,248 /// @{ 2022-05-05T12:18:09,249 ~~~~~~ 2022-05-05T12:18:09,251 IEEEFloat(const fltSemantics &); // Default construct to +0.0 2022-05-05T12:18:09,251 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,252 IEEEFloat(const fltSemantics &, integerPart); 2022-05-05T12:18:09,252 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,253 IEEEFloat(const fltSemantics &, uninitializedTag); 2022-05-05T12:18:09,253 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,254 IEEEFloat(const fltSemantics &, const APInt &); 2022-05-05T12:18:09,254 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,255 explicit IEEEFloat(double d); 2022-05-05T12:18:09,255 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,256 explicit IEEEFloat(float f); 2022-05-05T12:18:09,256 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,257 IEEEFloat(const IEEEFloat &); 2022-05-05T12:18:09,257 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,258 IEEEFloat(IEEEFloat &&); 2022-05-05T12:18:09,259 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,259 ~IEEEFloat(); 2022-05-05T12:18:09,260 ~~~~~~~~~~~~~ 2022-05-05T12:18:09,261 /// @} 2022-05-05T12:18:09,261 ~~~~~~ 2022-05-05T12:18:09,263 /// Returns whether this instance allocated memory. 2022-05-05T12:18:09,263 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,264 bool needsCleanup() const { return partCount() > 1; } 2022-05-05T12:18:09,264 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,266 /// \name Convenience "constructors" 2022-05-05T12:18:09,267 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,268 /// @{ 2022-05-05T12:18:09,269 ~~~~~~ 2022-05-05T12:18:09,275 /// @} 2022-05-05T12:18:09,276 ~~~~~~ 2022-05-05T12:18:09,277 /// \name Arithmetic 2022-05-05T12:18:09,278 ~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,278 /// @{ 2022-05-05T12:18:09,279 ~~~~~~ 2022-05-05T12:18:09,280 opStatus add(const IEEEFloat &, roundingMode); 2022-05-05T12:18:09,281 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,281 opStatus subtract(const IEEEFloat &, roundingMode); 2022-05-05T12:18:09,282 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,282 opStatus multiply(const IEEEFloat &, roundingMode); 2022-05-05T12:18:09,283 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,283 opStatus divide(const IEEEFloat &, roundingMode); 2022-05-05T12:18:09,284 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,284 /// IEEE remainder. 2022-05-05T12:18:09,285 ~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,285 opStatus remainder(const IEEEFloat &); 2022-05-05T12:18:09,286 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,287 /// C fmod, or llvm frem. 2022-05-05T12:18:09,288 ~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,288 opStatus mod(const IEEEFloat &); 2022-05-05T12:18:09,288 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,289 opStatus fusedMultiplyAdd(const IEEEFloat &, const IEEEFloat &, roundingMode); 2022-05-05T12:18:09,289 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,289 opStatus roundToIntegral(roundingMode); 2022-05-05T12:18:09,290 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,290 /// IEEE-754R 5.3.1: nextUp/nextDown. 2022-05-05T12:18:09,291 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,291 opStatus next(bool nextDown); 2022-05-05T12:18:09,291 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,292 /// @} 2022-05-05T12:18:09,293 ~~~~~~ 2022-05-05T12:18:09,294 /// \name Sign operations. 2022-05-05T12:18:09,294 ~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,295 /// @{ 2022-05-05T12:18:09,295 ~~~~~~ 2022-05-05T12:18:09,296 void changeSign(); 2022-05-05T12:18:09,297 ~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,298 /// @} 2022-05-05T12:18:09,299 ~~~~~~ 2022-05-05T12:18:09,300 /// \name Conversions 2022-05-05T12:18:09,301 ~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,302 /// @{ 2022-05-05T12:18:09,302 ~~~~~~ 2022-05-05T12:18:09,304 opStatus convert(const fltSemantics &, roundingMode, bool *); 2022-05-05T12:18:09,304 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,305 opStatus convertToInteger(MutableArrayRef, unsigned int, bool, 2022-05-05T12:18:09,305 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,306 roundingMode, bool *) const; 2022-05-05T12:18:09,307 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,307 opStatus convertFromAPInt(const APInt &, bool, roundingMode); 2022-05-05T12:18:09,307 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,308 opStatus convertFromSignExtendedInteger(const integerPart *, unsigned int, 2022-05-05T12:18:09,308 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,309 bool, roundingMode); 2022-05-05T12:18:09,309 ~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,310 opStatus convertFromZeroExtendedInteger(const integerPart *, unsigned int, 2022-05-05T12:18:09,310 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,311 bool, roundingMode); 2022-05-05T12:18:09,311 ~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,312 Expected convertFromString(StringRef, roundingMode); 2022-05-05T12:18:09,312 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,313 APInt bitcastToAPInt() const; 2022-05-05T12:18:09,313 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,314 double convertToDouble() const; 2022-05-05T12:18:09,315 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,315 float convertToFloat() const; 2022-05-05T12:18:09,316 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,318 /// @} 2022-05-05T12:18:09,319 ~~~~~~ 2022-05-05T12:18:09,320 /// The definition of equality is not straightforward for floating point, so 2022-05-05T12:18:09,321 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,321 /// we won't use operator==. Use one of the following, or write whatever it 2022-05-05T12:18:09,322 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,322 /// is you really mean. 2022-05-05T12:18:09,323 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,323 bool operator==(const IEEEFloat &) const = delete; 2022-05-05T12:18:09,324 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,325 /// IEEE comparison with another floating point number (NaNs compare 2022-05-05T12:18:09,326 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,326 /// unordered, 0==-0). 2022-05-05T12:18:09,327 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,328 cmpResult compare(const IEEEFloat &) const; 2022-05-05T12:18:09,328 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,329 /// Bitwise comparison for equality (QNaNs compare equal, 0!=-0). 2022-05-05T12:18:09,329 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,330 bool bitwiseIsEqual(const IEEEFloat &) const; 2022-05-05T12:18:09,330 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,332 /// Write out a hexadecimal representation of the floating point value to DST, 2022-05-05T12:18:09,333 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,333 /// which must be of sufficient size, in the C99 form [-]0xh.hhhhp[+-]d. 2022-05-05T12:18:09,334 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,334 /// Return the number of characters written, excluding the terminating NUL. 2022-05-05T12:18:09,335 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,335 unsigned int convertToHexString(char *dst, unsigned int hexDigits, 2022-05-05T12:18:09,336 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,337 bool upperCase, roundingMode) const; 2022-05-05T12:18:09,338 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,339 /// \name IEEE-754R 5.7.2 General operations. 2022-05-05T12:18:09,340 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,340 /// @{ 2022-05-05T12:18:09,341 ~~~~~~ 2022-05-05T12:18:09,342 /// IEEE-754R isSignMinus: Returns true if and only if the current value is 2022-05-05T12:18:09,343 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,343 /// negative. 2022-05-05T12:18:09,344 ~~~~~~~~~~~~~ 2022-05-05T12:18:09,344 /// 2022-05-05T12:18:09,344 ~~~ 2022-05-05T12:18:09,345 /// This applies to zeros and NaNs as well. 2022-05-05T12:18:09,345 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,346 bool isNegative() const { return sign; } 2022-05-05T12:18:09,350 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,361 /// IEEE-754R isNormal: Returns true if and only if the current value is normal. 2022-05-05T12:18:09,361 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,362 /// 2022-05-05T12:18:09,362 ~~~ 2022-05-05T12:18:09,363 /// This implies that the current value of the float is not zero, subnormal, 2022-05-05T12:18:09,364 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,364 /// infinite, or NaN following the definition of normality from IEEE-754R. 2022-05-05T12:18:09,365 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,365 bool isNormal() const { return !isDenormal() && isFiniteNonZero(); } 2022-05-05T12:18:09,366 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,377 /// Returns true if and only if the current value is zero, subnormal, or 2022-05-05T12:18:09,378 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,378 /// normal. 2022-05-05T12:18:09,379 ~~~~~~~~~~~ 2022-05-05T12:18:09,379 /// 2022-05-05T12:18:09,380 ~~~ 2022-05-05T12:18:09,380 /// This means that the value is not infinite or NaN. 2022-05-05T12:18:09,381 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,381 bool isFinite() const { return !isNaN() && !isInfinity(); } 2022-05-05T12:18:09,382 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,383 /// Returns true if and only if the float is plus or minus zero. 2022-05-05T12:18:09,384 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,384 bool isZero() const { return category == fcZero; } 2022-05-05T12:18:09,385 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,396 /// IEEE-754R isSubnormal(): Returns true if and only if the float is a 2022-05-05T12:18:09,397 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,398 /// denormal. 2022-05-05T12:18:09,398 ~~~~~~~~~~~~~ 2022-05-05T12:18:09,398 bool isDenormal() const; 2022-05-05T12:18:09,399 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,400 /// IEEE-754R isInfinite(): Returns true if and only if the float is infinity. 2022-05-05T12:18:09,400 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,401 bool isInfinity() const { return category == fcInfinity; } 2022-05-05T12:18:09,401 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,403 /// Returns true if and only if the float is a quiet or signaling NaN. 2022-05-05T12:18:09,403 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,403 bool isNaN() const { return category == fcNaN; } 2022-05-05T12:18:09,404 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,405 /// Returns true if and only if the float is a signaling NaN. 2022-05-05T12:18:09,405 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,406 bool isSignaling() const; 2022-05-05T12:18:09,417 ~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,418 /// @} 2022-05-05T12:18:09,418 ~~~~~~ 2022-05-05T12:18:09,419 /// \name Simple Queries 2022-05-05T12:18:09,419 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,420 /// @{ 2022-05-05T12:18:09,420 ~~~~~~ 2022-05-05T12:18:09,421 fltCategory getCategory() const { return category; } 2022-05-05T12:18:09,422 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,422 const fltSemantics &getSemantics() const { return *semantics; } 2022-05-05T12:18:09,423 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,423 bool isNonZero() const { return category != fcZero; } 2022-05-05T12:18:09,424 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,424 bool isFiniteNonZero() const { return isFinite() && !isZero(); } 2022-05-05T12:18:09,425 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,425 bool isPosZero() const { return isZero() && !isNegative(); } 2022-05-05T12:18:09,426 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,426 bool isNegZero() const { return isZero() && isNegative(); } 2022-05-05T12:18:09,437 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,438 /// Returns true if and only if the number has the smallest possible non-zero 2022-05-05T12:18:09,439 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,439 /// magnitude in the current semantics. 2022-05-05T12:18:09,439 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,440 bool isSmallest() const; 2022-05-05T12:18:09,440 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,441 /// Returns true if and only if the number has the largest possible finite 2022-05-05T12:18:09,442 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,442 /// magnitude in the current semantics. 2022-05-05T12:18:09,443 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,443 bool isLargest() const; 2022-05-05T12:18:09,444 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,445 /// Returns true if and only if the number is an exact integer. 2022-05-05T12:18:09,445 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,446 bool isInteger() const; 2022-05-05T12:18:09,456 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,458 /// @} 2022-05-05T12:18:09,458 ~~~~~~ 2022-05-05T12:18:09,460 IEEEFloat &operator=(const IEEEFloat &); 2022-05-05T12:18:09,460 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,460 IEEEFloat &operator=(IEEEFloat &&); 2022-05-05T12:18:09,461 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,462 /// Overload to compute a hash code for an APFloat value. 2022-05-05T12:18:09,463 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,463 /// 2022-05-05T12:18:09,464 ~~~ 2022-05-05T12:18:09,464 /// Note that the use of hash codes for floating point values is in general 2022-05-05T12:18:09,464 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,465 /// frought with peril. Equality is hard to define for these values. For 2022-05-05T12:18:09,465 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,466 /// example, should negative and positive zero hash to different codes? Are 2022-05-05T12:18:09,476 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,477 /// they equal or not? This hash value implementation specifically 2022-05-05T12:18:09,477 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,478 /// emphasizes producing different codes for different inputs in order to 2022-05-05T12:18:09,478 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,479 /// be used in canonicalization and memoization. As such, equality is 2022-05-05T12:18:09,479 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,479 /// bitwiseIsEqual, and 0 != -0. 2022-05-05T12:18:09,480 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,480 friend hash_code hash_value(const IEEEFloat &Arg); 2022-05-05T12:18:09,480 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,482 /// Converts this value into a decimal string. 2022-05-05T12:18:09,482 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,482 /// 2022-05-05T12:18:09,483 ~~~ 2022-05-05T12:18:09,483 /// \param FormatPrecision The maximum number of digits of 2022-05-05T12:18:09,483 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,484 /// precision to output. If there are fewer digits available, 2022-05-05T12:18:09,484 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,484 /// zero padding will not be used unless the value is 2022-05-05T12:18:09,485 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,485 /// integral and small enough to be expressed in 2022-05-05T12:18:09,485 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,486 /// FormatPrecision digits. 0 means to use the natural 2022-05-05T12:18:09,496 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,497 /// precision of the number. 2022-05-05T12:18:09,497 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,498 /// \param FormatMaxPadding The maximum number of zeros to 2022-05-05T12:18:09,499 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,499 /// consider inserting before falling back to scientific 2022-05-05T12:18:09,499 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,500 /// notation. 0 means to always use scientific notation. 2022-05-05T12:18:09,500 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,501 /// 2022-05-05T12:18:09,501 ~~~ 2022-05-05T12:18:09,502 /// \param TruncateZero Indicate whether to remove the trailing zero in 2022-05-05T12:18:09,502 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,503 /// fraction part or not. Also setting this parameter to false forcing 2022-05-05T12:18:09,503 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,504 /// producing of output more similar to default printf behavior. 2022-05-05T12:18:09,504 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,505 /// Specifically the lower e is used as exponent delimiter and exponent 2022-05-05T12:18:09,505 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,506 /// always contains no less than two digits. 2022-05-05T12:18:09,506 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,517 /// 2022-05-05T12:18:09,517 ~~~ 2022-05-05T12:18:09,518 /// Number Precision MaxPadding Result 2022-05-05T12:18:09,518 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,519 /// ------ --------- ---------- ------ 2022-05-05T12:18:09,519 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,520 /// 1.01E+4 5 2 10100 2022-05-05T12:18:09,521 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,521 /// 1.01E+4 4 2 1.01E+4 2022-05-05T12:18:09,522 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,522 /// 1.01E+4 5 1 1.01E+4 2022-05-05T12:18:09,522 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,523 /// 1.01E-2 5 2 0.0101 2022-05-05T12:18:09,524 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,524 /// 1.01E-2 4 2 0.0101 2022-05-05T12:18:09,525 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,525 /// 1.01E-2 4 1 1.01E-2 2022-05-05T12:18:09,526 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,534 void toString(SmallVectorImpl &Str, unsigned FormatPrecision = 0, 2022-05-05T12:18:09,534 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,535 unsigned FormatMaxPadding = 3, bool TruncateZero = true) const; 2022-05-05T12:18:09,535 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,538 /// If this value has an exact multiplicative inverse, store it in inv and 2022-05-05T12:18:09,539 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,546 /// return true. 2022-05-05T12:18:09,546 ~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,547 bool getExactInverse(APFloat *inv) const; 2022-05-05T12:18:09,547 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,549 /// Returns the exponent of the internal representation of the APFloat. 2022-05-05T12:18:09,549 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,550 /// 2022-05-05T12:18:09,550 ~~~ 2022-05-05T12:18:09,551 /// Because the radix of APFloat is 2, this is equivalent to floor(log2(x)). 2022-05-05T12:18:09,551 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,551 /// For special APFloat values, this returns special error codes: 2022-05-05T12:18:09,552 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,552 /// 2022-05-05T12:18:09,553 ~~~ 2022-05-05T12:18:09,553 /// NaN -> \c IEK_NaN 2022-05-05T12:18:09,554 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,554 /// 0 -> \c IEK_Zero 2022-05-05T12:18:09,555 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,555 /// Inf -> \c IEK_Inf 2022-05-05T12:18:09,555 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,556 /// 2022-05-05T12:18:09,558 ~~~ 2022-05-05T12:18:09,566 friend int ilogb(const IEEEFloat &Arg); 2022-05-05T12:18:09,566 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,568 /// Returns: X * 2^Exp for integral exponents. 2022-05-05T12:18:09,568 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,569 friend IEEEFloat scalbn(IEEEFloat X, int Exp, roundingMode); 2022-05-05T12:18:09,569 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,570 friend IEEEFloat frexp(const IEEEFloat &X, int &Exp, roundingMode); 2022-05-05T12:18:09,570 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,571 /// \name Special value setters. 2022-05-05T12:18:09,572 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,572 /// @{ 2022-05-05T12:18:09,572 ~~~~~~ 2022-05-05T12:18:09,574 void makeLargest(bool Neg = false); 2022-05-05T12:18:09,574 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,574 void makeSmallest(bool Neg = false); 2022-05-05T12:18:09,574 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,575 void makeNaN(bool SNaN = false, bool Neg = false, 2022-05-05T12:18:09,575 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,576 const APInt *fill = nullptr); 2022-05-05T12:18:09,580 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,589 void makeInf(bool Neg = false); 2022-05-05T12:18:09,590 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,590 void makeZero(bool Neg = false); 2022-05-05T12:18:09,591 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,591 void makeQuiet(); 2022-05-05T12:18:09,592 ~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,596 /// Returns the smallest (by magnitude) normalized finite number in the given 2022-05-05T12:18:09,597 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,597 /// semantics. 2022-05-05T12:18:09,598 ~~~~~~~~~~~~~~ 2022-05-05T12:18:09,598 /// 2022-05-05T12:18:09,599 ~~~ 2022-05-05T12:18:09,599 /// \param Negative - True iff the number should be negative 2022-05-05T12:18:09,600 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,600 void makeSmallestNormalized(bool Negative = false); 2022-05-05T12:18:09,601 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,603 /// @} 2022-05-05T12:18:09,603 ~~~~~~ 2022-05-05T12:18:09,604 cmpResult compareAbsoluteValue(const IEEEFloat &) const; 2022-05-05T12:18:09,605 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,619 private: 2022-05-05T12:18:09,619 ~~~~~~~~ 2022-05-05T12:18:09,620 /// \name Simple Queries 2022-05-05T12:18:09,620 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,621 /// @{ 2022-05-05T12:18:09,621 ~~~~~~ 2022-05-05T12:18:09,623 integerPart *significandParts(); 2022-05-05T12:18:09,623 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,623 const integerPart *significandParts() const; 2022-05-05T12:18:09,624 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,624 unsigned int partCount() const; 2022-05-05T12:18:09,625 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,628 /// @} 2022-05-05T12:18:09,629 ~~~~~~ 2022-05-05T12:18:09,630 /// \name Significand operations. 2022-05-05T12:18:09,631 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,631 /// @{ 2022-05-05T12:18:09,631 ~~~~~~ 2022-05-05T12:18:09,632 integerPart addSignificand(const IEEEFloat &); 2022-05-05T12:18:09,633 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,633 integerPart subtractSignificand(const IEEEFloat &, integerPart); 2022-05-05T12:18:09,634 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,634 lostFraction addOrSubtractSignificand(const IEEEFloat &, bool subtract); 2022-05-05T12:18:09,635 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,635 lostFraction multiplySignificand(const IEEEFloat &, IEEEFloat); 2022-05-05T12:18:09,635 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,636 lostFraction multiplySignificand(const IEEEFloat&); 2022-05-05T12:18:09,636 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,637 lostFraction divideSignificand(const IEEEFloat &); 2022-05-05T12:18:09,639 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,639 void incrementSignificand(); 2022-05-05T12:18:09,641 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,648 void initialize(const fltSemantics *); 2022-05-05T12:18:09,649 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,649 void shiftSignificandLeft(unsigned int); 2022-05-05T12:18:09,650 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,651 lostFraction shiftSignificandRight(unsigned int); 2022-05-05T12:18:09,651 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,652 unsigned int significandLSB() const; 2022-05-05T12:18:09,652 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,653 unsigned int significandMSB() const; 2022-05-05T12:18:09,653 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,654 void zeroSignificand(); 2022-05-05T12:18:09,654 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,655 /// Return true if the significand excluding the integral bit is all ones. 2022-05-05T12:18:09,655 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,656 bool isSignificandAllOnes() const; 2022-05-05T12:18:09,664 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,667 /// Return true if the significand excluding the integral bit is all zeros. 2022-05-05T12:18:09,667 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,668 bool isSignificandAllZeros() const; 2022-05-05T12:18:09,668 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,670 /// @} 2022-05-05T12:18:09,670 ~~~~~~ 2022-05-05T12:18:09,672 /// \name Arithmetic on special values. 2022-05-05T12:18:09,673 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,673 /// @{ 2022-05-05T12:18:09,673 ~~~~~~ 2022-05-05T12:18:09,675 opStatus addOrSubtractSpecials(const IEEEFloat &, bool subtract); 2022-05-05T12:18:09,676 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,678 opStatus divideSpecials(const IEEEFloat &); 2022-05-05T12:18:09,686 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,688 opStatus multiplySpecials(const IEEEFloat &); 2022-05-05T12:18:09,689 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,689 opStatus modSpecials(const IEEEFloat &); 2022-05-05T12:18:09,690 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,690 opStatus remainderSpecials(const IEEEFloat&); 2022-05-05T12:18:09,691 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,692 /// @} 2022-05-05T12:18:09,692 ~~~~~~ 2022-05-05T12:18:09,694 /// \name Miscellany 2022-05-05T12:18:09,694 ~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,694 /// @{ 2022-05-05T12:18:09,695 ~~~~~~ 2022-05-05T12:18:09,697 bool convertFromStringSpecials(StringRef str); 2022-05-05T12:18:09,707 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,707 opStatus normalize(roundingMode, lostFraction); 2022-05-05T12:18:09,708 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,708 opStatus addOrSubtract(const IEEEFloat &, roundingMode, bool subtract); 2022-05-05T12:18:09,708 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,709 opStatus handleOverflow(roundingMode); 2022-05-05T12:18:09,709 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,710 bool roundAwayFromZero(roundingMode, lostFraction, unsigned int) const; 2022-05-05T12:18:09,710 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,710 opStatus convertToSignExtendedInteger(MutableArrayRef, 2022-05-05T12:18:09,711 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,711 unsigned int, bool, roundingMode, 2022-05-05T12:18:09,712 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,712 bool *) const; 2022-05-05T12:18:09,712 ~~~~~~~~~~~~~~ 2022-05-05T12:18:09,713 opStatus convertFromUnsignedParts(const integerPart *, unsigned int, 2022-05-05T12:18:09,713 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,714 roundingMode); 2022-05-05T12:18:09,714 ~~~~~~~~~~~~~~ 2022-05-05T12:18:09,715 Expected convertFromHexadecimalString(StringRef, roundingMode); 2022-05-05T12:18:09,715 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,716 Expected convertFromDecimalString(StringRef, roundingMode); 2022-05-05T12:18:09,719 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,731 char *convertNormalToHexString(char *, unsigned int, bool, 2022-05-05T12:18:09,732 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,732 roundingMode) const; 2022-05-05T12:18:09,733 ~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,733 opStatus roundSignificandWithExponent(const integerPart *, unsigned int, int, 2022-05-05T12:18:09,734 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,734 roundingMode); 2022-05-05T12:18:09,735 ~~~~~~~~~~~~~~ 2022-05-05T12:18:09,735 ExponentType exponentNaN() const; 2022-05-05T12:18:09,735 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,736 ExponentType exponentInf() const; 2022-05-05T12:18:09,737 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,738 ExponentType exponentZero() const; 2022-05-05T12:18:09,738 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,739 /// @} 2022-05-05T12:18:09,740 ~~~~~~ 2022-05-05T12:18:09,741 APInt convertHalfAPFloatToAPInt() const; 2022-05-05T12:18:09,741 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,741 APInt convertBFloatAPFloatToAPInt() const; 2022-05-05T12:18:09,742 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,742 APInt convertFloatAPFloatToAPInt() const; 2022-05-05T12:18:09,743 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,743 APInt convertDoubleAPFloatToAPInt() const; 2022-05-05T12:18:09,744 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,744 APInt convertQuadrupleAPFloatToAPInt() const; 2022-05-05T12:18:09,744 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,745 APInt convertF80LongDoubleAPFloatToAPInt() const; 2022-05-05T12:18:09,745 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,746 APInt convertPPCDoubleDoubleAPFloatToAPInt() const; 2022-05-05T12:18:09,750 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,757 void initFromAPInt(const fltSemantics *Sem, const APInt &api); 2022-05-05T12:18:09,758 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,758 void initFromHalfAPInt(const APInt &api); 2022-05-05T12:18:09,758 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,759 void initFromBFloatAPInt(const APInt &api); 2022-05-05T12:18:09,759 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,760 void initFromFloatAPInt(const APInt &api); 2022-05-05T12:18:09,760 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,760 void initFromDoubleAPInt(const APInt &api); 2022-05-05T12:18:09,761 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,761 void initFromQuadrupleAPInt(const APInt &api); 2022-05-05T12:18:09,762 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,762 void initFromF80LongDoubleAPInt(const APInt &api); 2022-05-05T12:18:09,763 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,763 void initFromPPCDoubleDoubleAPInt(const APInt &api); 2022-05-05T12:18:09,764 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,766 void assign(const IEEEFloat &); 2022-05-05T12:18:09,767 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,771 void copySignificand(const IEEEFloat &); 2022-05-05T12:18:09,777 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,778 void freeSignificand(); 2022-05-05T12:18:09,778 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,780 /// Note: this must be the first data member. 2022-05-05T12:18:09,780 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,781 /// The semantics that this value obeys. 2022-05-05T12:18:09,781 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,782 const fltSemantics *semantics; 2022-05-05T12:18:09,782 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,784 /// A binary fraction with an explicit integer bit. 2022-05-05T12:18:09,785 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,785 /// 2022-05-05T12:18:09,786 ~~~ 2022-05-05T12:18:09,786 /// The significand must be at least one bit wider than the target precision. 2022-05-05T12:18:09,795 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,796 union Significand { 2022-05-05T12:18:09,803 ~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,803 integerPart part; 2022-05-05T12:18:09,804 ~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,804 integerPart *parts; 2022-05-05T12:18:09,805 ~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,805 } significand; 2022-05-05T12:18:09,805 ~~~~~~~~~~~~~~ 2022-05-05T12:18:09,810 /// The signed unbiased exponent of the value. 2022-05-05T12:18:09,810 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,811 ExponentType exponent; 2022-05-05T12:18:09,811 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,812 /// What kind of floating point number this is. 2022-05-05T12:18:09,813 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,813 /// 2022-05-05T12:18:09,814 ~~~ 2022-05-05T12:18:09,814 /// Only 2 bits are required, but VisualStudio incorrectly sign extends it. 2022-05-05T12:18:09,815 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,815 /// Using the extra bit keeps it from failing under VisualStudio. 2022-05-05T12:18:09,815 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,816 fltCategory category : 3; 2022-05-05T12:18:09,819 ~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,823 /// Sign bit of the number. 2022-05-05T12:18:09,823 ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,823 unsigned int sign : 1; 2022-05-05T12:18:09,824 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,824 }; 2022-05-05T12:18:09,824 ~~ 2022-05-05T12:18:09,826 hash_code hash_value(const IEEEFloat &Arg); 2022-05-05T12:18:09,826 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,835 int ilogb(const IEEEFloat &Arg); 2022-05-05T12:18:09,836 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,838 IEEEFloat scalbn(IEEEFloat X, int Exp, IEEEFloat::roundingMode); 2022-05-05T12:18:09,839 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,839 IEEEFloat frexp(const IEEEFloat &Val, int &Exp, IEEEFloat::roundingMode RM); 2022-05-05T12:18:09,840 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,841 // This mode implements more precise float in terms of two APFloats. 2022-05-05T12:18:09,841 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,841 // The interface and layout is designed for arbitrary underlying semantics, 2022-05-05T12:18:09,842 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,842 // though currently only PPCDoubleDouble semantics are supported, whose 2022-05-05T12:18:09,843 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,843 // corresponding underlying semantics are IEEEdouble. 2022-05-05T12:18:09,843 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,844 class DoubleAPFloat final : public APFloatBase { 2022-05-05T12:18:09,844 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,845 // Note: this must be the first data member. 2022-05-05T12:18:09,845 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,846 const fltSemantics *Semantics; 2022-05-05T12:18:09,854 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,854 std::unique_ptr Floats; 2022-05-05T12:18:09,855 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,856 opStatus addImpl(const APFloat &a, const APFloat &aa, const APFloat &c, 2022-05-05T12:18:09,856 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,857 const APFloat &cc, roundingMode RM); 2022-05-05T12:18:09,857 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,858 opStatus addWithSpecial(const DoubleAPFloat &LHS, const DoubleAPFloat &RHS, 2022-05-05T12:18:09,859 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,860 DoubleAPFloat &Out, roundingMode RM); 2022-05-05T12:18:09,860 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,862 public: 2022-05-05T12:18:09,862 ~~~~~~~ 2022-05-05T12:18:09,863 DoubleAPFloat(const fltSemantics &S); 2022-05-05T12:18:09,863 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,864 DoubleAPFloat(const fltSemantics &S, uninitializedTag); 2022-05-05T12:18:09,864 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,865 DoubleAPFloat(const fltSemantics &S, integerPart); 2022-05-05T12:18:09,865 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,866 DoubleAPFloat(const fltSemantics &S, const APInt &I); 2022-05-05T12:18:09,870 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,880 DoubleAPFloat(const fltSemantics &S, APFloat &&First, APFloat &&Second); 2022-05-05T12:18:09,880 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,881 DoubleAPFloat(const DoubleAPFloat &RHS); 2022-05-05T12:18:09,881 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,881 DoubleAPFloat(DoubleAPFloat &&RHS); 2022-05-05T12:18:09,882 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,883 DoubleAPFloat &operator=(const DoubleAPFloat &RHS); 2022-05-05T12:18:09,884 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,885 DoubleAPFloat &operator=(DoubleAPFloat &&RHS) { 2022-05-05T12:18:09,886 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,887 if (this != &RHS) { 2022-05-05T12:18:09,892 ~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,895 this->~DoubleAPFloat(); 2022-05-05T12:18:09,895 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,896 new (this) DoubleAPFloat(std::move(RHS)); 2022-05-05T12:18:09,896 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,900 } 2022-05-05T12:18:09,901 ~ 2022-05-05T12:18:09,901 return *this; 2022-05-05T12:18:09,902 ~~~~~~~~~~~~~ 2022-05-05T12:18:09,902 } 2022-05-05T12:18:09,903 ~ 2022-05-05T12:18:09,904 bool needsCleanup() const { return Floats != nullptr; } 2022-05-05T12:18:09,904 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,906 APFloat &getFirst() { return Floats[0]; } 2022-05-05T12:18:09,908 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,919 const APFloat &getFirst() const { return Floats[0]; } 2022-05-05T12:18:09,919 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,919 APFloat &getSecond() { return Floats[1]; } 2022-05-05T12:18:09,920 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,920 const APFloat &getSecond() const { return Floats[1]; } 2022-05-05T12:18:09,920 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,921 opStatus add(const DoubleAPFloat &RHS, roundingMode RM); 2022-05-05T12:18:09,922 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,922 opStatus subtract(const DoubleAPFloat &RHS, roundingMode RM); 2022-05-05T12:18:09,922 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,923 opStatus multiply(const DoubleAPFloat &RHS, roundingMode RM); 2022-05-05T12:18:09,923 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,923 opStatus divide(const DoubleAPFloat &RHS, roundingMode RM); 2022-05-05T12:18:09,924 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,924 opStatus remainder(const DoubleAPFloat &RHS); 2022-05-05T12:18:09,925 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,925 opStatus mod(const DoubleAPFloat &RHS); 2022-05-05T12:18:09,925 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,926 opStatus fusedMultiplyAdd(const DoubleAPFloat &Multiplicand, 2022-05-05T12:18:09,936 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,937 const DoubleAPFloat &Addend, roundingMode RM); 2022-05-05T12:18:09,937 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,938 opStatus roundToIntegral(roundingMode RM); 2022-05-05T12:18:09,938 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,938 void changeSign(); 2022-05-05T12:18:09,939 ~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,939 cmpResult compareAbsoluteValue(const DoubleAPFloat &RHS) const; 2022-05-05T12:18:09,940 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,941 fltCategory getCategory() const; 2022-05-05T12:18:09,941 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,941 bool isNegative() const; 2022-05-05T12:18:09,942 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,943 void makeInf(bool Neg); 2022-05-05T12:18:09,943 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,944 void makeZero(bool Neg); 2022-05-05T12:18:09,944 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,944 void makeLargest(bool Neg); 2022-05-05T12:18:09,945 ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,945 void makeSmallest(bool Neg); 2022-05-05T12:18:09,946 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,957 void makeSmallestNormalized(bool Neg); 2022-05-05T12:18:09,957 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,957 void makeNaN(bool SNaN, bool Neg, const APInt *fill); 2022-05-05T12:18:09,958 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,959 cmpResult compare(const DoubleAPFloat &RHS) const; 2022-05-05T12:18:09,960 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,960 bool bitwiseIsEqual(const DoubleAPFloat &RHS) const; 2022-05-05T12:18:09,960 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,961 APInt bitcastToAPInt() const; 2022-05-05T12:18:09,961 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,961 Expected convertFromString(StringRef, roundingMode); 2022-05-05T12:18:09,962 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,962 opStatus next(bool nextDown); 2022-05-05T12:18:09,963 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,964 opStatus convertToInteger(MutableArrayRef Input, 2022-05-05T12:18:09,964 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,965 unsigned int Width, bool IsSigned, roundingMode RM, 2022-05-05T12:18:09,965 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,966 bool *IsExact) const; 2022-05-05T12:18:09,976 ~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,977 opStatus convertFromAPInt(const APInt &Input, bool IsSigned, roundingMode RM); 2022-05-05T12:18:09,977 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,978 opStatus convertFromSignExtendedInteger(const integerPart *Input, 2022-05-05T12:18:09,978 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,978 unsigned int InputSize, bool IsSigned, 2022-05-05T12:18:09,979 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,979 roundingMode RM); 2022-05-05T12:18:09,979 ~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,980 opStatus convertFromZeroExtendedInteger(const integerPart *Input, 2022-05-05T12:18:09,980 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,981 unsigned int InputSize, bool IsSigned, 2022-05-05T12:18:09,981 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,981 roundingMode RM); 2022-05-05T12:18:09,982 ~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,982 unsigned int convertToHexString(char *DST, unsigned int HexDigits, 2022-05-05T12:18:09,982 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,982 bool UpperCase, roundingMode RM) const; 2022-05-05T12:18:09,983 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,984 bool isDenormal() const; 2022-05-05T12:18:09,984 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,985 bool isSmallest() const; 2022-05-05T12:18:09,985 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,985 bool isLargest() const; 2022-05-05T12:18:09,986 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,986 bool isInteger() const; 2022-05-05T12:18:09,997 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,998 void toString(SmallVectorImpl &Str, unsigned FormatPrecision, 2022-05-05T12:18:09,998 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:09,999 unsigned FormatMaxPadding, bool TruncateZero = true) const; 2022-05-05T12:18:09,999 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,000 bool getExactInverse(APFloat *inv) const; 2022-05-05T12:18:10,001 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,002 friend DoubleAPFloat scalbn(const DoubleAPFloat &X, int Exp, roundingMode); 2022-05-05T12:18:10,002 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,003 friend DoubleAPFloat frexp(const DoubleAPFloat &X, int &Exp, roundingMode); 2022-05-05T12:18:10,003 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,003 friend hash_code hash_value(const DoubleAPFloat &Arg); 2022-05-05T12:18:10,004 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,004 }; 2022-05-05T12:18:10,005 ~~ 2022-05-05T12:18:10,006 hash_code hash_value(const DoubleAPFloat &Arg); 2022-05-05T12:18:10,018 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,025 } // End detail namespace 2022-05-05T12:18:10,025 ~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,027 // This is a interface class that is currently forwarding functionalities from 2022-05-05T12:18:10,027 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,027 // detail::IEEEFloat. 2022-05-05T12:18:10,028 ~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,028 class APFloat : public APFloatBase { 2022-05-05T12:18:10,029 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,029 typedef detail::IEEEFloat IEEEFloat; 2022-05-05T12:18:10,029 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,030 typedef detail::DoubleAPFloat DoubleAPFloat; 2022-05-05T12:18:10,030 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,031 static_assert(std::is_standard_layout::value, ""); 2022-05-05T12:18:10,032 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,033 union Storage { 2022-05-05T12:18:10,033 ~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,034 const fltSemantics *semantics; 2022-05-05T12:18:10,034 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,034 IEEEFloat IEEE; 2022-05-05T12:18:10,035 ~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,035 DoubleAPFloat Double; 2022-05-05T12:18:10,036 ~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,037 explicit Storage(IEEEFloat F, const fltSemantics &S); 2022-05-05T12:18:10,038 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,038 explicit Storage(DoubleAPFloat F, const fltSemantics &S) 2022-05-05T12:18:10,038 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,039 : Double(std::move(F)) { 2022-05-05T12:18:10,039 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,040 assert(&S == &PPCDoubleDouble()); 2022-05-05T12:18:10,040 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,040 } 2022-05-05T12:18:10,041 ~ 2022-05-05T12:18:10,042 template 2022-05-05T12:18:10,042 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,042 Storage(const fltSemantics &Semantics, ArgTypes &&... Args) { 2022-05-05T12:18:10,043 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,043 if (usesLayout(Semantics)) { 2022-05-05T12:18:10,043 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,044 new (&IEEE) IEEEFloat(Semantics, std::forward(Args)...); 2022-05-05T12:18:10,044 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,044 return; 2022-05-05T12:18:10,045 ~~~~~~~ 2022-05-05T12:18:10,045 } 2022-05-05T12:18:10,046 ~ 2022-05-05T12:18:10,046 if (usesLayout(Semantics)) { 2022-05-05T12:18:10,047 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,047 new (&Double) DoubleAPFloat(Semantics, std::forward(Args)...); 2022-05-05T12:18:10,047 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,048 return; 2022-05-05T12:18:10,048 ~~~~~~~ 2022-05-05T12:18:10,049 } 2022-05-05T12:18:10,049 ~ 2022-05-05T12:18:10,050 llvm_unreachable("Unexpected semantics"); 2022-05-05T12:18:10,050 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,051 } 2022-05-05T12:18:10,051 ~ 2022-05-05T12:18:10,053 ~Storage() { 2022-05-05T12:18:10,053 ~~~~~~~~~~~~ 2022-05-05T12:18:10,053 if (usesLayout(*semantics)) { 2022-05-05T12:18:10,054 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,054 IEEE.~IEEEFloat(); 2022-05-05T12:18:10,055 ~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,055 return; 2022-05-05T12:18:10,056 ~~~~~~~ 2022-05-05T12:18:10,056 } 2022-05-05T12:18:10,057 ~ 2022-05-05T12:18:10,057 if (usesLayout(*semantics)) { 2022-05-05T12:18:10,057 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,058 Double.~DoubleAPFloat(); 2022-05-05T12:18:10,058 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,059 return; 2022-05-05T12:18:10,059 ~~~~~~~ 2022-05-05T12:18:10,059 } 2022-05-05T12:18:10,060 ~ 2022-05-05T12:18:10,060 llvm_unreachable("Unexpected semantics"); 2022-05-05T12:18:10,060 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,061 } 2022-05-05T12:18:10,061 ~ 2022-05-05T12:18:10,062 Storage(const Storage &RHS) { 2022-05-05T12:18:10,062 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,063 if (usesLayout(*RHS.semantics)) { 2022-05-05T12:18:10,063 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,063 new (this) IEEEFloat(RHS.IEEE); 2022-05-05T12:18:10,064 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,064 return; 2022-05-05T12:18:10,065 ~~~~~~~ 2022-05-05T12:18:10,065 } 2022-05-05T12:18:10,066 ~ 2022-05-05T12:18:10,066 if (usesLayout(*RHS.semantics)) { 2022-05-05T12:18:10,067 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,067 new (this) DoubleAPFloat(RHS.Double); 2022-05-05T12:18:10,067 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,068 return; 2022-05-05T12:18:10,068 ~~~~~~~ 2022-05-05T12:18:10,069 } 2022-05-05T12:18:10,069 ~ 2022-05-05T12:18:10,069 llvm_unreachable("Unexpected semantics"); 2022-05-05T12:18:10,070 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,070 } 2022-05-05T12:18:10,070 ~ 2022-05-05T12:18:10,071 Storage(Storage &&RHS) { 2022-05-05T12:18:10,072 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,072 if (usesLayout(*RHS.semantics)) { 2022-05-05T12:18:10,072 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,073 new (this) IEEEFloat(std::move(RHS.IEEE)); 2022-05-05T12:18:10,073 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,073 return; 2022-05-05T12:18:10,074 ~~~~~~~ 2022-05-05T12:18:10,074 } 2022-05-05T12:18:10,074 ~ 2022-05-05T12:18:10,075 if (usesLayout(*RHS.semantics)) { 2022-05-05T12:18:10,075 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,076 new (this) DoubleAPFloat(std::move(RHS.Double)); 2022-05-05T12:18:10,076 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,077 return; 2022-05-05T12:18:10,077 ~~~~~~~ 2022-05-05T12:18:10,077 } 2022-05-05T12:18:10,078 ~ 2022-05-05T12:18:10,078 llvm_unreachable("Unexpected semantics"); 2022-05-05T12:18:10,079 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,079 } 2022-05-05T12:18:10,079 ~ 2022-05-05T12:18:10,081 Storage &operator=(const Storage &RHS) { 2022-05-05T12:18:10,081 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,082 if (usesLayout(*semantics) && 2022-05-05T12:18:10,082 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,083 usesLayout(*RHS.semantics)) { 2022-05-05T12:18:10,083 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,083 IEEE = RHS.IEEE; 2022-05-05T12:18:10,084 ~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,084 } else if (usesLayout(*semantics) && 2022-05-05T12:18:10,085 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,085 usesLayout(*RHS.semantics)) { 2022-05-05T12:18:10,086 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,086 Double = RHS.Double; 2022-05-05T12:18:10,087 ~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,087 } else if (this != &RHS) { 2022-05-05T12:18:10,087 ~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,088 this->~Storage(); 2022-05-05T12:18:10,088 ~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,088 new (this) Storage(RHS); 2022-05-05T12:18:10,089 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,089 } 2022-05-05T12:18:10,090 ~ 2022-05-05T12:18:10,090 return *this; 2022-05-05T12:18:10,090 ~~~~~~~~~~~~~ 2022-05-05T12:18:10,091 } 2022-05-05T12:18:10,091 ~ 2022-05-05T12:18:10,092 Storage &operator=(Storage &&RHS) { 2022-05-05T12:18:10,092 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,093 if (usesLayout(*semantics) && 2022-05-05T12:18:10,093 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,093 usesLayout(*RHS.semantics)) { 2022-05-05T12:18:10,094 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,094 IEEE = std::move(RHS.IEEE); 2022-05-05T12:18:10,094 ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,095 } else if (usesLayout(*semantics) && 2022-05-05T12:18:10,095 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,096 usesLayout(*RHS.semantics)) { 2022-05-05T12:18:10,096 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,096 Double = std::move(RHS.Double); 2022-05-05T12:18:10,097 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,097 } else if (this != &RHS) { 2022-05-05T12:18:10,097 ~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,098 this->~Storage(); 2022-05-05T12:18:10,098 ~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,098 new (this) Storage(std::move(RHS)); 2022-05-05T12:18:10,099 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,099 } 2022-05-05T12:18:10,099 ~ 2022-05-05T12:18:10,100 return *this; 2022-05-05T12:18:10,100 ~~~~~~~~~~~~~ 2022-05-05T12:18:10,100 } 2022-05-05T12:18:10,101 ~ 2022-05-05T12:18:10,101 } U; 2022-05-05T12:18:10,102 ~~~~ 2022-05-05T12:18:10,103 template static bool usesLayout(const fltSemantics &Semantics) { 2022-05-05T12:18:10,103 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,103 static_assert(std::is_same::value || 2022-05-05T12:18:10,104 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,104 std::is_same::value, ""); 2022-05-05T12:18:10,104 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,105 if (std::is_same::value) { 2022-05-05T12:18:10,105 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,105 return &Semantics == &PPCDoubleDouble(); 2022-05-05T12:18:10,106 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,106 } 2022-05-05T12:18:10,106 ~ 2022-05-05T12:18:10,107 return &Semantics != &PPCDoubleDouble(); 2022-05-05T12:18:10,107 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,108 } 2022-05-05T12:18:10,108 ~ 2022-05-05T12:18:10,109 IEEEFloat &getIEEE() { 2022-05-05T12:18:10,110 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,110 if (usesLayout(*U.semantics)) 2022-05-05T12:18:10,111 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,111 return U.IEEE; 2022-05-05T12:18:10,111 ~~~~~~~~~~~~~~ 2022-05-05T12:18:10,112 if (usesLayout(*U.semantics)) 2022-05-05T12:18:10,112 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,113 return U.Double.getFirst().U.IEEE; 2022-05-05T12:18:10,113 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,114 llvm_unreachable("Unexpected semantics"); 2022-05-05T12:18:10,114 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,114 } 2022-05-05T12:18:10,115 ~ 2022-05-05T12:18:10,116 const IEEEFloat &getIEEE() const { 2022-05-05T12:18:10,117 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,117 if (usesLayout(*U.semantics)) 2022-05-05T12:18:10,118 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,118 return U.IEEE; 2022-05-05T12:18:10,118 ~~~~~~~~~~~~~~ 2022-05-05T12:18:10,119 if (usesLayout(*U.semantics)) 2022-05-05T12:18:10,119 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,120 return U.Double.getFirst().U.IEEE; 2022-05-05T12:18:10,120 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,120 llvm_unreachable("Unexpected semantics"); 2022-05-05T12:18:10,121 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,121 } 2022-05-05T12:18:10,122 ~ 2022-05-05T12:18:10,123 void makeZero(bool Neg) { APFLOAT_DISPATCH_ON_SEMANTICS(makeZero(Neg)); } 2022-05-05T12:18:10,123 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,125 void makeInf(bool Neg) { APFLOAT_DISPATCH_ON_SEMANTICS(makeInf(Neg)); } 2022-05-05T12:18:10,125 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,126 void makeNaN(bool SNaN, bool Neg, const APInt *fill) { 2022-05-05T12:18:10,137 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,137 APFLOAT_DISPATCH_ON_SEMANTICS(makeNaN(SNaN, Neg, fill)); 2022-05-05T12:18:10,138 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,138 } 2022-05-05T12:18:10,139 ~ 2022-05-05T12:18:10,140 void makeLargest(bool Neg) { 2022-05-05T12:18:10,140 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,141 APFLOAT_DISPATCH_ON_SEMANTICS(makeLargest(Neg)); 2022-05-05T12:18:10,141 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,142 } 2022-05-05T12:18:10,142 ~ 2022-05-05T12:18:10,144 void makeSmallest(bool Neg) { 2022-05-05T12:18:10,144 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,144 APFLOAT_DISPATCH_ON_SEMANTICS(makeSmallest(Neg)); 2022-05-05T12:18:10,145 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,145 } 2022-05-05T12:18:10,146 ~ 2022-05-05T12:18:10,153 void makeSmallestNormalized(bool Neg) { 2022-05-05T12:18:10,154 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,154 APFLOAT_DISPATCH_ON_SEMANTICS(makeSmallestNormalized(Neg)); 2022-05-05T12:18:10,155 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,155 } 2022-05-05T12:18:10,155 ~ 2022-05-05T12:18:10,162 // FIXME: This is due to clang 3.3 (or older version) always checks for the 2022-05-05T12:18:10,162 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,163 // default constructor in an array aggregate initialization, even if no 2022-05-05T12:18:10,163 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,164 // elements in the array is default initialized. 2022-05-05T12:18:10,164 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,165 APFloat() : U(IEEEdouble()) { 2022-05-05T12:18:10,165 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,165 llvm_unreachable("This is a workaround for old clang."); 2022-05-05T12:18:10,166 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,166 } 2022-05-05T12:18:10,167 ~ 2022-05-05T12:18:10,168 explicit APFloat(IEEEFloat F, const fltSemantics &S) : U(std::move(F), S) {} 2022-05-05T12:18:10,168 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,168 explicit APFloat(DoubleAPFloat F, const fltSemantics &S) 2022-05-05T12:18:10,169 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,169 : U(std::move(F), S) {} 2022-05-05T12:18:10,169 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,170 cmpResult compareAbsoluteValue(const APFloat &RHS) const { 2022-05-05T12:18:10,171 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,171 assert(&getSemantics() == &RHS.getSemantics() && 2022-05-05T12:18:10,172 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,172 "Should only compare APFloats with the same semantics"); 2022-05-05T12:18:10,172 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,173 if (usesLayout(getSemantics())) 2022-05-05T12:18:10,173 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,173 return U.IEEE.compareAbsoluteValue(RHS.U.IEEE); 2022-05-05T12:18:10,174 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,174 if (usesLayout(getSemantics())) 2022-05-05T12:18:10,174 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,175 return U.Double.compareAbsoluteValue(RHS.U.Double); 2022-05-05T12:18:10,175 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,175 llvm_unreachable("Unexpected semantics"); 2022-05-05T12:18:10,176 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,223 } 2022-05-05T12:18:10,224 ~ 2022-05-05T12:18:10,225 public: 2022-05-05T12:18:10,226 ~~~~~~~ 2022-05-05T12:18:10,226 APFloat(const fltSemantics &Semantics) : U(Semantics) {} 2022-05-05T12:18:10,227 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,227 APFloat(const fltSemantics &Semantics, StringRef S); 2022-05-05T12:18:10,228 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,228 APFloat(const fltSemantics &Semantics, integerPart I) : U(Semantics, I) {} 2022-05-05T12:18:10,229 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,229 template ::value>> 2022-05-05T12:18:10,230 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,231 APFloat(const fltSemantics &Semantics, T V) = delete; 2022-05-05T12:18:10,231 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,232 // TODO: Remove this constructor. This isn't faster than the first one. 2022-05-05T12:18:10,232 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,233 APFloat(const fltSemantics &Semantics, uninitializedTag) 2022-05-05T12:18:10,233 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,234 : U(Semantics, uninitialized) {} 2022-05-05T12:18:10,234 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,234 APFloat(const fltSemantics &Semantics, const APInt &I) : U(Semantics, I) {} 2022-05-05T12:18:10,235 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,235 explicit APFloat(double d) : U(IEEEFloat(d), IEEEdouble()) {} 2022-05-05T12:18:10,236 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,236 explicit APFloat(float f) : U(IEEEFloat(f), IEEEsingle()) {} 2022-05-05T12:18:10,237 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,237 APFloat(const APFloat &RHS) = default; 2022-05-05T12:18:10,238 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,238 APFloat(APFloat &&RHS) = default; 2022-05-05T12:18:10,239 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,240 ~APFloat() = default; 2022-05-05T12:18:10,240 ~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,242 bool needsCleanup() const { APFLOAT_DISPATCH_ON_SEMANTICS(needsCleanup()); } 2022-05-05T12:18:10,243 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,244 /// Factory for Positive and Negative Zero. 2022-05-05T12:18:10,244 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,244 /// 2022-05-05T12:18:10,245 ~~~ 2022-05-05T12:18:10,245 /// \param Negative True iff the number should be negative. 2022-05-05T12:18:10,245 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,246 static APFloat getZero(const fltSemantics &Sem, bool Negative = false) { 2022-05-05T12:18:10,246 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,247 APFloat Val(Sem, uninitialized); 2022-05-05T12:18:10,247 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,248 Val.makeZero(Negative); 2022-05-05T12:18:10,248 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,249 return Val; 2022-05-05T12:18:10,249 ~~~~~~~~~~~ 2022-05-05T12:18:10,250 } 2022-05-05T12:18:10,250 ~ 2022-05-05T12:18:10,251 /// Factory for Positive and Negative Infinity. 2022-05-05T12:18:10,252 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,252 /// 2022-05-05T12:18:10,253 ~~~ 2022-05-05T12:18:10,253 /// \param Negative True iff the number should be negative. 2022-05-05T12:18:10,253 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,254 static APFloat getInf(const fltSemantics &Sem, bool Negative = false) { 2022-05-05T12:18:10,254 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,255 APFloat Val(Sem, uninitialized); 2022-05-05T12:18:10,255 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,256 Val.makeInf(Negative); 2022-05-05T12:18:10,256 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,257 return Val; 2022-05-05T12:18:10,257 ~~~~~~~~~~~ 2022-05-05T12:18:10,258 } 2022-05-05T12:18:10,258 ~ 2022-05-05T12:18:10,259 /// Factory for NaN values. 2022-05-05T12:18:10,260 ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,260 /// 2022-05-05T12:18:10,261 ~~~ 2022-05-05T12:18:10,261 /// \param Negative - True iff the NaN generated should be negative. 2022-05-05T12:18:10,261 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,262 /// \param payload - The unspecified fill bits for creating the NaN, 0 by 2022-05-05T12:18:10,262 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,263 /// default. The value is truncated as necessary. 2022-05-05T12:18:10,263 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,264 static APFloat getNaN(const fltSemantics &Sem, bool Negative = false, 2022-05-05T12:18:10,264 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,264 uint64_t payload = 0) { 2022-05-05T12:18:10,265 ~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,265 if (payload) { 2022-05-05T12:18:10,266 ~~~~~~~~~~~~~~ 2022-05-05T12:18:10,266 APInt intPayload(64, payload); 2022-05-05T12:18:10,267 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,267 return getQNaN(Sem, Negative, &intPayload); 2022-05-05T12:18:10,268 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,268 } else { 2022-05-05T12:18:10,268 ~~~~~~~~ 2022-05-05T12:18:10,269 return getQNaN(Sem, Negative, nullptr); 2022-05-05T12:18:10,269 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,270 } 2022-05-05T12:18:10,270 ~ 2022-05-05T12:18:10,270 } 2022-05-05T12:18:10,271 ~ 2022-05-05T12:18:10,272 /// Factory for QNaN values. 2022-05-05T12:18:10,272 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,273 static APFloat getQNaN(const fltSemantics &Sem, bool Negative = false, 2022-05-05T12:18:10,273 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,274 const APInt *payload = nullptr) { 2022-05-05T12:18:10,274 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,274 APFloat Val(Sem, uninitialized); 2022-05-05T12:18:10,275 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,275 Val.makeNaN(false, Negative, payload); 2022-05-05T12:18:10,276 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,276 return Val; 2022-05-05T12:18:10,277 ~~~~~~~~~~~ 2022-05-05T12:18:10,277 } 2022-05-05T12:18:10,277 ~ 2022-05-05T12:18:10,279 /// Factory for SNaN values. 2022-05-05T12:18:10,279 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,279 static APFloat getSNaN(const fltSemantics &Sem, bool Negative = false, 2022-05-05T12:18:10,280 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,280 const APInt *payload = nullptr) { 2022-05-05T12:18:10,280 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,281 APFloat Val(Sem, uninitialized); 2022-05-05T12:18:10,281 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,282 Val.makeNaN(true, Negative, payload); 2022-05-05T12:18:10,282 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,282 return Val; 2022-05-05T12:18:10,283 ~~~~~~~~~~~ 2022-05-05T12:18:10,284 } 2022-05-05T12:18:10,284 ~ 2022-05-05T12:18:10,285 /// Returns the largest finite number in the given semantics. 2022-05-05T12:18:10,286 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,286 /// 2022-05-05T12:18:10,287 ~~~ 2022-05-05T12:18:10,287 /// \param Negative - True iff the number should be negative 2022-05-05T12:18:10,287 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,288 static APFloat getLargest(const fltSemantics &Sem, bool Negative = false) { 2022-05-05T12:18:10,288 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,288 APFloat Val(Sem, uninitialized); 2022-05-05T12:18:10,289 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,289 Val.makeLargest(Negative); 2022-05-05T12:18:10,290 ~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,290 return Val; 2022-05-05T12:18:10,291 ~~~~~~~~~~~ 2022-05-05T12:18:10,291 } 2022-05-05T12:18:10,291 ~ 2022-05-05T12:18:10,293 /// Returns the smallest (by magnitude) finite number in the given semantics. 2022-05-05T12:18:10,293 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,293 /// Might be denormalized, which implies a relative loss of precision. 2022-05-05T12:18:10,294 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,294 /// 2022-05-05T12:18:10,295 ~~~ 2022-05-05T12:18:10,295 /// \param Negative - True iff the number should be negative 2022-05-05T12:18:10,296 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,296 static APFloat getSmallest(const fltSemantics &Sem, bool Negative = false) { 2022-05-05T12:18:10,297 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,297 APFloat Val(Sem, uninitialized); 2022-05-05T12:18:10,298 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,298 Val.makeSmallest(Negative); 2022-05-05T12:18:10,299 ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,299 return Val; 2022-05-05T12:18:10,300 ~~~~~~~~~~~ 2022-05-05T12:18:10,300 } 2022-05-05T12:18:10,301 ~ 2022-05-05T12:18:10,302 /// Returns the smallest (by magnitude) normalized finite number in the given 2022-05-05T12:18:10,302 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,303 /// semantics. 2022-05-05T12:18:10,303 ~~~~~~~~~~~~~~ 2022-05-05T12:18:10,304 /// 2022-05-05T12:18:10,304 ~~~ 2022-05-05T12:18:10,305 /// \param Negative - True iff the number should be negative 2022-05-05T12:18:10,305 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,306 static APFloat getSmallestNormalized(const fltSemantics &Sem, 2022-05-05T12:18:10,306 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,307 bool Negative = false) { 2022-05-05T12:18:10,307 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,308 APFloat Val(Sem, uninitialized); 2022-05-05T12:18:10,308 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,309 Val.makeSmallestNormalized(Negative); 2022-05-05T12:18:10,309 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,309 return Val; 2022-05-05T12:18:10,310 ~~~~~~~~~~~ 2022-05-05T12:18:10,310 } 2022-05-05T12:18:10,310 ~ 2022-05-05T12:18:10,312 /// Returns a float which is bitcasted from an all one value int. 2022-05-05T12:18:10,312 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,312 /// 2022-05-05T12:18:10,313 ~~~ 2022-05-05T12:18:10,313 /// \param Semantics - type float semantics 2022-05-05T12:18:10,314 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,314 static APFloat getAllOnesValue(const fltSemantics &Semantics); 2022-05-05T12:18:10,315 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,316 /// Used to insert APFloat objects, or objects that contain APFloat objects, 2022-05-05T12:18:10,316 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,317 /// into FoldingSets. 2022-05-05T12:18:10,317 ~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,318 void Profile(FoldingSetNodeID &NID) const; 2022-05-05T12:18:10,318 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,319 opStatus add(const APFloat &RHS, roundingMode RM) { 2022-05-05T12:18:10,320 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,320 assert(&getSemantics() == &RHS.getSemantics() && 2022-05-05T12:18:10,321 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,321 "Should only call on two APFloats with the same semantics"); 2022-05-05T12:18:10,321 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,322 if (usesLayout(getSemantics())) 2022-05-05T12:18:10,322 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,323 return U.IEEE.add(RHS.U.IEEE, RM); 2022-05-05T12:18:10,323 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,323 if (usesLayout(getSemantics())) 2022-05-05T12:18:10,324 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,324 return U.Double.add(RHS.U.Double, RM); 2022-05-05T12:18:10,325 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,325 llvm_unreachable("Unexpected semantics"); 2022-05-05T12:18:10,325 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,326 } 2022-05-05T12:18:10,326 ~ 2022-05-05T12:18:10,327 opStatus subtract(const APFloat &RHS, roundingMode RM) { 2022-05-05T12:18:10,327 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,327 assert(&getSemantics() == &RHS.getSemantics() && 2022-05-05T12:18:10,328 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,328 "Should only call on two APFloats with the same semantics"); 2022-05-05T12:18:10,329 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,329 if (usesLayout(getSemantics())) 2022-05-05T12:18:10,329 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,330 return U.IEEE.subtract(RHS.U.IEEE, RM); 2022-05-05T12:18:10,330 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,331 if (usesLayout(getSemantics())) 2022-05-05T12:18:10,331 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,331 return U.Double.subtract(RHS.U.Double, RM); 2022-05-05T12:18:10,332 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,332 llvm_unreachable("Unexpected semantics"); 2022-05-05T12:18:10,333 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,333 } 2022-05-05T12:18:10,334 ~ 2022-05-05T12:18:10,334 opStatus multiply(const APFloat &RHS, roundingMode RM) { 2022-05-05T12:18:10,334 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,335 assert(&getSemantics() == &RHS.getSemantics() && 2022-05-05T12:18:10,336 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,336 "Should only call on two APFloats with the same semantics"); 2022-05-05T12:18:10,337 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,337 if (usesLayout(getSemantics())) 2022-05-05T12:18:10,338 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,338 return U.IEEE.multiply(RHS.U.IEEE, RM); 2022-05-05T12:18:10,339 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,339 if (usesLayout(getSemantics())) 2022-05-05T12:18:10,340 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,340 return U.Double.multiply(RHS.U.Double, RM); 2022-05-05T12:18:10,340 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,341 llvm_unreachable("Unexpected semantics"); 2022-05-05T12:18:10,342 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,342 } 2022-05-05T12:18:10,343 ~ 2022-05-05T12:18:10,343 opStatus divide(const APFloat &RHS, roundingMode RM) { 2022-05-05T12:18:10,344 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,344 assert(&getSemantics() == &RHS.getSemantics() && 2022-05-05T12:18:10,345 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,345 "Should only call on two APFloats with the same semantics"); 2022-05-05T12:18:10,346 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,382 if (usesLayout(getSemantics())) 2022-05-05T12:18:10,383 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,384 return U.IEEE.divide(RHS.U.IEEE, RM); 2022-05-05T12:18:10,384 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,385 if (usesLayout(getSemantics())) 2022-05-05T12:18:10,385 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,386 return U.Double.divide(RHS.U.Double, RM); 2022-05-05T12:18:10,387 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,387 llvm_unreachable("Unexpected semantics"); 2022-05-05T12:18:10,388 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,388 } 2022-05-05T12:18:10,389 ~ 2022-05-05T12:18:10,389 opStatus remainder(const APFloat &RHS) { 2022-05-05T12:18:10,390 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,390 assert(&getSemantics() == &RHS.getSemantics() && 2022-05-05T12:18:10,391 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,391 "Should only call on two APFloats with the same semantics"); 2022-05-05T12:18:10,391 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,392 if (usesLayout(getSemantics())) 2022-05-05T12:18:10,392 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,393 return U.IEEE.remainder(RHS.U.IEEE); 2022-05-05T12:18:10,393 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,394 if (usesLayout(getSemantics())) 2022-05-05T12:18:10,394 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,394 return U.Double.remainder(RHS.U.Double); 2022-05-05T12:18:10,395 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,395 llvm_unreachable("Unexpected semantics"); 2022-05-05T12:18:10,396 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,396 } 2022-05-05T12:18:10,436 ~ 2022-05-05T12:18:10,442 opStatus mod(const APFloat &RHS) { 2022-05-05T12:18:10,443 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,444 assert(&getSemantics() == &RHS.getSemantics() && 2022-05-05T12:18:10,444 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,445 "Should only call on two APFloats with the same semantics"); 2022-05-05T12:18:10,445 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,446 if (usesLayout(getSemantics())) 2022-05-05T12:18:10,467 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,468 return U.IEEE.mod(RHS.U.IEEE); 2022-05-05T12:18:10,468 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,469 if (usesLayout(getSemantics())) 2022-05-05T12:18:10,469 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,470 return U.Double.mod(RHS.U.Double); 2022-05-05T12:18:10,470 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,471 llvm_unreachable("Unexpected semantics"); 2022-05-05T12:18:10,471 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,472 } 2022-05-05T12:18:10,472 ~ 2022-05-05T12:18:10,473 opStatus fusedMultiplyAdd(const APFloat &Multiplicand, const APFloat &Addend, 2022-05-05T12:18:10,473 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,474 roundingMode RM) { 2022-05-05T12:18:10,475 ~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,475 assert(&getSemantics() == &Multiplicand.getSemantics() && 2022-05-05T12:18:10,476 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,476 "Should only call on APFloats with the same semantics"); 2022-05-05T12:18:10,510 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,510 assert(&getSemantics() == &Addend.getSemantics() && 2022-05-05T12:18:10,511 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,511 "Should only call on APFloats with the same semantics"); 2022-05-05T12:18:10,512 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,513 if (usesLayout(getSemantics())) 2022-05-05T12:18:10,514 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,514 return U.IEEE.fusedMultiplyAdd(Multiplicand.U.IEEE, Addend.U.IEEE, RM); 2022-05-05T12:18:10,515 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,515 if (usesLayout(getSemantics())) 2022-05-05T12:18:10,516 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,530 return U.Double.fusedMultiplyAdd(Multiplicand.U.Double, Addend.U.Double, 2022-05-05T12:18:10,530 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,531 RM); 2022-05-05T12:18:10,532 ~~~~ 2022-05-05T12:18:10,532 llvm_unreachable("Unexpected semantics"); 2022-05-05T12:18:10,533 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,534 } 2022-05-05T12:18:10,534 ~ 2022-05-05T12:18:10,534 opStatus roundToIntegral(roundingMode RM) { 2022-05-05T12:18:10,535 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,535 APFLOAT_DISPATCH_ON_SEMANTICS(roundToIntegral(RM)); 2022-05-05T12:18:10,536 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,545 } 2022-05-05T12:18:10,546 ~ 2022-05-05T12:18:10,547 // TODO: bool parameters are not readable and a source of bugs. 2022-05-05T12:18:10,548 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,548 // Do something. 2022-05-05T12:18:10,549 ~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,549 opStatus next(bool nextDown) { 2022-05-05T12:18:10,550 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,550 APFLOAT_DISPATCH_ON_SEMANTICS(next(nextDown)); 2022-05-05T12:18:10,551 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,551 } 2022-05-05T12:18:10,552 ~ 2022-05-05T12:18:10,553 /// Negate an APFloat. 2022-05-05T12:18:10,553 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,554 APFloat operator-() const { 2022-05-05T12:18:10,554 ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,554 APFloat Result(*this); 2022-05-05T12:18:10,555 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,555 Result.changeSign(); 2022-05-05T12:18:10,556 ~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,557 return Result; 2022-05-05T12:18:10,557 ~~~~~~~~~~~~~~ 2022-05-05T12:18:10,558 } 2022-05-05T12:18:10,559 ~ 2022-05-05T12:18:10,561 /// Add two APFloats, rounding ties to the nearest even. 2022-05-05T12:18:10,561 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,562 /// No error checking. 2022-05-05T12:18:10,563 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,563 APFloat operator+(const APFloat &RHS) const { 2022-05-05T12:18:10,564 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,564 APFloat Result(*this); 2022-05-05T12:18:10,565 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,566 (void)Result.add(RHS, rmNearestTiesToEven); 2022-05-05T12:18:10,566 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,567 return Result; 2022-05-05T12:18:10,567 ~~~~~~~~~~~~~~ 2022-05-05T12:18:10,568 } 2022-05-05T12:18:10,569 ~ 2022-05-05T12:18:10,570 /// Subtract two APFloats, rounding ties to the nearest even. 2022-05-05T12:18:10,570 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,571 /// No error checking. 2022-05-05T12:18:10,571 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,572 APFloat operator-(const APFloat &RHS) const { 2022-05-05T12:18:10,573 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,573 APFloat Result(*this); 2022-05-05T12:18:10,574 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,575 (void)Result.subtract(RHS, rmNearestTiesToEven); 2022-05-05T12:18:10,575 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,576 return Result; 2022-05-05T12:18:10,577 ~~~~~~~~~~~~~~ 2022-05-05T12:18:10,577 } 2022-05-05T12:18:10,577 ~ 2022-05-05T12:18:10,579 /// Multiply two APFloats, rounding ties to the nearest even. 2022-05-05T12:18:10,579 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,580 /// No error checking. 2022-05-05T12:18:10,580 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,581 APFloat operator*(const APFloat &RHS) const { 2022-05-05T12:18:10,582 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,582 APFloat Result(*this); 2022-05-05T12:18:10,583 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,583 (void)Result.multiply(RHS, rmNearestTiesToEven); 2022-05-05T12:18:10,584 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,584 return Result; 2022-05-05T12:18:10,585 ~~~~~~~~~~~~~~ 2022-05-05T12:18:10,585 } 2022-05-05T12:18:10,586 ~ 2022-05-05T12:18:10,588 /// Divide the first APFloat by the second, rounding ties to the nearest even. 2022-05-05T12:18:10,589 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,589 /// No error checking. 2022-05-05T12:18:10,590 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,590 APFloat operator/(const APFloat &RHS) const { 2022-05-05T12:18:10,591 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,591 APFloat Result(*this); 2022-05-05T12:18:10,592 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,592 (void)Result.divide(RHS, rmNearestTiesToEven); 2022-05-05T12:18:10,593 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,593 return Result; 2022-05-05T12:18:10,594 ~~~~~~~~~~~~~~ 2022-05-05T12:18:10,594 } 2022-05-05T12:18:10,595 ~ 2022-05-05T12:18:10,596 void changeSign() { APFLOAT_DISPATCH_ON_SEMANTICS(changeSign()); } 2022-05-05T12:18:10,596 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,597 void clearSign() { 2022-05-05T12:18:10,597 ~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,598 if (isNegative()) 2022-05-05T12:18:10,598 ~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,599 changeSign(); 2022-05-05T12:18:10,599 ~~~~~~~~~~~~~ 2022-05-05T12:18:10,600 } 2022-05-05T12:18:10,601 ~ 2022-05-05T12:18:10,601 void copySign(const APFloat &RHS) { 2022-05-05T12:18:10,601 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,602 if (isNegative() != RHS.isNegative()) 2022-05-05T12:18:10,602 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,603 changeSign(); 2022-05-05T12:18:10,604 ~~~~~~~~~~~~~ 2022-05-05T12:18:10,604 } 2022-05-05T12:18:10,605 ~ 2022-05-05T12:18:10,607 /// A static helper to produce a copy of an APFloat value with its sign 2022-05-05T12:18:10,607 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,607 /// copied from some other APFloat. 2022-05-05T12:18:10,608 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,608 static APFloat copySign(APFloat Value, const APFloat &Sign) { 2022-05-05T12:18:10,609 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,609 Value.copySign(Sign); 2022-05-05T12:18:10,609 ~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,610 return Value; 2022-05-05T12:18:10,610 ~~~~~~~~~~~~~ 2022-05-05T12:18:10,610 } 2022-05-05T12:18:10,611 ~ 2022-05-05T12:18:10,613 opStatus convert(const fltSemantics &ToSemantics, roundingMode RM, 2022-05-05T12:18:10,613 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,613 bool *losesInfo); 2022-05-05T12:18:10,614 ~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,614 opStatus convertToInteger(MutableArrayRef Input, 2022-05-05T12:18:10,615 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,615 unsigned int Width, bool IsSigned, roundingMode RM, 2022-05-05T12:18:10,616 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,617 bool *IsExact) const { 2022-05-05T12:18:10,617 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,617 APFLOAT_DISPATCH_ON_SEMANTICS( 2022-05-05T12:18:10,618 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,619 convertToInteger(Input, Width, IsSigned, RM, IsExact)); 2022-05-05T12:18:10,619 ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:18:10,620 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/APFloat.h:29:23: note: in definition of macro ‘APFLOAT_DISPATCH_ON_SEMANTICS’ 2022-05-05T12:18:10,620 return U.Double.METHOD_CALL; \ 2022-05-05T12:18:10,621 ^~~~~~~~~~~ 2022-05-05T12:18:10,621 [27/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/BinaryStreamWriter.cpp.o 2022-05-05T12:18:10,622 [28/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/BranchProbability.cpp.o 2022-05-05T12:18:10,622 [29/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/BuryPointer.cpp.o 2022-05-05T12:18:10,623 [30/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/COM.cpp.o 2022-05-05T12:18:16,956 [31/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/circular_raw_ostream.cpp.o 2022-05-05T12:18:17,516 [32/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Chrono.cpp.o 2022-05-05T12:18:19,240 [33/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/CachePruning.cpp.o 2022-05-05T12:18:21,362 [34/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Caching.cpp.o 2022-05-05T12:18:23,957 [35/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/ConvertUTF.cpp.o 2022-05-05T12:18:24,734 [36/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/CRC.cpp.o 2022-05-05T12:18:27,688 [37/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/CodeGenCoverage.cpp.o 2022-05-05T12:18:28,668 [38/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Compression.cpp.o 2022-05-05T12:18:28,846 [39/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/ConvertUTFWrapper.cpp.o 2022-05-05T12:18:33,133 [40/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/CrashRecoveryContext.cpp.o 2022-05-05T12:18:37,277 [41/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Debug.cpp.o 2022-05-05T12:18:39,519 [42/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/DeltaAlgorithm.cpp.o 2022-05-05T12:18:40,056 [43/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/DivisionByConstantInfo.cpp.o 2022-05-05T12:18:40,425 [44/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/DataExtractor.cpp.o 2022-05-05T12:18:46,333 [45/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/DebugCounter.cpp.o 2022-05-05T12:18:47,132 [46/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/DJB.cpp.o 2022-05-05T12:18:48,688 [47/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/ELFAttributes.cpp.o 2022-05-05T12:18:49,005 [48/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/ExtensibleRTTI.cpp.o 2022-05-05T12:18:54,129 [49/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/DAGDeltaAlgorithm.cpp.o 2022-05-05T12:19:00,584 [50/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/ErrorHandling.cpp.o 2022-05-05T12:19:03,511 [51/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/ELFAttributeParser.cpp.o 2022-05-05T12:19:03,631 [52/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Error.cpp.o 2022-05-05T12:19:08,291 [53/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/FileCollector.cpp.o 2022-05-05T12:19:10,365 [54/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/FileUtilities.cpp.o 2022-05-05T12:19:11,919 [55/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/FormattedStream.cpp.o 2022-05-05T12:19:13,616 [56/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/CommandLine.cpp.o 2022-05-05T12:19:14,341 [57/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/FoldingSet.cpp.o 2022-05-05T12:19:15,587 [58/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/FileOutputBuffer.cpp.o 2022-05-05T12:19:16,512 [59/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Hashing.cpp.o 2022-05-05T12:19:17,754 [60/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/FormatVariadic.cpp.o 2022-05-05T12:19:21,474 [61/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/IntEqClasses.cpp.o 2022-05-05T12:19:22,292 [62/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/InitLLVM.cpp.o 2022-05-05T12:19:22,968 [63/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/InstructionCost.cpp.o 2022-05-05T12:19:24,242 [64/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/GlobPattern.cpp.o 2022-05-05T12:19:26,258 [65/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/IntervalMap.cpp.o 2022-05-05T12:19:30,047 [66/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/LEB128.cpp.o 2022-05-05T12:19:30,147 [67/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/GraphWriter.cpp.o 2022-05-05T12:19:33,451 [68/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Locale.cpp.o 2022-05-05T12:19:34,359 [69/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/LineIterator.cpp.o 2022-05-05T12:19:42,535 [70/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/LowLevelType.cpp.o 2022-05-05T12:19:43,618 [71/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/MathExtras.cpp.o 2022-05-05T12:19:43,682 [72/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/KnownBits.cpp.o 2022-05-05T12:19:44,266 [73/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/ManagedStatic.cpp.o 2022-05-05T12:19:44,580 [74/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/MemAlloc.cpp.o 2022-05-05T12:19:45,905 [75/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/LockFileManager.cpp.o 2022-05-05T12:19:51,934 [76/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/MemoryBufferRef.cpp.o 2022-05-05T12:19:53,076 [77/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/MSP430Attributes.cpp.o 2022-05-05T12:19:56,274 [78/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/MD5.cpp.o 2022-05-05T12:19:59,820 [79/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/JSON.cpp.o 2022-05-05T12:20:01,372 [80/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/MemoryBuffer.cpp.o 2022-05-05T12:20:02,903 [81/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/NativeFormatting.cpp.o 2022-05-05T12:20:05,009 [82/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/MSP430AttributeParser.cpp.o 2022-05-05T12:20:05,342 [83/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/OptimizedStructLayout.cpp.o 2022-05-05T12:20:05,343 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/lib/Support/OptimizedStructLayout.cpp: In function ‘std::pair llvm::performOptimizedStructLayout(llvm::MutableArrayRef)’: 2022-05-05T12:20:05,344 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/lib/Support/OptimizedStructLayout.cpp:42:1: note: parameter passing for argument of type ‘llvm::MutableArrayRef’ changed in GCC 7.1 2022-05-05T12:20:05,345 llvm::performOptimizedStructLayout(MutableArrayRef Fields) { 2022-05-05T12:20:05,345 ^~~~ 2022-05-05T12:20:06,831 [84/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Optional.cpp.o 2022-05-05T12:20:13,042 [85/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/PluginLoader.cpp.o 2022-05-05T12:20:14,775 [86/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Regex.cpp.o 2022-05-05T12:20:14,917 [87/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/PrettyStackTrace.cpp.o 2022-05-05T12:20:18,234 [88/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/RandomNumberGenerator.cpp.o 2022-05-05T12:20:18,415 [89/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/RISCVAttributes.cpp.o 2022-05-05T12:20:23,049 [90/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Parallel.cpp.o 2022-05-05T12:20:27,746 [91/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/RISCVAttributeParser.cpp.o 2022-05-05T12:20:29,223 [92/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/ScaledNumber.cpp.o 2022-05-05T12:20:30,348 [93/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/ItaniumManglingCanonicalizer.cpp.o 2022-05-05T12:20:34,010 [94/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/SHA1.cpp.o 2022-05-05T12:20:34,371 [95/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Signposts.cpp.o 2022-05-05T12:20:35,542 [96/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/SmallPtrSet.cpp.o 2022-05-05T12:20:40,940 [97/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/SmallVector.cpp.o 2022-05-05T12:20:46,209 [98/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/RISCVISAInfo.cpp.o 2022-05-05T12:20:48,425 [99/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/ScopedPrinter.cpp.o 2022-05-05T12:20:48,426 In file included from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/lib/Support/ScopedPrinter.cpp:1: 2022-05-05T12:20:48,427 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/ScopedPrinter.h: In member function ‘virtual void llvm::JSONScopedPrinter::printFlagsImpl(llvm::StringRef, llvm::HexNumber, llvm::ArrayRef)’: 2022-05-05T12:20:48,427 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/ScopedPrinter.h:673:8: note: parameter passing for argument of type ‘llvm::ArrayRef’ changed in GCC 7.1 2022-05-05T12:20:48,428 void printFlagsImpl(StringRef Label, HexNumber Value, 2022-05-05T12:20:48,429 ^~~~~~~~~~~~~~ 2022-05-05T12:20:48,429 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/ScopedPrinter.h: In member function ‘virtual void llvm::JSONScopedPrinter::printFlagsImpl(llvm::StringRef, llvm::HexNumber, llvm::ArrayRef)’: 2022-05-05T12:20:48,430 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/ScopedPrinter.h:688:8: note: parameter passing for argument of type ‘llvm::ArrayRef’ changed in GCC 7.1 2022-05-05T12:20:48,430 void printFlagsImpl(StringRef Label, HexNumber Value, 2022-05-05T12:20:48,431 ^~~~~~~~~~~~~~ 2022-05-05T12:20:48,431 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/ScopedPrinter.h: In member function ‘virtual void llvm::JSONScopedPrinter::printList(llvm::StringRef, llvm::ArrayRef)’: 2022-05-05T12:20:48,432 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/ScopedPrinter.h:630:8: note: parameter passing for argument of type ‘const llvm::ArrayRef’ changed in GCC 7.1 2022-05-05T12:20:48,432 void printList(StringRef Label, const ArrayRef List) override { 2022-05-05T12:20:48,433 ^~~~~~~~~ 2022-05-05T12:20:48,433 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/ScopedPrinter.h:630:8: note: parameter passing for argument of type ‘const llvm::ArrayRef’ changed in GCC 7.1 2022-05-05T12:20:48,434 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/ScopedPrinter.h: In member function ‘virtual void llvm::JSONScopedPrinter::printHexListImpl(llvm::StringRef, llvm::ArrayRef)’: 2022-05-05T12:20:48,435 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/ScopedPrinter.h:707:8: note: parameter passing for argument of type ‘const llvm::ArrayRef’ changed in GCC 7.1 2022-05-05T12:20:48,436 void printHexListImpl(StringRef Label, 2022-05-05T12:20:48,457 ^~~~~~~~~~~~~~~~ 2022-05-05T12:20:48,457 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/ScopedPrinter.h: In member function ‘virtual void llvm::JSONScopedPrinter::printList(llvm::StringRef, llvm::ArrayRef)’: 2022-05-05T12:20:48,458 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/ScopedPrinter.h:614:8: note: parameter passing for argument of type ‘const llvm::ArrayRef’ changed in GCC 7.1 2022-05-05T12:20:48,459 void printList(StringRef Label, const ArrayRef List) override { 2022-05-05T12:20:48,460 ^~~~~~~~~ 2022-05-05T12:20:48,460 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/ScopedPrinter.h: In member function ‘virtual void llvm::JSONScopedPrinter::printList(llvm::StringRef, llvm::ArrayRef)’: 2022-05-05T12:20:48,461 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/ScopedPrinter.h:598:8: note: parameter passing for argument of type ‘const llvm::ArrayRef’ changed in GCC 7.1 2022-05-05T12:20:48,461 void printList(StringRef Label, const ArrayRef List) override { 2022-05-05T12:20:48,462 ^~~~~~~~~ 2022-05-05T12:20:48,462 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/ScopedPrinter.h: In member function ‘virtual void llvm::ScopedPrinter::printList(llvm::StringRef, llvm::ArrayRef)’: 2022-05-05T12:20:48,463 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/ScopedPrinter.h:307:16: note: parameter passing for argument of type ‘const llvm::ArrayRef’ changed in GCC 7.1 2022-05-05T12:20:48,463 virtual void printList(StringRef Label, const ArrayRef List) { 2022-05-05T12:20:48,464 ^~~~~~~~~ 2022-05-05T12:20:48,464 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/ScopedPrinter.h: In member function ‘virtual void llvm::ScopedPrinter::printList(llvm::StringRef, llvm::ArrayRef)’: 2022-05-05T12:20:48,465 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/ScopedPrinter.h:288:16: note: parameter passing for argument of type ‘const llvm::ArrayRef’ changed in GCC 7.1 2022-05-05T12:20:48,466 virtual void printList(StringRef Label, const ArrayRef List) { 2022-05-05T12:20:48,466 ^~~~~~~~~ 2022-05-05T12:20:48,480 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/ScopedPrinter.h: In member function ‘virtual void llvm::ScopedPrinter::printList(llvm::StringRef, llvm::ArrayRef)’: 2022-05-05T12:20:48,480 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/ScopedPrinter.h:269:16: note: parameter passing for argument of type ‘const llvm::ArrayRef’ changed in GCC 7.1 2022-05-05T12:20:48,481 virtual void printList(StringRef Label, const ArrayRef List) { 2022-05-05T12:20:48,481 ^~~~~~~~~ 2022-05-05T12:20:48,482 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/ScopedPrinter.h: In member function ‘virtual void llvm::ScopedPrinter::printFlagsImpl(llvm::StringRef, llvm::HexNumber, llvm::ArrayRef)’: 2022-05-05T12:20:48,483 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/ScopedPrinter.h:431:16: note: parameter passing for argument of type ‘llvm::ArrayRef’ changed in GCC 7.1 2022-05-05T12:20:48,483 virtual void printFlagsImpl(StringRef Label, HexNumber Value, 2022-05-05T12:20:48,484 ^~~~~~~~~~~~~~ 2022-05-05T12:20:48,485 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/ScopedPrinter.h: In member function ‘virtual void llvm::ScopedPrinter::printFlagsImpl(llvm::StringRef, llvm::HexNumber, llvm::ArrayRef)’: 2022-05-05T12:20:48,485 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/ScopedPrinter.h:439:16: note: parameter passing for argument of type ‘llvm::ArrayRef’ changed in GCC 7.1 2022-05-05T12:20:48,486 virtual void printFlagsImpl(StringRef Label, HexNumber Value, 2022-05-05T12:20:48,497 ^~~~~~~~~~~~~~ 2022-05-05T12:20:48,497 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/ScopedPrinter.h: In member function ‘virtual void llvm::ScopedPrinter::printHexListImpl(llvm::StringRef, llvm::ArrayRef)’: 2022-05-05T12:20:48,498 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/ScopedPrinter.h:455:16: note: parameter passing for argument of type ‘const llvm::ArrayRef’ changed in GCC 7.1 2022-05-05T12:20:48,498 virtual void printHexListImpl(StringRef Label, 2022-05-05T12:20:48,499 ^~~~~~~~~~~~~~~~ 2022-05-05T12:20:52,841 [100/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/StringMap.cpp.o 2022-05-05T12:20:54,150 [101/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/SHA256.cpp.o 2022-05-05T12:20:54,430 [102/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/SourceMgr.cpp.o 2022-05-05T12:20:55,965 [103/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/StringExtras.cpp.o 2022-05-05T12:21:01,309 [104/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/StringSaver.cpp.o 2022-05-05T12:21:04,044 [105/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/SpecialCaseList.cpp.o 2022-05-05T12:21:05,725 [106/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/SymbolRemappingReader.cpp.o 2022-05-05T12:21:05,904 [107/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/SystemUtils.cpp.o 2022-05-05T12:21:07,797 [108/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Statistic.cpp.o 2022-05-05T12:21:14,322 [109/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/SuffixTree.cpp.o 2022-05-05T12:21:15,930 [110/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/StringRef.cpp.o 2022-05-05T12:21:16,546 [111/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/TarWriter.cpp.o 2022-05-05T12:21:18,695 [112/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/TargetParser.cpp.o 2022-05-05T12:21:19,098 [113/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/ThreadPool.cpp.o 2022-05-05T12:21:26,162 [114/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/TrigramIndex.cpp.o 2022-05-05T12:21:27,700 [115/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/ToolOutputFile.cpp.o 2022-05-05T12:21:32,463 [116/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Twine.cpp.o 2022-05-05T12:21:33,788 [117/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/TypeSize.cpp.o 2022-05-05T12:21:34,608 [118/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/UnicodeCaseFold.cpp.o 2022-05-05T12:21:35,554 [119/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Unicode.cpp.o 2022-05-05T12:21:35,783 [120/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/TimeProfiler.cpp.o 2022-05-05T12:21:35,784 In file included from /usr/include/c++/8/algorithm:62, 2022-05-05T12:21:35,785 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/SmallVector.h:19, 2022-05-05T12:21:35,785 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/Error.h:17, 2022-05-05T12:21:35,786 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/TimeProfiler.h:12, 2022-05-05T12:21:35,787 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/lib/Support/TimeProfiler.cpp:13: 2022-05-05T12:21:35,787 /usr/include/c++/8/bits/stl_algo.h: In function ‘void std::__unguarded_linear_insert(_RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator, std::pair > > >*, std::vector, std::pair > > > > >; _Compare = __gnu_cxx::__ops::_Val_comp_iter >]’: 2022-05-05T12:21:35,788 /usr/include/c++/8/bits/stl_algo.h:1821:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator, std::pair > > >*, std::vector, std::pair > > > > >’ changed in GCC 7.1 2022-05-05T12:21:35,788 __unguarded_linear_insert(_RandomAccessIterator __last, 2022-05-05T12:21:35,789 ^~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:21:35,789 /usr/include/c++/8/bits/stl_algo.h: In function ‘void std::__insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator, std::pair > > >*, std::vector, std::pair > > > > >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter >]’: 2022-05-05T12:21:35,790 /usr/include/c++/8/bits/stl_algo.h:1840:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator, std::pair > > >*, std::vector, std::pair > > > > >’ changed in GCC 7.1 2022-05-05T12:21:35,791 __insertion_sort(_RandomAccessIterator __first, 2022-05-05T12:21:35,791 ^~~~~~~~~~~~~~~~ 2022-05-05T12:21:35,792 /usr/include/c++/8/bits/stl_algo.h:1840:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator, std::pair > > >*, std::vector, std::pair > > > > >’ changed in GCC 7.1 2022-05-05T12:21:35,792 /usr/include/c++/8/bits/stl_algo.h:1840:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator, std::pair > > >*, std::vector, std::pair > > > > >’ changed in GCC 7.1 2022-05-05T12:21:35,793 In file included from /usr/include/c++/8/bits/stl_algo.h:61, 2022-05-05T12:21:35,793 from /usr/include/c++/8/algorithm:62, 2022-05-05T12:21:35,794 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/SmallVector.h:19, 2022-05-05T12:21:35,794 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/Error.h:17, 2022-05-05T12:21:35,795 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/TimeProfiler.h:12, 2022-05-05T12:21:35,795 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/lib/Support/TimeProfiler.cpp:13: 2022-05-05T12:21:35,796 /usr/include/c++/8/bits/stl_heap.h: In function ‘void std::__adjust_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator, std::pair > > >*, std::vector, std::pair > > > > >; _Distance = int; _Tp = std::pair, std::pair > > >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter >]’: 2022-05-05T12:21:35,796 /usr/include/c++/8/bits/stl_heap.h:214:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator, std::pair > > >*, std::vector, std::pair > > > > >’ changed in GCC 7.1 2022-05-05T12:21:35,797 __adjust_heap(_RandomAccessIterator __first, _Distance __holeIndex, 2022-05-05T12:21:35,798 ^~~~~~~~~~~~~ 2022-05-05T12:21:35,798 In file included from /usr/include/c++/8/vector:69, 2022-05-05T12:21:35,799 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/ArrayRef.h:25, 2022-05-05T12:21:35,799 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/StringExtras.h:18, 2022-05-05T12:21:35,800 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/Error.h:18, 2022-05-05T12:21:35,800 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/TimeProfiler.h:12, 2022-05-05T12:21:35,801 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/lib/Support/TimeProfiler.cpp:13: 2022-05-05T12:21:35,802 /usr/include/c++/8/bits/vector.tcc: In member function ‘void std::vector<_Tp, _Alloc>::_M_realloc_insert(std::vector<_Tp, _Alloc>::iterator, _Args&& ...) [with _Args = {std::__cxx11::basic_string, std::allocator >, const std::pair > >&}; _Tp = std::pair, std::pair > > >; _Alloc = std::allocator, std::pair > > > >]’: 2022-05-05T12:21:35,802 /usr/include/c++/8/bits/vector.tcc:413:7: note: parameter passing for argument of type ‘std::vector, std::pair > > > >::iterator’ {aka ‘__gnu_cxx::__normal_iterator, std::pair > > >*, std::vector, std::pair > > > > >’} changed in GCC 7.1 2022-05-05T12:21:35,803 vector<_Tp, _Alloc>:: 2022-05-05T12:21:35,803 ^~~~~~~~~~~~~~~~~~~ 2022-05-05T12:21:35,804 In file included from /usr/include/c++/8/bits/stl_algo.h:61, 2022-05-05T12:21:35,804 from /usr/include/c++/8/algorithm:62, 2022-05-05T12:21:35,805 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/SmallVector.h:19, 2022-05-05T12:21:35,805 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/Error.h:17, 2022-05-05T12:21:35,806 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/TimeProfiler.h:12, 2022-05-05T12:21:35,808 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/lib/Support/TimeProfiler.cpp:13: 2022-05-05T12:21:35,815 /usr/include/c++/8/bits/stl_heap.h: In function ‘void std::__make_heap(_RandomAccessIterator, _RandomAccessIterator, _Compare&) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator, std::pair > > >*, std::vector, std::pair > > > > >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter >]’: 2022-05-05T12:21:35,816 /usr/include/c++/8/bits/stl_heap.h:326:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator, std::pair > > >*, std::vector, std::pair > > > > >’ changed in GCC 7.1 2022-05-05T12:21:35,817 __make_heap(_RandomAccessIterator __first, _RandomAccessIterator __last, 2022-05-05T12:21:35,817 ^~~~~~~~~~~ 2022-05-05T12:21:35,818 /usr/include/c++/8/bits/stl_heap.h:326:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator, std::pair > > >*, std::vector, std::pair > > > > >’ changed in GCC 7.1 2022-05-05T12:21:35,819 In file included from /usr/include/c++/8/algorithm:62, 2022-05-05T12:21:35,819 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/SmallVector.h:19, 2022-05-05T12:21:35,820 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/Error.h:17, 2022-05-05T12:21:35,820 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/TimeProfiler.h:12, 2022-05-05T12:21:35,821 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/lib/Support/TimeProfiler.cpp:13: 2022-05-05T12:21:35,821 /usr/include/c++/8/bits/stl_algo.h: In function ‘void std::__introsort_loop(_RandomAccessIterator, _RandomAccessIterator, _Size, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator, std::pair > > >*, std::vector, std::pair > > > > >; _Size = int; _Compare = __gnu_cxx::__ops::_Iter_comp_iter >]’: 2022-05-05T12:21:35,822 /usr/include/c++/8/bits/stl_algo.h:1940:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator, std::pair > > >*, std::vector, std::pair > > > > >’ changed in GCC 7.1 2022-05-05T12:21:35,823 __introsort_loop(_RandomAccessIterator __first, 2022-05-05T12:21:35,823 ^~~~~~~~~~~~~~~~ 2022-05-05T12:21:35,824 /usr/include/c++/8/bits/stl_algo.h:1940:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator, std::pair > > >*, std::vector, std::pair > > > > >’ changed in GCC 7.1 2022-05-05T12:21:35,824 /usr/include/c++/8/bits/stl_algo.h:1954:25: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator, std::pair > > >*, std::vector, std::pair > > > > >’ changed in GCC 7.1 2022-05-05T12:21:35,825 std::__introsort_loop(__cut, __last, __depth_limit, __comp); 2022-05-05T12:21:35,825 ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:21:35,826 /usr/include/c++/8/bits/stl_algo.h:1672:23: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator, std::pair > > >*, std::vector, std::pair > > > > >’ changed in GCC 7.1 2022-05-05T12:21:35,827 std::__make_heap(__first, __middle, __comp); 2022-05-05T12:21:35,828 ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:21:35,828 In file included from /usr/include/c++/8/vector:69, 2022-05-05T12:21:35,829 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/ArrayRef.h:25, 2022-05-05T12:21:35,830 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/StringExtras.h:18, 2022-05-05T12:21:35,830 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/Error.h:18, 2022-05-05T12:21:35,831 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/TimeProfiler.h:12, 2022-05-05T12:21:35,831 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/lib/Support/TimeProfiler.cpp:13: 2022-05-05T12:21:35,832 /usr/include/c++/8/bits/vector.tcc: In member function ‘void llvm::TimeTraceProfiler::write(llvm::raw_pwrite_stream&)’: 2022-05-05T12:21:35,832 /usr/include/c++/8/bits/vector.tcc:109:4: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator, std::pair > > >*, std::vector, std::pair > > > > >’ changed in GCC 7.1 2022-05-05T12:21:35,833 _M_realloc_insert(end(), std::forward<_Args>(__args)...); 2022-05-05T12:21:35,834 ^~~~~~~~~~~~~~~~~ 2022-05-05T12:21:35,834 In file included from /usr/include/c++/8/algorithm:62, 2022-05-05T12:21:35,835 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/SmallVector.h:19, 2022-05-05T12:21:35,835 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/Error.h:17, 2022-05-05T12:21:35,836 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/TimeProfiler.h:12, 2022-05-05T12:21:35,844 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/lib/Support/TimeProfiler.cpp:13: 2022-05-05T12:21:35,848 /usr/include/c++/8/bits/stl_algo.h:1968:25: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator, std::pair > > >*, std::vector, std::pair > > > > >’ changed in GCC 7.1 2022-05-05T12:21:35,852 std::__introsort_loop(__first, __last, 2022-05-05T12:21:35,852 ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~ 2022-05-05T12:21:35,853 std::__lg(__last - __first) * 2, 2022-05-05T12:21:35,853 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:21:35,854 __comp); 2022-05-05T12:21:35,854 ~~~~~~~ 2022-05-05T12:21:35,855 /usr/include/c++/8/bits/stl_algo.h:1885:25: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator, std::pair > > >*, std::vector, std::pair > > > > >’ changed in GCC 7.1 2022-05-05T12:21:35,855 std::__insertion_sort(__first, __first + int(_S_threshold), __comp); 2022-05-05T12:21:35,856 ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:21:35,857 /usr/include/c++/8/bits/stl_algo.h:1890:23: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator, std::pair > > >*, std::vector, std::pair > > > > >’ changed in GCC 7.1 2022-05-05T12:21:35,857 std::__insertion_sort(__first, __last, __comp); 2022-05-05T12:21:35,858 ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:21:42,146 [121/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/VersionTuple.cpp.o 2022-05-05T12:21:45,250 [122/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Triple.cpp.o 2022-05-05T12:21:47,660 [123/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Timer.cpp.o 2022-05-05T12:21:47,661 In file included from /usr/include/c++/8/algorithm:62, 2022-05-05T12:21:47,662 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/StringRef.h:16, 2022-05-05T12:21:47,662 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/StringMapEntry.h:20, 2022-05-05T12:21:47,663 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/StringMap.h:17, 2022-05-05T12:21:47,663 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/Timer.h:12, 2022-05-05T12:21:47,664 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/lib/Support/Timer.cpp:13: 2022-05-05T12:21:47,664 /usr/include/c++/8/bits/stl_algo.h: In function ‘void std::__insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator >; _Compare = __gnu_cxx::__ops::_Iter_less_iter]’: 2022-05-05T12:21:47,665 /usr/include/c++/8/bits/stl_algo.h:1840:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator >’ changed in GCC 7.1 2022-05-05T12:21:47,665 __insertion_sort(_RandomAccessIterator __first, 2022-05-05T12:21:47,666 ^~~~~~~~~~~~~~~~ 2022-05-05T12:21:47,666 /usr/include/c++/8/bits/stl_algo.h:1840:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator >’ changed in GCC 7.1 2022-05-05T12:21:47,667 In file included from /usr/include/c++/8/bits/stl_algo.h:61, 2022-05-05T12:21:47,668 from /usr/include/c++/8/algorithm:62, 2022-05-05T12:21:47,668 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/StringRef.h:16, 2022-05-05T12:21:47,669 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/StringMapEntry.h:20, 2022-05-05T12:21:47,669 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/StringMap.h:17, 2022-05-05T12:21:47,670 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/Timer.h:12, 2022-05-05T12:21:47,671 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/lib/Support/Timer.cpp:13: 2022-05-05T12:21:47,671 /usr/include/c++/8/bits/stl_heap.h: In function ‘void std::__adjust_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator >; _Distance = int; _Tp = llvm::TimerGroup::PrintRecord; _Compare = __gnu_cxx::__ops::_Iter_less_iter]’: 2022-05-05T12:21:47,672 /usr/include/c++/8/bits/stl_heap.h:214:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator >’ changed in GCC 7.1 2022-05-05T12:21:47,673 __adjust_heap(_RandomAccessIterator __first, _Distance __holeIndex, 2022-05-05T12:21:47,673 ^~~~~~~~~~~~~ 2022-05-05T12:21:47,674 In file included from /usr/include/c++/8/algorithm:62, 2022-05-05T12:21:47,674 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/StringRef.h:16, 2022-05-05T12:21:47,675 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/StringMapEntry.h:20, 2022-05-05T12:21:47,675 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/StringMap.h:17, 2022-05-05T12:21:47,676 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/Timer.h:12, 2022-05-05T12:21:47,687 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/lib/Support/Timer.cpp:13: 2022-05-05T12:21:47,688 /usr/include/c++/8/bits/stl_algo.h: In function ‘void std::__introsort_loop(_RandomAccessIterator, _RandomAccessIterator, _Size, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator >; _Size = int; _Compare = __gnu_cxx::__ops::_Iter_less_iter]’: 2022-05-05T12:21:47,689 /usr/include/c++/8/bits/stl_algo.h:1940:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator >’ changed in GCC 7.1 2022-05-05T12:21:47,689 __introsort_loop(_RandomAccessIterator __first, 2022-05-05T12:21:47,690 ^~~~~~~~~~~~~~~~ 2022-05-05T12:21:47,690 /usr/include/c++/8/bits/stl_algo.h:1940:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator >’ changed in GCC 7.1 2022-05-05T12:21:47,691 /usr/include/c++/8/bits/stl_algo.h:1954:25: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator >’ changed in GCC 7.1 2022-05-05T12:21:47,692 std::__introsort_loop(__cut, __last, __depth_limit, __comp); 2022-05-05T12:21:47,692 ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:21:47,693 /usr/include/c++/8/bits/stl_algo.h: In member function ‘void llvm::TimerGroup::PrintQueuedTimers(llvm::raw_ostream&)’: 2022-05-05T12:21:47,693 /usr/include/c++/8/bits/stl_algo.h:1968:25: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator >’ changed in GCC 7.1 2022-05-05T12:21:47,694 std::__introsort_loop(__first, __last, 2022-05-05T12:21:47,695 ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~ 2022-05-05T12:21:47,695 std::__lg(__last - __first) * 2, 2022-05-05T12:21:47,696 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:21:47,717 __comp); 2022-05-05T12:21:47,718 ~~~~~~~ 2022-05-05T12:21:47,718 /usr/include/c++/8/bits/stl_algo.h:1885:25: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator >’ changed in GCC 7.1 2022-05-05T12:21:47,718 std::__insertion_sort(__first, __first + int(_S_threshold), __comp); 2022-05-05T12:21:47,719 ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:21:47,719 /usr/include/c++/8/bits/stl_algo.h:1890:23: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator >’ changed in GCC 7.1 2022-05-05T12:21:47,720 std::__insertion_sort(__first, __last, __comp); 2022-05-05T12:21:47,720 ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:21:47,926 [124/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/X86TargetParser.cpp.o 2022-05-05T12:21:51,737 [125/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/WithColor.cpp.o 2022-05-05T12:21:54,565 [126/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/raw_os_ostream.cpp.o 2022-05-05T12:21:55,135 [127/611] Building C object lib/Support/CMakeFiles/LLVMSupport.dir/regerror.c.o 2022-05-05T12:22:00,761 [128/611] Building C object lib/Support/CMakeFiles/LLVMSupport.dir/regcomp.c.o 2022-05-05T12:22:01,361 [129/611] Building C object lib/Support/CMakeFiles/LLVMSupport.dir/regfree.c.o 2022-05-05T12:22:01,999 [130/611] Building C object lib/Support/CMakeFiles/LLVMSupport.dir/regstrlcpy.c.o 2022-05-05T12:22:04,070 [131/611] Building C object lib/Support/CMakeFiles/LLVMSupport.dir/regexec.c.o 2022-05-05T12:22:09,846 [132/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/xxhash.cpp.o 2022-05-05T12:22:10,205 [133/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Atomic.cpp.o 2022-05-05T12:22:13,135 [134/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Z3Solver.cpp.o 2022-05-05T12:22:13,576 [135/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/raw_ostream.cpp.o 2022-05-05T12:22:15,134 [136/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/YAMLTraits.cpp.o 2022-05-05T12:22:17,095 [137/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/YAMLParser.cpp.o 2022-05-05T12:22:18,842 [138/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Errno.cpp.o 2022-05-05T12:22:20,592 [139/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/DynamicLibrary.cpp.o 2022-05-05T12:22:31,625 [140/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Memory.cpp.o 2022-05-05T12:22:33,895 [141/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Host.cpp.o 2022-05-05T12:22:34,530 [142/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Process.cpp.o 2022-05-05T12:22:36,488 [143/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/VirtualFileSystem.cpp.o 2022-05-05T12:22:38,079 [144/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/RWMutex.cpp.o 2022-05-05T12:22:38,429 [145/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Valgrind.cpp.o 2022-05-05T12:22:38,902 [146/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Watchdog.cpp.o 2022-05-05T12:22:42,734 [147/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/ThreadLocal.cpp.o 2022-05-05T12:22:43,596 [148/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Program.cpp.o 2022-05-05T12:22:46,912 [149/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Threading.cpp.o 2022-05-05T12:22:50,253 [150/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Path.cpp.o 2022-05-05T12:22:55,194 [151/611] Building CXX object lib/TableGen/CMakeFiles/LLVMTableGen.dir/Error.cpp.o 2022-05-05T12:23:02,663 [152/611] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/Signals.cpp.o 2022-05-05T12:23:04,669 [153/611] Building CXX object lib/TableGen/CMakeFiles/LLVMTableGen.dir/DetailedRecordsBackend.cpp.o 2022-05-05T12:23:05,123 [154/611] Linking CXX static library lib/libLLVMSupport.a 2022-05-05T12:23:12,464 [155/611] Building CXX object lib/TableGen/CMakeFiles/LLVMTableGen.dir/TableGenBackend.cpp.o 2022-05-05T12:23:13,199 [156/611] Building CXX object lib/TableGen/CMakeFiles/LLVMTableGen.dir/Main.cpp.o 2022-05-05T12:23:15,583 [157/611] Building CXX object lib/TableGen/CMakeFiles/LLVMTableGen.dir/TableGenBackendSkeleton.cpp.o 2022-05-05T12:23:16,393 [158/611] Building CXX object lib/TableGen/CMakeFiles/LLVMTableGen.dir/StringMatcher.cpp.o 2022-05-05T12:23:19,329 [159/611] Building CXX object lib/TableGen/CMakeFiles/LLVMTableGen.dir/JSONBackend.cpp.o 2022-05-05T12:23:36,802 [160/611] Building CXX object lib/TableGen/CMakeFiles/LLVMTableGen.dir/TGLexer.cpp.o 2022-05-05T12:23:44,590 [161/611] Building CXX object lib/TableGen/CMakeFiles/LLVMTableGen.dir/Record.cpp.o 2022-05-05T12:23:44,590 In file included from /usr/include/c++/8/vector:69, 2022-05-05T12:23:44,591 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/ArrayRef.h:25, 2022-05-05T12:23:44,592 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/TableGen/Record.h:17, 2022-05-05T12:23:44,592 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/lib/TableGen/Record.cpp:13: 2022-05-05T12:23:44,593 /usr/include/c++/8/bits/vector.tcc: In member function ‘void std::vector<_Tp, _Alloc>::_M_realloc_insert(std::vector<_Tp, _Alloc>::iterator, _Args&& ...) [with _Args = {long long int}; _Tp = long long int; _Alloc = std::allocator]’: 2022-05-05T12:23:44,593 /usr/include/c++/8/bits/vector.tcc:413:7: note: parameter passing for argument of type ‘std::vector::iterator’ {aka ‘__gnu_cxx::__normal_iterator >’} changed in GCC 7.1 2022-05-05T12:23:44,594 vector<_Tp, _Alloc>:: 2022-05-05T12:23:44,594 ^~~~~~~~~~~~~~~~~~~ 2022-05-05T12:23:44,595 /usr/include/c++/8/bits/vector.tcc:413:7: note: parameter passing for argument of type ‘std::vector::iterator’ {aka ‘__gnu_cxx::__normal_iterator >’} changed in GCC 7.1 2022-05-05T12:23:44,595 /usr/include/c++/8/bits/vector.tcc: In member function ‘std::vector llvm::Record::getValueAsListOfInts(llvm::StringRef) const’: 2022-05-05T12:23:44,596 /usr/include/c++/8/bits/vector.tcc:109:4: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator >’ changed in GCC 7.1 2022-05-05T12:23:44,597 _M_realloc_insert(end(), std::forward<_Args>(__args)...); 2022-05-05T12:23:44,598 ^~~~~~~~~~~~~~~~~ 2022-05-05T12:23:59,105 [162/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/Attributes.cpp.o 2022-05-05T12:23:59,894 [163/611] Building CXX object lib/TableGen/CMakeFiles/LLVMTableGen.dir/SetTheory.cpp.o 2022-05-05T12:24:04,308 [164/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/AsmWriterInst.cpp.o 2022-05-05T12:24:15,252 [165/611] Building CXX object lib/TableGen/CMakeFiles/LLVMTableGen.dir/TGParser.cpp.o 2022-05-05T12:24:15,741 [166/611] Linking CXX static library lib/libLLVMTableGen.a 2022-05-05T12:24:20,960 [167/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/CodeBeadsGen.cpp.o 2022-05-05T12:24:26,827 [168/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/CallingConvEmitter.cpp.o 2022-05-05T12:24:28,985 [169/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/AsmWriterEmitter.cpp.o 2022-05-05T12:24:37,116 [170/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/CodeGenHwModes.cpp.o 2022-05-05T12:24:44,724 [171/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/CodeEmitterGen.cpp.o 2022-05-05T12:25:02,354 [172/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/AsmMatcherEmitter.cpp.o 2022-05-05T12:25:05,649 [173/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/CodeGenMapTable.cpp.o 2022-05-05T12:25:11,431 [174/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/CodeGenInstruction.cpp.o 2022-05-05T12:25:11,432 In file included from /usr/include/c++/8/vector:69, 2022-05-05T12:25:11,432 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/ArrayRef.h:25, 2022-05-05T12:25:11,433 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/BitVector.h:17, 2022-05-05T12:25:11,434 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenInstruction.h:16, 2022-05-05T12:25:11,434 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenInstruction.cpp:13: 2022-05-05T12:25:11,435 /usr/include/c++/8/bits/vector.tcc: In member function ‘void std::vector<_Tp, _Alloc>::_M_realloc_insert(std::vector<_Tp, _Alloc>::iterator, _Args&& ...) [with _Args = {const llvm::CodeGenInstAlias::ResultOperand&}; _Tp = llvm::CodeGenInstAlias::ResultOperand; _Alloc = std::allocator]’: 2022-05-05T12:25:11,435 /usr/include/c++/8/bits/vector.tcc:413:7: note: parameter passing for argument of type ‘std::vector::iterator’ {aka ‘__gnu_cxx::__normal_iterator >’} changed in GCC 7.1 2022-05-05T12:25:11,436 vector<_Tp, _Alloc>:: 2022-05-05T12:25:11,436 ^~~~~~~~~~~~~~~~~~~ 2022-05-05T12:25:11,437 /usr/include/c++/8/bits/vector.tcc: In member function ‘void std::vector<_Tp, _Alloc>::_M_realloc_insert(std::vector<_Tp, _Alloc>::iterator, _Args&& ...) [with _Args = {std::__cxx11::basic_string, std::allocator >, llvm::Record*&}; _Tp = llvm::CodeGenInstAlias::ResultOperand; _Alloc = std::allocator]’: 2022-05-05T12:25:11,438 /usr/include/c++/8/bits/vector.tcc:413:7: note: parameter passing for argument of type ‘std::vector::iterator’ {aka ‘__gnu_cxx::__normal_iterator >’} changed in GCC 7.1 2022-05-05T12:25:11,438 In file included from /usr/include/c++/8/vector:64, 2022-05-05T12:25:11,439 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/ArrayRef.h:25, 2022-05-05T12:25:11,439 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/BitVector.h:17, 2022-05-05T12:25:11,440 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenInstruction.h:16, 2022-05-05T12:25:11,440 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenInstruction.cpp:13: 2022-05-05T12:25:11,441 /usr/include/c++/8/bits/stl_vector.h: In constructor ‘llvm::CodeGenInstAlias::CodeGenInstAlias(llvm::Record*, llvm::CodeGenTarget&)’: 2022-05-05T12:25:11,441 /usr/include/c++/8/bits/stl_vector.h:1085:4: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator >’ changed in GCC 7.1 2022-05-05T12:25:11,442 _M_realloc_insert(end(), __x); 2022-05-05T12:25:11,442 ^~~~~~~~~~~~~~~~~ 2022-05-05T12:25:11,443 In file included from /usr/include/c++/8/vector:69, 2022-05-05T12:25:11,444 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/ArrayRef.h:25, 2022-05-05T12:25:11,444 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/BitVector.h:17, 2022-05-05T12:25:11,445 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenInstruction.h:16, 2022-05-05T12:25:11,445 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenInstruction.cpp:13: 2022-05-05T12:25:11,446 /usr/include/c++/8/bits/vector.tcc:109:4: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator >’ changed in GCC 7.1 2022-05-05T12:25:11,467 _M_realloc_insert(end(), std::forward<_Args>(__args)...); 2022-05-05T12:25:11,468 ^~~~~~~~~~~~~~~~~ 2022-05-05T12:25:11,468 In file included from /usr/include/c++/8/vector:64, 2022-05-05T12:25:11,469 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/ArrayRef.h:25, 2022-05-05T12:25:11,469 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/BitVector.h:17, 2022-05-05T12:25:11,470 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenInstruction.h:16, 2022-05-05T12:25:11,471 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenInstruction.cpp:13: 2022-05-05T12:25:11,471 /usr/include/c++/8/bits/stl_vector.h:1085:4: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator >’ changed in GCC 7.1 2022-05-05T12:25:11,472 _M_realloc_insert(end(), __x); 2022-05-05T12:25:11,472 ^~~~~~~~~~~~~~~~~ 2022-05-05T12:25:39,575 [175/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/DAGISelEmitter.cpp.o 2022-05-05T12:26:02,306 [176/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/DAGISelMatcherEmitter.cpp.o 2022-05-05T12:26:04,717 [177/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/CodeGenTarget.cpp.o 2022-05-05T12:26:04,718 In file included from /usr/include/c++/8/algorithm:62, 2022-05-05T12:26:04,718 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/StringRef.h:16, 2022-05-05T12:26:04,719 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/StringMapEntry.h:20, 2022-05-05T12:26:04,719 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/StringMap.h:17, 2022-05-05T12:26:04,720 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenHwModes.h:14, 2022-05-05T12:26:04,721 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenTarget.h:19, 2022-05-05T12:26:04,721 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenTarget.cpp:16: 2022-05-05T12:26:04,722 /usr/include/c++/8/bits/stl_algo.h: In function ‘void std::__unguarded_linear_insert(_RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator >; _Compare = __gnu_cxx::__ops::_Val_less_iter]’: 2022-05-05T12:26:04,722 /usr/include/c++/8/bits/stl_algo.h:1821:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator >’ changed in GCC 7.1 2022-05-05T12:26:04,723 __unguarded_linear_insert(_RandomAccessIterator __last, 2022-05-05T12:26:04,724 ^~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:26:04,724 In file included from /usr/include/c++/8/bits/stl_algo.h:61, 2022-05-05T12:26:04,725 from /usr/include/c++/8/algorithm:62, 2022-05-05T12:26:04,725 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/StringRef.h:16, 2022-05-05T12:26:04,726 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/StringMapEntry.h:20, 2022-05-05T12:26:04,728 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/StringMap.h:17, 2022-05-05T12:26:04,729 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenHwModes.h:14, 2022-05-05T12:26:04,729 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenTarget.h:19, 2022-05-05T12:26:04,730 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenTarget.cpp:16: 2022-05-05T12:26:04,730 /usr/include/c++/8/bits/stl_heap.h: In function ‘void std::__adjust_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator >; _Distance = int; _Tp = llvm::CodeGenIntrinsic::ArgAttribute; _Compare = __gnu_cxx::__ops::_Iter_less_iter]’: 2022-05-05T12:26:04,731 /usr/include/c++/8/bits/stl_heap.h:214:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator >’ changed in GCC 7.1 2022-05-05T12:26:04,731 __adjust_heap(_RandomAccessIterator __first, _Distance __holeIndex, 2022-05-05T12:26:04,732 ^~~~~~~~~~~~~ 2022-05-05T12:26:04,732 In file included from /usr/include/c++/8/algorithm:62, 2022-05-05T12:26:04,733 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/StringRef.h:16, 2022-05-05T12:26:04,733 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/StringMapEntry.h:20, 2022-05-05T12:26:04,734 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/StringMap.h:17, 2022-05-05T12:26:04,735 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenHwModes.h:14, 2022-05-05T12:26:04,735 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenTarget.h:19, 2022-05-05T12:26:04,736 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenTarget.cpp:16: 2022-05-05T12:26:04,748 /usr/include/c++/8/bits/stl_algo.h: In function ‘void std::__insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator >; _Compare = __gnu_cxx::__ops::_Iter_less_iter]’: 2022-05-05T12:26:04,749 /usr/include/c++/8/bits/stl_algo.h:1840:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator >’ changed in GCC 7.1 2022-05-05T12:26:04,766 __insertion_sort(_RandomAccessIterator __first, 2022-05-05T12:26:04,767 ^~~~~~~~~~~~~~~~ 2022-05-05T12:26:04,768 /usr/include/c++/8/bits/stl_algo.h:1840:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator >’ changed in GCC 7.1 2022-05-05T12:26:04,768 /usr/include/c++/8/bits/stl_algo.h:1840:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator >’ changed in GCC 7.1 2022-05-05T12:26:04,769 In file included from /usr/include/c++/8/vector:69, 2022-05-05T12:26:04,769 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenHwModes.h:18, 2022-05-05T12:26:04,770 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenTarget.h:19, 2022-05-05T12:26:04,770 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenTarget.cpp:16: 2022-05-05T12:26:04,771 /usr/include/c++/8/bits/vector.tcc: In member function ‘void std::vector<_Tp, _Alloc>::_M_realloc_insert(std::vector<_Tp, _Alloc>::iterator, _Args&& ...) [with _Args = {unsigned int&, llvm::CodeGenIntrinsic::ArgAttrKind, int}; _Tp = llvm::CodeGenIntrinsic::ArgAttribute; _Alloc = std::allocator]’: 2022-05-05T12:26:04,771 /usr/include/c++/8/bits/vector.tcc:413:7: note: parameter passing for argument of type ‘std::vector::iterator’ {aka ‘__gnu_cxx::__normal_iterator >’} changed in GCC 7.1 2022-05-05T12:26:04,772 vector<_Tp, _Alloc>:: 2022-05-05T12:26:04,772 ^~~~~~~~~~~~~~~~~~~ 2022-05-05T12:26:04,773 /usr/include/c++/8/bits/vector.tcc: In member function ‘void std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {unsigned int&, llvm::CodeGenIntrinsic::ArgAttrKind, int}; _Tp = llvm::CodeGenIntrinsic::ArgAttribute; _Alloc = std::allocator]’: 2022-05-05T12:26:04,773 /usr/include/c++/8/bits/vector.tcc:109:4: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator >’ changed in GCC 7.1 2022-05-05T12:26:04,774 _M_realloc_insert(end(), std::forward<_Args>(__args)...); 2022-05-05T12:26:04,774 ^~~~~~~~~~~~~~~~~ 2022-05-05T12:26:04,775 /usr/include/c++/8/bits/vector.tcc: In member function ‘void std::vector<_Tp, _Alloc>::_M_realloc_insert(std::vector<_Tp, _Alloc>::iterator, _Args&& ...) [with _Args = {unsigned int&, llvm::CodeGenIntrinsic::ArgAttrKind, long long unsigned int&}; _Tp = llvm::CodeGenIntrinsic::ArgAttribute; _Alloc = std::allocator]’: 2022-05-05T12:26:04,776 /usr/include/c++/8/bits/vector.tcc:413:7: note: parameter passing for argument of type ‘std::vector::iterator’ {aka ‘__gnu_cxx::__normal_iterator >’} changed in GCC 7.1 2022-05-05T12:26:04,776 vector<_Tp, _Alloc>:: 2022-05-05T12:26:04,777 ^~~~~~~~~~~~~~~~~~~ 2022-05-05T12:26:04,778 /usr/include/c++/8/bits/vector.tcc: In member function ‘void llvm::CodeGenIntrinsic::setProperty(llvm::Record*)’: 2022-05-05T12:26:04,778 /usr/include/c++/8/bits/vector.tcc:109:4: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator >’ changed in GCC 7.1 2022-05-05T12:26:04,779 _M_realloc_insert(end(), std::forward<_Args>(__args)...); 2022-05-05T12:26:04,779 ^~~~~~~~~~~~~~~~~ 2022-05-05T12:26:04,780 In file included from /usr/include/c++/8/algorithm:62, 2022-05-05T12:26:04,780 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/StringRef.h:16, 2022-05-05T12:26:04,781 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/StringMapEntry.h:20, 2022-05-05T12:26:04,781 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/StringMap.h:17, 2022-05-05T12:26:04,782 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenHwModes.h:14, 2022-05-05T12:26:04,782 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenTarget.h:19, 2022-05-05T12:26:04,783 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenTarget.cpp:16: 2022-05-05T12:26:04,784 /usr/include/c++/8/bits/stl_algo.h: In function ‘void std::__introsort_loop(_RandomAccessIterator, _RandomAccessIterator, _Size, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator >; _Size = int; _Compare = __gnu_cxx::__ops::_Iter_less_iter]’: 2022-05-05T12:26:04,784 /usr/include/c++/8/bits/stl_algo.h:1940:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator >’ changed in GCC 7.1 2022-05-05T12:26:04,785 __introsort_loop(_RandomAccessIterator __first, 2022-05-05T12:26:04,785 ^~~~~~~~~~~~~~~~ 2022-05-05T12:26:04,785 /usr/include/c++/8/bits/stl_algo.h:1940:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator >’ changed in GCC 7.1 2022-05-05T12:26:04,786 /usr/include/c++/8/bits/stl_algo.h:1954:25: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator >’ changed in GCC 7.1 2022-05-05T12:26:04,786 std::__introsort_loop(__cut, __last, __depth_limit, __comp); 2022-05-05T12:26:04,787 ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:26:04,787 /usr/include/c++/8/bits/stl_algo.h: In constructor ‘llvm::CodeGenIntrinsic::CodeGenIntrinsic(llvm::Record*, std::vector)’: 2022-05-05T12:26:04,788 /usr/include/c++/8/bits/stl_algo.h:1968:25: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator >’ changed in GCC 7.1 2022-05-05T12:26:04,788 std::__introsort_loop(__first, __last, 2022-05-05T12:26:04,789 ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~ 2022-05-05T12:26:04,789 std::__lg(__last - __first) * 2, 2022-05-05T12:26:04,790 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:26:04,790 __comp); 2022-05-05T12:26:04,791 ~~~~~~~ 2022-05-05T12:26:04,791 /usr/include/c++/8/bits/stl_algo.h:1885:25: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator >’ changed in GCC 7.1 2022-05-05T12:26:04,792 std::__insertion_sort(__first, __first + int(_S_threshold), __comp); 2022-05-05T12:26:04,792 ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:26:04,793 /usr/include/c++/8/bits/stl_algo.h:1890:23: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator >’ changed in GCC 7.1 2022-05-05T12:26:04,793 std::__insertion_sort(__first, __last, __comp); 2022-05-05T12:26:04,794 ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:26:09,781 [178/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/CodeGenSchedule.cpp.o 2022-05-05T12:26:09,782 In file included from /usr/include/c++/8/vector:69, 2022-05-05T12:26:09,782 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/ArrayRef.h:25, 2022-05-05T12:26:09,783 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/TableGen/Record.h:17, 2022-05-05T12:26:09,784 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenSchedule.h:22, 2022-05-05T12:26:09,784 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenSchedule.cpp:14: 2022-05-05T12:26:09,785 /usr/include/c++/8/bits/vector.tcc: In member function ‘void std::vector<_Tp, _Alloc>::_M_realloc_insert(std::vector<_Tp, _Alloc>::iterator, _Args&& ...) [with _Args = {const llvm::APInt&, const llvm::APInt&, const llvm::Record*&}; _Tp = llvm::PredicateInfo; _Alloc = std::allocator]’: 2022-05-05T12:26:09,785 /usr/include/c++/8/bits/vector.tcc:413:7: note: parameter passing for argument of type ‘std::vector::iterator’ {aka ‘__gnu_cxx::__normal_iterator >’} changed in GCC 7.1 2022-05-05T12:26:09,786 vector<_Tp, _Alloc>:: 2022-05-05T12:26:09,787 ^~~~~~~~~~~~~~~~~~~ 2022-05-05T12:26:09,787 /usr/include/c++/8/bits/vector.tcc: In member function ‘void llvm::OpcodeInfo::addPredicateForProcModel(const llvm::APInt&, const llvm::APInt&, const llvm::Record*)’: 2022-05-05T12:26:09,788 /usr/include/c++/8/bits/vector.tcc:109:4: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator >’ changed in GCC 7.1 2022-05-05T12:26:09,788 _M_realloc_insert(end(), std::forward<_Args>(__args)...); 2022-05-05T12:26:09,789 ^~~~~~~~~~~~~~~~~ 2022-05-05T12:26:24,812 [179/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/DAGISelMatcherGen.cpp.o 2022-05-05T12:26:27,722 [180/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/CodeGenRegisters.cpp.o 2022-05-05T12:26:27,723 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenRegisters.cpp: In member function ‘void llvm::CodeGenRegBank::inferMatchingSuperRegClass(llvm::CodeGenRegisterClass*, std::__cxx11::list::iterator)’: 2022-05-05T12:26:27,723 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenRegisters.cpp:2240:6: note: parameter passing for argument of type ‘std::__cxx11::list::iterator’ {aka ‘std::_List_iterator’} changed in GCC 7.1 2022-05-05T12:26:27,724 void CodeGenRegBank::inferMatchingSuperRegClass(CodeGenRegisterClass *RC, 2022-05-05T12:26:27,725 ^~~~~~~~~~~~~~ 2022-05-05T12:26:27,952 [181/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/CodeGenDAGPatterns.cpp.o 2022-05-05T12:26:31,990 [182/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/DAGISelMatcherOpt.cpp.o 2022-05-05T12:26:37,911 [183/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/DAGISelMatcher.cpp.o 2022-05-05T12:26:48,267 [184/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/DisassemblerEmitter.cpp.o 2022-05-05T12:26:55,451 [185/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/ExegesisEmitter.cpp.o 2022-05-05T12:26:57,776 [186/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/DFAEmitter.cpp.o 2022-05-05T12:26:57,777 In file included from /usr/include/c++/8/vector:69, 2022-05-05T12:26:57,778 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/UniqueVector.h:15, 2022-05-05T12:26:57,778 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/DFAEmitter.h:21, 2022-05-05T12:26:57,779 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/DFAEmitter.cpp:23: 2022-05-05T12:26:57,779 /usr/include/c++/8/bits/vector.tcc: In member function ‘void std::vector<_Tp, _Alloc>::_M_realloc_insert(std::vector<_Tp, _Alloc>::iterator, _Args&& ...) [with _Args = {const long long unsigned int&}; _Tp = long long unsigned int; _Alloc = std::allocator]’: 2022-05-05T12:26:57,780 /usr/include/c++/8/bits/vector.tcc:413:7: note: parameter passing for argument of type ‘std::vector::iterator’ {aka ‘__gnu_cxx::__normal_iterator >’} changed in GCC 7.1 2022-05-05T12:26:57,780 vector<_Tp, _Alloc>:: 2022-05-05T12:26:57,781 ^~~~~~~~~~~~~~~~~~~ 2022-05-05T12:26:57,781 /usr/include/c++/8/bits/vector.tcc: In member function ‘void std::vector<_Tp, _Alloc>::_M_realloc_insert(std::vector<_Tp, _Alloc>::iterator, _Args&& ...) [with _Args = {const llvm::SmallVector&}; _Tp = llvm::SmallVector; _Alloc = std::allocator >]’: 2022-05-05T12:26:57,782 /usr/include/c++/8/bits/vector.tcc:413:7: note: parameter passing for argument of type ‘std::vector, std::allocator > >::iterator’ {aka ‘__gnu_cxx::__normal_iterator*, std::vector, std::allocator > > >’} changed in GCC 7.1 2022-05-05T12:26:57,782 /usr/include/c++/8/bits/vector.tcc:413:7: note: parameter passing for argument of type ‘std::vector, std::allocator > >::iterator’ {aka ‘__gnu_cxx::__normal_iterator*, std::vector, std::allocator > > >’} changed in GCC 7.1 2022-05-05T12:26:57,783 In file included from /usr/include/c++/8/vector:64, 2022-05-05T12:26:57,783 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/UniqueVector.h:15, 2022-05-05T12:26:57,784 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/DFAEmitter.h:21, 2022-05-05T12:26:57,784 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/DFAEmitter.cpp:23: 2022-05-05T12:26:57,785 /usr/include/c++/8/bits/stl_vector.h: In member function ‘void llvm::DfaEmitter::addTransition(llvm::DfaEmitter::state_type, llvm::DfaEmitter::state_type, llvm::DfaEmitter::action_type)’: 2022-05-05T12:26:57,785 /usr/include/c++/8/bits/stl_vector.h:1085:4: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator >’ changed in GCC 7.1 2022-05-05T12:26:57,786 _M_realloc_insert(end(), __x); 2022-05-05T12:26:57,786 ^~~~~~~~~~~~~~~~~ 2022-05-05T12:26:57,791 /usr/include/c++/8/bits/stl_vector.h: In member function ‘void llvm::DfaEmitter::visitDfaState(const DfaState&)’: 2022-05-05T12:26:57,791 /usr/include/c++/8/bits/stl_vector.h:1085:4: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator*, std::vector, std::allocator > > >’ changed in GCC 7.1 2022-05-05T12:26:57,792 _M_realloc_insert(end(), __x); 2022-05-05T12:26:57,792 ^~~~~~~~~~~~~~~~~ 2022-05-05T12:26:57,793 /usr/include/c++/8/bits/stl_vector.h: In member function ‘void llvm::DfaEmitter::constructDfa()’: 2022-05-05T12:26:57,794 /usr/include/c++/8/bits/stl_vector.h:1085:4: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator*, std::vector, std::allocator > > >’ changed in GCC 7.1 2022-05-05T12:26:57,794 _M_realloc_insert(end(), __x); 2022-05-05T12:26:57,795 ^~~~~~~~~~~~~~~~~ 2022-05-05T12:26:59,886 [187/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/DirectiveEmitter.cpp.o 2022-05-05T12:27:09,015 [188/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/DFAPacketizerEmitter.cpp.o 2022-05-05T12:27:09,015 In file included from /usr/include/c++/8/vector:69, 2022-05-05T12:27:09,016 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/ArrayRef.h:25, 2022-05-05T12:27:09,017 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/TableGen/Record.h:17, 2022-05-05T12:27:09,017 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenSchedule.h:22, 2022-05-05T12:27:09,018 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/DFAPacketizerEmitter.cpp:17: 2022-05-05T12:27:09,019 /usr/include/c++/8/bits/vector.tcc: In member function ‘void std::vector<_Tp, _Alloc>::_M_realloc_insert(std::vector<_Tp, _Alloc>::iterator, _Args&& ...) [with _Args = {const llvm::SmallVector&}; _Tp = llvm::SmallVector; _Alloc = std::allocator >]’: 2022-05-05T12:27:09,019 /usr/include/c++/8/bits/vector.tcc:413:7: note: parameter passing for argument of type ‘std::vector, std::allocator > >::iterator’ {aka ‘__gnu_cxx::__normal_iterator*, std::vector, std::allocator > > >’} changed in GCC 7.1 2022-05-05T12:27:09,020 vector<_Tp, _Alloc>:: 2022-05-05T12:27:09,020 ^~~~~~~~~~~~~~~~~~~ 2022-05-05T12:27:09,021 In file included from /usr/include/c++/8/vector:64, 2022-05-05T12:27:09,022 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/ArrayRef.h:25, 2022-05-05T12:27:09,022 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/TableGen/Record.h:17, 2022-05-05T12:27:09,023 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenSchedule.h:22, 2022-05-05T12:27:09,024 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/DFAPacketizerEmitter.cpp:17: 2022-05-05T12:27:09,024 /usr/include/c++/8/bits/stl_vector.h: In member function ‘void {anonymous}::DFAPacketizerEmitter::createScheduleClasses(unsigned int, const RecVec&)’: 2022-05-05T12:27:09,025 /usr/include/c++/8/bits/stl_vector.h:1085:4: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator*, std::vector, std::allocator > > >’ changed in GCC 7.1 2022-05-05T12:27:09,025 _M_realloc_insert(end(), __x); 2022-05-05T12:27:09,026 ^~~~~~~~~~~~~~~~~ 2022-05-05T12:27:32,791 [189/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/InfoByHwMode.cpp.o 2022-05-05T12:27:37,974 [190/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/FastISelEmitter.cpp.o 2022-05-05T12:27:56,514 [191/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/FixedLenDecoderEmitter.cpp.o 2022-05-05T12:27:56,515 In file included from /usr/include/c++/8/vector:69, 2022-05-05T12:27:56,516 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/ArrayRef.h:25, 2022-05-05T12:27:56,516 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/BitVector.h:17, 2022-05-05T12:27:56,517 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenInstruction.h:16, 2022-05-05T12:27:56,517 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/FixedLenDecoderEmitter.cpp:14: 2022-05-05T12:27:56,518 /usr/include/c++/8/bits/vector.tcc: In member function ‘void std::vector<_Tp, _Alloc>::_M_realloc_insert(std::vector<_Tp, _Alloc>::iterator, _Args&& ...) [with _Args = {const long long unsigned int&}; _Tp = long long unsigned int; _Alloc = std::allocator]’: 2022-05-05T12:27:56,519 /usr/include/c++/8/bits/vector.tcc:413:7: note: parameter passing for argument of type ‘std::vector >::iterator’ {aka ‘__gnu_cxx::__normal_iterator > >’} changed in GCC 7.1 2022-05-05T12:27:56,519 vector<_Tp, _Alloc>:: 2022-05-05T12:27:56,520 ^~~~~~~~~~~~~~~~~~~ 2022-05-05T12:27:56,520 In file included from /usr/include/c++/8/vector:64, 2022-05-05T12:27:56,521 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/ArrayRef.h:25, 2022-05-05T12:27:56,522 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/BitVector.h:17, 2022-05-05T12:27:56,522 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenInstruction.h:16, 2022-05-05T12:27:56,523 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/FixedLenDecoderEmitter.cpp:14: 2022-05-05T12:27:56,523 /usr/include/c++/8/bits/stl_vector.h: In member function ‘unsigned int {anonymous}::FilterChooser::getIslands(std::vector >&, std::vector >&, std::vector >&, const insn_t&) const’: 2022-05-05T12:27:56,524 /usr/include/c++/8/bits/stl_vector.h:1085:4: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator > >’ changed in GCC 7.1 2022-05-05T12:27:56,524 _M_realloc_insert(end(), __x); 2022-05-05T12:27:56,525 ^~~~~~~~~~~~~~~~~ 2022-05-05T12:27:56,525 /usr/include/c++/8/bits/stl_vector.h:1085:4: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator > >’ changed in GCC 7.1 2022-05-05T12:27:56,537 _M_realloc_insert(end(), __x); 2022-05-05T12:27:56,537 ^~~~~~~~~~~~~~~~~ 2022-05-05T12:28:01,142 [192/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/GICombinerEmitter.cpp.o 2022-05-05T12:28:05,374 [193/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/InstrDocsEmitter.cpp.o 2022-05-05T12:28:10,073 [194/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/OptEmitter.cpp.o 2022-05-05T12:28:19,635 [195/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/OptRSTEmitter.cpp.o 2022-05-05T12:28:20,159 [196/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/InstrInfoEmitter.cpp.o 2022-05-05T12:28:26,707 [197/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/IntrinsicEmitter.cpp.o 2022-05-05T12:28:28,163 [198/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/OptParserEmitter.cpp.o 2022-05-05T12:28:35,785 [199/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/PredicateExpander.cpp.o 2022-05-05T12:28:50,322 [200/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/PseudoLoweringEmitter.cpp.o 2022-05-05T12:28:50,374 [201/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/SDNodeProperties.cpp.o 2022-05-05T12:28:55,766 [202/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/RegisterBankEmitter.cpp.o 2022-05-05T12:29:13,864 [203/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/SubtargetFeatureInfo.cpp.o 2022-05-05T12:29:13,865 In file included from /usr/include/c++/8/vector:69, 2022-05-05T12:29:13,866 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/ArrayRef.h:25, 2022-05-05T12:29:13,866 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/TableGen/Record.h:17, 2022-05-05T12:29:13,867 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/SubtargetFeatureInfo.h:12, 2022-05-05T12:29:13,868 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/SubtargetFeatureInfo.cpp:9: 2022-05-05T12:29:13,869 /usr/include/c++/8/bits/vector.tcc: In member function ‘void std::vector<_Tp, _Alloc>::_M_realloc_insert(std::vector<_Tp, _Alloc>::iterator, _Args&& ...) [with _Args = {llvm::Record*&, llvm::SubtargetFeatureInfo}; _Tp = std::pair; _Alloc = std::allocator >]’: 2022-05-05T12:29:13,870 /usr/include/c++/8/bits/vector.tcc:413:7: note: parameter passing for argument of type ‘std::vector >::iterator’ {aka ‘__gnu_cxx::__normal_iterator*, std::vector > >’} changed in GCC 7.1 2022-05-05T12:29:13,870 vector<_Tp, _Alloc>:: 2022-05-05T12:29:13,871 ^~~~~~~~~~~~~~~~~~~ 2022-05-05T12:29:13,871 /usr/include/c++/8/bits/vector.tcc: In static member function ‘static std::vector > llvm::SubtargetFeatureInfo::getAll(const llvm::RecordKeeper&)’: 2022-05-05T12:29:13,872 /usr/include/c++/8/bits/vector.tcc:109:4: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator*, std::vector > >’ changed in GCC 7.1 2022-05-05T12:29:13,872 _M_realloc_insert(end(), std::forward<_Args>(__args)...); 2022-05-05T12:29:13,873 ^~~~~~~~~~~~~~~~~ 2022-05-05T12:29:22,256 [204/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/CompressInstEmitter.cpp.o 2022-05-05T12:29:22,833 [205/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/Types.cpp.o 2022-05-05T12:29:37,079 [206/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/SearchableTableEmitter.cpp.o 2022-05-05T12:29:40,997 [207/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/TableGen.cpp.o 2022-05-05T12:29:54,650 [208/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/SubtargetEmitter.cpp.o 2022-05-05T12:29:54,651 In file included from /usr/include/c++/8/vector:69, 2022-05-05T12:29:54,651 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenHwModes.h:18, 2022-05-05T12:29:54,652 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenTarget.h:19, 2022-05-05T12:29:54,653 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/SubtargetEmitter.cpp:13: 2022-05-05T12:29:54,653 /usr/include/c++/8/bits/vector.tcc: In member function ‘void std::vector<_Tp, _Alloc>::_M_realloc_insert(std::vector<_Tp, _Alloc>::iterator, _Args&& ...) [with _Args = {const long long int&}; _Tp = long long int; _Alloc = std::allocator]’: 2022-05-05T12:29:54,654 /usr/include/c++/8/bits/vector.tcc:413:7: note: parameter passing for argument of type ‘std::vector >::iterator’ {aka ‘__gnu_cxx::__normal_iterator > >’} changed in GCC 7.1 2022-05-05T12:29:54,654 vector<_Tp, _Alloc>:: 2022-05-05T12:29:54,654 ^~~~~~~~~~~~~~~~~~~ 2022-05-05T12:29:54,655 /usr/include/c++/8/bits/vector.tcc: In member function ‘void std::vector<_Tp, _Alloc>::_M_fill_insert(std::vector<_Tp, _Alloc>::iterator, std::vector<_Tp, _Alloc>::size_type, const value_type&) [with _Tp = long long int; _Alloc = std::allocator]’: 2022-05-05T12:29:54,655 /usr/include/c++/8/bits/vector.tcc:478:5: note: parameter passing for argument of type ‘std::vector >::iterator’ {aka ‘__gnu_cxx::__normal_iterator > >’} changed in GCC 7.1 2022-05-05T12:29:54,656 vector<_Tp, _Alloc>:: 2022-05-05T12:29:54,656 ^~~~~~~~~~~~~~~~~~~ 2022-05-05T12:29:54,657 In file included from /usr/include/c++/8/vector:64, 2022-05-05T12:29:54,657 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenHwModes.h:18, 2022-05-05T12:29:54,658 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenTarget.h:19, 2022-05-05T12:29:54,658 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/SubtargetEmitter.cpp:13: 2022-05-05T12:29:54,659 /usr/include/c++/8/bits/stl_vector.h: In member function ‘void {anonymous}::SubtargetEmitter::GenSchedClassTables(const llvm::CodeGenProcModel&, {anonymous}::SubtargetEmitter::SchedClassTables&)’: 2022-05-05T12:29:54,659 /usr/include/c++/8/bits/stl_vector.h:847:4: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator > >’ changed in GCC 7.1 2022-05-05T12:29:54,667 _M_fill_insert(end(), __new_size - size(), __x); 2022-05-05T12:29:54,669 ^~~~~~~~~~~~~~ 2022-05-05T12:29:54,670 /usr/include/c++/8/bits/stl_vector.h:1085:4: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator > >’ changed in GCC 7.1 2022-05-05T12:29:54,670 _M_realloc_insert(end(), __x); 2022-05-05T12:29:54,671 ^~~~~~~~~~~~~~~~~ 2022-05-05T12:29:54,672 /usr/include/c++/8/bits/stl_vector.h:1085:4: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator > >’ changed in GCC 7.1 2022-05-05T12:29:54,673 _M_realloc_insert(end(), __x); 2022-05-05T12:29:54,674 ^~~~~~~~~~~~~~~~~ 2022-05-05T12:29:55,616 [209/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/X86ModRMFilters.cpp.o 2022-05-05T12:29:59,449 [210/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/RegisterInfoEmitter.cpp.o 2022-05-05T12:29:59,449 In file included from /usr/include/c++/8/vector:69, 2022-05-05T12:29:59,450 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenHwModes.h:18, 2022-05-05T12:29:59,451 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/InfoByHwMode.h:17, 2022-05-05T12:29:59,451 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenRegisters.h:17, 2022-05-05T12:29:59,452 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/RegisterInfoEmitter.cpp:15: 2022-05-05T12:29:59,452 /usr/include/c++/8/bits/vector.tcc: In member function ‘void std::vector<_Tp, _Alloc>::_M_realloc_insert(std::vector<_Tp, _Alloc>::iterator, _Args&& ...) [with _Args = {long long int}; _Tp = long long int; _Alloc = std::allocator]’: 2022-05-05T12:29:59,453 /usr/include/c++/8/bits/vector.tcc:413:7: note: parameter passing for argument of type ‘std::vector >::iterator’ {aka ‘__gnu_cxx::__normal_iterator > >’} changed in GCC 7.1 2022-05-05T12:29:59,454 vector<_Tp, _Alloc>:: 2022-05-05T12:29:59,454 ^~~~~~~~~~~~~~~~~~~ 2022-05-05T12:29:59,455 /usr/include/c++/8/bits/vector.tcc: In function ‘void {anonymous}::RegisterInfoEmitter::EmitRegMappingTables(llvm::raw_ostream&, const std::deque&, bool)’: 2022-05-05T12:29:59,455 /usr/include/c++/8/bits/vector.tcc:109:4: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator > >’ changed in GCC 7.1 2022-05-05T12:29:59,456 _M_realloc_insert(end(), std::forward<_Args>(__args)...); 2022-05-05T12:29:59,457 ^~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,463 [211/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/X86DisassemblerTables.cpp.o 2022-05-05T12:30:09,494 [212/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/X86EVEX2VEXTablesEmitter.cpp.o 2022-05-05T12:30:09,735 [213/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/GlobalISelEmitter.cpp.o 2022-05-05T12:30:09,736 In file included from /usr/include/c++/8/vector:69, 2022-05-05T12:30:09,737 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/ArrayRef.h:25, 2022-05-05T12:30:09,737 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/TypeSize.h:18, 2022-05-05T12:30:09,738 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/MachineValueType.h:21, 2022-05-05T12:30:09,738 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenIntrinsics.h:17, 2022-05-05T12:30:09,739 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenDAGPatterns.h:17, 2022-05-05T12:30:09,739 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/GlobalISelEmitter.cpp:32: 2022-05-05T12:30:09,740 /usr/include/c++/8/bits/vector.tcc: In member function ‘void std::vector<_Tp, _Alloc>::_M_realloc_insert(std::vector<_Tp, _Alloc>::iterator, _Args&& ...) [with _Args = {const {anonymous}::MatchTableRecord&}; _Tp = {anonymous}::MatchTableRecord; _Alloc = std::allocator<{anonymous}::MatchTableRecord>]’: 2022-05-05T12:30:09,740 /usr/include/c++/8/bits/vector.tcc:413:7: note: parameter passing for argument of type ‘std::vector<{anonymous}::MatchTableRecord>::iterator’ {aka ‘__gnu_cxx::__normal_iterator<{anonymous}::MatchTableRecord*, std::vector<{anonymous}::MatchTableRecord> >’} changed in GCC 7.1 2022-05-05T12:30:09,741 vector<_Tp, _Alloc>:: 2022-05-05T12:30:09,741 ^~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,742 /usr/include/c++/8/bits/vector.tcc:413:7: note: parameter passing for argument of type ‘std::vector<{anonymous}::MatchTableRecord>::iterator’ {aka ‘__gnu_cxx::__normal_iterator<{anonymous}::MatchTableRecord*, std::vector<{anonymous}::MatchTableRecord> >’} changed in GCC 7.1 2022-05-05T12:30:09,742 In file included from /usr/include/c++/8/algorithm:62, 2022-05-05T12:30:09,743 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/Hashing.h:51, 2022-05-05T12:30:09,743 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/ArrayRef.h:12, 2022-05-05T12:30:09,744 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/TypeSize.h:18, 2022-05-05T12:30:09,744 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/MachineValueType.h:21, 2022-05-05T12:30:09,745 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenIntrinsics.h:17, 2022-05-05T12:30:09,745 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenDAGPatterns.h:17, 2022-05-05T12:30:09,746 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/GlobalISelEmitter.cpp:32: 2022-05-05T12:30:09,766 /usr/include/c++/8/bits/stl_algo.h: In function ‘_RandomAccessIterator std::_V2::__rotate(_RandomAccessIterator, _RandomAccessIterator, _RandomAccessIterator, std::random_access_iterator_tag) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >]’: 2022-05-05T12:30:09,767 /usr/include/c++/8/bits/stl_algo.h:1328:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,767 __rotate(_RandomAccessIterator __first, 2022-05-05T12:30:09,768 ^~~~~~~~ 2022-05-05T12:30:09,768 /usr/include/c++/8/bits/stl_algo.h:1328:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,769 /usr/include/c++/8/bits/stl_algo.h:1328:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,769 /usr/include/c++/8/bits/stl_algo.h:1328:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,770 /usr/include/c++/8/bits/stl_algo.h: In function ‘void std::__unguarded_linear_insert(_RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<{anonymous}::LLTCodeGen*, std::vector<{anonymous}::LLTCodeGen> >; _Compare = __gnu_cxx::__ops::_Val_less_iter]’: 2022-05-05T12:30:09,770 /usr/include/c++/8/bits/stl_algo.h:1821:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::LLTCodeGen*, std::vector<{anonymous}::LLTCodeGen> >’ changed in GCC 7.1 2022-05-05T12:30:09,771 __unguarded_linear_insert(_RandomAccessIterator __last, 2022-05-05T12:30:09,771 ^~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,772 In file included from /usr/include/c++/8/bits/stl_algo.h:61, 2022-05-05T12:30:09,772 from /usr/include/c++/8/algorithm:62, 2022-05-05T12:30:09,773 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/Hashing.h:51, 2022-05-05T12:30:09,773 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/ArrayRef.h:12, 2022-05-05T12:30:09,774 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/TypeSize.h:18, 2022-05-05T12:30:09,774 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/MachineValueType.h:21, 2022-05-05T12:30:09,775 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenIntrinsics.h:17, 2022-05-05T12:30:09,775 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenDAGPatterns.h:17, 2022-05-05T12:30:09,776 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/GlobalISelEmitter.cpp:32: 2022-05-05T12:30:09,797 /usr/include/c++/8/bits/stl_heap.h: In function ‘void std::__adjust_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<{anonymous}::LLTCodeGen*, std::vector<{anonymous}::LLTCodeGen> >; _Distance = int; _Tp = {anonymous}::LLTCodeGen; _Compare = __gnu_cxx::__ops::_Iter_less_iter]’: 2022-05-05T12:30:09,797 /usr/include/c++/8/bits/stl_heap.h:214:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::LLTCodeGen*, std::vector<{anonymous}::LLTCodeGen> >’ changed in GCC 7.1 2022-05-05T12:30:09,798 __adjust_heap(_RandomAccessIterator __first, _Distance __holeIndex, 2022-05-05T12:30:09,798 ^~~~~~~~~~~~~ 2022-05-05T12:30:09,799 In file included from /usr/include/c++/8/algorithm:62, 2022-05-05T12:30:09,799 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/Hashing.h:51, 2022-05-05T12:30:09,800 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/ArrayRef.h:12, 2022-05-05T12:30:09,800 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/TypeSize.h:18, 2022-05-05T12:30:09,801 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/MachineValueType.h:21, 2022-05-05T12:30:09,802 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenIntrinsics.h:17, 2022-05-05T12:30:09,802 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenDAGPatterns.h:17, 2022-05-05T12:30:09,803 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/GlobalISelEmitter.cpp:32: 2022-05-05T12:30:09,803 /usr/include/c++/8/bits/stl_algo.h: In function ‘void std::__insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<{anonymous}::LLTCodeGen*, std::vector<{anonymous}::LLTCodeGen> >; _Compare = __gnu_cxx::__ops::_Iter_less_iter]’: 2022-05-05T12:30:09,804 /usr/include/c++/8/bits/stl_algo.h:1840:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::LLTCodeGen*, std::vector<{anonymous}::LLTCodeGen> >’ changed in GCC 7.1 2022-05-05T12:30:09,804 __insertion_sort(_RandomAccessIterator __first, 2022-05-05T12:30:09,805 ^~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,805 /usr/include/c++/8/bits/stl_algo.h:1840:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::LLTCodeGen*, std::vector<{anonymous}::LLTCodeGen> >’ changed in GCC 7.1 2022-05-05T12:30:09,806 /usr/include/c++/8/bits/stl_algo.h: In function ‘void std::__introsort_loop(_RandomAccessIterator, _RandomAccessIterator, _Size, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<{anonymous}::LLTCodeGen*, std::vector<{anonymous}::LLTCodeGen> >; _Size = int; _Compare = __gnu_cxx::__ops::_Iter_less_iter]’: 2022-05-05T12:30:09,816 /usr/include/c++/8/bits/stl_algo.h:1940:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::LLTCodeGen*, std::vector<{anonymous}::LLTCodeGen> >’ changed in GCC 7.1 2022-05-05T12:30:09,817 __introsort_loop(_RandomAccessIterator __first, 2022-05-05T12:30:09,818 ^~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,818 /usr/include/c++/8/bits/stl_algo.h:1940:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::LLTCodeGen*, std::vector<{anonymous}::LLTCodeGen> >’ changed in GCC 7.1 2022-05-05T12:30:09,819 /usr/include/c++/8/bits/stl_algo.h:1954:25: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::LLTCodeGen*, std::vector<{anonymous}::LLTCodeGen> >’ changed in GCC 7.1 2022-05-05T12:30:09,819 std::__introsort_loop(__cut, __last, __depth_limit, __comp); 2022-05-05T12:30:09,820 ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,820 In file included from /usr/include/c++/8/vector:64, 2022-05-05T12:30:09,821 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/ArrayRef.h:25, 2022-05-05T12:30:09,821 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/TypeSize.h:18, 2022-05-05T12:30:09,822 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/MachineValueType.h:21, 2022-05-05T12:30:09,823 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenIntrinsics.h:17, 2022-05-05T12:30:09,823 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenDAGPatterns.h:17, 2022-05-05T12:30:09,824 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/GlobalISelEmitter.cpp:32: 2022-05-05T12:30:09,824 /usr/include/c++/8/bits/stl_vector.h: In member function ‘void {anonymous}::MatchTable::push_back(const {anonymous}::MatchTableRecord&)’: 2022-05-05T12:30:09,825 /usr/include/c++/8/bits/stl_vector.h:1085:4: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::MatchTableRecord*, std::vector<{anonymous}::MatchTableRecord> >’ changed in GCC 7.1 2022-05-05T12:30:09,825 _M_realloc_insert(end(), __x); 2022-05-05T12:30:09,826 ^~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,842 /usr/include/c++/8/bits/stl_vector.h: In function ‘void {anonymous}::MatchTable::push_back(const {anonymous}::MatchTableRecord&)’: 2022-05-05T12:30:09,842 /usr/include/c++/8/bits/stl_vector.h:1085:4: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::MatchTableRecord*, std::vector<{anonymous}::MatchTableRecord> >’ changed in GCC 7.1 2022-05-05T12:30:09,843 _M_realloc_insert(end(), __x); 2022-05-05T12:30:09,843 ^~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,844 /usr/include/c++/8/bits/stl_vector.h: In function ‘void {anonymous}::MatchTable::push_back(const {anonymous}::MatchTableRecord&)’: 2022-05-05T12:30:09,844 /usr/include/c++/8/bits/stl_vector.h:1085:4: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::MatchTableRecord*, std::vector<{anonymous}::MatchTableRecord> >’ changed in GCC 7.1 2022-05-05T12:30:09,845 _M_realloc_insert(end(), __x); 2022-05-05T12:30:09,845 ^~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,845 /usr/include/c++/8/bits/stl_vector.h: In function ‘void {anonymous}::MatchTable::push_back(const {anonymous}::MatchTableRecord&)’: 2022-05-05T12:30:09,846 /usr/include/c++/8/bits/stl_vector.h:1085:4: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::MatchTableRecord*, std::vector<{anonymous}::MatchTableRecord> >’ changed in GCC 7.1 2022-05-05T12:30:09,846 _M_realloc_insert(end(), __x); 2022-05-05T12:30:09,847 ^~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,847 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/GlobalISelEmitter.cpp: In function ‘{anonymous}::MatchTable {anonymous}::GlobalISelEmitter::buildMatchTable(llvm::MutableArrayRef<{anonymous}::RuleMatcher>, bool, bool)’: 2022-05-05T12:30:09,848 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/GlobalISelEmitter.cpp:5541:1: note: parameter passing for argument of type ‘llvm::MutableArrayRef<{anonymous}::RuleMatcher>’ changed in GCC 7.1 2022-05-05T12:30:09,848 GlobalISelEmitter::buildMatchTable(MutableArrayRef Rules, 2022-05-05T12:30:09,848 ^~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,849 In file included from /usr/include/c++/8/vector:64, 2022-05-05T12:30:09,849 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/ArrayRef.h:25, 2022-05-05T12:30:09,849 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/TypeSize.h:18, 2022-05-05T12:30:09,850 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/MachineValueType.h:21, 2022-05-05T12:30:09,850 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenIntrinsics.h:17, 2022-05-05T12:30:09,851 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenDAGPatterns.h:17, 2022-05-05T12:30:09,851 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/GlobalISelEmitter.cpp:32: 2022-05-05T12:30:09,852 /usr/include/c++/8/bits/stl_vector.h: In function ‘virtual void {anonymous}::SwitchMatcher::emit({anonymous}::MatchTable&)’: 2022-05-05T12:30:09,852 /usr/include/c++/8/bits/stl_vector.h:1085:4: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::MatchTableRecord*, std::vector<{anonymous}::MatchTableRecord> >’ changed in GCC 7.1 2022-05-05T12:30:09,853 _M_realloc_insert(end(), __x); 2022-05-05T12:30:09,853 ^~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,853 In file included from /usr/include/c++/8/algorithm:62, 2022-05-05T12:30:09,854 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/Hashing.h:51, 2022-05-05T12:30:09,854 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/ArrayRef.h:12, 2022-05-05T12:30:09,855 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/TypeSize.h:18, 2022-05-05T12:30:09,856 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/MachineValueType.h:21, 2022-05-05T12:30:09,856 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenIntrinsics.h:17, 2022-05-05T12:30:09,898 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenDAGPatterns.h:17, 2022-05-05T12:30:09,899 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/GlobalISelEmitter.cpp:32: 2022-05-05T12:30:09,899 /usr/include/c++/8/bits/stl_algo.h: In function ‘_OutputIterator std::__move_merge(_InputIterator, _InputIterator, _InputIterator, _InputIterator, _OutputIterator, _Compare) [with _InputIterator = __gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >; _OutputIterator = {anonymous}::RuleMatcher*; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<{anonymous}::GlobalISelEmitter::run(llvm::raw_ostream&):: >]’: 2022-05-05T12:30:09,900 /usr/include/c++/8/bits/stl_algo.h:2639:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,900 __move_merge(_InputIterator __first1, _InputIterator __last1, 2022-05-05T12:30:09,901 ^~~~~~~~~~~~ 2022-05-05T12:30:09,901 /usr/include/c++/8/bits/stl_algo.h:2639:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,902 /usr/include/c++/8/bits/stl_algo.h:2639:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,902 /usr/include/c++/8/bits/stl_algo.h:2639:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,903 /usr/include/c++/8/bits/stl_algo.h: In function ‘void std::__insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<{anonymous}::GlobalISelEmitter::run(llvm::raw_ostream&):: >]’: 2022-05-05T12:30:09,904 /usr/include/c++/8/bits/stl_algo.h:1840:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,904 __insertion_sort(_RandomAccessIterator __first, 2022-05-05T12:30:09,905 ^~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,905 /usr/include/c++/8/bits/stl_algo.h:1840:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,906 /usr/include/c++/8/bits/stl_algo.h:1840:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,906 /usr/include/c++/8/bits/stl_algo.h: In function ‘_OutputIterator std::__move_merge(_InputIterator, _InputIterator, _InputIterator, _InputIterator, _OutputIterator, _Compare) [with _InputIterator = {anonymous}::RuleMatcher*; _OutputIterator = __gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<{anonymous}::GlobalISelEmitter::run(llvm::raw_ostream&):: >]’: 2022-05-05T12:30:09,907 /usr/include/c++/8/bits/stl_algo.h:2639:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,908 __move_merge(_InputIterator __first1, _InputIterator __last1, 2022-05-05T12:30:09,908 ^~~~~~~~~~~~ 2022-05-05T12:30:09,909 /usr/include/c++/8/bits/stl_algo.h: In function ‘void std::__merge_sort_with_buffer(_RandomAccessIterator, _RandomAccessIterator, _Pointer, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >; _Pointer = {anonymous}::RuleMatcher*; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<{anonymous}::GlobalISelEmitter::run(llvm::raw_ostream&):: >]’: 2022-05-05T12:30:09,909 /usr/include/c++/8/bits/stl_algo.h:2705:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,909 __merge_sort_with_buffer(_RandomAccessIterator __first, 2022-05-05T12:30:09,910 ^~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,910 /usr/include/c++/8/bits/stl_algo.h:2705:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,911 /usr/include/c++/8/bits/stl_algo.h:2695:25: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,911 std::__insertion_sort(__first, __first + __chunk_size, __comp); 2022-05-05T12:30:09,912 ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,912 /usr/include/c++/8/bits/stl_algo.h:2698:28: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,913 std::__insertion_sort(__first, __last, __comp); 2022-05-05T12:30:09,913 ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,914 /usr/include/c++/8/bits/stl_algo.h:2674:32: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,914 __result = std::__move_merge(__first, __first + __step_size, 2022-05-05T12:30:09,915 ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,915 __first + __step_size, 2022-05-05T12:30:09,916 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,916 __first + __two_step, 2022-05-05T12:30:09,917 ~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,917 __result, __comp); 2022-05-05T12:30:09,917 ~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,918 /usr/include/c++/8/bits/stl_algo.h:2674:32: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,918 /usr/include/c++/8/bits/stl_algo.h:2682:24: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,919 std::__move_merge(__first, __first + __step_size, 2022-05-05T12:30:09,919 ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,919 __first + __step_size, __last, __result, __comp); 2022-05-05T12:30:09,920 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,920 /usr/include/c++/8/bits/stl_algo.h:2682:24: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,921 /usr/include/c++/8/bits/stl_algo.h:2674:32: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,921 __result = std::__move_merge(__first, __first + __step_size, 2022-05-05T12:30:09,922 ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,922 __first + __step_size, 2022-05-05T12:30:09,923 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,923 __first + __two_step, 2022-05-05T12:30:09,923 ~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,924 __result, __comp); 2022-05-05T12:30:09,924 ~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,925 /usr/include/c++/8/bits/stl_algo.h:2682:24: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,926 std::__move_merge(__first, __first + __step_size, 2022-05-05T12:30:09,926 ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,927 __first + __step_size, __last, __result, __comp); 2022-05-05T12:30:09,927 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,928 /usr/include/c++/8/bits/stl_algo.h:2682:24: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,928 /usr/include/c++/8/bits/stl_algo.h:2698:28: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,929 std::__insertion_sort(__first, __last, __comp); 2022-05-05T12:30:09,929 ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,930 /usr/include/c++/8/bits/stl_algo.h: In function ‘void std::__merge_adaptive(_BidirectionalIterator, _BidirectionalIterator, _BidirectionalIterator, _Distance, _Distance, _Pointer, _Distance, _Compare) [with _BidirectionalIterator = __gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >; _Distance = int; _Pointer = {anonymous}::RuleMatcher*; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<{anonymous}::GlobalISelEmitter::run(llvm::raw_ostream&):: >]’: 2022-05-05T12:30:09,930 /usr/include/c++/8/bits/stl_algo.h:2415:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,931 __merge_adaptive(_BidirectionalIterator __first, 2022-05-05T12:30:09,931 ^~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,932 /usr/include/c++/8/bits/stl_algo.h:2415:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,933 /usr/include/c++/8/bits/stl_algo.h:2415:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,933 /usr/include/c++/8/bits/stl_algo.h:2415:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,934 /usr/include/c++/8/bits/stl_algo.h:1443:27: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,934 return std::__rotate(__first, __middle, __last, 2022-05-05T12:30:09,935 ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,935 std::__iterator_category(__first)); 2022-05-05T12:30:09,936 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,936 /usr/include/c++/8/bits/stl_algo.h:2463:25: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,937 std::__merge_adaptive(__first, __first_cut, __new_middle, __len11, 2022-05-05T12:30:09,938 ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,938 __len22, __buffer, __buffer_size, __comp); 2022-05-05T12:30:09,939 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,939 /usr/include/c++/8/bits/stl_algo.h:2465:25: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,940 std::__merge_adaptive(__new_middle, __second_cut, __last, 2022-05-05T12:30:09,940 ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,941 __len1 - __len11, 2022-05-05T12:30:09,941 ~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,942 __len2 - __len22, __buffer, 2022-05-05T12:30:09,942 ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,942 __buffer_size, __comp); 2022-05-05T12:30:09,943 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,943 /usr/include/c++/8/bits/stl_algo.h: In function ‘void std::__stable_sort_adaptive(_RandomAccessIterator, _RandomAccessIterator, _Pointer, _Distance, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >; _Pointer = {anonymous}::RuleMatcher*; _Distance = int; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<{anonymous}::GlobalISelEmitter::run(llvm::raw_ostream&):: >]’: 2022-05-05T12:30:09,944 /usr/include/c++/8/bits/stl_algo.h:2732:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,944 __stable_sort_adaptive(_RandomAccessIterator __first, 2022-05-05T12:30:09,945 ^~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,945 /usr/include/c++/8/bits/stl_algo.h:2732:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,945 /usr/include/c++/8/bits/stl_algo.h:2732:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,946 /usr/include/c++/8/bits/stl_algo.h:2741:31: note: parameter passing for argument of type ‘const __gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,947 std::__stable_sort_adaptive(__first, __middle, __buffer, 2022-05-05T12:30:09,947 ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,948 __buffer_size, __comp); 2022-05-05T12:30:09,948 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,949 /usr/include/c++/8/bits/stl_algo.h:2743:31: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,949 std::__stable_sort_adaptive(__middle, __last, __buffer, 2022-05-05T12:30:09,949 ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,950 __buffer_size, __comp); 2022-05-05T12:30:09,951 ~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,951 /usr/include/c++/8/bits/stl_algo.h:2748:33: note: parameter passing for argument of type ‘const __gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,952 std::__merge_sort_with_buffer(__first, __middle, __buffer, __comp); 2022-05-05T12:30:09,952 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,953 /usr/include/c++/8/bits/stl_algo.h:2749:33: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,953 std::__merge_sort_with_buffer(__middle, __last, __buffer, __comp); 2022-05-05T12:30:09,954 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,955 /usr/include/c++/8/bits/stl_algo.h:2751:28: note: parameter passing for argument of type ‘const __gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,955 std::__merge_adaptive(__first, __middle, __last, 2022-05-05T12:30:09,956 ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,957 _Distance(__middle - __first), 2022-05-05T12:30:09,957 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,958 _Distance(__last - __middle), 2022-05-05T12:30:09,958 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,959 __buffer, __buffer_size, 2022-05-05T12:30:09,959 ~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,959 __comp); 2022-05-05T12:30:09,960 ~~~~~~~ 2022-05-05T12:30:09,960 /usr/include/c++/8/bits/stl_algo.h: In function ‘void std::__merge_without_buffer(_BidirectionalIterator, _BidirectionalIterator, _BidirectionalIterator, _Distance, _Distance, _Compare) [with _BidirectionalIterator = __gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >; _Distance = int; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<{anonymous}::GlobalISelEmitter::run(llvm::raw_ostream&):: >]’: 2022-05-05T12:30:09,961 /usr/include/c++/8/bits/stl_algo.h:2476:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,961 __merge_without_buffer(_BidirectionalIterator __first, 2022-05-05T12:30:09,962 ^~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,962 /usr/include/c++/8/bits/stl_algo.h:2476:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,963 /usr/include/c++/8/bits/stl_algo.h:2476:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,963 /usr/include/c++/8/bits/stl_algo.h:1443:27: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,964 return std::__rotate(__first, __middle, __last, 2022-05-05T12:30:09,964 ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,964 std::__iterator_category(__first)); 2022-05-05T12:30:09,965 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,965 /usr/include/c++/8/bits/stl_algo.h:2518:34: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,966 std::__merge_without_buffer(__first, __first_cut, __new_middle, 2022-05-05T12:30:09,966 ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,967 __len11, __len22, __comp); 2022-05-05T12:30:09,967 ~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,968 /usr/include/c++/8/bits/stl_algo.h:2520:34: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,968 std::__merge_without_buffer(__new_middle, __second_cut, __last, 2022-05-05T12:30:09,969 ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,969 __len1 - __len11, __len2 - __len22, __comp); 2022-05-05T12:30:09,969 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,970 /usr/include/c++/8/bits/stl_algo.h: In function ‘void std::__inplace_stable_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<{anonymous}::GlobalISelEmitter::run(llvm::raw_ostream&):: >]’: 2022-05-05T12:30:09,970 /usr/include/c++/8/bits/stl_algo.h:2761:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,971 __inplace_stable_sort(_RandomAccessIterator __first, 2022-05-05T12:30:09,971 ^~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,972 /usr/include/c++/8/bits/stl_algo.h:2761:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,972 /usr/include/c++/8/bits/stl_algo.h:2766:25: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,973 std::__insertion_sort(__first, __last, __comp); 2022-05-05T12:30:09,974 ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,974 /usr/include/c++/8/bits/stl_algo.h:2770:33: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,975 std::__inplace_stable_sort(__first, __middle, __comp); 2022-05-05T12:30:09,975 ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,976 /usr/include/c++/8/bits/stl_algo.h:2771:33: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,976 std::__inplace_stable_sort(__middle, __last, __comp); 2022-05-05T12:30:09,977 ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,977 /usr/include/c++/8/bits/stl_algo.h:2772:34: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,978 std::__merge_without_buffer(__first, __middle, __last, 2022-05-05T12:30:09,978 ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,979 __middle - __first, 2022-05-05T12:30:09,979 ~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,980 __last - __middle, 2022-05-05T12:30:09,980 ~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,981 __comp); 2022-05-05T12:30:09,981 ~~~~~~~ 2022-05-05T12:30:09,982 In file included from /usr/include/c++/8/map:60, 2022-05-05T12:30:09,982 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenHwModes.h:16, 2022-05-05T12:30:09,983 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenTarget.h:19, 2022-05-05T12:30:09,983 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenDAGPatterns.h:18, 2022-05-05T12:30:09,984 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/GlobalISelEmitter.cpp:32: 2022-05-05T12:30:09,984 /usr/include/c++/8/bits/stl_tree.h: In member function ‘std::pair std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_M_get_insert_hint_unique_pos(std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::const_iterator, const key_type&) [with _Key = llvm::Record*; _Val = std::pair; _KeyOfValue = std::_Select1st >; _Compare = llvm::LessRecordByID; _Alloc = std::allocator >]’: 2022-05-05T12:30:09,985 /usr/include/c++/8/bits/stl_tree.h:2146:5: note: parameter passing for argument of type ‘std::_Rb_tree, std::_Select1st >, llvm::LessRecordByID, std::allocator > >::const_iterator’ {aka ‘std::_Rb_tree_const_iterator >’} changed in GCC 7.1 2022-05-05T12:30:09,985 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>:: 2022-05-05T12:30:09,986 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,986 In file included from /usr/include/c++/8/algorithm:62, 2022-05-05T12:30:09,987 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/Hashing.h:51, 2022-05-05T12:30:09,987 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/ArrayRef.h:12, 2022-05-05T12:30:09,988 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/TypeSize.h:18, 2022-05-05T12:30:09,988 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/MachineValueType.h:21, 2022-05-05T12:30:09,988 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenIntrinsics.h:17, 2022-05-05T12:30:09,989 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/CodeGenDAGPatterns.h:17, 2022-05-05T12:30:09,989 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/GlobalISelEmitter.cpp:32: 2022-05-05T12:30:09,990 /usr/include/c++/8/bits/stl_algo.h: In member function ‘void {anonymous}::GlobalISelEmitter::run(llvm::raw_ostream&)’: 2022-05-05T12:30:09,990 /usr/include/c++/8/bits/stl_algo.h:1968:25: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::LLTCodeGen*, std::vector<{anonymous}::LLTCodeGen> >’ changed in GCC 7.1 2022-05-05T12:30:09,990 std::__introsort_loop(__first, __last, 2022-05-05T12:30:09,991 ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,991 std::__lg(__last - __first) * 2, 2022-05-05T12:30:09,991 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,992 __comp); 2022-05-05T12:30:09,992 ~~~~~~~ 2022-05-05T12:30:09,992 /usr/include/c++/8/bits/stl_algo.h:1885:25: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::LLTCodeGen*, std::vector<{anonymous}::LLTCodeGen> >’ changed in GCC 7.1 2022-05-05T12:30:09,993 std::__insertion_sort(__first, __first + int(_S_threshold), __comp); 2022-05-05T12:30:09,993 ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,993 /usr/include/c++/8/bits/stl_algo.h:1890:23: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::LLTCodeGen*, std::vector<{anonymous}::LLTCodeGen> >’ changed in GCC 7.1 2022-05-05T12:30:09,994 std::__insertion_sort(__first, __last, __comp); 2022-05-05T12:30:09,994 ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,994 /usr/include/c++/8/bits/stl_algo.h:5004:28: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,995 std::__inplace_stable_sort(__first, __last, __comp); 2022-05-05T12:30:09,995 ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,995 /usr/include/c++/8/bits/stl_algo.h:5006:29: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<{anonymous}::RuleMatcher*, std::vector<{anonymous}::RuleMatcher, std::allocator<{anonymous}::RuleMatcher> > >’ changed in GCC 7.1 2022-05-05T12:30:09,996 std::__stable_sort_adaptive(__first, __last, __buf.begin(), 2022-05-05T12:30:09,996 ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,997 _DistanceType(__buf.size()), __comp); 2022-05-05T12:30:09,997 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2022-05-05T12:30:09,998 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/utils/TableGen/GlobalISelEmitter.cpp:5916:66: note: parameter passing for argument of type ‘llvm::MutableArrayRef<{anonymous}::RuleMatcher>’ changed in GCC 7.1 2022-05-05T12:30:09,999 buildMatchTable(Rules, OptimizeMatchTable, GenerateCoverage); 2022-05-05T12:30:09,999 ^ 2022-05-05T12:30:16,146 [214/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/X86FoldTablesEmitter.cpp.o 2022-05-05T12:30:20,965 [215/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/X86RecognizableInstr.cpp.o 2022-05-05T12:30:23,009 [216/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/WebAssemblyDisassemblerEmitter.cpp.o 2022-05-05T12:30:24,077 [217/611] Building CXX object utils/TableGen/GlobalISel/CMakeFiles/LLVMTableGenGlobalISel.dir/CodeExpander.cpp.o 2022-05-05T12:30:25,055 [218/611] Building CXX object utils/TableGen/GlobalISel/CMakeFiles/LLVMTableGenGlobalISel.dir/GIMatchDagEdge.cpp.o 2022-05-05T12:30:26,035 [219/611] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/CTagsEmitter.cpp.o 2022-05-05T12:30:35,247 [220/611] Building CXX object utils/TableGen/GlobalISel/CMakeFiles/LLVMTableGenGlobalISel.dir/GIMatchDag.cpp.o 2022-05-05T12:30:36,593 [221/611] Building CXX object utils/TableGen/GlobalISel/CMakeFiles/LLVMTableGenGlobalISel.dir/GIMatchDagOperands.cpp.o 2022-05-05T12:30:41,912 [222/611] Building CXX object utils/TableGen/GlobalISel/CMakeFiles/LLVMTableGenGlobalISel.dir/GIMatchDagInstr.cpp.o 2022-05-05T12:30:47,228 [223/611] Building CXX object tools/clang/utils/TableGen/CMakeFiles/clang-tblgen.dir/ClangASTNodesEmitter.cpp.o 2022-05-05T12:30:51,109 [224/611] Building CXX object tools/clang/utils/TableGen/CMakeFiles/clang-tblgen.dir/ASTTableGen.cpp.o 2022-05-05T12:30:52,381 [225/611] Building CXX object tools/clang/utils/TableGen/CMakeFiles/clang-tblgen.dir/ClangCommentHTMLNamedCharacterReferenceEmitter.cpp.o 2022-05-05T12:31:01,956 [226/611] Building CXX object tools/clang/utils/TableGen/CMakeFiles/clang-tblgen.dir/ClangCommentCommandInfoEmitter.cpp.o 2022-05-05T12:31:08,882 [227/611] Building CXX object tools/clang/utils/TableGen/CMakeFiles/clang-tblgen.dir/ClangOpcodesEmitter.cpp.o 2022-05-05T12:31:13,517 [228/611] Building CXX object tools/clang/utils/TableGen/CMakeFiles/clang-tblgen.dir/ClangDataCollectorsEmitter.cpp.o 2022-05-05T12:31:20,705 [229/611] Building CXX object utils/TableGen/GlobalISel/CMakeFiles/LLVMTableGenGlobalISel.dir/GIMatchTree.cpp.o 2022-05-05T12:31:21,020 [230/611] Linking CXX static library lib/libLLVMTableGenGlobalISel.a 2022-05-05T12:31:24,666 [231/611] Linking CXX executable bin/llvm-tblgen 2022-05-05T12:31:24,765 [232/611] Building OMP.h.inc... 2022-05-05T12:31:24,858 [233/611] Building OMP.inc... 2022-05-05T12:31:25,199 [234/611] Building CXX object tools/clang/utils/TableGen/CMakeFiles/clang-tblgen.dir/ClangOptionDocEmitter.cpp.o 2022-05-05T12:31:40,076 [235/611] Building CXX object tools/clang/utils/TableGen/CMakeFiles/clang-tblgen.dir/ClangCommentHTMLTagsEmitter.cpp.o 2022-05-05T12:31:43,323 [236/611] Building CXX object tools/clang/utils/TableGen/CMakeFiles/clang-tblgen.dir/ClangOpenCLBuiltinEmitter.cpp.o 2022-05-05T12:31:43,323 In file included from /usr/include/c++/8/vector:69, 2022-05-05T12:31:43,324 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/MapVector.h:27, 2022-05-05T12:31:43,325 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/clang/utils/TableGen/ClangOpenCLBuiltinEmitter.cpp:18: 2022-05-05T12:31:43,325 /usr/include/c++/8/bits/vector.tcc: In member function ‘void std::vector<_Tp, _Alloc>::_M_realloc_insert(std::vector<_Tp, _Alloc>::iterator, _Args&& ...) [with _Args = {long long int}; _Tp = long long int; _Alloc = std::allocator]’: 2022-05-05T12:31:43,326 /usr/include/c++/8/bits/vector.tcc:413:7: note: parameter passing for argument of type ‘std::vector::iterator’ {aka ‘__gnu_cxx::__normal_iterator >’} changed in GCC 7.1 2022-05-05T12:31:43,327 vector<_Tp, _Alloc>:: 2022-05-05T12:31:43,327 ^~~~~~~~~~~~~~~~~~~ 2022-05-05T12:31:43,328 /usr/include/c++/8/bits/vector.tcc: In member function ‘void {anonymous}::OpenCLBuiltinFileEmitterBase::getTypeLists(llvm::Record*, {anonymous}::OpenCLBuiltinFileEmitterBase::TypeFlags&, std::vector >&, std::vector&) const’: 2022-05-05T12:31:43,328 /usr/include/c++/8/bits/vector.tcc:109:4: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator >’ changed in GCC 7.1 2022-05-05T12:31:43,328 _M_realloc_insert(end(), std::forward<_Args>(__args)...); 2022-05-05T12:31:43,329 ^~~~~~~~~~~~~~~~~ 2022-05-05T12:31:44,269 [237/611] Building CXX object tools/clang/utils/TableGen/CMakeFiles/clang-tblgen.dir/ClangSACheckersEmitter.cpp.o 2022-05-05T12:31:51,629 [238/611] Building CXX object tools/clang/utils/TableGen/CMakeFiles/clang-tblgen.dir/ClangASTPropertiesEmitter.cpp.o 2022-05-05T12:31:58,622 [239/611] Building CXX object tools/clang/utils/TableGen/CMakeFiles/clang-tblgen.dir/ClangTypeNodesEmitter.cpp.o 2022-05-05T12:32:07,651 [240/611] Building CXX object tools/clang/utils/TableGen/CMakeFiles/clang-tblgen.dir/ClangDiagnosticsEmitter.cpp.o 2022-05-05T12:32:08,178 [241/611] Building CXX object tools/clang/utils/TableGen/CMakeFiles/clang-tblgen.dir/ClangAttrEmitter.cpp.o 2022-05-05T12:32:12,365 [242/611] Building CXX object tools/clang/utils/TableGen/CMakeFiles/clang-tblgen.dir/ClangSyntaxEmitter.cpp.o 2022-05-05T12:32:31,427 [243/611] Building CXX object tools/clang/utils/TableGen/CMakeFiles/clang-tblgen.dir/TableGen.cpp.o 2022-05-05T12:32:36,154 [244/611] Building CXX object tools/clang/utils/TableGen/CMakeFiles/clang-tblgen.dir/RISCVVEmitter.cpp.o 2022-05-05T12:32:39,997 [245/611] Building CXX object tools/clang/utils/TableGen/CMakeFiles/clang-tblgen.dir/SveEmitter.cpp.o 2022-05-05T12:32:42,353 [246/611] Building CXX object tools/clang/utils/TableGen/CMakeFiles/clang-tblgen.dir/MveEmitter.cpp.o 2022-05-05T12:32:42,727 [247/611] Building CXX object tools/clang/utils/TableGen/CMakeFiles/clang-tblgen.dir/NeonEmitter.cpp.o 2022-05-05T12:32:44,468 [248/611] Linking CXX executable bin/clang-tblgen 2022-05-05T12:32:44,564 [249/611] Copying clang's immintrin.h... 2022-05-05T12:32:44,568 [250/611] Copying clang's ia32intrin.h... 2022-05-05T12:32:44,572 [251/611] Copying clang's hexagon_types.h... 2022-05-05T12:32:44,584 [252/611] Copying clang's htmxlintrin.h... 2022-05-05T12:32:44,596 [253/611] Copying clang's htmintrin.h... 2022-05-05T12:32:44,616 [254/611] Copying clang's hvx_hexagon_protos.h... 2022-05-05T12:32:44,705 [255/611] Building StmtNodes.inc... 2022-05-05T12:32:44,761 [256/611] Building AttrVisitor.inc... 2022-05-05T12:32:44,804 [257/611] Building DeclNodes.inc... 2022-05-05T12:32:44,811 [258/611] Building AbstractBasicReader.inc... 2022-05-05T12:32:44,874 [259/611] Building AttrNodeTraverse.inc... 2022-05-05T12:32:44,876 [260/611] Building AttrImpl.inc... 2022-05-05T12:32:44,911 [261/611] Building Attrs.inc... 2022-05-05T12:32:44,918 [262/611] Building TypeNodes.inc... 2022-05-05T12:32:44,931 [263/611] Building AttrTextNodeDump.inc... 2022-05-05T12:32:44,962 [264/611] Building CommentCommandList.inc... 2022-05-05T12:32:44,976 [265/611] Building AbstractBasicWriter.inc... 2022-05-05T12:32:44,979 [266/611] Building CommentNodes.inc... 2022-05-05T12:32:44,991 [267/611] Building CommentHTMLTags.inc... 2022-05-05T12:32:44,999 [268/611] Building AbstractTypeReader.inc... 2022-05-05T12:32:45,030 [269/611] Building CommentHTMLNamedCharacterReferences.inc... 2022-05-05T12:32:45,043 [270/611] Building AbstractTypeWriter.inc... 2022-05-05T12:32:45,051 [271/611] Building CommentHTMLTagsProperties.inc... 2022-05-05T12:32:45,068 [272/611] Building StmtDataCollectors.inc... 2022-05-05T12:32:45,084 [273/611] Building CommentCommandInfo.inc... 2022-05-05T12:32:45,526 [274/611] Building DiagnosticCrossTUKinds.inc... 2022-05-05T12:32:45,685 [275/611] Building DiagnosticAnalysisKinds.inc... 2022-05-05T12:32:45,843 [276/611] Building DiagnosticCommonKinds.inc... 2022-05-05T12:32:45,846 [277/611] Building DiagnosticASTKinds.inc... 2022-05-05T12:32:45,859 [278/611] Building DiagnosticCommentKinds.inc... 2022-05-05T12:32:45,970 [279/611] Building riscv_vector_builtin_cg.inc... 2022-05-05T12:32:46,210 [280/611] Building DiagnosticLexKinds.inc... 2022-05-05T12:32:46,271 [281/611] Building DiagnosticFrontendKinds.inc... 2022-05-05T12:32:46,547 [282/611] Building DiagnosticSemaKinds.inc... 2022-05-05T12:32:46,604 [283/611] Building DiagnosticDriverKinds.inc... 2022-05-05T12:32:46,640 [284/611] Building DiagnosticParseKinds.inc... 2022-05-05T12:32:46,659 [285/611] Building DiagnosticRefactoringKinds.inc... 2022-05-05T12:32:46,752 [286/611] Building DiagnosticSerializationKinds.inc... 2022-05-05T12:32:46,812 [287/611] Building AttrList.inc... 2022-05-05T12:32:46,858 [288/611] Building AttrSubMatchRulesList.inc... 2022-05-05T12:32:46,875 [289/611] Building arm_fp16.inc... 2022-05-05T12:32:46,891 [290/611] Building AttrHasAttributeImpl.inc... 2022-05-05T12:32:47,058 [291/611] Building DiagnosticGroups.inc... 2022-05-05T12:32:47,079 [292/611] Building arm_neon.inc... 2022-05-05T12:32:47,181 [293/611] Building DiagnosticIndexName.inc... 2022-05-05T12:32:47,386 [294/611] Building arm_mve_builtin_sema.inc... 2022-05-05T12:32:47,454 [295/611] Building arm_mve_builtins.inc... 2022-05-05T12:32:47,616 [296/611] Building arm_mve_builtin_cg.inc... 2022-05-05T12:32:47,629 [297/611] Building arm_sve_typeflags.inc... 2022-05-05T12:32:47,705 [298/611] Building arm_mve_builtin_aliases.inc... 2022-05-05T12:32:47,773 [299/611] Building arm_cde_builtins.inc... 2022-05-05T12:32:47,801 [300/611] Building arm_cde_builtin_cg.inc... 2022-05-05T12:32:47,843 [301/611] Building arm_cde_builtin_sema.inc... 2022-05-05T12:32:47,904 [302/611] Building arm_cde_builtin_aliases.inc... 2022-05-05T12:32:48,064 [303/611] Building AttrParserStringSwitches.inc... 2022-05-05T12:32:48,161 [304/611] Building AttrSubMatchRulesParserStringSwitches.inc... 2022-05-05T12:32:48,241 [305/611] Building AttrParsedAttrList.inc... 2022-05-05T12:32:48,402 [306/611] Building AttrTemplateInstantiate.inc... 2022-05-05T12:32:48,419 [307/611] Building AttrParsedAttrKinds.inc... 2022-05-05T12:32:48,681 [308/611] Building AttrSpellingListIndex.inc... 2022-05-05T12:32:48,699 [309/611] Building arm_sve_builtins.inc... 2022-05-05T12:32:48,880 [310/611] Building arm_sve_sema_rangechecks.inc... 2022-05-05T12:32:48,884 [311/611] Building AttrParsedAttrImpl.inc... 2022-05-05T12:32:48,959 [312/611] Building Nodes.inc... 2022-05-05T12:32:48,982 [313/611] Building AttrPCHWrite.inc... 2022-05-05T12:32:48,999 [314/611] Building Checkers.inc... 2022-05-05T12:32:49,026 [315/611] Building AttrPCHRead.inc... 2022-05-05T12:32:49,045 [316/611] Building riscv_vector_builtins.inc... 2022-05-05T12:32:49,055 [317/611] Building NodeClasses.inc... 2022-05-05T12:32:49,058 [318/611] Building arm_sve_builtin_cg.inc... 2022-05-05T12:32:49,094 [319/611] Copying clang's __clang_cuda_libdevice_declares.h... 2022-05-05T12:32:49,114 [320/611] Copying clang's __clang_cuda_intrinsics.h... 2022-05-05T12:32:49,133 [321/611] Copying clang's __clang_cuda_device_functions.h... 2022-05-05T12:32:49,136 [322/611] Copying clang's __clang_cuda_complex_builtins.h... 2022-05-05T12:32:49,148 [323/611] Copying clang's __clang_cuda_math.h... 2022-05-05T12:32:49,185 [324/611] Copying clang's __clang_cuda_builtin_vars.h... 2022-05-05T12:32:49,208 [325/611] Copying clang's __clang_cuda_cmath.h... 2022-05-05T12:32:49,222 [326/611] Copying clang's __clang_cuda_math_forward_declares.h... 2022-05-05T12:32:49,224 [327/611] Copying clang's __clang_cuda_runtime_wrapper.h... 2022-05-05T12:32:49,228 [328/611] Copying clang's __clang_cuda_texture_intrinsics.h... 2022-05-05T12:32:49,271 [329/611] Copying clang's __clang_hip_cmath.h... 2022-05-05T12:32:49,275 [330/611] Copying clang's __stddef_max_align_t.h... 2022-05-05T12:32:49,311 [331/611] Copying clang's avx512vpopcntdqintrin.h... 2022-05-05T12:32:49,314 [332/611] Copying clang's __clang_hip_runtime_wrapper.h... 2022-05-05T12:32:49,338 [333/611] Copying clang's __clang_hip_math.h... 2022-05-05T12:32:49,370 [334/611] Copying clang's __clang_hip_libdevice_declares.h... 2022-05-05T12:32:49,373 [335/611] Copying clang's __wmmintrin_pclmul.h... 2022-05-05T12:32:49,408 [336/611] Copying clang's __wmmintrin_aes.h... 2022-05-05T12:32:49,441 [337/611] Copying clang's ammintrin.h... 2022-05-05T12:32:49,454 [338/611] Copying clang's adxintrin.h... 2022-05-05T12:32:49,484 [339/611] Copying clang's altivec.h... 2022-05-05T12:32:49,488 [340/611] Copying clang's arm64intr.h... 2022-05-05T12:32:49,501 [341/611] Copying clang's amxintrin.h... 2022-05-05T12:32:49,559 [342/611] Copying clang's arm_neon_sve_bridge.h... 2022-05-05T12:32:49,563 [343/611] Copying clang's arm_acle.h... 2022-05-05T12:32:49,577 [344/611] Copying clang's arm_cmse.h... 2022-05-05T12:32:49,580 [345/611] Copying clang's armintr.h... 2022-05-05T12:32:49,596 [346/611] Copying clang's avx2intrin.h... 2022-05-05T12:32:49,611 [347/611] Copying clang's avx512bf16intrin.h... 2022-05-05T12:32:49,648 [348/611] Copying clang's avx512bwintrin.h... 2022-05-05T12:32:49,687 [349/611] Copying clang's avx512cdintrin.h... 2022-05-05T12:32:49,691 [350/611] Copying clang's avx512dqintrin.h... 2022-05-05T12:32:49,694 [351/611] Copying clang's avx512erintrin.h... 2022-05-05T12:32:49,735 [352/611] Copying clang's avx512bitalgintrin.h... 2022-05-05T12:32:49,744 [353/611] Copying clang's avx512fintrin.h... 2022-05-05T12:32:49,761 [354/611] Copying clang's avx512ifmaintrin.h... 2022-05-05T12:32:49,786 [355/611] Copying clang's avx512ifmavlintrin.h... 2022-05-05T12:32:49,804 [356/611] Copying clang's avx512pfintrin.h... 2022-05-05T12:32:49,818 [357/611] Copying clang's avx512vbmi2intrin.h... 2022-05-05T12:32:49,845 [358/611] Copying clang's avx512vbmiintrin.h... 2022-05-05T12:32:49,858 [359/611] Copying clang's avx512vbmivlintrin.h... 2022-05-05T12:32:49,873 [360/611] Copying clang's avx512fp16intrin.h... 2022-05-05T12:32:49,886 [361/611] Copying clang's avx512vlbf16intrin.h... 2022-05-05T12:32:49,897 [362/611] Copying clang's avx512vlbitalgintrin.h... 2022-05-05T12:32:49,964 [363/611] Copying clang's avx512vlfp16intrin.h... 2022-05-05T12:32:49,987 [364/611] Copying clang's avx512vlcdintrin.h... 2022-05-05T12:32:50,000 [365/611] Copying clang's avx512vlbwintrin.h... 2022-05-05T12:32:50,018 [366/611] Copying clang's avx512vldqintrin.h... 2022-05-05T12:32:50,027 [367/611] Copying clang's avx512vlintrin.h... 2022-05-05T12:32:50,054 [368/611] Copying clang's avx512vlvbmi2intrin.h... 2022-05-05T12:32:50,060 [369/611] Copying clang's avx512vlvp2intersectintrin.h... 2022-05-05T12:32:50,080 [370/611] Copying clang's avx512vnniintrin.h... 2022-05-05T12:32:50,106 [371/611] Copying clang's avx512vp2intersectintrin.h... 2022-05-05T12:32:50,121 [372/611] Copying clang's avx512vlvnniintrin.h... 2022-05-05T12:32:50,136 [373/611] Copying clang's avx512vpopcntdqvlintrin.h... 2022-05-05T12:32:50,168 [374/611] Copying clang's avxvnniintrin.h... 2022-05-05T12:32:50,170 [375/611] Copying clang's avxintrin.h... 2022-05-05T12:32:50,205 [376/611] Copying clang's bmiintrin.h... 2022-05-05T12:32:50,218 [377/611] Copying clang's bmi2intrin.h... 2022-05-05T12:32:50,247 [378/611] Copying clang's cetintrin.h... 2022-05-05T12:32:50,254 [379/611] Copying clang's builtins.h... 2022-05-05T12:32:50,261 [380/611] Copying clang's cet.h... 2022-05-05T12:32:50,287 [381/611] Copying clang's clflushoptintrin.h... 2022-05-05T12:32:50,292 [382/611] Copying clang's cldemoteintrin.h... 2022-05-05T12:32:50,339 [383/611] Copying clang's clwbintrin.h... 2022-05-05T12:32:50,346 [384/611] Copying clang's clzerointrin.h... 2022-05-05T12:32:50,355 [385/611] Copying clang's cpuid.h... 2022-05-05T12:32:50,378 [386/611] Copying clang's cuda_wrappers/algorithm... 2022-05-05T12:32:50,385 [387/611] Copying clang's crc32intrin.h... 2022-05-05T12:32:50,420 [388/611] Copying clang's cuda_wrappers/complex... 2022-05-05T12:32:50,426 [389/611] Copying clang's cuda_wrappers/new... 2022-05-05T12:32:50,435 [390/611] Copying clang's enqcmdintrin.h... 2022-05-05T12:32:50,459 [391/611] Copying clang's emmintrin.h... 2022-05-05T12:32:50,500 [392/611] Copying clang's f16cintrin.h... 2022-05-05T12:32:50,512 [393/611] Copying clang's float.h... 2022-05-05T12:32:50,520 [394/611] Copying clang's fma4intrin.h... 2022-05-05T12:32:50,528 [395/611] Copying clang's fmaintrin.h... 2022-05-05T12:32:50,534 [396/611] Copying clang's fxsrintrin.h... 2022-05-05T12:32:50,580 [397/611] Copying clang's hexagon_circ_brev_intrinsics.h... 2022-05-05T12:32:50,585 [398/611] Copying clang's hresetintrin.h... 2022-05-05T12:32:50,640 [399/611] Copying clang's gfniintrin.h... 2022-05-05T12:32:50,649 [400/611] Copying clang's hexagon_protos.h... 2022-05-05T12:32:50,658 [401/611] Copying clang's intrin.h... 2022-05-05T12:32:50,675 [402/611] Copying clang's inttypes.h... 2022-05-05T12:32:50,680 [403/611] Copying clang's invpcidintrin.h... 2022-05-05T12:32:50,723 [404/611] Copying clang's iso646.h... 2022-05-05T12:32:50,736 [405/611] Copying clang's keylockerintrin.h... 2022-05-05T12:32:50,741 [406/611] Copying clang's limits.h... 2022-05-05T12:32:50,755 [407/611] Copying clang's lwpintrin.h... 2022-05-05T12:32:50,765 [408/611] Copying clang's lzcntintrin.h... 2022-05-05T12:32:50,791 [409/611] Copying clang's mm3dnow.h... 2022-05-05T12:32:50,804 [410/611] Copying clang's mm_malloc.h... 2022-05-05T12:32:50,819 [411/611] Copying clang's mmintrin.h... 2022-05-05T12:32:50,842 [412/611] Copying clang's module.modulemap... 2022-05-05T12:32:50,857 [413/611] Copying clang's movdirintrin.h... 2022-05-05T12:32:50,878 [414/611] Copying clang's msa.h... 2022-05-05T12:32:50,888 [415/611] Copying clang's mwaitxintrin.h... 2022-05-05T12:32:50,920 [416/611] Copying clang's nmmintrin.h... 2022-05-05T12:32:50,928 [417/611] Copying clang's opencl-c-base.h... 2022-05-05T12:32:50,956 [418/611] Copying clang's openmp_wrappers/__clang_openmp_device_functions.h... 2022-05-05T12:32:51,018 [419/611] Copying clang's openmp_wrappers/complex... 2022-05-05T12:32:51,024 [420/611] Copying clang's openmp_wrappers/complex_cmath.h... 2022-05-05T12:32:51,032 [421/611] Copying clang's openmp_wrappers/cmath... 2022-05-05T12:32:51,087 [422/611] Copying clang's openmp_wrappers/math.h... 2022-05-05T12:32:51,091 [423/611] Copying clang's opencl-c.h... 2022-05-05T12:32:51,121 [424/611] Copying clang's openmp_wrappers/complex.h... 2022-05-05T12:32:51,131 [425/611] Copying clang's openmp_wrappers/new... 2022-05-05T12:32:51,139 [426/611] Copying clang's pconfigintrin.h... 2022-05-05T12:32:51,167 [427/611] Copying clang's pkuintrin.h... 2022-05-05T12:32:51,186 [428/611] Copying clang's popcntintrin.h... 2022-05-05T12:32:51,197 [429/611] Copying clang's pmmintrin.h... 2022-05-05T12:32:51,231 [430/611] Copying clang's ppc_wrappers/mmintrin.h... 2022-05-05T12:32:51,233 [431/611] Copying clang's ppc_wrappers/emmintrin.h... 2022-05-05T12:32:51,256 [432/611] Copying clang's ppc_wrappers/pmmintrin.h... 2022-05-05T12:32:51,274 [433/611] Copying clang's ppc_wrappers/mm_malloc.h... 2022-05-05T12:32:51,289 [434/611] Copying clang's ppc_wrappers/smmintrin.h... 2022-05-05T12:32:51,310 [435/611] Copying clang's ppc_wrappers/xmmintrin.h... 2022-05-05T12:32:51,327 [436/611] Copying clang's ppc_wrappers/tmmintrin.h... 2022-05-05T12:32:51,334 [437/611] Copying clang's prfchwintrin.h... 2022-05-05T12:32:51,347 [438/611] Copying clang's ptwriteintrin.h... 2022-05-05T12:32:51,363 [439/611] Copying clang's rdseedintrin.h... 2022-05-05T12:32:51,390 [440/611] Copying clang's rtmintrin.h... 2022-05-05T12:32:51,402 [441/611] Copying clang's s390intrin.h... 2022-05-05T12:32:51,411 [442/611] Copying clang's serializeintrin.h... 2022-05-05T12:32:51,453 [443/611] Copying clang's smmintrin.h... 2022-05-05T12:32:51,462 [444/611] Copying clang's shaintrin.h... 2022-05-05T12:32:51,469 [445/611] Copying clang's stdalign.h... 2022-05-05T12:32:51,474 [446/611] Copying clang's sgxintrin.h... 2022-05-05T12:32:51,508 [447/611] Copying clang's stdarg.h... 2022-05-05T12:32:51,538 [448/611] Copying clang's stdint.h... 2022-05-05T12:32:51,553 [449/611] Copying clang's stdatomic.h... 2022-05-05T12:32:51,563 [450/611] Copying clang's stdbool.h... 2022-05-05T12:32:51,570 [451/611] Copying clang's stdnoreturn.h... 2022-05-05T12:32:51,587 [452/611] Copying clang's stddef.h... 2022-05-05T12:32:51,599 [453/611] Copying clang's tbmintrin.h... 2022-05-05T12:32:51,637 [454/611] Copying clang's tsxldtrkintrin.h... 2022-05-05T12:32:51,649 [455/611] Copying clang's tgmath.h... 2022-05-05T12:32:51,657 [456/611] Copying clang's tmmintrin.h... 2022-05-05T12:32:51,665 [457/611] Copying clang's uintrintrin.h... 2022-05-05T12:32:51,700 [458/611] Copying clang's vadefs.h... 2022-05-05T12:32:51,718 [459/611] Copying clang's vpclmulqdqintrin.h... 2022-05-05T12:32:51,721 [460/611] Copying clang's unwind.h... 2022-05-05T12:32:51,762 [461/611] Copying clang's varargs.h... 2022-05-05T12:32:51,783 [462/611] Copying clang's vaesintrin.h... 2022-05-05T12:32:51,788 [463/611] Copying clang's waitpkgintrin.h... 2022-05-05T12:32:51,808 [464/611] Copying clang's wasm_simd128.h... 2022-05-05T12:32:51,835 [465/611] Copying clang's vecintrin.h... 2022-05-05T12:32:51,846 [466/611] Copying clang's wbnoinvdintrin.h... 2022-05-05T12:32:51,870 [467/611] Copying clang's wmmintrin.h... 2022-05-05T12:32:51,881 [468/611] Copying clang's x86intrin.h... 2022-05-05T12:32:51,917 [469/611] Copying clang's x86gprintrin.h... 2022-05-05T12:32:51,938 [470/611] Copying clang's xmmintrin.h... 2022-05-05T12:32:51,945 [471/611] Copying clang's xopintrin.h... 2022-05-05T12:32:51,953 [472/611] Copying clang's xsavecintrin.h... 2022-05-05T12:32:51,969 [473/611] Copying clang's xsaveintrin.h... 2022-05-05T12:32:51,991 [474/611] Copying clang's xsaveoptintrin.h... 2022-05-05T12:32:52,022 [475/611] Copying clang's xsavesintrin.h... 2022-05-05T12:32:52,033 [476/611] Building arm_bf16.h... 2022-05-05T12:32:52,037 [477/611] Copying clang's xtestintrin.h... 2022-05-05T12:32:52,083 [478/611] Copying clang's arm_bf16.h... 2022-05-05T12:32:52,105 [479/611] Building arm_fp16.h... 2022-05-05T12:32:52,110 [480/611] Building arm_cde.h... 2022-05-05T12:32:52,181 [481/611] Copying clang's arm_fp16.h... 2022-05-05T12:32:52,197 [482/611] Copying clang's arm_cde.h... 2022-05-05T12:32:52,318 [483/611] Generating VCSVersion.inc 2022-05-05T12:32:52,765 [484/611] Building arm_mve.h... 2022-05-05T12:32:52,924 [485/611] Copying clang's arm_mve.h... 2022-05-05T12:32:53,215 [486/611] Building arm_sve.h... 2022-05-05T12:32:53,459 [487/611] Copying clang's arm_sve.h... 2022-05-05T12:32:54,467 [488/611] Building riscv_vector.h... 2022-05-05T12:32:54,636 [489/611] Building arm_neon.h... 2022-05-05T12:32:55,052 [490/611] Copying clang's arm_neon.h... 2022-05-05T12:32:55,209 [491/611] Copying clang's riscv_vector.h... 2022-05-05T12:32:58,356 [492/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/CLWarnings.cpp.o 2022-05-05T12:33:00,356 [493/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/CharInfo.cpp.o 2022-05-05T12:33:05,239 [494/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Cuda.cpp.o 2022-05-05T12:33:06,814 [495/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/CodeGenOptions.cpp.o 2022-05-05T12:33:13,327 [496/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Builtins.cpp.o 2022-05-05T12:33:13,831 [497/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/DiagnosticOptions.cpp.o 2022-05-05T12:33:14,219 [498/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/ExpressionTraits.cpp.o 2022-05-05T12:33:19,600 [499/611] Building CXX object tools/clang/lib/Tooling/Core/CMakeFiles/obj.clangToolingCore.dir/Diagnostic.cpp.o 2022-05-05T12:33:28,202 [500/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/FileEntry.cpp.o 2022-05-05T12:33:29,783 [501/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/DarwinSDKInfo.cpp.o 2022-05-05T12:33:44,196 [502/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/FileSystemStatCache.cpp.o 2022-05-05T12:33:48,576 [503/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/DiagnosticIDs.cpp.o 2022-05-05T12:33:49,662 [504/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Diagnostic.cpp.o 2022-05-05T12:33:54,531 [505/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/FileManager.cpp.o 2022-05-05T12:33:54,814 [506/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/LangStandards.cpp.o 2022-05-05T12:33:56,561 [507/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/LangOptions.cpp.o 2022-05-05T12:34:00,096 [508/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/OperatorPrecedence.cpp.o 2022-05-05T12:34:02,549 [509/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/IdentifierTable.cpp.o 2022-05-05T12:34:04,096 [510/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/ObjCRuntime.cpp.o 2022-05-05T12:34:17,069 [511/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/OpenMPKinds.cpp.o 2022-05-05T12:34:22,273 [512/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/OpenCLOptions.cpp.o 2022-05-05T12:34:24,174 [513/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/NoSanitizeList.cpp.o 2022-05-05T12:34:25,906 [514/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/ProfileList.cpp.o 2022-05-05T12:34:29,623 [515/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/SanitizerSpecialCaseList.cpp.o 2022-05-05T12:34:29,624 In file included from /usr/include/c++/8/vector:69, 2022-05-05T12:34:29,625 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/ADT/ArrayRef.h:25, 2022-05-05T12:34:29,625 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/llvm/include/llvm/Support/HashBuilder.h:18, 2022-05-05T12:34:29,626 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/clang/include/clang/Basic/Sanitizers.h:19, 2022-05-05T12:34:29,626 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/clang/include/clang/Basic/SanitizerSpecialCaseList.h:18, 2022-05-05T12:34:29,627 from /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build/llvm-project/clang/lib/Basic/SanitizerSpecialCaseList.cpp:13: 2022-05-05T12:34:29,628 /usr/include/c++/8/bits/vector.tcc: In member function ‘void std::vector<_Tp, _Alloc>::_M_realloc_insert(std::vector<_Tp, _Alloc>::iterator, _Args&& ...) [with _Args = {clang::SanitizerMask&, llvm::StringMap, llvm::MallocAllocator>&}; _Tp = clang::SanitizerSpecialCaseList::SanitizerSection; _Alloc = std::allocator]’: 2022-05-05T12:34:29,628 /usr/include/c++/8/bits/vector.tcc:413:7: note: parameter passing for argument of type ‘std::vector::iterator’ {aka ‘__gnu_cxx::__normal_iterator >’} changed in GCC 7.1 2022-05-05T12:34:29,629 vector<_Tp, _Alloc>:: 2022-05-05T12:34:29,629 ^~~~~~~~~~~~~~~~~~~ 2022-05-05T12:34:29,630 /usr/include/c++/8/bits/vector.tcc: In member function ‘void clang::SanitizerSpecialCaseList::createSanitizerSections()’: 2022-05-05T12:34:29,630 /usr/include/c++/8/bits/vector.tcc:109:4: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator >’ changed in GCC 7.1 2022-05-05T12:34:29,631 _M_realloc_insert(end(), std::forward<_Args>(__args)...); 2022-05-05T12:34:29,632 ^~~~~~~~~~~~~~~~~ 2022-05-05T12:34:32,183 [516/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Module.cpp.o 2022-05-05T12:34:33,781 [517/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Stack.cpp.o 2022-05-05T12:34:42,471 [518/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/SourceLocation.cpp.o 2022-05-05T12:34:43,164 [519/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Sanitizers.cpp.o 2022-05-05T12:34:48,109 [520/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/TargetID.cpp.o 2022-05-05T12:35:03,986 [521/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/TargetInfo.cpp.o 2022-05-05T12:35:19,740 [522/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/AMDGPU.cpp.o 2022-05-05T12:35:22,026 [523/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/SourceManager.cpp.o 2022-05-05T12:35:27,133 [524/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/AArch64.cpp.o 2022-05-05T12:35:28,115 [525/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/ARC.cpp.o 2022-05-05T12:35:46,717 [526/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/AVR.cpp.o 2022-05-05T12:35:46,894 [527/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/BPF.cpp.o 2022-05-05T12:35:56,307 [528/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/Hexagon.cpp.o 2022-05-05T12:35:59,756 [529/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/ARM.cpp.o 2022-05-05T12:36:02,580 [530/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Attributes.cpp.o 2022-05-05T12:36:08,176 [531/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/Lanai.cpp.o 2022-05-05T12:36:08,588 [532/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/Le64.cpp.o 2022-05-05T12:36:12,122 [533/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets.cpp.o 2022-05-05T12:36:20,783 [534/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/MSP430.cpp.o 2022-05-05T12:36:24,890 [535/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/M68k.cpp.o 2022-05-05T12:36:29,564 [536/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/OSTargets.cpp.o 2022-05-05T12:36:32,687 [537/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/NVPTX.cpp.o 2022-05-05T12:36:35,420 [538/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/PNaCl.cpp.o 2022-05-05T12:36:37,264 [539/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/Mips.cpp.o 2022-05-05T12:36:52,605 [540/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/SPIR.cpp.o 2022-05-05T12:36:55,468 [541/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/TCE.cpp.o 2022-05-05T12:36:58,751 [542/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/SystemZ.cpp.o 2022-05-05T12:37:00,380 [543/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/RISCV.cpp.o 2022-05-05T12:37:01,463 [544/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/Sparc.cpp.o 2022-05-05T12:37:02,099 [545/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/PPC.cpp.o 2022-05-05T12:37:05,136 [546/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/TokenKinds.cpp.o 2022-05-05T12:37:05,870 [547/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/TypeTraits.cpp.o 2022-05-05T12:37:08,395 [548/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Version.cpp.o 2022-05-05T12:37:14,721 [549/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/XRayInstr.cpp.o 2022-05-05T12:37:16,479 [550/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/VE.cpp.o 2022-05-05T12:37:20,026 [551/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Warnings.cpp.o 2022-05-05T12:37:22,855 [552/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/WebAssembly.cpp.o 2022-05-05T12:37:24,234 [553/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/XCore.cpp.o 2022-05-05T12:37:32,846 [554/611] Building CXX object tools/clang/lib/Lex/CMakeFiles/obj.clangLex.dir/HeaderMap.cpp.o 2022-05-05T12:37:38,814 [555/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/XRayLists.cpp.o 2022-05-05T12:37:40,860 [556/611] Building CXX object tools/clang/lib/Lex/CMakeFiles/obj.clangLex.dir/DependencyDirectivesSourceMinimizer.cpp.o 2022-05-05T12:37:42,776 [557/611] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/X86.cpp.o 2022-05-05T12:37:45,031 [558/611] Linking CXX static library lib/libclangBasic.a 2022-05-05T12:38:04,148 [559/611] Building CXX object tools/clang/lib/Lex/CMakeFiles/obj.clangLex.dir/InitHeaderSearch.cpp.o 2022-05-05T12:38:13,437 [560/611] Building CXX object tools/clang/lib/Lex/CMakeFiles/obj.clangLex.dir/MacroArgs.cpp.o 2022-05-05T12:38:19,622 [561/611] Building CXX object tools/clang/lib/Lex/CMakeFiles/obj.clangLex.dir/MacroInfo.cpp.o 2022-05-05T12:38:33,657 [562/611] Building CXX object tools/clang/lib/Lex/CMakeFiles/obj.clangLex.dir/Lexer.cpp.o 2022-05-05T12:38:35,324 [563/611] Building CXX object tools/clang/lib/Lex/CMakeFiles/obj.clangLex.dir/HeaderSearch.cpp.o 2022-05-05T12:38:36,205 [564/611] Building CXX object tools/clang/lib/Lex/CMakeFiles/obj.clangLex.dir/LiteralSupport.cpp.o 2022-05-05T12:38:39,574 [565/611] Building CXX object tools/clang/lib/Lex/CMakeFiles/obj.clangLex.dir/PPCallbacks.cpp.o 2022-05-05T12:38:47,916 [566/611] Building CXX object tools/clang/lib/Lex/CMakeFiles/obj.clangLex.dir/PPCaching.cpp.o 2022-05-05T12:38:52,897 [567/611] Building CXX object tools/clang/lib/Lex/CMakeFiles/obj.clangLex.dir/PPConditionalDirectiveRecord.cpp.o 2022-05-05T12:39:33,899 [568/611] Building CXX object tools/clang/lib/Lex/CMakeFiles/obj.clangLex.dir/PPExpressions.cpp.o 2022-05-05T12:39:37,184 [569/611] Building CXX object tools/clang/lib/Lex/CMakeFiles/obj.clangLex.dir/ModuleMap.cpp.o 2022-05-05T12:39:37,453 [570/611] Building CXX object tools/clang/lib/Lex/CMakeFiles/obj.clangLex.dir/PPLexerChange.cpp.o 2022-05-05T12:39:48,328 [571/611] Building CXX object tools/clang/lib/Lex/CMakeFiles/obj.clangLex.dir/Pragma.cpp.o 2022-05-05T12:39:52,463 [572/611] Building CXX object tools/clang/lib/Lex/CMakeFiles/obj.clangLex.dir/PPDirectives.cpp.o 2022-05-05T12:39:52,482 [573/611] Building CXX object tools/clang/lib/Lex/CMakeFiles/obj.clangLex.dir/PPMacroExpansion.cpp.o 2022-05-05T12:39:57,177 [574/611] Building CXX object tools/clang/lib/Lex/CMakeFiles/obj.clangLex.dir/PreprocessingRecord.cpp.o 2022-05-05T12:40:03,175 [575/611] Building CXX object tools/clang/lib/Lex/CMakeFiles/obj.clangLex.dir/ScratchBuffer.cpp.o 2022-05-05T12:40:10,107 [576/611] Building CXX object tools/clang/lib/Lex/CMakeFiles/obj.clangLex.dir/PreprocessorLexer.cpp.o 2022-05-05T12:40:11,792 [577/611] Building CXX object tools/clang/lib/Rewrite/CMakeFiles/obj.clangRewrite.dir/DeltaTree.cpp.o 2022-05-05T12:40:19,867 [578/611] Building CXX object tools/clang/lib/Rewrite/CMakeFiles/obj.clangRewrite.dir/RewriteRope.cpp.o 2022-05-05T12:40:28,700 [579/611] Building CXX object tools/clang/lib/Lex/CMakeFiles/obj.clangLex.dir/TokenConcatenation.cpp.o 2022-05-05T12:40:33,456 [580/611] Building CXX object tools/clang/lib/Rewrite/CMakeFiles/obj.clangRewrite.dir/HTMLRewrite.cpp.o 2022-05-05T12:40:34,952 [581/611] Building CXX object tools/clang/lib/Lex/CMakeFiles/obj.clangLex.dir/TokenLexer.cpp.o 2022-05-05T12:40:44,040 [582/611] Building CXX object tools/clang/lib/Lex/CMakeFiles/obj.clangLex.dir/Preprocessor.cpp.o 2022-05-05T12:40:44,900 [583/611] Linking CXX static library lib/libclangLex.a 2022-05-05T12:40:48,409 [584/611] Building CXX object tools/clang/lib/Tooling/Inclusions/CMakeFiles/obj.clangToolingInclusions.dir/IncludeStyle.cpp.o 2022-05-05T12:40:48,534 [585/611] Building CXX object tools/clang/lib/Rewrite/CMakeFiles/obj.clangRewrite.dir/TokenRewriter.cpp.o 2022-05-05T12:40:49,306 [586/611] Building CXX object tools/clang/lib/Rewrite/CMakeFiles/obj.clangRewrite.dir/Rewriter.cpp.o 2022-05-05T12:40:49,500 [587/611] Linking CXX static library lib/libclangRewrite.a 2022-05-05T12:41:18,929 [588/611] Building CXX object tools/clang/lib/Tooling/Inclusions/CMakeFiles/obj.clangToolingInclusions.dir/HeaderIncludes.cpp.o 2022-05-05T12:41:20,731 [589/611] Building CXX object tools/clang/lib/Format/CMakeFiles/obj.clangFormat.dir/AffectedRangeManager.cpp.o 2022-05-05T12:41:21,431 [590/611] Building CXX object tools/clang/lib/Tooling/Core/CMakeFiles/obj.clangToolingCore.dir/Replacement.cpp.o 2022-05-05T12:41:21,558 [591/611] Linking CXX static library lib/libclangToolingCore.a 2022-05-05T12:41:21,678 [592/611] Linking CXX static library lib/libclangToolingInclusions.a 2022-05-05T12:41:32,232 [593/611] Building CXX object tools/clang/lib/Format/CMakeFiles/obj.clangFormat.dir/BreakableToken.cpp.o 2022-05-05T12:41:33,128 [594/611] Building CXX object tools/clang/lib/Format/CMakeFiles/obj.clangFormat.dir/DefinitionBlockSeparator.cpp.o 2022-05-05T12:41:52,992 [595/611] Building CXX object tools/clang/lib/Format/CMakeFiles/obj.clangFormat.dir/ContinuationIndenter.cpp.o 2022-05-05T12:41:53,765 [596/611] Building CXX object tools/clang/lib/Format/CMakeFiles/obj.clangFormat.dir/FormatToken.cpp.o 2022-05-05T12:42:18,014 [597/611] Building CXX object tools/clang/lib/Format/CMakeFiles/obj.clangFormat.dir/NamespaceEndCommentsFixer.cpp.o 2022-05-05T12:42:21,677 [598/611] Building CXX object tools/clang/lib/Format/CMakeFiles/obj.clangFormat.dir/MacroExpander.cpp.o 2022-05-05T12:42:22,851 [599/611] Building CXX object tools/clang/lib/Format/CMakeFiles/obj.clangFormat.dir/FormatTokenLexer.cpp.o 2022-05-05T12:42:46,321 [600/611] Building CXX object tools/clang/lib/Format/CMakeFiles/obj.clangFormat.dir/QualifierAlignmentFixer.cpp.o 2022-05-05T12:42:57,966 [601/611] Building CXX object tools/clang/lib/Format/CMakeFiles/obj.clangFormat.dir/SortJavaScriptImports.cpp.o 2022-05-05T12:43:03,068 [602/611] Building CXX object tools/clang/lib/Format/CMakeFiles/obj.clangFormat.dir/Format.cpp.o 2022-05-05T12:43:12,051 [603/611] Building CXX object tools/clang/lib/Format/CMakeFiles/obj.clangFormat.dir/TokenAnalyzer.cpp.o 2022-05-05T12:43:23,944 [604/611] Building CXX object tools/clang/lib/Format/CMakeFiles/obj.clangFormat.dir/UnwrappedLineFormatter.cpp.o 2022-05-05T12:43:25,991 [605/611] Building CXX object tools/clang/lib/Format/CMakeFiles/obj.clangFormat.dir/TokenAnnotator.cpp.o 2022-05-05T12:43:38,400 [606/611] Building CXX object tools/clang/lib/Format/CMakeFiles/obj.clangFormat.dir/UnwrappedLineParser.cpp.o 2022-05-05T12:43:41,734 [607/611] Building CXX object tools/clang/lib/Format/CMakeFiles/obj.clangFormat.dir/UsingDeclarationsSorter.cpp.o 2022-05-05T12:43:50,462 [608/611] Building CXX object tools/clang/tools/clang-format/CMakeFiles/clang-format.dir/ClangFormat.cpp.o 2022-05-05T12:43:52,227 [609/611] Building CXX object tools/clang/lib/Format/CMakeFiles/obj.clangFormat.dir/WhitespaceManager.cpp.o 2022-05-05T12:43:52,595 [610/611] Linking CXX static library lib/libclangFormat.a 2022-05-05T12:43:55,997 [611/611] Linking CXX executable bin/clang-format 2022-05-05T12:43:56,140 [7/10] No install step for 'build-clang-format' 2022-05-05T12:43:56,233 [8/10] Completed 'build-clang-format' 2022-05-05T12:43:56,421 [9/10] Stripping clang-format executable for size reduction 2022-05-05T12:43:56,421 [9/10] Install the project... 2022-05-05T12:43:56,457 -- Install configuration: "Release" 2022-05-05T12:43:56,465 -- Installing: /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-install/clang_format/data/bin/clang-format 2022-05-05T12:43:56,597 -- Installing: /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-install/clang_format/data/bin/clang-format-diff.py 2022-05-05T12:43:56,603 -- Installing: /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-install/clang_format/data/bin/git-clang-format 2022-05-05T12:43:56,740 -------------------------------------------------------------------------------- 2022-05-05T12:43:56,741 -- Trying "Ninja" generator 2022-05-05T12:43:56,741 -------------------------------- 2022-05-05T12:43:56,741 --------------------------- 2022-05-05T12:43:56,742 ---------------------- 2022-05-05T12:43:56,742 ----------------- 2022-05-05T12:43:56,742 ------------ 2022-05-05T12:43:56,743 ------- 2022-05-05T12:43:56,743 -- 2022-05-05T12:43:56,743 -- 2022-05-05T12:43:56,744 ------- 2022-05-05T12:43:56,744 ------------ 2022-05-05T12:43:56,744 ----------------- 2022-05-05T12:43:56,745 ---------------------- 2022-05-05T12:43:56,745 --------------------------- 2022-05-05T12:43:56,745 -------------------------------- 2022-05-05T12:43:56,745 -- Trying "Ninja" generator - success 2022-05-05T12:43:56,746 -------------------------------------------------------------------------------- 2022-05-05T12:43:56,747 Configuring Project 2022-05-05T12:43:56,747 Working directory: 2022-05-05T12:43:56,747 /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-build 2022-05-05T12:43:56,747 Command: 2022-05-05T12:43:56,748 cmake /tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771 -G Ninja -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pip-wheel-8_pp0xgk/clang-format_3a7f53d050004c14a729deb1dac4d771/_skbuild/linux-armv7l-3.7/cmake-install -DPYTHON_EXECUTABLE:FILEPATH=/usr/bin/python3 -DPYTHON_VERSION_STRING:STRING=3.7.3 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.7m -DPYTHON_LIBRARY:FILEPATH=/usr/lib/arm-linux-gnueabihf/libpython3.7m.so -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/local/lib/python3.7/dist-packages/skbuild/resources/cmake -DCMAKE_BUILD_TYPE:STRING=Release 2022-05-05T12:43:56,749 copying clang_format/__init__.py -> _skbuild/linux-armv7l-3.7/cmake-install/clang_format/__init__.py 2022-05-05T12:43:56,749 running bdist_wheel 2022-05-05T12:43:56,750 running build 2022-05-05T12:43:56,750 running build_py 2022-05-05T12:43:56,753 creating _skbuild/linux-armv7l-3.7/setuptools/lib.linux-armv7l-3.7 2022-05-05T12:43:56,754 creating _skbuild/linux-armv7l-3.7/setuptools/lib.linux-armv7l-3.7/clang_format 2022-05-05T12:43:56,757 copying _skbuild/linux-armv7l-3.7/cmake-install/clang_format/__init__.py -> _skbuild/linux-armv7l-3.7/setuptools/lib.linux-armv7l-3.7/clang_format 2022-05-05T12:43:56,763 creating _skbuild/linux-armv7l-3.7/setuptools/lib.linux-armv7l-3.7/clang_format/data 2022-05-05T12:43:56,764 creating _skbuild/linux-armv7l-3.7/setuptools/lib.linux-armv7l-3.7/clang_format/data/bin 2022-05-05T12:43:56,766 copying _skbuild/linux-armv7l-3.7/cmake-install/clang_format/data/bin/clang-format -> _skbuild/linux-armv7l-3.7/setuptools/lib.linux-armv7l-3.7/clang_format/data/bin 2022-05-05T12:43:56,896 copying _skbuild/linux-armv7l-3.7/cmake-install/clang_format/data/bin/clang-format-diff.py -> _skbuild/linux-armv7l-3.7/setuptools/lib.linux-armv7l-3.7/clang_format/data/bin 2022-05-05T12:43:56,901 copying _skbuild/linux-armv7l-3.7/cmake-install/clang_format/data/bin/git-clang-format -> _skbuild/linux-armv7l-3.7/setuptools/lib.linux-armv7l-3.7/clang_format/data/bin 2022-05-05T12:43:56,909 running build_ext 2022-05-05T12:43:56,911 running install 2022-05-05T12:43:56,982 running install_lib 2022-05-05T12:43:56,985 creating _skbuild/linux-armv7l-3.7/setuptools/bdist.linux-armv7l 2022-05-05T12:43:56,986 creating _skbuild/linux-armv7l-3.7/setuptools/bdist.linux-armv7l/wheel 2022-05-05T12:43:56,990 creating _skbuild/linux-armv7l-3.7/setuptools/bdist.linux-armv7l/wheel/clang_format 2022-05-05T12:43:56,997 creating _skbuild/linux-armv7l-3.7/setuptools/bdist.linux-armv7l/wheel/clang_format/data 2022-05-05T12:43:57,000 creating _skbuild/linux-armv7l-3.7/setuptools/bdist.linux-armv7l/wheel/clang_format/data/bin 2022-05-05T12:43:57,116 running install_egg_info 2022-05-05T12:43:57,143 running egg_info 2022-05-05T12:43:57,181 writing manifest file 'clang_format.egg-info/SOURCES.txt' 2022-05-05T12:43:57,184 Copying clang_format.egg-info to _skbuild/linux-armv7l-3.7/setuptools/bdist.linux-armv7l/wheel/clang_format-14.0.3-py3.7.egg-info 2022-05-05T12:43:57,209 running install_scripts 2022-05-05T12:43:59,230 Building wheel for clang-format (pyproject.toml): finished with status 'done' 2022-05-05T12:43:59,310 Created wheel for clang-format: filename=clang_format-14.0.3-py2.py3-none-linux_armv7l.whl size=1069588 sha256=e576d34046d298e4b57dc7e9d6b1a640227c602864c13bc9016f33b26d434429 2022-05-05T12:43:59,312 Stored in directory: /tmp/pip-ephem-wheel-cache-r2axzz7x/wheels/64/6d/d8/0ef815b6b1e5d0074554aa6b475d4ebc60062e40d1da6fb453 2022-05-05T12:43:59,338 Successfully built clang-format 2022-05-05T12:43:59,434 Removed build tracker: '/tmp/pip-req-tracker-2ucmirq_'